Skip to content

Commit

Permalink
ecdsa_adaptor: fix too small buffer in tests
Browse files Browse the repository at this point in the history
Also add a specific test that fails adaptor sig deserialization because with the
correct size buffer that's not guaranteed anymore with the existing test.
  • Loading branch information
jonasnick committed Jul 13, 2021
1 parent b053e85 commit 7226cf2
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion src/modules/ecdsa_adaptor/tests_impl.h
Original file line number Diff line number Diff line change
Expand Up @@ -1032,7 +1032,15 @@ void adaptor_tests(void) {
CHECK(secp256k1_ecdsa_adaptor_verify(ctx, adaptor_sig, &enckey, msg, &enckey) == 0);
CHECK(secp256k1_ecdsa_adaptor_verify(ctx, adaptor_sig, &pubkey, msg, &pubkey) == 0);
{
unsigned char adaptor_sig_tmp[65];
/* Test failed adaptor sig deserialization */
unsigned char adaptor_sig_tmp[162];
memset(&adaptor_sig_tmp, 0xFF, 162);
CHECK(secp256k1_ecdsa_adaptor_verify(ctx, adaptor_sig_tmp, &pubkey, msg, &enckey) == 0);
}
{
/* Test that any flipped bit in the adaptor signature will make
* verification fail */
unsigned char adaptor_sig_tmp[162];
memcpy(adaptor_sig_tmp, adaptor_sig, sizeof(adaptor_sig_tmp));
rand_flip_bit(&adaptor_sig_tmp[1], sizeof(adaptor_sig_tmp) - 1);
CHECK(secp256k1_ecdsa_adaptor_verify(ctx, adaptor_sig_tmp, &pubkey, msg, &enckey) == 0);
Expand Down

0 comments on commit 7226cf2

Please sign in to comment.