Clean code

This commit is contained in:
Zhi Guan
2026-06-22 23:40:58 +08:00
parent 8ed5e266d1
commit 5581ad21b8
18 changed files with 1105 additions and 1150 deletions

View File

@@ -80,9 +80,42 @@ static int test_ecdsa(void)
return 1;
}
static int test_ecdsa_verify_infinity(void)
{
SECP256R1_KEY key;
ECDSA_SIGNATURE sig;
secp256r1_t d;
uint8_t dgst[32];
size_t dgstlen;
if (secp256r1_set_one(d) != 1
|| secp256r1_key_set_private_key(&key, d) != 1
|| secp256r1_set_one(sig.r) != 1
|| secp256r1_set_one(sig.s) != 1) {
error_print();
return -1;
}
// e = n - 1, so u1 * G + u2 * Q = (n - 1)G + G = O for Q = G
if (hex_to_bytes("FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632550",
64, dgst, &dgstlen) != 1
|| dgstlen != sizeof(dgst)) {
error_print();
return -1;
}
if (ecdsa_do_verify(&key, dgst, &sig) != 0) {
error_print();
return -1;
}
printf("%s() ok\n", __FUNCTION__);
return 1;
}
int main(void)
{
if (test_ecdsa() != 1) goto err;
if (test_ecdsa_verify_infinity() != 1) goto err;
printf("%s all tests passed\n", __FILE__);
return 0;