]> git.proxmox.com Git - ceph.git/blob - ceph/src/spdk/dpdk/app/test/test_cryptodev_hash_test_vectors.h
import 15.2.0 Octopus source
[ceph.git] / ceph / src / spdk / dpdk / app / test / test_cryptodev_hash_test_vectors.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2016-2017 Intel Corporation
3 */
4
5 #ifndef TEST_CRYPTODEV_HASH_TEST_VECTORS_H_
6 #define TEST_CRYPTODEV_HASH_TEST_VECTORS_H_
7
8 #ifdef RTE_LIBRTE_PMD_AESNI_MB
9 #include <intel-ipsec-mb.h>
10 #endif
11
12 #if !defined(IMB_VERSION_NUM)
13 #define IMB_VERSION(a, b, c) (((a) << 16) + ((b) << 8) + (c))
14 #define IMB_VERSION_NUM IMB_VERSION(0, 49, 0)
15 #endif
16
17 static const uint8_t plaintext_hash[] = {
18 "What a lousy earth! He wondered how many people "
19 "were destitute that same night even in his own "
20 "prosperous country, how many homes were "
21 "shanties, how many husbands were drunk and "
22 "wives socked, and how many children were "
23 "bullied, abused, or abandoned. How many "
24 "families hungered for food they could not "
25 "afford to buy? How many hearts were broken? How "
26 "many suicides would take place that same night, "
27 "how many people would go insane? How many "
28 "cockroaches and landlords would triumph? How "
29 "many winners were losers, successes failures, "
30 "and rich men poor men? How many wise guys were "
31 "stupid? How many happy endings were unhappy "
32 "endings? How many honest men were liars, brave "
33 "men cowards, loyal men traitors, how many "
34 "sainted men were corrupt, how many people in "
35 "positions of trust had sold their souls to "
36 "bodyguards, how many had never had souls? How "
37 "many straight-and-narrow paths were crooked "
38 "paths? How many best families were worst "
39 "families and how many good people were bad "
40 "people? When you added them all up and then "
41 "subtracted, you might be left with only the "
42 "children, and perhaps with Albert Einstein and "
43 "an old violinist or sculptor somewhere."
44 };
45
46 static const struct blockcipher_test_data
47 md5_test_vector = {
48 .auth_algo = RTE_CRYPTO_AUTH_MD5,
49 .ciphertext = {
50 .data = plaintext_hash,
51 .len = 512
52 },
53 .digest = {
54 .data = {
55 0xB3, 0xE6, 0xBB, 0x50, 0x41, 0x35, 0x3C, 0x6B,
56 0x7A, 0xFF, 0xD2, 0x64, 0xAF, 0xD5, 0x1C, 0xB2
57 },
58 .len = 16
59 }
60 };
61
62 static const struct blockcipher_test_data
63 hmac_md5_test_vector = {
64 .auth_algo = RTE_CRYPTO_AUTH_MD5_HMAC,
65 .ciphertext = {
66 .data = plaintext_hash,
67 .len = 512
68 },
69 .auth_key = {
70 .data = {
71 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
72 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD
73 },
74 .len = 16
75 },
76 .digest = {
77 .data = {
78 0x50, 0xE8, 0xDE, 0xC5, 0xC1, 0x76, 0xAC, 0xAE,
79 0x15, 0x4A, 0xF1, 0x7F, 0x7E, 0x04, 0x42, 0x9B
80 },
81 .len = 16,
82 .truncated_len = 12
83 }
84 };
85
86 static const struct blockcipher_test_data
87 sha1_test_vector = {
88 .auth_algo = RTE_CRYPTO_AUTH_SHA1,
89 .ciphertext = {
90 .data = plaintext_hash,
91 .len = 512
92 },
93 .digest = {
94 .data = {
95 0xA2, 0x8D, 0x40, 0x78, 0xDD, 0x9F, 0xBB, 0xD5,
96 0x35, 0x62, 0xFB, 0xFA, 0x93, 0xFD, 0x7D, 0x70,
97 0xA6, 0x7D, 0x45, 0xCA
98 },
99 .len = 20,
100 .truncated_len = 20
101 }
102 };
103
104 static const struct blockcipher_test_data
105 hmac_sha1_test_vector = {
106 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
107 .ciphertext = {
108 .data = plaintext_hash,
109 .len = 512
110 },
111 .auth_key = {
112 .data = {
113 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
114 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
115 0xDE, 0xF4, 0xDE, 0xAD
116 },
117 .len = 20
118 },
119 .digest = {
120 .data = {
121 0xC4, 0xB7, 0x0E, 0x6B, 0xDE, 0xD1, 0xE7, 0x77,
122 0x7E, 0x2E, 0x8F, 0xFC, 0x48, 0x39, 0x46, 0x17,
123 0x3F, 0x91, 0x64, 0x59
124 },
125 .len = 20,
126 .truncated_len = 12
127 }
128 };
129
130 static const struct blockcipher_test_data
131 sha224_test_vector = {
132 .auth_algo = RTE_CRYPTO_AUTH_SHA224,
133 .ciphertext = {
134 .data = plaintext_hash,
135 .len = 512
136 },
137 .digest = {
138 .data = {
139 0x91, 0xE7, 0xCD, 0x75, 0x14, 0x9C, 0xA9, 0xE9,
140 0x2E, 0x46, 0x12, 0x20, 0x22, 0xF9, 0x68, 0x28,
141 0x39, 0x26, 0xDF, 0xB5, 0x78, 0x62, 0xB2, 0x6E,
142 0x5E, 0x8F, 0x25, 0x84
143 },
144 .len = 28,
145 .truncated_len = 28
146 }
147 };
148
149 static const struct blockcipher_test_data
150 hmac_sha224_test_vector = {
151 .auth_algo = RTE_CRYPTO_AUTH_SHA224_HMAC,
152 .ciphertext = {
153 .data = plaintext_hash,
154 .len = 512
155 },
156 .auth_key = {
157 .data = {
158 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
159 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
160 0xDE, 0xF4, 0xDE, 0xAD, 0x26, 0xEB, 0xAB, 0x92,
161 0xFB, 0xBF, 0xB0, 0x8C
162 },
163 .len = 28
164 },
165 .digest = {
166 .data = {
167 0x70, 0x0F, 0x04, 0x4D, 0x22, 0x02, 0x7D, 0x31,
168 0x36, 0xDA, 0x77, 0x19, 0xB9, 0x66, 0x37, 0x7B,
169 0xF1, 0x8A, 0x63, 0xBB, 0x5D, 0x1D, 0xE3, 0x9F,
170 0x92, 0xF6, 0xAA, 0x19
171 },
172 .len = 28,
173 .truncated_len = 14
174 }
175 };
176
177 static const struct blockcipher_test_data
178 sha256_test_vector = {
179 .auth_algo = RTE_CRYPTO_AUTH_SHA256,
180 .ciphertext = {
181 .data = plaintext_hash,
182 .len = 512
183 },
184 .digest = {
185 .data = {
186 0x7F, 0xF1, 0x0C, 0xF5, 0x90, 0x97, 0x19, 0x0F,
187 0x00, 0xE4, 0x83, 0x01, 0xCA, 0x59, 0x00, 0x2E,
188 0x1F, 0xC7, 0x84, 0xEE, 0x76, 0xA6, 0x39, 0x15,
189 0x76, 0x2F, 0x87, 0xF9, 0x01, 0x06, 0xF3, 0xB7
190 },
191 .len = 32,
192 .truncated_len = 32
193 }
194 };
195
196 static const struct blockcipher_test_data
197 hmac_sha256_test_vector = {
198 .auth_algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
199 .ciphertext = {
200 .data = plaintext_hash,
201 .len = 512
202 },
203 .auth_key = {
204 .data = {
205 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
206 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
207 0xDE, 0xF4, 0xDE, 0xAD, 0x26, 0xEB, 0xAB, 0x92,
208 0xFB, 0xBF, 0xB0, 0x8C, 0x29, 0x87, 0x90, 0xAC
209 },
210 .len = 32
211 },
212 .digest = {
213 .data = {
214 0xAF, 0x8F, 0x70, 0x1B, 0x4B, 0xAF, 0x34, 0xCB,
215 0x02, 0x24, 0x48, 0x45, 0x83, 0x52, 0x8F, 0x22,
216 0x06, 0x4D, 0x64, 0x09, 0x0A, 0xCC, 0x02, 0x77,
217 0x71, 0x83, 0x48, 0x71, 0x07, 0x02, 0x25, 0x17
218 },
219 .len = 32,
220 .truncated_len = 16
221 }
222 };
223
224 static const struct blockcipher_test_data
225 sha384_test_vector = {
226 .auth_algo = RTE_CRYPTO_AUTH_SHA384,
227 .ciphertext = {
228 .data = plaintext_hash,
229 .len = 512
230 },
231 .digest = {
232 .data = {
233 0x1D, 0xE7, 0x3F, 0x55, 0x86, 0xFE, 0x48, 0x9F,
234 0xAC, 0xC6, 0x85, 0x32, 0xFA, 0x8E, 0xA6, 0x77,
235 0x25, 0x84, 0xA5, 0x98, 0x8D, 0x0B, 0x80, 0xF4,
236 0xEB, 0x2C, 0xFB, 0x6C, 0xEA, 0x7B, 0xFD, 0xD5,
237 0xAD, 0x41, 0xAB, 0x15, 0xB0, 0x03, 0x15, 0xEC,
238 0x9E, 0x3D, 0xED, 0xCB, 0x80, 0x7B, 0xF4, 0xB6
239 },
240 .len = 48,
241 .truncated_len = 48
242 }
243 };
244
245 static const struct blockcipher_test_data
246 hmac_sha384_test_vector = {
247 .auth_algo = RTE_CRYPTO_AUTH_SHA384_HMAC,
248 .ciphertext = {
249 .data = plaintext_hash,
250 .len = 512
251 },
252 .auth_key = {
253 .data = {
254 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
255 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
256 0xDE, 0xF4, 0xDE, 0xAD, 0x26, 0xEB, 0xAB, 0x92,
257 0xFB, 0xBF, 0xB0, 0x8C, 0x29, 0x87, 0x90, 0xAC,
258 0x39, 0x8B, 0x5C, 0x49, 0x68, 0x1E, 0x3A, 0x05,
259 0xCC, 0x68, 0x5C, 0x76, 0xCB, 0x3C, 0x71, 0x89
260 },
261 .len = 48
262 },
263 .digest = {
264 .data = {
265 0xE2, 0x83, 0x18, 0x55, 0xB5, 0x8D, 0x94, 0x9B,
266 0x01, 0xB6, 0xE2, 0x57, 0x7A, 0x62, 0xF5, 0xF4,
267 0xAB, 0x39, 0xF3, 0x3C, 0x28, 0xA0, 0x0F, 0xCC,
268 0xEE, 0x1C, 0xF1, 0xF8, 0x69, 0xF1, 0x24, 0x3B,
269 0x10, 0x90, 0x0A, 0xE3, 0xF0, 0x59, 0xDD, 0xC0,
270 0x6F, 0xE6, 0x8C, 0x84, 0xD5, 0x03, 0xF8, 0x9E
271 },
272 .len = 48,
273 .truncated_len = 24
274 }
275 };
276
277 static const struct blockcipher_test_data
278 sha512_test_vector = {
279 .auth_algo = RTE_CRYPTO_AUTH_SHA512,
280 .ciphertext = {
281 .data = plaintext_hash,
282 .len = 512
283 },
284 .digest = {
285 .data = {
286 0xB9, 0xBA, 0x28, 0x48, 0x3C, 0xC2, 0xD3, 0x65,
287 0x4A, 0xD6, 0x00, 0x1D, 0xCE, 0x61, 0x64, 0x54,
288 0x45, 0x8C, 0x64, 0x0E, 0xED, 0x0E, 0xD8, 0x1C,
289 0x72, 0xCE, 0xD2, 0x44, 0x91, 0xC8, 0xEB, 0xC7,
290 0x99, 0xC5, 0xCA, 0x89, 0x72, 0x64, 0x96, 0x41,
291 0xC8, 0xEA, 0xB2, 0x4E, 0xD1, 0x21, 0x13, 0x49,
292 0x64, 0x4E, 0x15, 0x68, 0x12, 0x67, 0x26, 0x0F,
293 0x2C, 0x3C, 0x83, 0x25, 0x27, 0x86, 0xF0, 0xDB
294 },
295 .len = 64,
296 .truncated_len = 64
297 }
298 };
299
300 static const struct blockcipher_test_data
301 hmac_sha512_test_vector = {
302 .auth_algo = RTE_CRYPTO_AUTH_SHA512_HMAC,
303 .ciphertext = {
304 .data = plaintext_hash,
305 .len = 512
306 },
307 .auth_key = {
308 .data = {
309 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
310 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
311 0xDE, 0xF4, 0xDE, 0xAD, 0x26, 0xEB, 0xAB, 0x92,
312 0xFB, 0xBF, 0xB0, 0x8C, 0x29, 0x87, 0x90, 0xAC,
313 0x39, 0x8B, 0x5C, 0x49, 0x68, 0x1E, 0x3A, 0x05,
314 0xCC, 0x68, 0x5C, 0x76, 0xCB, 0x3C, 0x71, 0x89,
315 0xDE, 0xAA, 0x36, 0x44, 0x98, 0x93, 0x97, 0x1E,
316 0x6D, 0x53, 0x83, 0x87, 0xB3, 0xB7, 0x56, 0x41
317 },
318 .len = 64
319 },
320 .digest = {
321 .data = {
322 0xB8, 0x0B, 0x35, 0x97, 0x3F, 0x24, 0x3F, 0x05,
323 0x2A, 0x7F, 0x2F, 0xD8, 0xD7, 0x56, 0x58, 0xAD,
324 0x6F, 0x8D, 0x1F, 0x4C, 0x30, 0xF9, 0xA8, 0x29,
325 0x7A, 0xE0, 0x8D, 0x88, 0xF5, 0x2E, 0x94, 0xF5,
326 0x06, 0xF7, 0x5D, 0x57, 0x32, 0xA8, 0x49, 0x29,
327 0xEA, 0x6B, 0x6D, 0x95, 0xBD, 0x76, 0xF5, 0x79,
328 0x97, 0x37, 0x0F, 0xBE, 0xC2, 0x45, 0xA0, 0x87,
329 0xAF, 0x24, 0x27, 0x0C, 0x78, 0xBA, 0xBE, 0x20
330 },
331 .len = 64,
332 .truncated_len = 32
333 }
334 };
335
336 static const struct blockcipher_test_data
337 cmac_test_vector = {
338 .auth_algo = RTE_CRYPTO_AUTH_AES_CMAC,
339 .ciphertext = {
340 .data = plaintext_hash,
341 .len = 512
342 },
343 .auth_key = {
344 .data = {
345 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
346 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
347 },
348 .len = 16
349 },
350 .digest = {
351 .data = {
352 0x4C, 0x77, 0x87, 0xA0, 0x78, 0x8E, 0xEA, 0x96,
353 0xC1, 0xEB, 0x1E, 0x4E, 0x95, 0x8F, 0xED, 0x27
354 },
355 .len = 16,
356 .truncated_len = 16
357 }
358 };
359
360 static const struct blockcipher_test_data
361 cmac_test_vector_12 = {
362 .auth_algo = RTE_CRYPTO_AUTH_AES_CMAC,
363 .ciphertext = {
364 .data = plaintext_hash,
365 .len = 512
366 },
367 .auth_key = {
368 .data = {
369 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
370 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
371 },
372 .len = 16
373 },
374 .digest = {
375 .data = {
376 0x4C, 0x77, 0x87, 0xA0, 0x78, 0x8E, 0xEA, 0x96,
377 0xC1, 0xEB, 0x1E, 0x4E, 0x95, 0x8F, 0xED, 0x27
378 },
379 .len = 12,
380 .truncated_len = 12
381 }
382 };
383
384 static const struct blockcipher_test_case hash_test_cases[] = {
385 {
386 .test_descr = "MD5 Digest",
387 .test_data = &md5_test_vector,
388 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
389 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
390 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
391 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
392 },
393 {
394 .test_descr = "MD5 Digest Verify",
395 .test_data = &md5_test_vector,
396 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
397 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
398 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
399 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
400 },
401 {
402 .test_descr = "HMAC-MD5 Digest",
403 .test_data = &hmac_md5_test_vector,
404 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
405 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
406 BLOCKCIPHER_TEST_TARGET_PMD_MB |
407 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
408 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
409 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
410 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
411 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
412 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
413 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
414 },
415 {
416 .test_descr = "HMAC-MD5 Digest Verify",
417 .test_data = &hmac_md5_test_vector,
418 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
419 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
420 BLOCKCIPHER_TEST_TARGET_PMD_MB |
421 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
422 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
423 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
424 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
425 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
426 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
427 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
428 },
429 {
430 .test_descr = "SHA1 Digest",
431 .test_data = &sha1_test_vector,
432 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
433 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
434 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
435 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
436 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
437 BLOCKCIPHER_TEST_TARGET_PMD_MB |
438 #endif
439 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
440 },
441 {
442 .test_descr = "SHA1 Digest Verify",
443 .test_data = &sha1_test_vector,
444 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
445 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
446 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
447 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
448 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
449 BLOCKCIPHER_TEST_TARGET_PMD_MB |
450 #endif
451 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
452 },
453 {
454 .test_descr = "HMAC-SHA1 Digest",
455 .test_data = &hmac_sha1_test_vector,
456 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
457 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
458 BLOCKCIPHER_TEST_TARGET_PMD_MB |
459 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
460 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
461 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
462 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
463 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
464 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
465 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
466 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
467 },
468 {
469 .test_descr = "HMAC-SHA1 Digest Scatter Gather",
470 .test_data = &hmac_sha1_test_vector,
471 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
472 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG,
473 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
474 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
475 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
476 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
477 },
478 {
479 .test_descr = "HMAC-SHA1 Digest Verify",
480 .test_data = &hmac_sha1_test_vector,
481 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
482 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
483 BLOCKCIPHER_TEST_TARGET_PMD_MB |
484 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
485 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
486 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
487 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
488 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
489 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
490 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
491 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
492 },
493 {
494 .test_descr = "HMAC-SHA1 Digest Verify Scatter Gather",
495 .test_data = &hmac_sha1_test_vector,
496 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
497 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG,
498 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
499 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
500 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
501 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
502 },
503 {
504 .test_descr = "SHA224 Digest",
505 .test_data = &sha224_test_vector,
506 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
507 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
508 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
509 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
510 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
511 BLOCKCIPHER_TEST_TARGET_PMD_MB |
512 #endif
513 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
514 },
515 {
516 .test_descr = "SHA224 Digest Verify",
517 .test_data = &sha224_test_vector,
518 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
519 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
520 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
521 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
522 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
523 BLOCKCIPHER_TEST_TARGET_PMD_MB |
524 #endif
525 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
526 },
527 {
528 .test_descr = "HMAC-SHA224 Digest",
529 .test_data = &hmac_sha224_test_vector,
530 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
531 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
532 BLOCKCIPHER_TEST_TARGET_PMD_MB |
533 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
534 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
535 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
536 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
537 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
538 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
539 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
540 },
541 {
542 .test_descr = "HMAC-SHA224 Digest Verify",
543 .test_data = &hmac_sha224_test_vector,
544 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
545 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
546 BLOCKCIPHER_TEST_TARGET_PMD_MB |
547 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
548 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
549 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
550 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
551 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
552 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
553 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
554 },
555 {
556 .test_descr = "SHA256 Digest",
557 .test_data = &sha256_test_vector,
558 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
559 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
560 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
561 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
562 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
563 BLOCKCIPHER_TEST_TARGET_PMD_MB |
564 #endif
565 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
566 },
567 {
568 .test_descr = "SHA256 Digest Verify",
569 .test_data = &sha256_test_vector,
570 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
571 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
572 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
573 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
574 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
575 BLOCKCIPHER_TEST_TARGET_PMD_MB |
576 #endif
577 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
578 },
579 {
580 .test_descr = "HMAC-SHA256 Digest",
581 .test_data = &hmac_sha256_test_vector,
582 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
583 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
584 BLOCKCIPHER_TEST_TARGET_PMD_MB |
585 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
586 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
587 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
588 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
589 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
590 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
591 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
592 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
593 },
594 {
595 .test_descr = "HMAC-SHA256 Digest Verify",
596 .test_data = &hmac_sha256_test_vector,
597 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
598 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
599 BLOCKCIPHER_TEST_TARGET_PMD_MB |
600 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
601 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
602 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
603 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
604 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
605 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
606 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
607 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
608 },
609 {
610 .test_descr = "SHA384 Digest",
611 .test_data = &sha384_test_vector,
612 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
613 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
614 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
615 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
616 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
617 BLOCKCIPHER_TEST_TARGET_PMD_MB |
618 #endif
619 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
620 },
621 {
622 .test_descr = "SHA384 Digest Verify",
623 .test_data = &sha384_test_vector,
624 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
625 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
626 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
627 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
628 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
629 BLOCKCIPHER_TEST_TARGET_PMD_MB |
630 #endif
631 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
632 },
633 {
634 .test_descr = "HMAC-SHA384 Digest",
635 .test_data = &hmac_sha384_test_vector,
636 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
637 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
638 BLOCKCIPHER_TEST_TARGET_PMD_MB |
639 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
640 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
641 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
642 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
643 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
644 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
645 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
646 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
647 },
648 {
649 .test_descr = "HMAC-SHA384 Digest Verify",
650 .test_data = &hmac_sha384_test_vector,
651 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
652 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
653 BLOCKCIPHER_TEST_TARGET_PMD_MB |
654 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
655 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
656 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
657 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
658 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
659 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
660 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
661 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
662 },
663 {
664 .test_descr = "SHA512 Digest",
665 .test_data = &sha512_test_vector,
666 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
667 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
668 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
669 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
670 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
671 BLOCKCIPHER_TEST_TARGET_PMD_MB |
672 #endif
673 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
674 },
675 {
676 .test_descr = "SHA512 Digest Verify",
677 .test_data = &sha512_test_vector,
678 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
679 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
680 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
681 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
682 #if IMB_VERSION_NUM >= IMB_VERSION(0, 52, 0)
683 BLOCKCIPHER_TEST_TARGET_PMD_MB |
684 #endif
685 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
686 },
687 {
688 .test_descr = "HMAC-SHA512 Digest",
689 .test_data = &hmac_sha512_test_vector,
690 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
691 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
692 BLOCKCIPHER_TEST_TARGET_PMD_MB |
693 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
694 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
695 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
696 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
697 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
698 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
699 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
700 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
701 },
702 {
703 .test_descr = "HMAC-SHA512 Digest Verify",
704 .test_data = &hmac_sha512_test_vector,
705 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
706 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
707 BLOCKCIPHER_TEST_TARGET_PMD_MB |
708 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
709 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
710 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
711 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
712 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
713 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
714 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
715 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
716 },
717 {
718 .test_descr = "CMAC Digest 12B",
719 .test_data = &cmac_test_vector_12,
720 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
721 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
722 BLOCKCIPHER_TEST_TARGET_PMD_QAT
723 },
724 {
725 .test_descr = "CMAC Digest Verify 12B",
726 .test_data = &cmac_test_vector_12,
727 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
728 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
729 BLOCKCIPHER_TEST_TARGET_PMD_QAT
730 },
731 {
732 .test_descr = "CMAC Digest 16B",
733 .test_data = &cmac_test_vector,
734 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_GEN,
735 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
736 BLOCKCIPHER_TEST_TARGET_PMD_QAT
737 },
738 {
739 .test_descr = "CMAC Digest Verify 16B",
740 .test_data = &cmac_test_vector,
741 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY,
742 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
743 BLOCKCIPHER_TEST_TARGET_PMD_QAT
744 }
745 };
746
747 #endif /* TEST_CRYPTODEV_HASH_TEST_VECTORS_H_ */