diff --git a/bip39.c b/bip39.c index df12bcec0..7392d9f2e 100644 --- a/bip39.c +++ b/bip39.c @@ -28,6 +28,10 @@ const char *mnemonic_from_data(const uint8_t *data, int len) static char bits[256 + 8]; static char mnemo[24 * 10]; + if (len % 4 || len < 16 || len > 32) { + return 0; + } + SHA256_Raw((const uint8_t *)data, len, hash); for (i = 0; i < len; i++) { diff --git a/secp256k1.c b/secp256k1.c index cbed98888..57a5a8677 100644 --- a/secp256k1.c +++ b/secp256k1.c @@ -34,7 +34,7 @@ const bignum256 order256k1 = { .val = {0x10364141, 0x3f497a33, 0x348a03bb, 0x2bb739ab, 0x3ffffeba, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0xffff}}; const bignum256 order256k1_half = { -.val = {0x281b20a0, 0x3fa4bd19, 0x3a4501dd, 0x15db9cd5, 0x3fffff5d, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x00007fff}}; +.val = {0x281b20a0, 0x3fa4bd19, 0x3a4501dd, 0x15db9cd5, 0x3fffff5d, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x7fff}}; const bignum256 three_over_two256k1 = { .val = {0x3ffffe19, 0x3ffffffd, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x7fff}};