Skip to content

Commit a1ec2bb

Browse files
committed
musig: add test for signing with wrong secnonce for a keypair
1 parent bd57a01 commit a1ec2bb

File tree

1 file changed

+13
-4
lines changed

1 file changed

+13
-4
lines changed

src/modules/musig/tests_impl.h

+13-4
Original file line numberDiff line numberDiff line change
@@ -466,17 +466,26 @@ void musig_api_tests(secp256k1_scratch_space *scratch) {
466466
CHECK(secp256k1_musig_partial_sign(none, &partial_sig[0], &secnonce_tmp, &invalid_keypair, &keyagg_cache, &session) == 0);
467467
CHECK(ecount == 6);
468468
memcpy(&secnonce_tmp, &secnonce[0], sizeof(secnonce_tmp));
469+
{
470+
unsigned char sk_tmp[32];
471+
secp256k1_keypair keypair_tmp;
472+
secp256k1_testrand256(sk_tmp);
473+
CHECK(secp256k1_keypair_create(ctx, &keypair_tmp, sk_tmp));
474+
CHECK(secp256k1_musig_partial_sign(none, &partial_sig[0], &secnonce_tmp, &keypair_tmp, &keyagg_cache, &session) == 0);
475+
CHECK(ecount == 7);
476+
memcpy(&secnonce_tmp, &secnonce[0], sizeof(secnonce_tmp));
477+
}
469478
CHECK(secp256k1_musig_partial_sign(none, &partial_sig[0], &secnonce_tmp, &keypair[0], NULL, &session) == 0);
470-
CHECK(ecount == 7);
479+
CHECK(ecount == 8);
471480
memcpy(&secnonce_tmp, &secnonce[0], sizeof(secnonce_tmp));
472481
CHECK(secp256k1_musig_partial_sign(none, &partial_sig[0], &secnonce_tmp, &keypair[0], &invalid_keyagg_cache, &session) == 0);
473-
CHECK(ecount == 8);
482+
CHECK(ecount == 9);
474483
memcpy(&secnonce_tmp, &secnonce[0], sizeof(secnonce_tmp));
475484
CHECK(secp256k1_musig_partial_sign(none, &partial_sig[0], &secnonce_tmp, &keypair[0], &keyagg_cache, NULL) == 0);
476-
CHECK(ecount == 9);
485+
CHECK(ecount == 10);
477486
memcpy(&secnonce_tmp, &secnonce[0], sizeof(secnonce_tmp));
478487
CHECK(secp256k1_musig_partial_sign(none, &partial_sig[0], &secnonce_tmp, &keypair[0], &keyagg_cache, &invalid_session) == 0);
479-
CHECK(ecount == 10);
488+
CHECK(ecount == 11);
480489
memcpy(&secnonce_tmp, &secnonce[0], sizeof(secnonce_tmp));
481490

482491
CHECK(secp256k1_musig_partial_sign(none, &partial_sig[0], &secnonce[0], &keypair[0], &keyagg_cache, &session) == 1);

0 commit comments

Comments
 (0)