diff options
Diffstat (limited to 'nacl/tests/stream8.cpp')
-rw-r--r-- | nacl/tests/stream8.cpp | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/nacl/tests/stream8.cpp b/nacl/tests/stream8.cpp new file mode 100644 index 00000000..ea95d68f --- /dev/null +++ b/nacl/tests/stream8.cpp | |||
@@ -0,0 +1,56 @@ | |||
1 | #include <string> | ||
2 | using std::string; | ||
3 | #include <stdio.h> | ||
4 | #include "crypto_stream_xsalsa20.h" | ||
5 | |||
6 | char firstkey_bytes[32] = { | ||
7 | 0x1b,0x27,0x55,0x64,0x73,0xe9,0x85,0xd4 | ||
8 | ,0x62,0xcd,0x51,0x19,0x7a,0x9a,0x46,0xc7 | ||
9 | ,0x60,0x09,0x54,0x9e,0xac,0x64,0x74,0xf2 | ||
10 | ,0x06,0xc4,0xee,0x08,0x44,0xf6,0x83,0x89 | ||
11 | } ; | ||
12 | |||
13 | char nonce_bytes[24] = { | ||
14 | 0x69,0x69,0x6e,0xe9,0x55,0xb6,0x2b,0x73 | ||
15 | ,0xcd,0x62,0xbd,0xa8,0x75,0xfc,0x73,0xd6 | ||
16 | ,0x82,0x19,0xe0,0x03,0x6b,0x7a,0x0b,0x37 | ||
17 | } ; | ||
18 | |||
19 | char m_bytes[163] = { | ||
20 | 0, 0, 0, 0, 0, 0, 0, 0 | ||
21 | , 0, 0, 0, 0, 0, 0, 0, 0 | ||
22 | , 0, 0, 0, 0, 0, 0, 0, 0 | ||
23 | , 0, 0, 0, 0, 0, 0, 0, 0 | ||
24 | ,0xbe,0x07,0x5f,0xc5,0x3c,0x81,0xf2,0xd5 | ||
25 | ,0xcf,0x14,0x13,0x16,0xeb,0xeb,0x0c,0x7b | ||
26 | ,0x52,0x28,0xc5,0x2a,0x4c,0x62,0xcb,0xd4 | ||
27 | ,0x4b,0x66,0x84,0x9b,0x64,0x24,0x4f,0xfc | ||
28 | ,0xe5,0xec,0xba,0xaf,0x33,0xbd,0x75,0x1a | ||
29 | ,0x1a,0xc7,0x28,0xd4,0x5e,0x6c,0x61,0x29 | ||
30 | ,0x6c,0xdc,0x3c,0x01,0x23,0x35,0x61,0xf4 | ||
31 | ,0x1d,0xb6,0x6c,0xce,0x31,0x4a,0xdb,0x31 | ||
32 | ,0x0e,0x3b,0xe8,0x25,0x0c,0x46,0xf0,0x6d | ||
33 | ,0xce,0xea,0x3a,0x7f,0xa1,0x34,0x80,0x57 | ||
34 | ,0xe2,0xf6,0x55,0x6a,0xd6,0xb1,0x31,0x8a | ||
35 | ,0x02,0x4a,0x83,0x8f,0x21,0xaf,0x1f,0xde | ||
36 | ,0x04,0x89,0x77,0xeb,0x48,0xf5,0x9f,0xfd | ||
37 | ,0x49,0x24,0xca,0x1c,0x60,0x90,0x2e,0x52 | ||
38 | ,0xf0,0xa0,0x89,0xbc,0x76,0x89,0x70,0x40 | ||
39 | ,0xe0,0x82,0xf9,0x37,0x76,0x38,0x48,0x64 | ||
40 | ,0x5e,0x07,0x05 | ||
41 | } ; | ||
42 | |||
43 | main() | ||
44 | { | ||
45 | int i; | ||
46 | string firstkey(firstkey_bytes,sizeof firstkey_bytes); | ||
47 | string nonce(nonce_bytes,sizeof nonce_bytes); | ||
48 | string m(m_bytes,sizeof m_bytes); | ||
49 | string c = crypto_stream_xsalsa20_xor(m,nonce,firstkey); | ||
50 | for (i = 32;i < c.size();++i) { | ||
51 | printf(",0x%02x",(unsigned int) (unsigned char) c[i]); | ||
52 | if (i % 8 == 7) printf("\n"); | ||
53 | } | ||
54 | printf("\n"); | ||
55 | return 0; | ||
56 | } | ||