scalarmult6.c revision 1.1 1 1.1 riastrad
2 1.1 riastrad #define TEST_NAME "scalarmult6"
3 1.1 riastrad #include "cmptest.h"
4 1.1 riastrad
5 1.1 riastrad static unsigned char bobsk_[crypto_scalarmult_SCALARBYTES] = {
6 1.1 riastrad 0x5d, 0xab, 0x08, 0x7e, 0x62, 0x4a, 0x8a, 0x4b, 0x79, 0xe1, 0x7f,
7 1.1 riastrad 0x8b, 0x83, 0x80, 0x0e, 0xe6, 0x6f, 0x3b, 0xb1, 0x29, 0x26, 0x18,
8 1.1 riastrad 0xb6, 0xfd, 0x1c, 0x2f, 0x8b, 0x27, 0xff, 0x88, 0xe0, 0xeb
9 1.1 riastrad };
10 1.1 riastrad
11 1.1 riastrad static unsigned char alicepk_[crypto_scalarmult_SCALARBYTES] = {
12 1.1 riastrad 0x85, 0x20, 0xf0, 0x09, 0x89, 0x30, 0xa7, 0x54, 0x74, 0x8b, 0x7d,
13 1.1 riastrad 0xdc, 0xb4, 0x3e, 0xf7, 0x5a, 0x0d, 0xbf, 0x3a, 0x0d, 0x26, 0x38,
14 1.1 riastrad 0x1a, 0xf4, 0xeb, 0xa4, 0xa9, 0x8e, 0xaa, 0x9b, 0x4e, 0x6a
15 1.1 riastrad };
16 1.1 riastrad
17 1.1 riastrad int
18 1.1 riastrad main(void)
19 1.1 riastrad {
20 1.1 riastrad unsigned char *k;
21 1.1 riastrad unsigned char *bobsk;
22 1.1 riastrad unsigned char *alicepk;
23 1.1 riastrad int i;
24 1.1 riastrad int ret;
25 1.1 riastrad
26 1.1 riastrad k = (unsigned char *) sodium_malloc(crypto_scalarmult_BYTES);
27 1.1 riastrad bobsk = (unsigned char *) sodium_malloc(crypto_scalarmult_SCALARBYTES);
28 1.1 riastrad alicepk = (unsigned char *) sodium_malloc(crypto_scalarmult_SCALARBYTES);
29 1.1 riastrad assert(k != NULL && bobsk != NULL && alicepk != NULL);
30 1.1 riastrad
31 1.1 riastrad memcpy(bobsk, bobsk_, crypto_scalarmult_SCALARBYTES);
32 1.1 riastrad memcpy(alicepk, alicepk_, crypto_scalarmult_SCALARBYTES);
33 1.1 riastrad
34 1.1 riastrad ret = crypto_scalarmult(k, bobsk, alicepk);
35 1.1 riastrad assert(ret == 0);
36 1.1 riastrad
37 1.1 riastrad sodium_free(alicepk);
38 1.1 riastrad sodium_free(bobsk);
39 1.1 riastrad
40 1.1 riastrad for (i = 0; i < 32; ++i) {
41 1.1 riastrad if (i > 0) {
42 1.1 riastrad printf(",");
43 1.1 riastrad } else {
44 1.1 riastrad printf(" ");
45 1.1 riastrad }
46 1.1 riastrad printf("0x%02x", (unsigned int) k[i]);
47 1.1 riastrad if (i % 8 == 7) {
48 1.1 riastrad printf("\n");
49 1.1 riastrad }
50 1.1 riastrad }
51 1.1 riastrad sodium_free(k);
52 1.1 riastrad
53 1.1 riastrad return 0;
54 1.1 riastrad }
55