7 #ifndef SECP256K1_MODULE_ECDH_TESTS_H
8 #define SECP256K1_MODULE_ECDH_TESTS_H
14 unsigned char res[32];
15 unsigned char s_one[32] = { 0 };
40 unsigned char s_one[32] = { 0 };
46 for (i = 0; i < 100; ++i) {
48 unsigned char s_b32[32];
49 unsigned char output_ecdh[32];
50 unsigned char output_ser[32];
51 unsigned char point_ser[33];
52 size_t point_ser_len =
sizeof(point_ser);
56 secp256k1_scalar_get_b32(s_b32, &s);
64 CHECK(point_ser_len ==
sizeof(point_ser));
65 secp256k1_sha256_initialize(&sha);
66 secp256k1_sha256_write(&sha, point_ser, point_ser_len);
67 secp256k1_sha256_finalize(&sha, output_ser);
69 CHECK(memcmp(output_ecdh, output_ser,
sizeof(output_ser)) == 0);
74 unsigned char s_zero[32] = { 0 };
75 unsigned char s_overflow[32] = {
76 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
77 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
78 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b,
79 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41
81 unsigned char s_rand[32] = { 0 };
82 unsigned char output[32];
88 secp256k1_scalar_get_b32(s_rand, &rand);