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