1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2016-2019 Intel Corporation
5 #ifndef TEST_CRYPTODEV_AES_TEST_VECTORS_H_
6 #define TEST_CRYPTODEV_AES_TEST_VECTORS_H_
9 static const uint8_t plaintext_aes128ctr[] = {
10 0x6B, 0xC1, 0xBE, 0xE2, 0x2E, 0x40, 0x9F, 0x96,
11 0xE9, 0x3D, 0x7E, 0x11, 0x73, 0x93, 0x17, 0x2A,
12 0xAE, 0x2D, 0x8A, 0x57, 0x1E, 0x03, 0xAC, 0x9C,
13 0x9E, 0xB7, 0x6F, 0xAC, 0x45, 0xAF, 0x8E, 0x51,
14 0x30, 0xC8, 0x1C, 0x46, 0xA3, 0x5C, 0xE4, 0x11,
15 0xE5, 0xFB, 0xC1, 0x19, 0x1A, 0x0A, 0x52, 0xEF,
16 0xF6, 0x9F, 0x24, 0x45, 0xDF, 0x4F, 0x9B, 0x17,
17 0xAD, 0x2B, 0x41, 0x7B, 0xE6, 0x6C, 0x37, 0x10
20 static const uint8_t ciphertext64_aes128ctr[] = {
21 0x87, 0x4D, 0x61, 0x91, 0xB6, 0x20, 0xE3, 0x26,
22 0x1B, 0xEF, 0x68, 0x64, 0x99, 0x0D, 0xB6, 0xCE,
23 0x98, 0x06, 0xF6, 0x6B, 0x79, 0x70, 0xFD, 0xFF,
24 0x86, 0x17, 0x18, 0x7B, 0xB9, 0xFF, 0xFD, 0xFF,
25 0x5A, 0xE4, 0xDF, 0x3E, 0xDB, 0xD5, 0xD3, 0x5E,
26 0x5B, 0x4F, 0x09, 0x02, 0x0D, 0xB0, 0x3E, 0xAB,
27 0x1E, 0x03, 0x1D, 0xDA, 0x2F, 0xBE, 0x03, 0xD1,
28 0x79, 0x21, 0x70, 0xA0, 0xF3, 0x00, 0x9C, 0xEE
31 static const uint8_t ciphertext64_aes128ctr_IV_12bytes[] = {
32 0x28, 0x80, 0x28, 0xC7, 0x15, 0x99, 0xC5, 0xA8,
33 0xDD, 0x53, 0xC2, 0x67, 0x1B, 0x86, 0xB8, 0x13,
34 0xAB, 0x25, 0x39, 0x7A, 0xD2, 0x1F, 0x8B, 0x4B,
35 0x94, 0x89, 0x2B, 0x65, 0xCF, 0x89, 0x1E, 0xDD,
36 0xD4, 0x7C, 0xFD, 0x8D, 0x0E, 0xCD, 0x23, 0xA4,
37 0xEB, 0x8C, 0x05, 0x58, 0x45, 0x4A, 0x63, 0x44,
38 0x11, 0x42, 0x07, 0x17, 0xB4, 0xD2, 0xCC, 0x75,
39 0xB7, 0x23, 0x99, 0xA9, 0xC5, 0x89, 0x7F, 0x66
42 static const uint8_t plaintext_aes_docsis_bpi_cfb[] = {
43 0x00, 0x01, 0x02, 0x88, 0xEE, 0x59, 0x7E
46 static const uint8_t ciphertext_aes_docsis_bpi_cfb[] = {
47 0xFC, 0x68, 0xA3, 0x55, 0x60, 0x37, 0xDC
50 static const uint8_t plaintext_aes_docsis_bpi_cbc_cfb[] = {
51 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
52 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x91,
56 static const uint8_t ciphertext_aes_docsis_bpi_cbc_cfb[] = {
57 0x9D, 0xD1, 0x67, 0x4B, 0xBA, 0x61, 0x10, 0x1B,
58 0x56, 0x75, 0x64, 0x74, 0x36, 0x4F, 0x10, 0x1D,
62 static const uint8_t plaintext_aes192ctr[] = {
63 0x01, 0x0F, 0x10, 0x1F, 0x20, 0x1C, 0x0E, 0xB8,
64 0xFB, 0x5C, 0xCD, 0xCC, 0x1F, 0xF9, 0xAF, 0x0B,
65 0x95, 0x03, 0x74, 0x99, 0x49, 0xE7, 0x62, 0x55,
66 0xDA, 0xEA, 0x13, 0x20, 0x1D, 0xC6, 0xCC, 0xCC,
67 0xD1, 0x70, 0x75, 0x47, 0x02, 0x2F, 0xFB, 0x86,
68 0xBB, 0x6B, 0x23, 0xD2, 0xC9, 0x74, 0xD7, 0x7B,
69 0x08, 0x03, 0x3B, 0x79, 0x39, 0xBB, 0x91, 0x29,
70 0xDA, 0x14, 0x39, 0x8D, 0xFF, 0x81, 0x50, 0x96,
73 static const uint8_t ciphertext64_aes192ctr[] = {
74 0x4A, 0x6C, 0xC8, 0xCC, 0x96, 0x2A, 0x13, 0x84,
75 0x1C, 0x36, 0x88, 0xE9, 0xE5, 0x94, 0x70, 0xB2,
76 0x14, 0x5B, 0x13, 0x80, 0xEA, 0xD8, 0x8D, 0x37,
77 0xFD, 0x70, 0xA8, 0x83, 0xE8, 0x2B, 0x88, 0x1E,
78 0xBA, 0x94, 0x3F, 0xF6, 0xB3, 0x1F, 0xDE, 0x34,
79 0xF3, 0x5B, 0x80, 0xE9, 0xAB, 0xF5, 0x1C, 0x29,
80 0xB6, 0xD9, 0x76, 0x2B, 0x06, 0xC6, 0x74, 0xF1,
81 0x59, 0x5E, 0x9E, 0xA5, 0x7B, 0x2D, 0xD7, 0xF0
84 static const uint8_t ciphertext64_aes192ctr_IV_12bytes[] = {
85 0x67, 0x65, 0xa9, 0xee, 0xfd, 0x31, 0x62, 0xfc,
86 0xad, 0xfd, 0xc7, 0x25, 0xb7, 0x25, 0x16, 0xbe,
87 0x25, 0xce, 0xc0, 0x1d, 0xda, 0xa9, 0xd3, 0xda,
88 0x1b, 0x7d, 0x68, 0x6a, 0x6f, 0x06, 0xea, 0x47,
89 0xa0, 0xe0, 0x15, 0xf4, 0xbd, 0x1b, 0x70, 0x34,
90 0xd4, 0x6d, 0x1c, 0x84, 0x17, 0x91, 0x46, 0x0c,
91 0xe8, 0xbc, 0x7a, 0xfb, 0x9f, 0x2a, 0x8f, 0xb4,
92 0xd4, 0xf3, 0x6e, 0x5b, 0x75, 0xa0, 0xce, 0x32
95 static const uint8_t plaintext_aes256ctr[] = {
96 0x6B, 0xC1, 0xBE, 0xE2, 0x2E, 0x40, 0x9F, 0x96,
97 0xE9, 0x3D, 0x7E, 0x11, 0x73, 0x93, 0x17, 0x2A,
98 0xAE, 0x2D, 0x8A, 0x57, 0x1E, 0x03, 0xAC, 0x9C,
99 0x9E, 0xB7, 0x6F, 0xAC, 0x45, 0xAF, 0x8E, 0x51,
100 0x30, 0xC8, 0x1C, 0x46, 0xA3, 0x5C, 0xE4, 0x11,
101 0xE5, 0xFB, 0xC1, 0x19, 0x1A, 0x0A, 0x52, 0xEF,
102 0xF6, 0x9F, 0x24, 0x45, 0xDF, 0x4F, 0x9B, 0x17,
103 0xAD, 0x2B, 0x41, 0x7B, 0xE6, 0x6C, 0x37, 0x10
106 static const uint8_t ciphertext64_aes256ctr[] = {
107 0x60, 0x1E, 0xC3, 0x13, 0x77, 0x57, 0x89, 0xA5,
108 0xB7, 0xA7, 0xF5, 0x04, 0xBB, 0xF3, 0xD2, 0x28,
109 0xF4, 0x43, 0xE3, 0xCA, 0x4D, 0x62, 0xB5, 0x9A,
110 0xCA, 0x84, 0xE9, 0x90, 0xCA, 0xCA, 0xF5, 0xC5,
111 0x2B, 0x09, 0x30, 0xDA, 0xA2, 0x3D, 0xE9, 0x4C,
112 0xE8, 0x70, 0x17, 0xBA, 0x2D, 0x84, 0x98, 0x8D,
113 0xDF, 0xC9, 0xC5, 0x8D, 0xB6, 0x7A, 0xAD, 0xA6,
114 0x13, 0xC2, 0xDD, 0x08, 0x45, 0x79, 0x41, 0xA6
117 static const uint8_t ciphertext64_aes256ctr_IV_12bytes[] = {
118 0x7B, 0x7A, 0x7D, 0x83, 0x85, 0xF8, 0x81, 0xF3,
119 0x32, 0x33, 0xD9, 0xFB, 0x04, 0x73, 0xD4, 0x2F,
120 0x70, 0xDE, 0x90, 0x3E, 0xD0, 0xA9, 0x93, 0x8A,
121 0x91, 0xF3, 0xB5, 0x29, 0x4D, 0x2A, 0x74, 0xD0,
122 0xDC, 0x4E, 0x5C, 0x9B, 0x97, 0x24, 0xD8, 0x02,
123 0xFE, 0xAB, 0x38, 0xE8, 0x73, 0x51, 0x29, 0x7E,
124 0xF1, 0xF9, 0x40, 0x78, 0xB1, 0x04, 0x7A, 0x78,
125 0x61, 0x07, 0x47, 0xE6, 0x8C, 0x0F, 0xA8, 0x76
128 static const uint8_t plaintext_aes_common[] = {
129 "What a lousy earth! He wondered how many people "
130 "were destitute that same night even in his own "
131 "prosperous country, how many homes were "
132 "shanties, how many husbands were drunk and "
133 "wives socked, and how many children were "
134 "bullied, abused, or abandoned. How many "
135 "families hungered for food they could not "
136 "afford to buy? How many hearts were broken? How "
137 "many suicides would take place that same night, "
138 "how many people would go insane? How many "
139 "cockroaches and landlords would triumph? How "
140 "many winners were losers, successes failures, "
141 "and rich men poor men? How many wise guys were "
142 "stupid? How many happy endings were unhappy "
143 "endings? How many honest men were liars, brave "
144 "men cowards, loyal men traitors, how many "
145 "sainted men were corrupt, how many people in "
146 "positions of trust had sold their souls to "
147 "bodyguards, how many had never had souls? How "
148 "many straight-and-narrow paths were crooked "
149 "paths? How many best families were worst "
150 "families and how many good people were bad "
151 "people? When you added them all up and then "
152 "subtracted, you might be left with only the "
153 "children, and perhaps with Albert Einstein and "
154 "an old violinist or sculptor somewhere."
157 static const uint8_t ciphertext512_aes128cbc[] = {
158 0x8B, 0x4D, 0xDA, 0x1B, 0xCF, 0x04, 0xA0, 0x31,
159 0xB4, 0xBF, 0xBD, 0x68, 0x43, 0x20, 0x7E, 0x76,
160 0xB1, 0x96, 0x8B, 0xA2, 0x7C, 0xA2, 0x83, 0x9E,
161 0x39, 0x5A, 0x2F, 0x7E, 0x92, 0xB4, 0x48, 0x1A,
162 0x3F, 0x6B, 0x5D, 0xDF, 0x52, 0x85, 0x5F, 0x8E,
163 0x42, 0x3C, 0xFB, 0xE9, 0x1A, 0x24, 0xD6, 0x08,
164 0xDD, 0xFD, 0x16, 0xFB, 0xE9, 0x55, 0xEF, 0xF0,
165 0xA0, 0x8D, 0x13, 0xAB, 0x81, 0xC6, 0x90, 0x01,
166 0xB5, 0x18, 0x84, 0xB3, 0xF6, 0xE6, 0x11, 0x57,
167 0xD6, 0x71, 0xC6, 0x3C, 0x3F, 0x2F, 0x33, 0xEE,
168 0x24, 0x42, 0x6E, 0xAC, 0x0B, 0xCA, 0xEC, 0xF9,
169 0x84, 0xF8, 0x22, 0xAA, 0x60, 0xF0, 0x32, 0xA9,
170 0x75, 0x75, 0x3B, 0xCB, 0x70, 0x21, 0x0A, 0x8D,
171 0x0F, 0xE0, 0xC4, 0x78, 0x2B, 0xF8, 0x97, 0xE3,
172 0xE4, 0x26, 0x4B, 0x29, 0xDA, 0x88, 0xCD, 0x46,
173 0xEC, 0xAA, 0xF9, 0x7F, 0xF1, 0x15, 0xEA, 0xC3,
174 0x87, 0xE6, 0x31, 0xF2, 0xCF, 0xDE, 0x4D, 0x80,
175 0x70, 0x91, 0x7E, 0x0C, 0xF7, 0x26, 0x3A, 0x92,
176 0x4F, 0x18, 0x83, 0xC0, 0x8F, 0x59, 0x01, 0xA5,
177 0x88, 0xD1, 0xDB, 0x26, 0x71, 0x27, 0x16, 0xF5,
178 0xEE, 0x10, 0x82, 0xAC, 0x68, 0x26, 0x9B, 0xE2,
179 0x6D, 0xD8, 0x9A, 0x80, 0xDF, 0x04, 0x31, 0xD5,
180 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
181 0x58, 0x34, 0x85, 0x61, 0x1C, 0x42, 0x10, 0x76,
182 0x73, 0x02, 0x42, 0xC9, 0x23, 0x18, 0x8E, 0xB4,
183 0x6F, 0xB4, 0xA3, 0x54, 0x6E, 0x88, 0x3B, 0x62,
184 0x7C, 0x02, 0x8D, 0x4C, 0x9F, 0xC8, 0x45, 0xF4,
185 0xC9, 0xDE, 0x4F, 0xEB, 0x22, 0x83, 0x1B, 0xE4,
186 0x49, 0x37, 0xE4, 0xAD, 0xE7, 0xCD, 0x21, 0x54,
187 0xBC, 0x1C, 0xC2, 0x04, 0x97, 0xB4, 0x10, 0x61,
188 0xF0, 0xE4, 0xEF, 0x27, 0x63, 0x3A, 0xDA, 0x91,
189 0x41, 0x25, 0x62, 0x1C, 0x5C, 0xB6, 0x38, 0x4A,
190 0x88, 0x71, 0x59, 0x5A, 0x8D, 0xA0, 0x09, 0xAF,
191 0x72, 0x94, 0xD7, 0x79, 0x5C, 0x60, 0x7C, 0x8F,
192 0x4C, 0xF5, 0xD9, 0xA1, 0x39, 0x6D, 0x81, 0x28,
193 0xEF, 0x13, 0x28, 0xDF, 0xF5, 0x3E, 0xF7, 0x8E,
194 0x09, 0x9C, 0x78, 0x18, 0x79, 0xB8, 0x68, 0xD7,
195 0xA8, 0x29, 0x62, 0xAD, 0xDE, 0xE1, 0x61, 0x76,
196 0x1B, 0x05, 0x16, 0xCD, 0xBF, 0x02, 0x8E, 0xA6,
197 0x43, 0x6E, 0x92, 0x55, 0x4F, 0x60, 0x9C, 0x03,
198 0xB8, 0x4F, 0xA3, 0x02, 0xAC, 0xA8, 0xA7, 0x0C,
199 0x1E, 0xB5, 0x6B, 0xF8, 0xC8, 0x4D, 0xDE, 0xD2,
200 0xB0, 0x29, 0x6E, 0x40, 0xE6, 0xD6, 0xC9, 0xE6,
201 0xB9, 0x0F, 0xB6, 0x63, 0xF5, 0xAA, 0x2B, 0x96,
202 0xA7, 0x16, 0xAC, 0x4E, 0x0A, 0x33, 0x1C, 0xA6,
203 0xE6, 0xBD, 0x8A, 0xCF, 0x40, 0xA9, 0xB2, 0xFA,
204 0x63, 0x27, 0xFD, 0x9B, 0xD9, 0xFC, 0xD5, 0x87,
205 0x8D, 0x4C, 0xB6, 0xA4, 0xCB, 0xE7, 0x74, 0x55,
206 0xF4, 0xFB, 0x41, 0x25, 0xB5, 0x4B, 0x0A, 0x1B,
207 0xB1, 0xD6, 0xB7, 0xD9, 0x47, 0x2A, 0xC3, 0x98,
208 0x6A, 0xC4, 0x03, 0x73, 0x1F, 0x93, 0x6E, 0x53,
209 0x19, 0x25, 0x64, 0x15, 0x83, 0xF9, 0x73, 0x2A,
210 0x74, 0xB4, 0x93, 0x69, 0xC4, 0x72, 0xFC, 0x26,
211 0xA2, 0x9F, 0x43, 0x45, 0xDD, 0xB9, 0xEF, 0x36,
212 0xC8, 0x3A, 0xCD, 0x99, 0x9B, 0x54, 0x1A, 0x36,
213 0xC1, 0x59, 0xF8, 0x98, 0xA8, 0xCC, 0x28, 0x0D,
214 0x73, 0x4C, 0xEE, 0x98, 0xCB, 0x7C, 0x58, 0x7E,
215 0x20, 0x75, 0x1E, 0xB7, 0xC9, 0xF8, 0xF2, 0x0E,
216 0x63, 0x9E, 0x05, 0x78, 0x1A, 0xB6, 0xA8, 0x7A,
217 0xF9, 0x98, 0x6A, 0xA6, 0x46, 0x84, 0x2E, 0xF6,
218 0x4B, 0xDC, 0x9B, 0x8F, 0x9B, 0x8F, 0xEE, 0xB4,
219 0xAA, 0x3F, 0xEE, 0xC0, 0x37, 0x27, 0x76, 0xC7,
220 0x95, 0xBB, 0x26, 0x74, 0x69, 0x12, 0x7F, 0xF1,
221 0xBB, 0xFF, 0xAE, 0xB5, 0x99, 0x6E, 0xCB, 0x0C
224 /* AES128-CTR-SHA1 test vector */
225 static const struct blockcipher_test_data aes_test_data_1 = {
226 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
229 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
230 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
236 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
237 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF
242 .data = plaintext_aes128ctr,
246 .data = ciphertext64_aes128ctr,
249 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
252 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
253 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
254 0xDE, 0xF4, 0xDE, 0xAD
260 0x9B, 0x6F, 0x0C, 0x43, 0xF5, 0xC1, 0x3E, 0xB0,
261 0xB1, 0x70, 0xB8, 0x2B, 0x33, 0x09, 0xD2, 0xB2,
262 0x56, 0x20, 0xFB, 0xFE
269 /** AES-192-CTR XCBC test vector */
270 static const struct blockcipher_test_data aes_test_data_2 = {
271 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
274 0xCB, 0xC5, 0xED, 0x5B, 0xE7, 0x7C, 0xBD, 0x8C,
275 0x50, 0xD9, 0x30, 0xF2, 0xB5, 0x6A, 0x0E, 0x5F,
276 0xAA, 0xAE, 0xAD, 0xA2, 0x1F, 0x49, 0x52, 0xD4
282 0x3F, 0x69, 0xA8, 0xCD, 0xE8, 0xF0, 0xEF, 0x40,
283 0xB8, 0x7A, 0x4B, 0xED, 0x2B, 0xAF, 0xBF, 0x57
288 .data = plaintext_aes192ctr,
292 .data = ciphertext64_aes192ctr,
295 .auth_algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC,
298 0x87, 0x61, 0x54, 0x53, 0xC4, 0x6D, 0xDD, 0x51,
299 0xE1, 0x9F, 0x86, 0x64, 0x39, 0x0A, 0xE6, 0x59
305 0xCA, 0x33, 0xB3, 0x3B, 0x16, 0x94, 0xAA, 0x55,
306 0x36, 0x6B, 0x45, 0x46
313 /** AES-256-CTR SHA1 test vector */
314 static const struct blockcipher_test_data aes_test_data_3 = {
315 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
318 0x60, 0x3D, 0xEB, 0x10, 0x15, 0xCA, 0x71, 0xBE,
319 0x2B, 0x73, 0xAE, 0xF0, 0x85, 0x7D, 0x77, 0x81,
320 0x1F, 0x35, 0x2C, 0x07, 0x3B, 0x61, 0x08, 0xD7,
321 0x2D, 0x98, 0x10, 0xA3, 0x09, 0x14, 0xDF, 0xF4
327 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
328 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF
333 .data = plaintext_aes256ctr,
337 .data = ciphertext64_aes256ctr,
340 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
343 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
344 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
345 0xDE, 0xF4, 0xDE, 0xAD
351 0x3B, 0x1A, 0x9D, 0x82, 0x35, 0xD5, 0xDD, 0x64,
352 0xCC, 0x1B, 0xA9, 0xC0, 0xEB, 0xE9, 0x42, 0x16,
353 0xE7, 0x87, 0xA3, 0xEF
360 /* AES128-CTR-SHA1 test vector (12-byte IV) */
361 static const struct blockcipher_test_data aes_test_data_1_IV_12_bytes = {
362 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
365 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
366 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
372 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
373 0xF8, 0xF9, 0xFA, 0xFB
378 .data = plaintext_aes128ctr,
382 .data = ciphertext64_aes128ctr_IV_12bytes,
385 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
388 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
389 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
390 0xDE, 0xF4, 0xDE, 0xAD
396 0x5C, 0x34, 0x6B, 0xE4, 0x9A, 0x7F, 0x4A, 0xC3,
397 0x82, 0xBE, 0xA0, 0x12, 0xD1, 0xF0, 0x15, 0xFA,
398 0xCF, 0xC8, 0x7F, 0x60
405 /** AES-192-CTR XCBC test vector (12-byte IV) */
406 static const struct blockcipher_test_data aes_test_data_2_IV_12_bytes = {
407 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
410 0xCB, 0xC5, 0xED, 0x5B, 0xE7, 0x7C, 0xBD, 0x8C,
411 0x50, 0xD9, 0x30, 0xF2, 0xB5, 0x6A, 0x0E, 0x5F,
412 0xAA, 0xAE, 0xAD, 0xA2, 0x1F, 0x49, 0x52, 0xD4
418 0x3F, 0x69, 0xA8, 0xCD, 0xE8, 0xF0, 0xEF, 0x40,
419 0xB8, 0x7A, 0x4B, 0xED
424 .data = plaintext_aes192ctr,
428 .data = ciphertext64_aes192ctr_IV_12bytes,
431 .auth_algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC,
434 0x87, 0x61, 0x54, 0x53, 0xC4, 0x6D, 0xDD, 0x51,
435 0xE1, 0x9F, 0x86, 0x64, 0x39, 0x0A, 0xE6, 0x59
441 0x0C, 0xA1, 0xA5, 0xAF, 0x3E, 0x41, 0xD2, 0xF4,
442 0x4C, 0x4C, 0xAB, 0x13
449 /** AES-256-CTR SHA1 test vector (12-byte IV) */
450 static const struct blockcipher_test_data aes_test_data_3_IV_12_bytes = {
451 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
454 0x60, 0x3D, 0xEB, 0x10, 0x15, 0xCA, 0x71, 0xBE,
455 0x2B, 0x73, 0xAE, 0xF0, 0x85, 0x7D, 0x77, 0x81,
456 0x1F, 0x35, 0x2C, 0x07, 0x3B, 0x61, 0x08, 0xD7,
457 0x2D, 0x98, 0x10, 0xA3, 0x09, 0x14, 0xDF, 0xF4
463 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
464 0xF8, 0xF9, 0xFA, 0xFB
469 .data = plaintext_aes256ctr,
473 .data = ciphertext64_aes256ctr_IV_12bytes,
476 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
479 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
480 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
481 0xDE, 0xF4, 0xDE, 0xAD
487 0x57, 0x9A, 0x52, 0x6E, 0x31, 0x17, 0x57, 0x49,
488 0xE7, 0xA1, 0x88, 0x6C, 0x2E, 0x36, 0x67, 0x63,
489 0x3F, 0x2D, 0xA3, 0xEF
495 /** AES-128-CBC SHA1 test vector */
496 static const struct blockcipher_test_data aes_test_data_4 = {
497 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
500 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
501 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
507 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
508 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
513 .data = plaintext_aes_common,
517 .data = ciphertext512_aes128cbc,
520 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
523 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
524 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
525 0xDE, 0xF4, 0xDE, 0xAD
531 0x9A, 0x4F, 0x88, 0x1B, 0xB6, 0x8F, 0xD8, 0x60,
532 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
533 0x18, 0x8C, 0x1D, 0x32
540 /** AES-128-CBC SHA256 test vector */
541 static const struct blockcipher_test_data aes_test_data_5 = {
542 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
545 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
546 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
552 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
553 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
558 .data = plaintext_aes_common,
562 .data = ciphertext512_aes128cbc,
565 .auth_algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
568 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
569 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
570 0x58, 0x34, 0x85, 0x61, 0x1C, 0x42, 0x10, 0x76,
571 0x9A, 0x4F, 0x88, 0x1B, 0xB6, 0x8F, 0xD8, 0x60
577 0xC8, 0x57, 0x57, 0x31, 0x03, 0xE0, 0x03, 0x55,
578 0x07, 0xC8, 0x9E, 0x7F, 0x48, 0x9A, 0x61, 0x9A,
579 0x68, 0xEE, 0x03, 0x0E, 0x71, 0x75, 0xC7, 0xF4,
580 0x2E, 0x45, 0x26, 0x32, 0x7C, 0x12, 0x15, 0x15
587 /** AES-128-CBC SHA512 test vector */
588 static const struct blockcipher_test_data aes_test_data_6 = {
589 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
592 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
593 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
599 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
600 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
605 .data = plaintext_aes_common,
609 .data = ciphertext512_aes128cbc,
612 .auth_algo = RTE_CRYPTO_AUTH_SHA512_HMAC,
615 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
616 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
617 0x58, 0x34, 0x85, 0x65, 0x1C, 0x42, 0x50, 0x76,
618 0x9A, 0xAF, 0x88, 0x1B, 0xB6, 0x8F, 0xF8, 0x60,
619 0xA2, 0x5A, 0x7F, 0x3F, 0xF4, 0x72, 0x70, 0xF1,
620 0xF5, 0x35, 0x4C, 0x3B, 0xDD, 0x90, 0x65, 0xB0,
621 0x47, 0x3A, 0x75, 0x61, 0x5C, 0xA2, 0x10, 0x76,
622 0x9A, 0xAF, 0x77, 0x5B, 0xB6, 0x7F, 0xF7, 0x60
628 0x5D, 0x54, 0x66, 0xC1, 0x6E, 0xBC, 0x04, 0xB8,
629 0x46, 0xB8, 0x08, 0x6E, 0xE0, 0xF0, 0x43, 0x48,
630 0x37, 0x96, 0x9C, 0xC6, 0x9C, 0xC2, 0x1E, 0xE8,
631 0xF2, 0x0C, 0x0B, 0xEF, 0x86, 0xA2, 0xE3, 0x70,
632 0x95, 0xC8, 0xB3, 0x06, 0x47, 0xA9, 0x90, 0xE8,
633 0xA0, 0xC6, 0x72, 0x69, 0x05, 0xC0, 0x0D, 0x0E,
634 0x21, 0x96, 0x65, 0x93, 0x74, 0x43, 0x2A, 0x1D,
635 0x2E, 0xBF, 0xC2, 0xC2, 0xEE, 0xCC, 0x2F, 0x0A
642 /** AES-128-CBC XCBC test vector */
643 static const struct blockcipher_test_data aes_test_data_7 = {
644 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
647 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
648 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
654 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
655 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
660 .data = plaintext_aes_common,
664 .data = ciphertext512_aes128cbc,
667 .auth_algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC,
670 0x87, 0x61, 0x54, 0x53, 0xC4, 0x6D, 0xDD, 0x51,
671 0xE1, 0x9F, 0x86, 0x64, 0x39, 0x0A, 0xE6, 0x59
677 0xE0, 0xAC, 0x9A, 0xC4, 0x22, 0x64, 0x35, 0x89,
678 0x77, 0x1D, 0x8B, 0x75
685 /** AES-128-CBC SHA224 test vector */
686 static const struct blockcipher_test_data aes_test_data_8 = {
687 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
690 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
691 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
697 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
698 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
703 .data = plaintext_aes_common,
707 .data = ciphertext512_aes128cbc,
710 .auth_algo = RTE_CRYPTO_AUTH_SHA224_HMAC,
713 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
714 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
715 0x58, 0x34, 0x85, 0x65, 0x1C, 0x42, 0x50, 0x76,
716 0x9A, 0xAF, 0x88, 0x1B, 0xB6, 0x8F, 0xF8, 0x60,
717 0xA2, 0x5A, 0x7F, 0x3F, 0xF4, 0x72, 0x70, 0xF1,
718 0xF5, 0x35, 0x4C, 0x3B, 0xDD, 0x90, 0x65, 0xB0,
719 0x47, 0x3A, 0x75, 0x61, 0x5C, 0xA2, 0x10, 0x76,
720 0x9A, 0xAF, 0x77, 0x5B, 0xB6, 0x7F, 0xF7, 0x60
726 0xA3, 0xCA, 0xC7, 0x1D, 0xA8, 0x61, 0x30, 0x98,
727 0x3B, 0x8F, 0x01, 0x19, 0xAE, 0x8D, 0xBD, 0x34,
728 0x40, 0x63, 0xA8, 0x2F, 0xDF, 0x85, 0x2B, 0x7F,
729 0x63, 0x7C, 0xDD, 0xB7
736 /** AES-128-CBC SHA384 test vector */
737 static const struct blockcipher_test_data aes_test_data_9 = {
738 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
741 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
742 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
748 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
749 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
754 .data = plaintext_aes_common,
758 .data = ciphertext512_aes128cbc,
761 .auth_algo = RTE_CRYPTO_AUTH_SHA384_HMAC,
764 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
765 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
766 0x58, 0x34, 0x85, 0x65, 0x1C, 0x42, 0x50, 0x76,
767 0x9A, 0xAF, 0x88, 0x1B, 0xB6, 0x8F, 0xF8, 0x60,
768 0xA2, 0x5A, 0x7F, 0x3F, 0xF4, 0x72, 0x70, 0xF1,
769 0xF5, 0x35, 0x4C, 0x3B, 0xDD, 0x90, 0x65, 0xB0,
770 0x47, 0x3A, 0x75, 0x61, 0x5C, 0xA2, 0x10, 0x76,
771 0x9A, 0xAF, 0x77, 0x5B, 0xB6, 0x7F, 0xF7, 0x60,
772 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
773 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
774 0x58, 0x34, 0x85, 0x65, 0x1C, 0x42, 0x50, 0x76,
775 0x9A, 0xAF, 0x88, 0x1B, 0xB6, 0x8F, 0xF8, 0x60,
776 0xA2, 0x5A, 0x7F, 0x3F, 0xF4, 0x72, 0x70, 0xF1,
777 0xF5, 0x35, 0x4C, 0x3B, 0xDD, 0x90, 0x65, 0xB0,
778 0x47, 0x3A, 0x75, 0x61, 0x5C, 0xA2, 0x10, 0x76,
779 0x9A, 0xAF, 0x77, 0x5B, 0xB6, 0x7F, 0xF7, 0x60
785 0x23, 0x60, 0xC8, 0xB1, 0x2D, 0x6C, 0x1E, 0x72,
786 0x25, 0xAB, 0xF9, 0xC3, 0x9A, 0xA9, 0x4F, 0x8C,
787 0x56, 0x38, 0x65, 0x0E, 0x74, 0xD5, 0x45, 0x9D,
788 0xA3, 0xFD, 0x7E, 0x6D, 0x9E, 0x74, 0x88, 0x9D,
789 0xA7, 0x12, 0x9D, 0xD8, 0x81, 0x3C, 0x86, 0x2F,
790 0x4D, 0xF9, 0x6F, 0x0A, 0xB0, 0xC9, 0xEB, 0x0B
797 static const uint8_t ciphertext512_aes192cbc[] = {
798 0x45, 0xEE, 0x9A, 0xEA, 0x3C, 0x03, 0xFC, 0x4C,
799 0x84, 0x36, 0xB0, 0xDA, 0xB0, 0xDC, 0xF3, 0x5B,
800 0x75, 0xA7, 0xBE, 0x0E, 0xC0, 0x8D, 0x6C, 0xF8,
801 0xC1, 0x0F, 0xD0, 0x35, 0x1D, 0x82, 0xAE, 0x7C,
802 0x57, 0xC5, 0x7A, 0x55, 0x87, 0x1B, 0xD4, 0x03,
803 0x0A, 0x64, 0xC9, 0xE0, 0xF4, 0xC7, 0x6F, 0x57,
804 0x52, 0xC6, 0x73, 0xBA, 0x84, 0x0B, 0x5B, 0x89,
805 0x21, 0xD2, 0x9B, 0x88, 0x68, 0xF5, 0xA9, 0x7F,
806 0x3F, 0x49, 0xEB, 0xF4, 0xD4, 0x52, 0xD2, 0x64,
807 0x80, 0xB2, 0x53, 0xDA, 0x19, 0xF6, 0x10, 0x24,
808 0x23, 0x26, 0x7A, 0x7C, 0x07, 0x57, 0x4B, 0x0E,
809 0x58, 0x49, 0x61, 0xD1, 0xDC, 0x9A, 0x32, 0x6B,
810 0x0F, 0x43, 0x9E, 0x4D, 0xB4, 0x07, 0x4E, 0xB3,
811 0x51, 0x74, 0xDE, 0x29, 0xBC, 0x98, 0xF9, 0xDF,
812 0x78, 0x9A, 0x18, 0x9C, 0xD6, 0x7A, 0x55, 0x7C,
813 0xE6, 0x1D, 0x5C, 0x1A, 0x99, 0xD2, 0xC3, 0x7B,
814 0x9F, 0x96, 0x74, 0x2D, 0xE0, 0xEF, 0xD1, 0xE3,
815 0x08, 0x9F, 0xAF, 0xE6, 0xED, 0xCA, 0xE1, 0xEA,
816 0x23, 0x6F, 0x7C, 0x81, 0xA8, 0xC0, 0x5B, 0x8B,
817 0x53, 0x90, 0x51, 0x2D, 0x0F, 0xF6, 0x7D, 0xA7,
818 0x1C, 0xBD, 0x83, 0x84, 0x54, 0xA4, 0x15, 0xFB,
819 0x3E, 0x25, 0xA7, 0x3A, 0x0A, 0x73, 0xD9, 0x88,
820 0x6F, 0x80, 0x78, 0x95, 0x7F, 0x60, 0xAA, 0x86,
821 0x8A, 0xFC, 0xDF, 0xC1, 0xCB, 0xDE, 0xBB, 0x25,
822 0x52, 0x20, 0xC6, 0x79, 0xD4, 0x0F, 0x25, 0xE7,
823 0xDB, 0xB2, 0x17, 0xA4, 0x6F, 0x3C, 0x6F, 0x91,
824 0xF6, 0x44, 0x1E, 0xB6, 0x85, 0xBC, 0x7A, 0x14,
825 0x10, 0x72, 0xBD, 0x16, 0x63, 0x39, 0x9E, 0x7B,
826 0x84, 0x5B, 0x17, 0x61, 0xB1, 0x5D, 0x82, 0x0B,
827 0x6D, 0x37, 0xD7, 0x79, 0xB8, 0x24, 0x91, 0x30,
828 0x82, 0x91, 0x02, 0xB1, 0x18, 0x4B, 0xE0, 0xF4,
829 0x13, 0x1B, 0xB2, 0x4C, 0xDA, 0xB8, 0x99, 0x96,
830 0x83, 0x2F, 0xBE, 0x53, 0x8D, 0xDE, 0xFA, 0xAD,
831 0xF6, 0x5C, 0xDB, 0xE5, 0x66, 0x26, 0x8F, 0x13,
832 0x2B, 0x76, 0x47, 0x73, 0xDE, 0x1A, 0x74, 0xA6,
833 0x30, 0xAF, 0x42, 0xA0, 0xE5, 0xD2, 0x8F, 0xC2,
834 0xED, 0x3E, 0x9E, 0x29, 0x54, 0x3C, 0xDE, 0x9F,
835 0x5D, 0x30, 0x2B, 0x63, 0xFB, 0xE3, 0xB1, 0x07,
836 0xEE, 0x74, 0x4A, 0xAF, 0xB1, 0x20, 0x8D, 0xEC,
837 0xE6, 0x78, 0x16, 0x8D, 0xA4, 0x6E, 0x34, 0x7D,
838 0x47, 0xFB, 0x0B, 0xC1, 0x32, 0xD7, 0x0D, 0x6C,
839 0x6F, 0x93, 0x9C, 0x5E, 0xEF, 0x1F, 0x9C, 0x45,
840 0x80, 0x6B, 0x74, 0xA6, 0x81, 0xF2, 0xF6, 0xFA,
841 0xAA, 0x9D, 0x4F, 0xCA, 0xB5, 0x90, 0x59, 0xB0,
842 0x3B, 0xF2, 0xF0, 0x75, 0xFD, 0x8A, 0xD8, 0x97,
843 0x65, 0x88, 0x56, 0x4C, 0x44, 0xDF, 0x73, 0xF7,
844 0x56, 0x9C, 0x48, 0x7E, 0xB0, 0x1F, 0x1D, 0x7D,
845 0x6A, 0x11, 0xF5, 0xC2, 0xF4, 0x17, 0xEF, 0x58,
846 0xD8, 0x2A, 0xAF, 0x56, 0x2F, 0xCF, 0xEC, 0xA4,
847 0x58, 0x8B, 0x60, 0xCE, 0xD4, 0x0F, 0x9C, 0x21,
848 0xEC, 0x3E, 0x74, 0x7B, 0x81, 0x3D, 0x69, 0xC6,
849 0x5E, 0x12, 0x83, 0xE9, 0xEF, 0x81, 0x58, 0x36,
850 0x6A, 0x60, 0x0F, 0x54, 0x28, 0x11, 0xF9, 0x64,
851 0x36, 0xAD, 0x79, 0xF5, 0x1C, 0x74, 0xD0, 0xC3,
852 0x7B, 0x61, 0xE1, 0x92, 0xB0, 0x13, 0x91, 0x87,
853 0x32, 0x1F, 0xF2, 0x5A, 0xDA, 0x25, 0x69, 0xEB,
854 0xD7, 0x32, 0x7F, 0xF5, 0x23, 0x21, 0x54, 0x47,
855 0x7B, 0x1B, 0x33, 0xB0, 0x3D, 0xF6, 0xE2, 0x7E,
856 0x3E, 0xA2, 0x9E, 0xCA, 0x48, 0x0B, 0x4A, 0x29,
857 0x81, 0xD4, 0x4E, 0xD5, 0x69, 0xFB, 0xCD, 0x37,
858 0x8A, 0xC1, 0x5B, 0x50, 0xFF, 0xB5, 0x7D, 0x43,
859 0x0F, 0xAE, 0xA6, 0xC2, 0xE5, 0x8F, 0x45, 0xB2,
860 0x85, 0x99, 0x02, 0xA2, 0x9B, 0xBE, 0x90, 0x43,
861 0x4F, 0x2F, 0x50, 0xE2, 0x77, 0x62, 0xD9, 0xCC
864 /** AES-192-CBC test vector */
865 static const struct blockcipher_test_data aes_test_data_10 = {
866 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
869 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
870 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
871 0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0
877 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
878 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
883 .data = plaintext_aes_common,
887 .data = ciphertext512_aes192cbc,
892 static const uint8_t ciphertext512_aes256cbc[] = {
893 0xF3, 0xDD, 0xF0, 0x0B, 0xFF, 0xA2, 0x6A, 0x04,
894 0xBE, 0xDA, 0x52, 0xA6, 0xFE, 0x6B, 0xA6, 0xA7,
895 0x48, 0x1D, 0x7D, 0x98, 0x65, 0xDB, 0xEF, 0x06,
896 0x26, 0xB5, 0x8E, 0xEB, 0x05, 0x0E, 0x77, 0x98,
897 0x17, 0x8E, 0xD0, 0xD4, 0x7B, 0x92, 0x8F, 0x5C,
898 0xD0, 0x74, 0x5C, 0xA8, 0x4B, 0x54, 0xB6, 0x2F,
899 0x83, 0x72, 0x2C, 0xFF, 0x72, 0xE9, 0xE4, 0x15,
900 0x4C, 0x32, 0xAF, 0xC8, 0xC9, 0x89, 0x3C, 0x6E,
901 0x31, 0xD5, 0xC0, 0x16, 0xC0, 0x31, 0x7D, 0x11,
902 0xAB, 0xCB, 0xDE, 0xD2, 0xD6, 0xAA, 0x76, 0x5E,
903 0xBA, 0xF6, 0xE2, 0x92, 0xCB, 0x86, 0x07, 0xFA,
904 0xD4, 0x9E, 0x83, 0xED, 0xFD, 0xB8, 0x70, 0x54,
905 0x6B, 0xBE, 0xEC, 0x72, 0xDD, 0x28, 0x5E, 0x95,
906 0x78, 0xA5, 0x28, 0x43, 0x3D, 0x6D, 0xB1, 0xD9,
907 0x69, 0x1F, 0xC9, 0x66, 0x0E, 0x32, 0x44, 0x08,
908 0xD2, 0xAE, 0x2C, 0x43, 0xF2, 0xD0, 0x7D, 0x26,
909 0x70, 0xE5, 0xA1, 0xCA, 0x37, 0xE9, 0x7D, 0xC7,
910 0xA3, 0xFA, 0x81, 0x91, 0x64, 0xAA, 0x64, 0x91,
911 0x9A, 0x95, 0x2D, 0xC9, 0xF9, 0xCE, 0xFE, 0x9F,
912 0xC4, 0xD8, 0x81, 0xBE, 0x57, 0x84, 0xC5, 0x02,
913 0xDB, 0x30, 0xC1, 0xD9, 0x0E, 0xA0, 0xA6, 0x00,
914 0xD6, 0xF3, 0x52, 0x7E, 0x0D, 0x23, 0x6B, 0x2B,
915 0x34, 0x99, 0x1F, 0x70, 0x27, 0x6D, 0x58, 0x84,
916 0x93, 0x77, 0xB8, 0x3E, 0xF1, 0x71, 0x58, 0x42,
917 0x8B, 0x2B, 0xC8, 0x6D, 0x05, 0x84, 0xFF, 0x4E,
918 0x85, 0xEF, 0x4A, 0x9D, 0x91, 0x6A, 0xD5, 0xE1,
919 0xAF, 0x01, 0xEB, 0x83, 0x8F, 0x23, 0x7C, 0x7F,
920 0x12, 0x91, 0x05, 0xF0, 0x4E, 0xD9, 0x17, 0x62,
921 0x75, 0xBB, 0xAC, 0x97, 0xEE, 0x3B, 0x4E, 0xC7,
922 0xE5, 0x92, 0xF8, 0x9D, 0x4C, 0xF9, 0xEE, 0x55,
923 0x18, 0xBB, 0xCC, 0xB4, 0xF2, 0x59, 0xB9, 0xFC,
924 0x7A, 0x0F, 0x98, 0xD4, 0x8B, 0xFE, 0xF7, 0x83,
925 0x46, 0xE2, 0x83, 0x33, 0x3E, 0x95, 0x8D, 0x17,
926 0x1E, 0x85, 0xF8, 0x8C, 0x51, 0xB0, 0x6C, 0xB5,
927 0x5E, 0x95, 0xBA, 0x4B, 0x69, 0x1B, 0x48, 0x69,
928 0x0B, 0x8F, 0xA5, 0x18, 0x13, 0xB9, 0x77, 0xD1,
929 0x80, 0x32, 0x32, 0x6D, 0x53, 0xA1, 0x95, 0x40,
930 0x96, 0x8A, 0xCC, 0xA3, 0x69, 0xF8, 0x9F, 0xB5,
931 0x8E, 0xD2, 0x68, 0x07, 0x4F, 0xA7, 0xEC, 0xF8,
932 0x20, 0x21, 0x58, 0xF8, 0xD8, 0x9E, 0x5F, 0x40,
933 0xBA, 0xB9, 0x76, 0x57, 0x3B, 0x17, 0xAD, 0xEE,
934 0xCB, 0xDF, 0x07, 0xC1, 0xDF, 0x66, 0xA8, 0x0D,
935 0xC2, 0xCE, 0x8F, 0x79, 0xC3, 0x32, 0xE0, 0x8C,
936 0xFE, 0x5A, 0xF3, 0x55, 0x27, 0x73, 0x6F, 0xA1,
937 0x54, 0xC6, 0xFC, 0x28, 0x9D, 0xBE, 0x97, 0xB9,
938 0x54, 0x97, 0x72, 0x3A, 0x61, 0xAF, 0x6F, 0xDE,
939 0xF8, 0x0E, 0xBB, 0x6B, 0x96, 0x84, 0xDD, 0x9B,
940 0x62, 0xBA, 0x47, 0xB5, 0xC9, 0x3B, 0x4E, 0x8C,
941 0x78, 0x2A, 0xCC, 0x0A, 0x69, 0x54, 0x25, 0x5E,
942 0x8B, 0xAC, 0x56, 0xD9, 0xFE, 0x48, 0xBA, 0xCE,
943 0xA9, 0xCE, 0xA6, 0x1D, 0xBF, 0x3E, 0x3C, 0x66,
944 0x40, 0x71, 0x79, 0xAD, 0x5B, 0x26, 0xAD, 0xBE,
945 0x58, 0x13, 0x64, 0x60, 0x7C, 0x05, 0xFC, 0xE3,
946 0x51, 0x7A, 0xF2, 0xCC, 0x54, 0x16, 0x2C, 0xA4,
947 0xCE, 0x5F, 0x59, 0x12, 0x77, 0xEB, 0xD9, 0x23,
948 0xE3, 0x86, 0xFB, 0xD7, 0x48, 0x76, 0x9D, 0xE3,
949 0x89, 0x87, 0x39, 0xFA, 0x7B, 0x21, 0x0B, 0x76,
950 0xB2, 0xED, 0x1C, 0x27, 0x4B, 0xD5, 0x27, 0x05,
951 0x8C, 0x7D, 0x58, 0x6C, 0xCA, 0xA5, 0x54, 0x9A,
952 0x0F, 0xCB, 0xE9, 0x88, 0x31, 0xAD, 0x49, 0xEE,
953 0x38, 0xFB, 0xC9, 0xFB, 0xB4, 0x7A, 0x00, 0x58,
954 0x20, 0x32, 0xD3, 0x53, 0x5A, 0xDD, 0x74, 0x95,
955 0x60, 0x59, 0x09, 0xAE, 0x7E, 0xEC, 0x74, 0xA3,
956 0xB7, 0x1C, 0x6D, 0xF2, 0xAE, 0x79, 0xA4, 0x7C
959 /** AES-256-CBC test vector */
960 static const struct blockcipher_test_data aes_test_data_11 = {
961 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
964 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
965 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
966 0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0,
967 0x37, 0x07, 0xB8, 0x23, 0xA2, 0xA3, 0xB5, 0x8D
973 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
974 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
979 .data = plaintext_aes_common,
983 .data = ciphertext512_aes256cbc,
988 /** AES-128-CBC SHA256 HMAC test vector (160 bytes) */
989 static const struct blockcipher_test_data aes_test_data_12 = {
990 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
993 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
994 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
1000 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1001 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1006 .data = plaintext_aes_common,
1010 .data = ciphertext512_aes128cbc,
1013 .auth_algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
1016 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
1017 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
1018 0x58, 0x34, 0x85, 0x61, 0x1C, 0x42, 0x10, 0x76,
1019 0x9A, 0x4F, 0x88, 0x1B, 0xB6, 0x8F, 0xD8, 0x60
1025 0x92, 0xEC, 0x65, 0x9A, 0x52, 0xCC, 0x50, 0xA5,
1026 0xEE, 0x0E, 0xDF, 0x1E, 0xA4, 0xC9, 0xC1, 0x04,
1027 0xD5, 0xDC, 0x78, 0x90, 0xF4, 0xE3, 0x35, 0x62,
1028 0xAD, 0x95, 0x45, 0x28, 0x5C, 0xF8, 0x8C, 0x0B
1035 /** AES-128-CBC SHA1 HMAC test vector (160 bytes) */
1036 static const struct blockcipher_test_data aes_test_data_13 = {
1037 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
1040 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
1041 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
1047 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1048 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1053 .data = plaintext_aes_common,
1057 .data = ciphertext512_aes128cbc,
1060 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
1063 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
1064 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
1065 0xDE, 0xF4, 0xDE, 0xAD
1071 0x4F, 0x16, 0xEA, 0xF7, 0x4A, 0x88, 0xD3, 0xE0,
1072 0x0E, 0x12, 0x8B, 0xE7, 0x05, 0xD0, 0x86, 0x48,
1073 0x22, 0x43, 0x30, 0xA7
1080 /** XTS-AES-128 test vector (2 keys * 128 bit) */
1081 static const uint8_t plaintext_aes128xts_16bytes[] = {
1082 0xEB, 0xAB, 0xCE, 0x95, 0xB1, 0x4D, 0x3C, 0x8D,
1083 0x6F, 0xB3, 0x50, 0x39, 0x07, 0x90, 0x31, 0x1C
1085 static const uint8_t ciphertext_aes128xts_16bytes[] = {
1086 0x77, 0x8A, 0xE8, 0xB4, 0x3C, 0xB9, 0x8D, 0x5A,
1087 0x82, 0x50, 0x81, 0xD5, 0xBE, 0x47, 0x1C, 0x63
1090 blockcipher_test_data aes_test_data_xts_key_32_pt_16 = {
1091 .crypto_algo = RTE_CRYPTO_CIPHER_AES_XTS,
1094 0xA1, 0xB9, 0x0C, 0xBA, 0x3F, 0x06, 0xAC, 0x35,
1095 0x3B, 0x2C, 0x34, 0x38, 0x76, 0x08, 0x17, 0x62,
1096 0x09, 0x09, 0x23, 0x02, 0x6E, 0x91, 0x77, 0x18,
1097 0x15, 0xF2, 0x9D, 0xAB, 0x01, 0x93, 0x2F, 0x2F
1103 0x4F, 0xAE, 0xF7, 0x11, 0x7C, 0xDA, 0x59, 0xC6,
1104 0x6E, 0x4B, 0x92, 0x01, 0x3E, 0x76, 0x8A, 0xD5
1109 .data = plaintext_aes128xts_16bytes,
1113 .data = ciphertext_aes128xts_16bytes,
1117 static const uint8_t plaintext_aes128xts_32bytes[] = {
1118 0xB0, 0x4D, 0x84, 0xDA, 0x85, 0x6B, 0x9A, 0x59,
1119 0xCE, 0x2D, 0x62, 0x67, 0x46, 0xF6, 0x89, 0xA8,
1120 0x05, 0x1D, 0xAC, 0xD6, 0xBC, 0xE3, 0xB9, 0x90,
1121 0xAA, 0x90, 0x1E, 0x40, 0x30, 0x64, 0x88, 0x79
1123 static const uint8_t ciphertext_aes128xts_32bytes[] = {
1124 0xF9, 0x41, 0x03, 0x9E, 0xBA, 0xB8, 0xCA, 0xC3,
1125 0x9D, 0x59, 0x24, 0x7C, 0xBB, 0xCB, 0x4D, 0x81,
1126 0x6C, 0x72, 0x6D, 0xAE, 0xD1, 0x15, 0x77, 0x69,
1127 0x2C, 0x55, 0xE4, 0xAC, 0x6D, 0x3E, 0x68, 0x20
1130 blockcipher_test_data aes_test_data_xts_key_32_pt_32 = {
1131 .crypto_algo = RTE_CRYPTO_CIPHER_AES_XTS,
1134 0x78, 0x3A, 0x83, 0xEC, 0x52, 0xA2, 0x74, 0x05,
1135 0xDF, 0xF9, 0xDE, 0x4C, 0x57, 0xF9, 0xC9, 0x79,
1136 0xB3, 0x60, 0xB6, 0xA5, 0xDF, 0x88, 0xD6, 0x7E,
1137 0xC1, 0xA0, 0x52, 0xE6, 0xF5, 0x82, 0xA7, 0x17
1143 0x88, 0x6E, 0x97, 0x5B, 0x29, 0xBD, 0xF6, 0xF0,
1144 0xC0, 0x1B, 0xB4, 0x7F, 0x61, 0xF6, 0xF0, 0xF5
1149 .data = plaintext_aes128xts_32bytes,
1153 .data = ciphertext_aes128xts_32bytes,
1158 /** XTS-AES-256 test vector (2 keys * 256 bit) */
1160 static const uint8_t plaintext_aes256xts_32bytes[] = {
1161 0x2E, 0xED, 0xEA, 0x52, 0xCD, 0x82, 0x15, 0xE1,
1162 0xAC, 0xC6, 0x47, 0xE8, 0x10, 0xBB, 0xC3, 0x64,
1163 0x2E, 0x87, 0x28, 0x7F, 0x8D, 0x2E, 0x57, 0xE3,
1164 0x6C, 0x0A, 0x24, 0xFB, 0xC1, 0x2A, 0x20, 0x2E
1166 static const uint8_t ciphertext_aes256xts_32bytes[] = {
1167 0xCB, 0xAA, 0xD0, 0xE2, 0xF6, 0xCE, 0xA3, 0xF5,
1168 0x0B, 0x37, 0xF9, 0x34, 0xD4, 0x6A, 0x9B, 0x13,
1169 0x0B, 0x9D, 0x54, 0xF0, 0x7E, 0x34, 0xF3, 0x6A,
1170 0xF7, 0x93, 0xE8, 0x6F, 0x73, 0xC6, 0xD7, 0xDB
1173 blockcipher_test_data aes_test_data_xts_key_64_pt_32 = {
1174 .crypto_algo = RTE_CRYPTO_CIPHER_AES_XTS,
1177 0x1E, 0xA6, 0x61, 0xC5, 0x8D, 0x94, 0x3A, 0x0E,
1178 0x48, 0x01, 0xE4, 0x2F, 0x4B, 0x09, 0x47, 0x14,
1179 0x9E, 0x7F, 0x9F, 0x8E, 0x3E, 0x68, 0xD0, 0xC7,
1180 0x50, 0x52, 0x10, 0xBD, 0x31, 0x1A, 0x0E, 0x7C,
1181 0xD6, 0xE1, 0x3F, 0xFD, 0xF2, 0x41, 0x8D, 0x8D,
1182 0x19, 0x11, 0xC0, 0x04, 0xCD, 0xA5, 0x8D, 0xA3,
1183 0xD6, 0x19, 0xB7, 0xE2, 0xB9, 0x14, 0x1E, 0x58,
1184 0x31, 0x8E, 0xEA, 0x39, 0x2C, 0xF4, 0x1B, 0x08
1190 0xAD, 0xF8, 0xD9, 0x26, 0x27, 0x46, 0x4A, 0xD2,
1191 0xF0, 0x42, 0x8E, 0x84, 0xA9, 0xF8, 0x75, 0x64
1196 .data = plaintext_aes256xts_32bytes,
1200 .data = ciphertext_aes256xts_32bytes,
1204 static const uint8_t plaintext_aes256xts_48bytes[] = {
1205 0xBB, 0xB2, 0x34, 0xDB, 0x01, 0xBE, 0x79, 0xD3,
1206 0xDC, 0x7D, 0xCF, 0x49, 0xBC, 0x53, 0xB8, 0xEF,
1207 0xC6, 0x2F, 0xE7, 0x17, 0x94, 0x39, 0x06, 0x1D,
1208 0x73, 0xA6, 0xB2, 0x0E, 0xDB, 0x9B, 0x7D, 0xA0,
1209 0x45, 0x0B, 0x19, 0xF0, 0x20, 0x82, 0x02, 0x09,
1210 0xAF, 0xE0, 0x81, 0x12, 0xAE, 0x4A, 0xFD, 0xD3
1212 static const uint8_t ciphertext_aes256xts_48bytes[] = {
1213 0xCB, 0xF6, 0x88, 0x48, 0xC4, 0x20, 0x49, 0xEF,
1214 0xB1, 0x46, 0xE2, 0xD1, 0xE4, 0x11, 0x5F, 0x62,
1215 0xE4, 0xFA, 0xA4, 0xEF, 0xFF, 0x19, 0x8F, 0x1A,
1216 0x0A, 0xA0, 0xC9, 0x8B, 0xA0, 0x2C, 0xC4, 0x4D,
1217 0xA3, 0x76, 0xD7, 0x62, 0xD6, 0x15, 0x1F, 0x23,
1218 0x45, 0x87, 0xBF, 0x12, 0x8B, 0x6A, 0x7F, 0xFA
1221 blockcipher_test_data aes_test_data_xts_key_64_pt_48 = {
1222 .crypto_algo = RTE_CRYPTO_CIPHER_AES_XTS,
1225 0x7F, 0xB0, 0x92, 0x2F, 0xCE, 0x09, 0xED, 0xDD,
1226 0x36, 0x65, 0xA1, 0x1F, 0x52, 0x35, 0xD5, 0x1E,
1227 0xF7, 0x72, 0x06, 0xA7, 0xDE, 0x45, 0x47, 0x75,
1228 0xB6, 0x9D, 0xCC, 0x54, 0x59, 0xAC, 0xDB, 0x24,
1229 0xCC, 0xF0, 0x5C, 0x41, 0x5A, 0xF5, 0xAB, 0x8A,
1230 0x06, 0x62, 0x3D, 0x19, 0x8D, 0x5B, 0x91, 0x85,
1231 0x95, 0xA9, 0xDC, 0xAA, 0xF5, 0x39, 0x2E, 0xE7,
1232 0x17, 0xC1, 0x04, 0x7F, 0x2F, 0x08, 0xF6, 0x2B
1238 0x8E, 0xA3, 0x63, 0x8B, 0x9D, 0x40, 0x62, 0xF1,
1239 0x69, 0x19, 0x6F, 0xF4, 0x55, 0x5A, 0xD0, 0xAF
1244 .data = plaintext_aes256xts_48bytes,
1248 .data = ciphertext_aes256xts_48bytes,
1253 /* AES-DOCSIS-BPI test vectors */
1255 /* Multiple of AES block size */
1256 static const struct blockcipher_test_data aes_test_data_docsis_1 = {
1257 .crypto_algo = RTE_CRYPTO_CIPHER_AES_DOCSISBPI,
1260 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
1261 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
1267 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1268 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1273 .data = plaintext_aes_common,
1277 .data = ciphertext512_aes128cbc,
1282 /* Less than AES block size */
1283 static const struct blockcipher_test_data aes_test_data_docsis_2 = {
1284 .crypto_algo = RTE_CRYPTO_CIPHER_AES_DOCSISBPI,
1287 0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB,
1288 0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB
1294 0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A,
1295 0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A
1300 .data = plaintext_aes_docsis_bpi_cfb,
1304 .data = ciphertext_aes_docsis_bpi_cfb,
1309 /* Not multiple of AES block size */
1310 static const struct blockcipher_test_data aes_test_data_docsis_3 = {
1311 .crypto_algo = RTE_CRYPTO_CIPHER_AES_DOCSISBPI,
1314 0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB,
1315 0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB
1321 0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A,
1322 0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A
1327 .data = plaintext_aes_docsis_bpi_cbc_cfb,
1331 .data = ciphertext_aes_docsis_bpi_cbc_cfb,
1336 static const struct blockcipher_test_case aes_chain_test_cases[] = {
1338 .test_descr = "AES-128-CTR HMAC-SHA1 Encryption Digest",
1339 .test_data = &aes_test_data_1,
1340 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1341 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1342 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1343 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1344 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1345 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1346 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1347 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1348 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1349 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1352 .test_descr = "AES-128-CTR HMAC-SHA1 Decryption Digest "
1354 .test_data = &aes_test_data_1,
1355 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1356 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1357 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1358 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1359 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1360 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1361 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1362 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1363 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1364 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1367 .test_descr = "AES-192-CTR XCBC Encryption Digest",
1368 .test_data = &aes_test_data_2,
1369 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1370 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1371 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1372 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1375 .test_descr = "AES-192-CTR XCBC Decryption Digest Verify",
1376 .test_data = &aes_test_data_2,
1377 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1378 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1379 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1380 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1383 .test_descr = "AES-192-CTR XCBC Decryption Digest Verify "
1385 .test_data = &aes_test_data_2,
1386 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1387 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG |
1388 BLOCKCIPHER_TEST_FEATURE_OOP,
1390 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1391 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1394 .test_descr = "AES-256-CTR HMAC-SHA1 Encryption Digest",
1395 .test_data = &aes_test_data_3,
1396 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1397 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1398 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1399 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1400 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1401 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1402 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1403 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1404 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1405 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1408 .test_descr = "AES-256-CTR HMAC-SHA1 Decryption Digest "
1410 .test_data = &aes_test_data_3,
1411 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1412 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1413 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1414 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1415 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1416 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1417 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1418 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1419 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1420 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1423 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest",
1424 .test_data = &aes_test_data_4,
1425 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1426 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1427 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1428 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1429 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1430 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1431 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1432 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1433 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1434 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1435 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1436 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1439 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1441 .test_data = &aes_test_data_13,
1442 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1443 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1444 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1445 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1448 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1450 .test_data = &aes_test_data_4,
1451 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1452 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG |
1453 BLOCKCIPHER_TEST_FEATURE_OOP,
1455 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1456 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1457 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1458 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1459 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1460 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1461 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1464 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1466 .test_data = &aes_test_data_4,
1467 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1468 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1469 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1470 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1471 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1472 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1473 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1474 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1475 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1476 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1477 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1478 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1481 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1482 "Verify Scatter Gather",
1483 .test_data = &aes_test_data_4,
1484 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1485 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG,
1486 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1487 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1488 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1489 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1492 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1493 "Verify (short buffers)",
1494 .test_data = &aes_test_data_13,
1495 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1496 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1497 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1498 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1501 .test_descr = "AES-128-CBC HMAC-SHA256 Encryption Digest",
1502 .test_data = &aes_test_data_5,
1503 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1504 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1505 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1506 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1507 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1508 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1509 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1510 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1511 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1512 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1513 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1514 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1517 .test_descr = "AES-128-CBC HMAC-SHA256 Encryption Digest "
1519 .test_data = &aes_test_data_12,
1520 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1521 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1522 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1523 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1526 .test_descr = "AES-128-CBC HMAC-SHA256 Decryption Digest "
1528 .test_data = &aes_test_data_5,
1529 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1530 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1531 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1532 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1533 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1534 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1535 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1536 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1537 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1538 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1539 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1542 .test_descr = "AES-128-CBC HMAC-SHA256 Decryption Digest "
1543 "Verify (short buffers)",
1544 .test_data = &aes_test_data_12,
1545 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1546 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1547 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1548 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1551 .test_descr = "AES-128-CBC HMAC-SHA512 Encryption Digest",
1552 .test_data = &aes_test_data_6,
1553 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1554 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1555 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1556 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1557 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1558 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1559 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1560 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1561 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1562 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1563 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1566 .test_descr = "AES-128-CBC HMAC-SHA512 Encryption Digest "
1568 .test_data = &aes_test_data_6,
1569 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1570 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS,
1571 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1572 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1573 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1574 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1577 .test_descr = "AES-128-CBC HMAC-SHA512 Encryption Digest "
1578 "Scatter Gather Sessionless",
1579 .test_data = &aes_test_data_6,
1580 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1581 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS |
1582 BLOCKCIPHER_TEST_FEATURE_SG |
1583 BLOCKCIPHER_TEST_FEATURE_OOP,
1585 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1586 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1589 .test_descr = "AES-128-CBC HMAC-SHA512 Decryption Digest "
1591 .test_data = &aes_test_data_6,
1592 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1593 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1594 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1595 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1596 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1597 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1598 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1599 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1600 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1601 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1602 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1605 .test_descr = "AES-128-CBC HMAC-SHA512 Decryption Digest "
1606 "Verify Scatter Gather",
1607 .test_data = &aes_test_data_6,
1608 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1609 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG |
1610 BLOCKCIPHER_TEST_FEATURE_OOP,
1612 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1613 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1614 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1615 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1616 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1617 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1620 .test_descr = "AES-128-CBC XCBC Encryption Digest",
1621 .test_data = &aes_test_data_7,
1622 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1623 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1624 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1625 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1628 .test_descr = "AES-128-CBC XCBC Decryption Digest Verify",
1629 .test_data = &aes_test_data_7,
1630 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1631 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1632 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1633 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1636 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1638 .test_data = &aes_test_data_4,
1639 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1640 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1641 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1642 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1643 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1644 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1645 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1646 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1647 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1650 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1652 .test_data = &aes_test_data_4,
1653 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1654 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1655 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1656 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1657 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1658 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1659 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1660 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1661 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1664 .test_descr = "AES-128-CBC HMAC-SHA224 Encryption Digest",
1665 .test_data = &aes_test_data_8,
1666 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1667 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1668 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1669 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1670 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1671 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1672 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1673 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1674 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1675 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1678 .test_descr = "AES-128-CBC HMAC-SHA224 Decryption Digest "
1680 .test_data = &aes_test_data_8,
1681 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1682 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1683 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1684 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1685 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1686 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1687 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1688 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1689 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1690 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1693 .test_descr = "AES-128-CBC HMAC-SHA384 Encryption Digest",
1694 .test_data = &aes_test_data_9,
1695 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1696 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1697 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1698 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1699 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1700 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1701 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1702 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1703 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1704 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1707 .test_descr = "AES-128-CBC HMAC-SHA384 Decryption Digest "
1709 .test_data = &aes_test_data_9,
1710 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1711 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1712 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1713 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1714 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1715 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1716 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1717 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1718 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1719 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1722 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1724 .test_data = &aes_test_data_4,
1725 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1726 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS,
1727 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1728 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1729 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1730 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1734 "AES-128-CBC HMAC-SHA1 Decryption Digest "
1735 "Verify Sessionless",
1736 .test_data = &aes_test_data_4,
1737 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1738 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS,
1739 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1740 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1741 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1742 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1746 static const struct blockcipher_test_case aes_cipheronly_test_cases[] = {
1748 .test_descr = "AES-128-CBC Encryption",
1749 .test_data = &aes_test_data_4,
1750 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1751 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1752 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1753 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1754 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1755 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1756 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1757 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1758 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1759 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1760 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
1761 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1764 .test_descr = "AES-128-CBC Decryption",
1765 .test_data = &aes_test_data_4,
1766 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1767 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1768 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1769 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1770 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1771 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1772 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1773 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1774 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1775 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1776 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
1777 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1780 .test_descr = "AES-192-CBC Encryption",
1781 .test_data = &aes_test_data_10,
1782 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1783 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1784 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1785 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1786 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1787 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1788 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1789 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1790 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1791 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
1792 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1795 .test_descr = "AES-192-CBC Encryption Scater gather",
1796 .test_data = &aes_test_data_10,
1797 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1798 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG |
1799 BLOCKCIPHER_TEST_FEATURE_OOP,
1800 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1801 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1802 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1803 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1804 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1807 .test_descr = "AES-192-CBC Decryption",
1808 .test_data = &aes_test_data_10,
1809 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1810 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1811 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1812 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1813 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1814 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1815 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1816 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1817 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1818 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
1819 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1822 .test_descr = "AES-192-CBC Decryption Scatter Gather",
1823 .test_data = &aes_test_data_10,
1824 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1825 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG,
1826 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1827 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1828 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1829 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1832 .test_descr = "AES-256-CBC Encryption",
1833 .test_data = &aes_test_data_11,
1834 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1835 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1836 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1837 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1838 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1839 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1840 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1841 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1842 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1843 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1844 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
1845 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1848 .test_descr = "AES-256-CBC Decryption",
1849 .test_data = &aes_test_data_11,
1850 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1851 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1852 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1853 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1854 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1855 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1856 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1857 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1858 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1859 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1860 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
1861 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1864 .test_descr = "AES-256-CBC OOP Encryption",
1865 .test_data = &aes_test_data_11,
1866 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1867 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1868 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1869 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1870 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1871 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1872 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1873 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1874 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO
1877 .test_descr = "AES-256-CBC OOP Decryption",
1878 .test_data = &aes_test_data_11,
1879 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1880 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1881 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1882 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1883 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1884 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1885 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1886 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1887 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO
1890 .test_descr = "AES-128-CTR Encryption",
1891 .test_data = &aes_test_data_1,
1892 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1893 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1894 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1895 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1896 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1897 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1898 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1899 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1900 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1901 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1902 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1905 .test_descr = "AES-128-CTR Decryption",
1906 .test_data = &aes_test_data_1,
1907 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1908 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1909 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1910 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1911 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1912 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1913 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1914 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1915 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1916 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1917 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1920 .test_descr = "AES-192-CTR Encryption",
1921 .test_data = &aes_test_data_2,
1922 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1923 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1924 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1925 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1926 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1927 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1928 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1929 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1930 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1931 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1934 .test_descr = "AES-192-CTR Decryption",
1935 .test_data = &aes_test_data_2,
1936 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1937 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1938 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1939 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1940 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1941 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1942 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1943 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1944 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1945 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1948 .test_descr = "AES-256-CTR Encryption",
1949 .test_data = &aes_test_data_3,
1950 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1951 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1952 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1953 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1954 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1955 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1956 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1957 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1958 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1959 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1960 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1963 .test_descr = "AES-256-CTR Decryption",
1964 .test_data = &aes_test_data_3,
1965 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1966 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1967 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1968 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1969 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1970 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1971 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1972 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1973 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1974 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1975 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1978 .test_descr = "AES-128-CTR Encryption (12-byte IV)",
1979 .test_data = &aes_test_data_1_IV_12_bytes,
1980 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1981 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1982 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1985 .test_descr = "AES-192-CTR Encryption (12-byte IV)",
1986 .test_data = &aes_test_data_2_IV_12_bytes,
1987 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1988 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1989 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1992 .test_descr = "AES-256-CTR Encryption (12-byte IV)",
1993 .test_data = &aes_test_data_3_IV_12_bytes,
1994 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1995 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1996 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1999 .test_descr = "AES-128-XTS Encryption (16-byte plaintext)",
2000 .test_data = &aes_test_data_xts_key_32_pt_16,
2001 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2002 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2005 .test_descr = "AES-128-XTS Decryption (16-byte plaintext)",
2006 .test_data = &aes_test_data_xts_key_32_pt_16,
2007 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2008 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2011 .test_descr = "AES-128-XTS Encryption (32-byte plaintext)",
2012 .test_data = &aes_test_data_xts_key_32_pt_32,
2013 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2014 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2017 .test_descr = "AES-128-XTS Decryption (32-byte plaintext)",
2018 .test_data = &aes_test_data_xts_key_32_pt_32,
2019 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2020 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2023 .test_descr = "AES-256-XTS Encryption (32-byte plaintext)",
2024 .test_data = &aes_test_data_xts_key_64_pt_32,
2025 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2026 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2029 .test_descr = "AES-256-XTS Decryption (32-byte plaintext)",
2030 .test_data = &aes_test_data_xts_key_64_pt_32,
2031 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2032 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2035 .test_descr = "AES-256-XTS Encryption (48-byte plaintext)",
2036 .test_data = &aes_test_data_xts_key_64_pt_48,
2037 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2038 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2041 .test_descr = "AES-256-XTS Decryption (48-byte plaintext)",
2042 .test_data = &aes_test_data_xts_key_64_pt_48,
2043 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2044 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2048 static const struct blockcipher_test_case aes_docsis_test_cases[] = {
2051 .test_descr = "AES-DOCSIS-BPI Full Block Encryption",
2052 .test_data = &aes_test_data_docsis_1,
2053 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2054 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2055 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2058 .test_descr = "AES-DOCSIS-BPI Runt Block Encryption",
2059 .test_data = &aes_test_data_docsis_2,
2060 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2061 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2062 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2065 .test_descr = "AES-DOCSIS-BPI Uneven Encryption",
2066 .test_data = &aes_test_data_docsis_3,
2067 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2068 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2069 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2072 .test_descr = "AES-DOCSIS-BPI Full Block Decryption",
2073 .test_data = &aes_test_data_docsis_1,
2074 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2075 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2076 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2079 .test_descr = "AES-DOCSIS-BPI Runt Block Decryption",
2080 .test_data = &aes_test_data_docsis_2,
2081 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2082 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2083 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2086 .test_descr = "AES-DOCSIS-BPI Uneven Decryption",
2087 .test_data = &aes_test_data_docsis_3,
2088 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2089 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2090 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2093 .test_descr = "AES-DOCSIS-BPI OOP Full Block Encryption",
2094 .test_data = &aes_test_data_docsis_1,
2095 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2096 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2097 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2100 .test_descr = "AES-DOCSIS-BPI OOP Runt Block Encryption",
2101 .test_data = &aes_test_data_docsis_2,
2102 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2103 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2104 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2107 .test_descr = "AES-DOCSIS-BPI OOP Uneven Block Encryption",
2108 .test_data = &aes_test_data_docsis_3,
2109 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2110 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2111 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2114 .test_descr = "AES-DOCSIS-BPI OOP Full Block Decryption",
2115 .test_data = &aes_test_data_docsis_1,
2116 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2117 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2118 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2121 .test_descr = "AES-DOCSIS-BPI OOP Runt Block Decryption",
2122 .test_data = &aes_test_data_docsis_2,
2123 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2124 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2125 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2128 .test_descr = "AES-DOCSIS-BPI OOP Uneven Block Decryption",
2129 .test_data = &aes_test_data_docsis_3,
2130 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2131 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2132 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2135 #endif /* TEST_CRYPTODEV_AES_TEST_VECTORS_H_ */