]> git.proxmox.com Git - ceph.git/blob - ceph/src/spdk/dpdk/test/test/test_cryptodev_kasumi_hash_test_vectors.h
update download target update for octopus release
[ceph.git] / ceph / src / spdk / dpdk / test / test / test_cryptodev_kasumi_hash_test_vectors.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2016-2017 Intel Corporation
3 */
4
5 #ifndef TEST_CRYPTODEV_KASUMI_HASH_TEST_VECTORS_H_
6 #define TEST_CRYPTODEV_KASUMI_HASH_TEST_VECTORS_H_
7
8 struct kasumi_hash_test_data {
9 struct {
10 uint8_t data[16];
11 unsigned len;
12 } key;
13
14 /*
15 * Includes COUNT (4 bytes), FRESH (4 bytes), message
16 * and DIRECTION (1 bit), plus 1 0*, with enough 0s,
17 * so total length is multiple of 8 or 64 bits
18 */
19 struct {
20 uint8_t data[2056];
21 unsigned len; /* length must be in Bits */
22 } plaintext;
23
24 struct {
25 uint8_t data[64];
26 unsigned len;
27 } digest;
28 };
29
30 struct kasumi_hash_test_data kasumi_hash_test_case_1 = {
31 .key = {
32 .data = {
33 0x2B, 0xD6, 0x45, 0x9F, 0x82, 0xC5, 0xB3, 0x00,
34 0x95, 0x2C, 0x49, 0x10, 0x48, 0x81, 0xFF, 0x48
35 },
36 .len = 16
37 },
38 .plaintext = {
39 .data = {
40 0x38, 0xA6, 0xF0, 0x56, 0x05, 0xD2, 0xEC, 0x49,
41 0x6B, 0x22, 0x77, 0x37, 0x29, 0x6F, 0x39, 0x3C,
42 0x80, 0x79, 0x35, 0x3E, 0xDC, 0x87, 0xE2, 0xE8,
43 0x05, 0xD2, 0xEC, 0x49, 0xA4, 0xF2, 0xD8, 0xE2
44 },
45 .len = 256
46 },
47 .digest = {
48 .data = {0xF6, 0x3B, 0xD7, 0x2C},
49 .len = 4
50 }
51 };
52
53 struct kasumi_hash_test_data kasumi_hash_test_case_2 = {
54 .key = {
55 .data = {
56 0xD4, 0x2F, 0x68, 0x24, 0x28, 0x20, 0x1C, 0xAF,
57 0xCD, 0x9F, 0x97, 0x94, 0x5E, 0x6D, 0xE7, 0xB7
58 },
59 .len = 16
60 },
61 .plaintext = {
62 .data = {
63 0x3E, 0xDC, 0x87, 0xE2, 0xA4, 0xF2, 0xD8, 0xE2,
64 0xB5, 0x92, 0x43, 0x84, 0x32, 0x8A, 0x4A, 0xE0,
65 0x0B, 0x73, 0x71, 0x09, 0xF8, 0xB6, 0xC8, 0xDD,
66 0x2B, 0x4D, 0xB6, 0x3D, 0xD5, 0x33, 0x98, 0x1C,
67 0xEB, 0x19, 0xAA, 0xD5, 0x2A, 0x5B, 0x2B, 0xC3
68 },
69 .len = 320
70 },
71 .digest = {
72 .data = {0xA9, 0xDA, 0xF1, 0xFF},
73 .len = 4
74 }
75 };
76
77 struct kasumi_hash_test_data kasumi_hash_test_case_3 = {
78 .key = {
79 .data = {
80 0xFD, 0xB9, 0xCF, 0xDF, 0x28, 0x93, 0x6C, 0xC4,
81 0x83, 0xA3, 0x18, 0x69, 0xD8, 0x1B, 0x8F, 0xAB
82 },
83 .len = 16
84 },
85 .plaintext = {
86 .data = {
87 0x36, 0xAF, 0x61, 0x44, 0x98, 0x38, 0xF0, 0x3A,
88 0x59, 0x32, 0xBC, 0x0A, 0xCE, 0x2B, 0x0A, 0xBA,
89 0x33, 0xD8, 0xAC, 0x18, 0x8A, 0xC5, 0x4F, 0x34,
90 0x6F, 0xAD, 0x10, 0xBF, 0x9D, 0xEE, 0x29, 0x20,
91 0xB4, 0x3B, 0xD0, 0xC5, 0x3A, 0x91, 0x5C, 0xB7,
92 0xDF, 0x6C, 0xAA, 0x72, 0x05, 0x3A, 0xBF, 0xF3,
93 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
94 },
95 .len = 448
96 },
97 .digest = {
98 .data = {0x15, 0x37, 0xD3, 0x16},
99 .len = 4
100 }
101 };
102
103 struct kasumi_hash_test_data kasumi_hash_test_case_4 = {
104 .key = {
105 .data = {
106 0xC7, 0x36, 0xC6, 0xAA, 0xB2, 0x2B, 0xFF, 0xF9,
107 0x1E, 0x26, 0x98, 0xD2, 0xE2, 0x2A, 0xD5, 0x7E
108 },
109 .len = 16
110 },
111 .plaintext = {
112 .data = {
113 0x14, 0x79, 0x3E, 0x41, 0x03, 0x97, 0xE8, 0xFD,
114 0xD0, 0xA7, 0xD4, 0x63, 0xDF, 0x9F, 0xB2, 0xB2,
115 0x78, 0x83, 0x3F, 0xA0, 0x2E, 0x23, 0x5A, 0xA1,
116 0x72, 0xBD, 0x97, 0x0C, 0x14, 0x73, 0xE1, 0x29,
117 0x07, 0xFB, 0x64, 0x8B, 0x65, 0x99, 0xAA, 0xA0,
118 0xB2, 0x4A, 0x03, 0x86, 0x65, 0x42, 0x2B, 0x20,
119 0xA4, 0x99, 0x27, 0x6A, 0x50, 0x42, 0x70, 0x09,
120 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
121 },
122 .len = 512
123 },
124 .digest = {
125 .data = {0xDD, 0x7D, 0xFA, 0xDD },
126 .len = 4
127 }
128 };
129
130 struct kasumi_hash_test_data kasumi_hash_test_case_5 = {
131 .key = {
132 .data = {
133 0xF4, 0xEB, 0xEC, 0x69, 0xE7, 0x3E, 0xAF, 0x2E,
134 0xB2, 0xCF, 0x6A, 0xF4, 0xB3, 0x12, 0x0F, 0xFD
135 },
136 .len = 16
137 },
138 .plaintext = {
139 .data = {
140 0x29, 0x6F, 0x39, 0x3C, 0x6B, 0x22, 0x77, 0x37,
141 0x10, 0xBF, 0xFF, 0x83, 0x9E, 0x0C, 0x71, 0x65,
142 0x8D, 0xBB, 0x2D, 0x17, 0x07, 0xE1, 0x45, 0x72,
143 0x4F, 0x41, 0xC1, 0x6F, 0x48, 0xBF, 0x40, 0x3C,
144 0x3B, 0x18, 0xE3, 0x8F, 0xD5, 0xD1, 0x66, 0x3B,
145 0x6F, 0x6D, 0x90, 0x01, 0x93, 0xE3, 0xCE, 0xA8,
146 0xBB, 0x4F, 0x1B, 0x4F, 0x5B, 0xE8, 0x22, 0x03,
147 0x22, 0x32, 0xA7, 0x8D, 0x7D, 0x75, 0x23, 0x8D,
148 0x5E, 0x6D, 0xAE, 0xCD, 0x3B, 0x43, 0x22, 0xCF,
149 0x59, 0xBC, 0x7E, 0xA8, 0x4A, 0xB1, 0x88, 0x11,
150 0xB5, 0xBF, 0xB7, 0xBC, 0x55, 0x3F, 0x4F, 0xE4,
151 0x44, 0x78, 0xCE, 0x28, 0x7A, 0x14, 0x87, 0x99,
152 0x90, 0xD1, 0x8D, 0x12, 0xCA, 0x79, 0xD2, 0xC8,
153 0x55, 0x14, 0x90, 0x21, 0xCD, 0x5C, 0xE8, 0xCA,
154 0x03, 0x71, 0xCA, 0x04, 0xFC, 0xCE, 0x14, 0x3E,
155 0x3D, 0x7C, 0xFE, 0xE9, 0x45, 0x85, 0xB5, 0x88,
156 0x5C, 0xAC, 0x46, 0x06, 0x8B, 0xC0, 0x00, 0x00
157 },
158 .len = 1088
159 },
160 .digest = {
161 .data = {0xC3, 0x83, 0x83, 0x9D},
162 .len = 4
163 }
164 };
165
166 struct kasumi_hash_test_data kasumi_hash_test_case_6 = {
167 .key = {
168 .data = {
169 0x83, 0xFD, 0x23, 0xA2, 0x44, 0xA7, 0x4C, 0xF3,
170 0x58, 0xDA, 0x30, 0x19, 0xF1, 0x72, 0x26, 0x35
171 },
172 .len = 16
173 },
174 .plaintext = {
175 .data = {
176 0x36, 0xAF, 0x61, 0x44, 0x4F, 0x30, 0x2A, 0xD2,
177 0x35, 0xC6, 0x87, 0x16, 0x63, 0x3C, 0x66, 0xFB,
178 0x75, 0x0C, 0x26, 0x68, 0x65, 0xD5, 0x3C, 0x11,
179 0xEA, 0x05, 0xB1, 0xE9, 0xFA, 0x49, 0xC8, 0x39,
180 0x8D, 0x48, 0xE1, 0xEF, 0xA5, 0x90, 0x9D, 0x39,
181 0x47, 0x90, 0x28, 0x37, 0xF5, 0xAE, 0x96, 0xD5,
182 0xA0, 0x5B, 0xC8, 0xD6, 0x1C, 0xA8, 0xDB, 0xEF,
183 0x1B, 0x13, 0xA4, 0xB4, 0xAB, 0xFE, 0x4F, 0xB1,
184 0x00, 0x60, 0x45, 0xB6, 0x74, 0xBB, 0x54, 0x72,
185 0x93, 0x04, 0xC3, 0x82, 0xBE, 0x53, 0xA5, 0xAF,
186 0x05, 0x55, 0x61, 0x76, 0xF6, 0xEA, 0xA2, 0xEF,
187 0x1D, 0x05, 0xE4, 0xB0, 0x83, 0x18, 0x1E, 0xE6,
188 0x74, 0xCD, 0xA5, 0xA4, 0x85, 0xF7, 0x4D, 0x7A,
189 0xC0
190 },
191 .len = 840
192 },
193 .digest = {
194 .data = {0x95, 0xAE, 0x41, 0xBA},
195 .len = 4
196 }
197 };
198
199 struct kasumi_hash_test_data kasumi_hash_test_case_7 = {
200 .key = {
201 .data = {
202 0x5A, 0xCB, 0x1D, 0x64, 0x4C, 0x0D, 0x51, 0x20,
203 0x4E, 0xA5, 0xF1, 0x45, 0x10, 0x10, 0xD8, 0x52
204 },
205 .len = 16
206 },
207 .plaintext = {
208 .data = {
209 0x38, 0xA6, 0xF0, 0x56, 0x05, 0xD2, 0xEC, 0x49,
210 0xAD, 0x9C, 0x44, 0x1F, 0x89, 0x0B, 0x38, 0xC4,
211 0x57, 0xA4, 0x9D, 0x42, 0x14, 0x07, 0xE8, 0xC0
212 },
213 .len = 192
214 },
215 .digest = {
216 .data = {0x87, 0x5F, 0xE4, 0x89},
217 .len = 4
218 }
219 };
220 #endif /* TEST_CRYPTODEV_KASUMI_HASH_TEST_VECTORS_H_ */