xref: /freebsd/sys/contrib/libsodium/test/default/scalarmult7.c (revision 2e3507c25e42292b45a5482e116d278f5515d04d)
1 
2 #define TEST_NAME "scalarmult7"
3 #include "cmptest.h"
4 
5 static unsigned char p1[32] = {
6     0x72, 0x20, 0xf0, 0x09, 0x89, 0x30, 0xa7, 0x54, 0x74, 0x8b, 0x7d,
7     0xdc, 0xb4, 0x3e, 0xf7, 0x5a, 0x0d, 0xbf, 0x3a, 0x0d, 0x26, 0x38,
8     0x1a, 0xf4, 0xeb, 0xa4, 0xa9, 0x8e, 0xaa, 0x9b, 0x4e, 0xea
9 };
10 
11 static unsigned char p2[32] = {
12     0x85, 0x20, 0xf0, 0x09, 0x89, 0x30, 0xa7, 0x54, 0x74, 0x8b, 0x7d,
13     0xdc, 0xb4, 0x3e, 0xf7, 0x5a, 0x0d, 0xbf, 0x3a, 0x0d, 0x26, 0x38,
14     0x1a, 0xf4, 0xeb, 0xa4, 0xa9, 0x8e, 0xaa, 0x9b, 0x4e, 0x6a
15 };
16 
17 static unsigned char scalar[32];
18 static unsigned char out1[32];
19 static unsigned char out2[32];
20 
21 int
22 main(void)
23 {
24     int ret;
25 
26     scalar[0] = 1U;
27     ret       = crypto_scalarmult_curve25519(out1, scalar, p1);
28     assert(ret == 0);
29     ret = crypto_scalarmult_curve25519(out2, scalar, p2);
30     assert(ret == 0);
31     printf("%d\n", !!memcmp(out1, out2, 32));
32 
33     return 0;
34 }
35