2 #define TEST_NAME "core6"
6 = { 0xee, 0x30, 0x4f, 0xca, 0x27, 0x00, 0x8d, 0x8c, 0x12, 0x6f, 0x90,
7 0x02, 0x79, 0x01, 0xd8, 0x0f, 0x7f, 0x1d, 0x8b, 0x8d, 0xc9, 0x36,
8 0xcf, 0x3b, 0x9f, 0x81, 0x96, 0x92, 0x82, 0x7e, 0x57, 0x77 };
10 unsigned char in
[16] = { 0x81, 0x91, 0x8e, 0xf2, 0xa5, 0xe0, 0xda, 0x9b,
11 0x3e, 0x90, 0x60, 0x52, 0x1e, 0x4b, 0xb3, 0x52 };
13 unsigned char c
[16] = { 101, 120, 112, 97, 110, 100, 32, 51,
14 50, 45, 98, 121, 116, 101, 32, 107 };
16 unsigned char out
[64];
18 void print(unsigned char *x
, unsigned char *y
)
21 unsigned int borrow
= 0;
23 for (i
= 0; i
< 4; ++i
) {
24 unsigned int xi
= x
[i
];
25 unsigned int yi
= y
[i
];
26 printf(",0x%02x", 255 & (xi
- yi
- borrow
));
27 borrow
= (xi
< yi
+ borrow
);
33 crypto_core_salsa20(out
, in
, k
, c
);
35 print(out
+ 20, c
+ 4);
37 print(out
+ 40, c
+ 8);
38 print(out
+ 60, c
+ 12);
41 print(out
+ 28, in
+ 4);
43 print(out
+ 32, in
+ 8);
44 print(out
+ 36, in
+ 12);