fix edge condition in generating ecc key from seed

This commit is contained in:
Daniel Larimer 2013-08-02 17:14:26 -04:00
parent fbadc5bdfa
commit b6bf4bb389

View file

@ -279,8 +279,9 @@ struct ssl_bignum
BN_mod(secexp, secexp, order, ctx);
fc::sha256 secret;
assert(BN_num_bytes(secexp) == sizeof(secret));
BN_bn2bin(secexp, (unsigned char*)&secret);
assert(BN_num_bytes(secexp) <= int64_t(sizeof(secret)));
auto shift = sizeof(secret) - BN_num_bytes(secexp);
BN_bn2bin(secexp, ((unsigned char*)&secret)+shift);
return regenerate( secret );
}