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 /* NULL cipher NULL auth 8-byte multiple test vector */
225 static const struct blockcipher_test_data null_test_data_chain_x8_multiple = {
226 .crypto_algo = RTE_CRYPTO_CIPHER_NULL,
227 .cipher_key = { /* arbitrary data - shouldn't be used */
229 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
230 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
234 .iv = { /* arbitrary data - shouldn't be used */
236 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
237 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF
242 .data = plaintext_aes_common,
246 .data = plaintext_aes_common,
249 .auth_algo = RTE_CRYPTO_AUTH_NULL,
250 .auth_key = { /* arbitrary data - shouldn't be used */
252 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
253 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
254 0xDE, 0xF4, 0xDE, 0xAD
260 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
261 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
262 0x00, 0x00, 0x00, 0x00
269 /* NULL cipher NULL auth 4-byte multiple test vector */
270 static const struct blockcipher_test_data null_test_data_chain_x4_multiple = {
271 .crypto_algo = RTE_CRYPTO_CIPHER_NULL,
272 .cipher_key = { /* arbitrary data - shouldn't be used */
274 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
275 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
279 .iv = { /* arbitrary data - shouldn't be used */
281 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
282 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF
287 .data = plaintext_aes128ctr,
291 .data = plaintext_aes128ctr,
294 .auth_algo = RTE_CRYPTO_AUTH_NULL,
295 .auth_key = { /* arbitrary data - shouldn't be used */
297 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
298 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
299 0xDE, 0xF4, 0xDE, 0xAD
305 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
306 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
307 0x00, 0x00, 0x00, 0x00
314 /* NULL cipher NULL auth 1-byte multiple test vector */
315 static const struct blockcipher_test_data null_test_data_chain_x1_multiple = {
316 .crypto_algo = RTE_CRYPTO_CIPHER_NULL,
317 .cipher_key = { /* arbitrary data - shouldn't be used */
319 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
320 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
324 .iv = { /* arbitrary data - shouldn't be used */
326 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
327 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF
332 .data = plaintext_aes128ctr,
336 .data = plaintext_aes128ctr,
339 .auth_algo = RTE_CRYPTO_AUTH_NULL,
340 .auth_key = { /* arbitrary data - shouldn't be used */
342 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
343 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
344 0xDE, 0xF4, 0xDE, 0xAD
350 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
351 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
352 0x00, 0x00, 0x00, 0x00
359 /* AES128-CTR-SHA1 test vector */
360 static const struct blockcipher_test_data aes_test_data_1 = {
361 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
364 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
365 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
371 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
372 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF
377 .data = plaintext_aes128ctr,
381 .data = ciphertext64_aes128ctr,
384 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
387 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
388 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
389 0xDE, 0xF4, 0xDE, 0xAD
395 0x9B, 0x6F, 0x0C, 0x43, 0xF5, 0xC1, 0x3E, 0xB0,
396 0xB1, 0x70, 0xB8, 0x2B, 0x33, 0x09, 0xD2, 0xB2,
397 0x56, 0x20, 0xFB, 0xFE
404 /** AES-192-CTR XCBC test vector */
405 static const struct blockcipher_test_data aes_test_data_2 = {
406 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
409 0xCB, 0xC5, 0xED, 0x5B, 0xE7, 0x7C, 0xBD, 0x8C,
410 0x50, 0xD9, 0x30, 0xF2, 0xB5, 0x6A, 0x0E, 0x5F,
411 0xAA, 0xAE, 0xAD, 0xA2, 0x1F, 0x49, 0x52, 0xD4
417 0x3F, 0x69, 0xA8, 0xCD, 0xE8, 0xF0, 0xEF, 0x40,
418 0xB8, 0x7A, 0x4B, 0xED, 0x2B, 0xAF, 0xBF, 0x57
423 .data = plaintext_aes192ctr,
427 .data = ciphertext64_aes192ctr,
430 .auth_algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC,
433 0x87, 0x61, 0x54, 0x53, 0xC4, 0x6D, 0xDD, 0x51,
434 0xE1, 0x9F, 0x86, 0x64, 0x39, 0x0A, 0xE6, 0x59
440 0xCA, 0x33, 0xB3, 0x3B, 0x16, 0x94, 0xAA, 0x55,
441 0x36, 0x6B, 0x45, 0x46
448 /** AES-256-CTR SHA1 test vector */
449 static const struct blockcipher_test_data aes_test_data_3 = {
450 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
453 0x60, 0x3D, 0xEB, 0x10, 0x15, 0xCA, 0x71, 0xBE,
454 0x2B, 0x73, 0xAE, 0xF0, 0x85, 0x7D, 0x77, 0x81,
455 0x1F, 0x35, 0x2C, 0x07, 0x3B, 0x61, 0x08, 0xD7,
456 0x2D, 0x98, 0x10, 0xA3, 0x09, 0x14, 0xDF, 0xF4
462 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
463 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF
468 .data = plaintext_aes256ctr,
472 .data = ciphertext64_aes256ctr,
475 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
478 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
479 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
480 0xDE, 0xF4, 0xDE, 0xAD
486 0x3B, 0x1A, 0x9D, 0x82, 0x35, 0xD5, 0xDD, 0x64,
487 0xCC, 0x1B, 0xA9, 0xC0, 0xEB, 0xE9, 0x42, 0x16,
488 0xE7, 0x87, 0xA3, 0xEF
495 /* AES128-CTR-SHA1 test vector (12-byte IV) */
496 static const struct blockcipher_test_data aes_test_data_1_IV_12_bytes = {
497 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
500 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6,
501 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C
507 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
508 0xF8, 0xF9, 0xFA, 0xFB
513 .data = plaintext_aes128ctr,
517 .data = ciphertext64_aes128ctr_IV_12bytes,
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 0x5C, 0x34, 0x6B, 0xE4, 0x9A, 0x7F, 0x4A, 0xC3,
532 0x82, 0xBE, 0xA0, 0x12, 0xD1, 0xF0, 0x15, 0xFA,
533 0xCF, 0xC8, 0x7F, 0x60
540 /** AES-192-CTR XCBC test vector (12-byte IV) */
541 static const struct blockcipher_test_data aes_test_data_2_IV_12_bytes = {
542 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
545 0xCB, 0xC5, 0xED, 0x5B, 0xE7, 0x7C, 0xBD, 0x8C,
546 0x50, 0xD9, 0x30, 0xF2, 0xB5, 0x6A, 0x0E, 0x5F,
547 0xAA, 0xAE, 0xAD, 0xA2, 0x1F, 0x49, 0x52, 0xD4
553 0x3F, 0x69, 0xA8, 0xCD, 0xE8, 0xF0, 0xEF, 0x40,
554 0xB8, 0x7A, 0x4B, 0xED
559 .data = plaintext_aes192ctr,
563 .data = ciphertext64_aes192ctr_IV_12bytes,
566 .auth_algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC,
569 0x87, 0x61, 0x54, 0x53, 0xC4, 0x6D, 0xDD, 0x51,
570 0xE1, 0x9F, 0x86, 0x64, 0x39, 0x0A, 0xE6, 0x59
576 0x0C, 0xA1, 0xA5, 0xAF, 0x3E, 0x41, 0xD2, 0xF4,
577 0x4C, 0x4C, 0xAB, 0x13
584 /** AES-256-CTR SHA1 test vector (12-byte IV) */
585 static const struct blockcipher_test_data aes_test_data_3_IV_12_bytes = {
586 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CTR,
589 0x60, 0x3D, 0xEB, 0x10, 0x15, 0xCA, 0x71, 0xBE,
590 0x2B, 0x73, 0xAE, 0xF0, 0x85, 0x7D, 0x77, 0x81,
591 0x1F, 0x35, 0x2C, 0x07, 0x3B, 0x61, 0x08, 0xD7,
592 0x2D, 0x98, 0x10, 0xA3, 0x09, 0x14, 0xDF, 0xF4
598 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
599 0xF8, 0xF9, 0xFA, 0xFB
604 .data = plaintext_aes256ctr,
608 .data = ciphertext64_aes256ctr_IV_12bytes,
611 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
614 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
615 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
616 0xDE, 0xF4, 0xDE, 0xAD
622 0x57, 0x9A, 0x52, 0x6E, 0x31, 0x17, 0x57, 0x49,
623 0xE7, 0xA1, 0x88, 0x6C, 0x2E, 0x36, 0x67, 0x63,
624 0x3F, 0x2D, 0xA3, 0xEF
630 /** AES-128-CBC SHA1 test vector */
631 static const struct blockcipher_test_data aes_test_data_4 = {
632 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
635 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
636 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
642 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
643 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
648 .data = plaintext_aes_common,
652 .data = ciphertext512_aes128cbc,
655 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
658 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
659 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
660 0xDE, 0xF4, 0xDE, 0xAD
666 0x9A, 0x4F, 0x88, 0x1B, 0xB6, 0x8F, 0xD8, 0x60,
667 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
668 0x18, 0x8C, 0x1D, 0x32
675 /** AES-128-CBC SHA256 test vector */
676 static const struct blockcipher_test_data aes_test_data_5 = {
677 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
680 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
681 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
687 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
688 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
693 .data = plaintext_aes_common,
697 .data = ciphertext512_aes128cbc,
700 .auth_algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
703 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
704 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
705 0x58, 0x34, 0x85, 0x61, 0x1C, 0x42, 0x10, 0x76,
706 0x9A, 0x4F, 0x88, 0x1B, 0xB6, 0x8F, 0xD8, 0x60
712 0xC8, 0x57, 0x57, 0x31, 0x03, 0xE0, 0x03, 0x55,
713 0x07, 0xC8, 0x9E, 0x7F, 0x48, 0x9A, 0x61, 0x9A,
714 0x68, 0xEE, 0x03, 0x0E, 0x71, 0x75, 0xC7, 0xF4,
715 0x2E, 0x45, 0x26, 0x32, 0x7C, 0x12, 0x15, 0x15
722 /** AES-128-CBC SHA512 test vector */
723 static const struct blockcipher_test_data aes_test_data_6 = {
724 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
727 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
728 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
734 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
735 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
740 .data = plaintext_aes_common,
744 .data = ciphertext512_aes128cbc,
747 .auth_algo = RTE_CRYPTO_AUTH_SHA512_HMAC,
750 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
751 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
752 0x58, 0x34, 0x85, 0x65, 0x1C, 0x42, 0x50, 0x76,
753 0x9A, 0xAF, 0x88, 0x1B, 0xB6, 0x8F, 0xF8, 0x60,
754 0xA2, 0x5A, 0x7F, 0x3F, 0xF4, 0x72, 0x70, 0xF1,
755 0xF5, 0x35, 0x4C, 0x3B, 0xDD, 0x90, 0x65, 0xB0,
756 0x47, 0x3A, 0x75, 0x61, 0x5C, 0xA2, 0x10, 0x76,
757 0x9A, 0xAF, 0x77, 0x5B, 0xB6, 0x7F, 0xF7, 0x60
763 0x5D, 0x54, 0x66, 0xC1, 0x6E, 0xBC, 0x04, 0xB8,
764 0x46, 0xB8, 0x08, 0x6E, 0xE0, 0xF0, 0x43, 0x48,
765 0x37, 0x96, 0x9C, 0xC6, 0x9C, 0xC2, 0x1E, 0xE8,
766 0xF2, 0x0C, 0x0B, 0xEF, 0x86, 0xA2, 0xE3, 0x70,
767 0x95, 0xC8, 0xB3, 0x06, 0x47, 0xA9, 0x90, 0xE8,
768 0xA0, 0xC6, 0x72, 0x69, 0x05, 0xC0, 0x0D, 0x0E,
769 0x21, 0x96, 0x65, 0x93, 0x74, 0x43, 0x2A, 0x1D,
770 0x2E, 0xBF, 0xC2, 0xC2, 0xEE, 0xCC, 0x2F, 0x0A
777 /** AES-128-CBC XCBC test vector */
778 static const struct blockcipher_test_data aes_test_data_7 = {
779 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
782 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
783 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
789 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
790 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
795 .data = plaintext_aes_common,
799 .data = ciphertext512_aes128cbc,
802 .auth_algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC,
805 0x87, 0x61, 0x54, 0x53, 0xC4, 0x6D, 0xDD, 0x51,
806 0xE1, 0x9F, 0x86, 0x64, 0x39, 0x0A, 0xE6, 0x59
812 0xE0, 0xAC, 0x9A, 0xC4, 0x22, 0x64, 0x35, 0x89,
813 0x77, 0x1D, 0x8B, 0x75
820 /** AES-128-CBC SHA224 test vector */
821 static const struct blockcipher_test_data aes_test_data_8 = {
822 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
825 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
826 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
832 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
833 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
838 .data = plaintext_aes_common,
842 .data = ciphertext512_aes128cbc,
845 .auth_algo = RTE_CRYPTO_AUTH_SHA224_HMAC,
848 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
849 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
850 0x58, 0x34, 0x85, 0x65, 0x1C, 0x42, 0x50, 0x76,
851 0x9A, 0xAF, 0x88, 0x1B, 0xB6, 0x8F, 0xF8, 0x60,
852 0xA2, 0x5A, 0x7F, 0x3F, 0xF4, 0x72, 0x70, 0xF1,
853 0xF5, 0x35, 0x4C, 0x3B, 0xDD, 0x90, 0x65, 0xB0,
854 0x47, 0x3A, 0x75, 0x61, 0x5C, 0xA2, 0x10, 0x76,
855 0x9A, 0xAF, 0x77, 0x5B, 0xB6, 0x7F, 0xF7, 0x60
861 0xA3, 0xCA, 0xC7, 0x1D, 0xA8, 0x61, 0x30, 0x98,
862 0x3B, 0x8F, 0x01, 0x19, 0xAE, 0x8D, 0xBD, 0x34,
863 0x40, 0x63, 0xA8, 0x2F, 0xDF, 0x85, 0x2B, 0x7F,
864 0x63, 0x7C, 0xDD, 0xB7
871 /** AES-128-CBC SHA384 test vector */
872 static const struct blockcipher_test_data aes_test_data_9 = {
873 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
876 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
877 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
883 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
884 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
889 .data = plaintext_aes_common,
893 .data = ciphertext512_aes128cbc,
896 .auth_algo = RTE_CRYPTO_AUTH_SHA384_HMAC,
899 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
900 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
901 0x58, 0x34, 0x85, 0x65, 0x1C, 0x42, 0x50, 0x76,
902 0x9A, 0xAF, 0x88, 0x1B, 0xB6, 0x8F, 0xF8, 0x60,
903 0xA2, 0x5A, 0x7F, 0x3F, 0xF4, 0x72, 0x70, 0xF1,
904 0xF5, 0x35, 0x4C, 0x3B, 0xDD, 0x90, 0x65, 0xB0,
905 0x47, 0x3A, 0x75, 0x61, 0x5C, 0xA2, 0x10, 0x76,
906 0x9A, 0xAF, 0x77, 0x5B, 0xB6, 0x7F, 0xF7, 0x60,
907 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
908 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
909 0x58, 0x34, 0x85, 0x65, 0x1C, 0x42, 0x50, 0x76,
910 0x9A, 0xAF, 0x88, 0x1B, 0xB6, 0x8F, 0xF8, 0x60,
911 0xA2, 0x5A, 0x7F, 0x3F, 0xF4, 0x72, 0x70, 0xF1,
912 0xF5, 0x35, 0x4C, 0x3B, 0xDD, 0x90, 0x65, 0xB0,
913 0x47, 0x3A, 0x75, 0x61, 0x5C, 0xA2, 0x10, 0x76,
914 0x9A, 0xAF, 0x77, 0x5B, 0xB6, 0x7F, 0xF7, 0x60
920 0x23, 0x60, 0xC8, 0xB1, 0x2D, 0x6C, 0x1E, 0x72,
921 0x25, 0xAB, 0xF9, 0xC3, 0x9A, 0xA9, 0x4F, 0x8C,
922 0x56, 0x38, 0x65, 0x0E, 0x74, 0xD5, 0x45, 0x9D,
923 0xA3, 0xFD, 0x7E, 0x6D, 0x9E, 0x74, 0x88, 0x9D,
924 0xA7, 0x12, 0x9D, 0xD8, 0x81, 0x3C, 0x86, 0x2F,
925 0x4D, 0xF9, 0x6F, 0x0A, 0xB0, 0xC9, 0xEB, 0x0B
932 static const uint8_t ciphertext512_aes192cbc[] = {
933 0x45, 0xEE, 0x9A, 0xEA, 0x3C, 0x03, 0xFC, 0x4C,
934 0x84, 0x36, 0xB0, 0xDA, 0xB0, 0xDC, 0xF3, 0x5B,
935 0x75, 0xA7, 0xBE, 0x0E, 0xC0, 0x8D, 0x6C, 0xF8,
936 0xC1, 0x0F, 0xD0, 0x35, 0x1D, 0x82, 0xAE, 0x7C,
937 0x57, 0xC5, 0x7A, 0x55, 0x87, 0x1B, 0xD4, 0x03,
938 0x0A, 0x64, 0xC9, 0xE0, 0xF4, 0xC7, 0x6F, 0x57,
939 0x52, 0xC6, 0x73, 0xBA, 0x84, 0x0B, 0x5B, 0x89,
940 0x21, 0xD2, 0x9B, 0x88, 0x68, 0xF5, 0xA9, 0x7F,
941 0x3F, 0x49, 0xEB, 0xF4, 0xD4, 0x52, 0xD2, 0x64,
942 0x80, 0xB2, 0x53, 0xDA, 0x19, 0xF6, 0x10, 0x24,
943 0x23, 0x26, 0x7A, 0x7C, 0x07, 0x57, 0x4B, 0x0E,
944 0x58, 0x49, 0x61, 0xD1, 0xDC, 0x9A, 0x32, 0x6B,
945 0x0F, 0x43, 0x9E, 0x4D, 0xB4, 0x07, 0x4E, 0xB3,
946 0x51, 0x74, 0xDE, 0x29, 0xBC, 0x98, 0xF9, 0xDF,
947 0x78, 0x9A, 0x18, 0x9C, 0xD6, 0x7A, 0x55, 0x7C,
948 0xE6, 0x1D, 0x5C, 0x1A, 0x99, 0xD2, 0xC3, 0x7B,
949 0x9F, 0x96, 0x74, 0x2D, 0xE0, 0xEF, 0xD1, 0xE3,
950 0x08, 0x9F, 0xAF, 0xE6, 0xED, 0xCA, 0xE1, 0xEA,
951 0x23, 0x6F, 0x7C, 0x81, 0xA8, 0xC0, 0x5B, 0x8B,
952 0x53, 0x90, 0x51, 0x2D, 0x0F, 0xF6, 0x7D, 0xA7,
953 0x1C, 0xBD, 0x83, 0x84, 0x54, 0xA4, 0x15, 0xFB,
954 0x3E, 0x25, 0xA7, 0x3A, 0x0A, 0x73, 0xD9, 0x88,
955 0x6F, 0x80, 0x78, 0x95, 0x7F, 0x60, 0xAA, 0x86,
956 0x8A, 0xFC, 0xDF, 0xC1, 0xCB, 0xDE, 0xBB, 0x25,
957 0x52, 0x20, 0xC6, 0x79, 0xD4, 0x0F, 0x25, 0xE7,
958 0xDB, 0xB2, 0x17, 0xA4, 0x6F, 0x3C, 0x6F, 0x91,
959 0xF6, 0x44, 0x1E, 0xB6, 0x85, 0xBC, 0x7A, 0x14,
960 0x10, 0x72, 0xBD, 0x16, 0x63, 0x39, 0x9E, 0x7B,
961 0x84, 0x5B, 0x17, 0x61, 0xB1, 0x5D, 0x82, 0x0B,
962 0x6D, 0x37, 0xD7, 0x79, 0xB8, 0x24, 0x91, 0x30,
963 0x82, 0x91, 0x02, 0xB1, 0x18, 0x4B, 0xE0, 0xF4,
964 0x13, 0x1B, 0xB2, 0x4C, 0xDA, 0xB8, 0x99, 0x96,
965 0x83, 0x2F, 0xBE, 0x53, 0x8D, 0xDE, 0xFA, 0xAD,
966 0xF6, 0x5C, 0xDB, 0xE5, 0x66, 0x26, 0x8F, 0x13,
967 0x2B, 0x76, 0x47, 0x73, 0xDE, 0x1A, 0x74, 0xA6,
968 0x30, 0xAF, 0x42, 0xA0, 0xE5, 0xD2, 0x8F, 0xC2,
969 0xED, 0x3E, 0x9E, 0x29, 0x54, 0x3C, 0xDE, 0x9F,
970 0x5D, 0x30, 0x2B, 0x63, 0xFB, 0xE3, 0xB1, 0x07,
971 0xEE, 0x74, 0x4A, 0xAF, 0xB1, 0x20, 0x8D, 0xEC,
972 0xE6, 0x78, 0x16, 0x8D, 0xA4, 0x6E, 0x34, 0x7D,
973 0x47, 0xFB, 0x0B, 0xC1, 0x32, 0xD7, 0x0D, 0x6C,
974 0x6F, 0x93, 0x9C, 0x5E, 0xEF, 0x1F, 0x9C, 0x45,
975 0x80, 0x6B, 0x74, 0xA6, 0x81, 0xF2, 0xF6, 0xFA,
976 0xAA, 0x9D, 0x4F, 0xCA, 0xB5, 0x90, 0x59, 0xB0,
977 0x3B, 0xF2, 0xF0, 0x75, 0xFD, 0x8A, 0xD8, 0x97,
978 0x65, 0x88, 0x56, 0x4C, 0x44, 0xDF, 0x73, 0xF7,
979 0x56, 0x9C, 0x48, 0x7E, 0xB0, 0x1F, 0x1D, 0x7D,
980 0x6A, 0x11, 0xF5, 0xC2, 0xF4, 0x17, 0xEF, 0x58,
981 0xD8, 0x2A, 0xAF, 0x56, 0x2F, 0xCF, 0xEC, 0xA4,
982 0x58, 0x8B, 0x60, 0xCE, 0xD4, 0x0F, 0x9C, 0x21,
983 0xEC, 0x3E, 0x74, 0x7B, 0x81, 0x3D, 0x69, 0xC6,
984 0x5E, 0x12, 0x83, 0xE9, 0xEF, 0x81, 0x58, 0x36,
985 0x6A, 0x60, 0x0F, 0x54, 0x28, 0x11, 0xF9, 0x64,
986 0x36, 0xAD, 0x79, 0xF5, 0x1C, 0x74, 0xD0, 0xC3,
987 0x7B, 0x61, 0xE1, 0x92, 0xB0, 0x13, 0x91, 0x87,
988 0x32, 0x1F, 0xF2, 0x5A, 0xDA, 0x25, 0x69, 0xEB,
989 0xD7, 0x32, 0x7F, 0xF5, 0x23, 0x21, 0x54, 0x47,
990 0x7B, 0x1B, 0x33, 0xB0, 0x3D, 0xF6, 0xE2, 0x7E,
991 0x3E, 0xA2, 0x9E, 0xCA, 0x48, 0x0B, 0x4A, 0x29,
992 0x81, 0xD4, 0x4E, 0xD5, 0x69, 0xFB, 0xCD, 0x37,
993 0x8A, 0xC1, 0x5B, 0x50, 0xFF, 0xB5, 0x7D, 0x43,
994 0x0F, 0xAE, 0xA6, 0xC2, 0xE5, 0x8F, 0x45, 0xB2,
995 0x85, 0x99, 0x02, 0xA2, 0x9B, 0xBE, 0x90, 0x43,
996 0x4F, 0x2F, 0x50, 0xE2, 0x77, 0x62, 0xD9, 0xCC
999 /** AES-192-CBC test vector */
1000 static const struct blockcipher_test_data aes_test_data_10 = {
1001 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
1004 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
1005 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
1006 0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0
1012 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1013 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1018 .data = plaintext_aes_common,
1022 .data = ciphertext512_aes192cbc,
1027 static const uint8_t ciphertext512_aes256cbc[] = {
1028 0xF3, 0xDD, 0xF0, 0x0B, 0xFF, 0xA2, 0x6A, 0x04,
1029 0xBE, 0xDA, 0x52, 0xA6, 0xFE, 0x6B, 0xA6, 0xA7,
1030 0x48, 0x1D, 0x7D, 0x98, 0x65, 0xDB, 0xEF, 0x06,
1031 0x26, 0xB5, 0x8E, 0xEB, 0x05, 0x0E, 0x77, 0x98,
1032 0x17, 0x8E, 0xD0, 0xD4, 0x7B, 0x92, 0x8F, 0x5C,
1033 0xD0, 0x74, 0x5C, 0xA8, 0x4B, 0x54, 0xB6, 0x2F,
1034 0x83, 0x72, 0x2C, 0xFF, 0x72, 0xE9, 0xE4, 0x15,
1035 0x4C, 0x32, 0xAF, 0xC8, 0xC9, 0x89, 0x3C, 0x6E,
1036 0x31, 0xD5, 0xC0, 0x16, 0xC0, 0x31, 0x7D, 0x11,
1037 0xAB, 0xCB, 0xDE, 0xD2, 0xD6, 0xAA, 0x76, 0x5E,
1038 0xBA, 0xF6, 0xE2, 0x92, 0xCB, 0x86, 0x07, 0xFA,
1039 0xD4, 0x9E, 0x83, 0xED, 0xFD, 0xB8, 0x70, 0x54,
1040 0x6B, 0xBE, 0xEC, 0x72, 0xDD, 0x28, 0x5E, 0x95,
1041 0x78, 0xA5, 0x28, 0x43, 0x3D, 0x6D, 0xB1, 0xD9,
1042 0x69, 0x1F, 0xC9, 0x66, 0x0E, 0x32, 0x44, 0x08,
1043 0xD2, 0xAE, 0x2C, 0x43, 0xF2, 0xD0, 0x7D, 0x26,
1044 0x70, 0xE5, 0xA1, 0xCA, 0x37, 0xE9, 0x7D, 0xC7,
1045 0xA3, 0xFA, 0x81, 0x91, 0x64, 0xAA, 0x64, 0x91,
1046 0x9A, 0x95, 0x2D, 0xC9, 0xF9, 0xCE, 0xFE, 0x9F,
1047 0xC4, 0xD8, 0x81, 0xBE, 0x57, 0x84, 0xC5, 0x02,
1048 0xDB, 0x30, 0xC1, 0xD9, 0x0E, 0xA0, 0xA6, 0x00,
1049 0xD6, 0xF3, 0x52, 0x7E, 0x0D, 0x23, 0x6B, 0x2B,
1050 0x34, 0x99, 0x1F, 0x70, 0x27, 0x6D, 0x58, 0x84,
1051 0x93, 0x77, 0xB8, 0x3E, 0xF1, 0x71, 0x58, 0x42,
1052 0x8B, 0x2B, 0xC8, 0x6D, 0x05, 0x84, 0xFF, 0x4E,
1053 0x85, 0xEF, 0x4A, 0x9D, 0x91, 0x6A, 0xD5, 0xE1,
1054 0xAF, 0x01, 0xEB, 0x83, 0x8F, 0x23, 0x7C, 0x7F,
1055 0x12, 0x91, 0x05, 0xF0, 0x4E, 0xD9, 0x17, 0x62,
1056 0x75, 0xBB, 0xAC, 0x97, 0xEE, 0x3B, 0x4E, 0xC7,
1057 0xE5, 0x92, 0xF8, 0x9D, 0x4C, 0xF9, 0xEE, 0x55,
1058 0x18, 0xBB, 0xCC, 0xB4, 0xF2, 0x59, 0xB9, 0xFC,
1059 0x7A, 0x0F, 0x98, 0xD4, 0x8B, 0xFE, 0xF7, 0x83,
1060 0x46, 0xE2, 0x83, 0x33, 0x3E, 0x95, 0x8D, 0x17,
1061 0x1E, 0x85, 0xF8, 0x8C, 0x51, 0xB0, 0x6C, 0xB5,
1062 0x5E, 0x95, 0xBA, 0x4B, 0x69, 0x1B, 0x48, 0x69,
1063 0x0B, 0x8F, 0xA5, 0x18, 0x13, 0xB9, 0x77, 0xD1,
1064 0x80, 0x32, 0x32, 0x6D, 0x53, 0xA1, 0x95, 0x40,
1065 0x96, 0x8A, 0xCC, 0xA3, 0x69, 0xF8, 0x9F, 0xB5,
1066 0x8E, 0xD2, 0x68, 0x07, 0x4F, 0xA7, 0xEC, 0xF8,
1067 0x20, 0x21, 0x58, 0xF8, 0xD8, 0x9E, 0x5F, 0x40,
1068 0xBA, 0xB9, 0x76, 0x57, 0x3B, 0x17, 0xAD, 0xEE,
1069 0xCB, 0xDF, 0x07, 0xC1, 0xDF, 0x66, 0xA8, 0x0D,
1070 0xC2, 0xCE, 0x8F, 0x79, 0xC3, 0x32, 0xE0, 0x8C,
1071 0xFE, 0x5A, 0xF3, 0x55, 0x27, 0x73, 0x6F, 0xA1,
1072 0x54, 0xC6, 0xFC, 0x28, 0x9D, 0xBE, 0x97, 0xB9,
1073 0x54, 0x97, 0x72, 0x3A, 0x61, 0xAF, 0x6F, 0xDE,
1074 0xF8, 0x0E, 0xBB, 0x6B, 0x96, 0x84, 0xDD, 0x9B,
1075 0x62, 0xBA, 0x47, 0xB5, 0xC9, 0x3B, 0x4E, 0x8C,
1076 0x78, 0x2A, 0xCC, 0x0A, 0x69, 0x54, 0x25, 0x5E,
1077 0x8B, 0xAC, 0x56, 0xD9, 0xFE, 0x48, 0xBA, 0xCE,
1078 0xA9, 0xCE, 0xA6, 0x1D, 0xBF, 0x3E, 0x3C, 0x66,
1079 0x40, 0x71, 0x79, 0xAD, 0x5B, 0x26, 0xAD, 0xBE,
1080 0x58, 0x13, 0x64, 0x60, 0x7C, 0x05, 0xFC, 0xE3,
1081 0x51, 0x7A, 0xF2, 0xCC, 0x54, 0x16, 0x2C, 0xA4,
1082 0xCE, 0x5F, 0x59, 0x12, 0x77, 0xEB, 0xD9, 0x23,
1083 0xE3, 0x86, 0xFB, 0xD7, 0x48, 0x76, 0x9D, 0xE3,
1084 0x89, 0x87, 0x39, 0xFA, 0x7B, 0x21, 0x0B, 0x76,
1085 0xB2, 0xED, 0x1C, 0x27, 0x4B, 0xD5, 0x27, 0x05,
1086 0x8C, 0x7D, 0x58, 0x6C, 0xCA, 0xA5, 0x54, 0x9A,
1087 0x0F, 0xCB, 0xE9, 0x88, 0x31, 0xAD, 0x49, 0xEE,
1088 0x38, 0xFB, 0xC9, 0xFB, 0xB4, 0x7A, 0x00, 0x58,
1089 0x20, 0x32, 0xD3, 0x53, 0x5A, 0xDD, 0x74, 0x95,
1090 0x60, 0x59, 0x09, 0xAE, 0x7E, 0xEC, 0x74, 0xA3,
1091 0xB7, 0x1C, 0x6D, 0xF2, 0xAE, 0x79, 0xA4, 0x7C
1094 /** AES-256-CBC test vector */
1095 static const struct blockcipher_test_data aes_test_data_11 = {
1096 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
1099 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
1100 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
1101 0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0,
1102 0x37, 0x07, 0xB8, 0x23, 0xA2, 0xA3, 0xB5, 0x8D
1108 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1109 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1114 .data = plaintext_aes_common,
1118 .data = ciphertext512_aes256cbc,
1123 /** AES-128-CBC SHA256 HMAC test vector (160 bytes) */
1124 static const struct blockcipher_test_data aes_test_data_12 = {
1125 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
1128 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
1129 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
1135 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1136 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1141 .data = plaintext_aes_common,
1145 .data = ciphertext512_aes128cbc,
1148 .auth_algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
1151 0x42, 0x1A, 0x7D, 0x3D, 0xF5, 0x82, 0x80, 0xF1,
1152 0xF1, 0x35, 0x5C, 0x3B, 0xDD, 0x9A, 0x65, 0xBA,
1153 0x58, 0x34, 0x85, 0x61, 0x1C, 0x42, 0x10, 0x76,
1154 0x9A, 0x4F, 0x88, 0x1B, 0xB6, 0x8F, 0xD8, 0x60
1160 0x92, 0xEC, 0x65, 0x9A, 0x52, 0xCC, 0x50, 0xA5,
1161 0xEE, 0x0E, 0xDF, 0x1E, 0xA4, 0xC9, 0xC1, 0x04,
1162 0xD5, 0xDC, 0x78, 0x90, 0xF4, 0xE3, 0x35, 0x62,
1163 0xAD, 0x95, 0x45, 0x28, 0x5C, 0xF8, 0x8C, 0x0B
1170 /** AES-128-CBC SHA1 HMAC test vector (160 bytes) */
1171 static const struct blockcipher_test_data aes_test_data_13 = {
1172 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
1175 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
1176 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
1182 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1183 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1188 .data = plaintext_aes_common,
1192 .data = ciphertext512_aes128cbc,
1195 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
1198 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
1199 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
1200 0xDE, 0xF4, 0xDE, 0xAD
1206 0x4F, 0x16, 0xEA, 0xF7, 0x4A, 0x88, 0xD3, 0xE0,
1207 0x0E, 0x12, 0x8B, 0xE7, 0x05, 0xD0, 0x86, 0x48,
1208 0x22, 0x43, 0x30, 0xA7
1215 /** XTS-AES-128 test vector (2 keys * 128 bit) */
1216 static const uint8_t plaintext_aes128xts_16bytes[] = {
1217 0xEB, 0xAB, 0xCE, 0x95, 0xB1, 0x4D, 0x3C, 0x8D,
1218 0x6F, 0xB3, 0x50, 0x39, 0x07, 0x90, 0x31, 0x1C
1220 static const uint8_t ciphertext_aes128xts_16bytes[] = {
1221 0x77, 0x8A, 0xE8, 0xB4, 0x3C, 0xB9, 0x8D, 0x5A,
1222 0x82, 0x50, 0x81, 0xD5, 0xBE, 0x47, 0x1C, 0x63
1225 blockcipher_test_data aes_test_data_xts_key_32_pt_16 = {
1226 .crypto_algo = RTE_CRYPTO_CIPHER_AES_XTS,
1229 0xA1, 0xB9, 0x0C, 0xBA, 0x3F, 0x06, 0xAC, 0x35,
1230 0x3B, 0x2C, 0x34, 0x38, 0x76, 0x08, 0x17, 0x62,
1231 0x09, 0x09, 0x23, 0x02, 0x6E, 0x91, 0x77, 0x18,
1232 0x15, 0xF2, 0x9D, 0xAB, 0x01, 0x93, 0x2F, 0x2F
1238 0x4F, 0xAE, 0xF7, 0x11, 0x7C, 0xDA, 0x59, 0xC6,
1239 0x6E, 0x4B, 0x92, 0x01, 0x3E, 0x76, 0x8A, 0xD5
1244 .data = plaintext_aes128xts_16bytes,
1248 .data = ciphertext_aes128xts_16bytes,
1252 static const uint8_t plaintext_aes128xts_32bytes[] = {
1253 0xB0, 0x4D, 0x84, 0xDA, 0x85, 0x6B, 0x9A, 0x59,
1254 0xCE, 0x2D, 0x62, 0x67, 0x46, 0xF6, 0x89, 0xA8,
1255 0x05, 0x1D, 0xAC, 0xD6, 0xBC, 0xE3, 0xB9, 0x90,
1256 0xAA, 0x90, 0x1E, 0x40, 0x30, 0x64, 0x88, 0x79
1258 static const uint8_t ciphertext_aes128xts_32bytes[] = {
1259 0xF9, 0x41, 0x03, 0x9E, 0xBA, 0xB8, 0xCA, 0xC3,
1260 0x9D, 0x59, 0x24, 0x7C, 0xBB, 0xCB, 0x4D, 0x81,
1261 0x6C, 0x72, 0x6D, 0xAE, 0xD1, 0x15, 0x77, 0x69,
1262 0x2C, 0x55, 0xE4, 0xAC, 0x6D, 0x3E, 0x68, 0x20
1265 blockcipher_test_data aes_test_data_xts_key_32_pt_32 = {
1266 .crypto_algo = RTE_CRYPTO_CIPHER_AES_XTS,
1269 0x78, 0x3A, 0x83, 0xEC, 0x52, 0xA2, 0x74, 0x05,
1270 0xDF, 0xF9, 0xDE, 0x4C, 0x57, 0xF9, 0xC9, 0x79,
1271 0xB3, 0x60, 0xB6, 0xA5, 0xDF, 0x88, 0xD6, 0x7E,
1272 0xC1, 0xA0, 0x52, 0xE6, 0xF5, 0x82, 0xA7, 0x17
1278 0x88, 0x6E, 0x97, 0x5B, 0x29, 0xBD, 0xF6, 0xF0,
1279 0xC0, 0x1B, 0xB4, 0x7F, 0x61, 0xF6, 0xF0, 0xF5
1284 .data = plaintext_aes128xts_32bytes,
1288 .data = ciphertext_aes128xts_32bytes,
1293 /** XTS-AES-256 test vector (2 keys * 256 bit) */
1295 static const uint8_t plaintext_aes256xts_32bytes[] = {
1296 0x2E, 0xED, 0xEA, 0x52, 0xCD, 0x82, 0x15, 0xE1,
1297 0xAC, 0xC6, 0x47, 0xE8, 0x10, 0xBB, 0xC3, 0x64,
1298 0x2E, 0x87, 0x28, 0x7F, 0x8D, 0x2E, 0x57, 0xE3,
1299 0x6C, 0x0A, 0x24, 0xFB, 0xC1, 0x2A, 0x20, 0x2E
1301 static const uint8_t ciphertext_aes256xts_32bytes[] = {
1302 0xCB, 0xAA, 0xD0, 0xE2, 0xF6, 0xCE, 0xA3, 0xF5,
1303 0x0B, 0x37, 0xF9, 0x34, 0xD4, 0x6A, 0x9B, 0x13,
1304 0x0B, 0x9D, 0x54, 0xF0, 0x7E, 0x34, 0xF3, 0x6A,
1305 0xF7, 0x93, 0xE8, 0x6F, 0x73, 0xC6, 0xD7, 0xDB
1308 blockcipher_test_data aes_test_data_xts_key_64_pt_32 = {
1309 .crypto_algo = RTE_CRYPTO_CIPHER_AES_XTS,
1312 0x1E, 0xA6, 0x61, 0xC5, 0x8D, 0x94, 0x3A, 0x0E,
1313 0x48, 0x01, 0xE4, 0x2F, 0x4B, 0x09, 0x47, 0x14,
1314 0x9E, 0x7F, 0x9F, 0x8E, 0x3E, 0x68, 0xD0, 0xC7,
1315 0x50, 0x52, 0x10, 0xBD, 0x31, 0x1A, 0x0E, 0x7C,
1316 0xD6, 0xE1, 0x3F, 0xFD, 0xF2, 0x41, 0x8D, 0x8D,
1317 0x19, 0x11, 0xC0, 0x04, 0xCD, 0xA5, 0x8D, 0xA3,
1318 0xD6, 0x19, 0xB7, 0xE2, 0xB9, 0x14, 0x1E, 0x58,
1319 0x31, 0x8E, 0xEA, 0x39, 0x2C, 0xF4, 0x1B, 0x08
1325 0xAD, 0xF8, 0xD9, 0x26, 0x27, 0x46, 0x4A, 0xD2,
1326 0xF0, 0x42, 0x8E, 0x84, 0xA9, 0xF8, 0x75, 0x64
1331 .data = plaintext_aes256xts_32bytes,
1335 .data = ciphertext_aes256xts_32bytes,
1339 static const uint8_t plaintext_aes256xts_48bytes[] = {
1340 0xBB, 0xB2, 0x34, 0xDB, 0x01, 0xBE, 0x79, 0xD3,
1341 0xDC, 0x7D, 0xCF, 0x49, 0xBC, 0x53, 0xB8, 0xEF,
1342 0xC6, 0x2F, 0xE7, 0x17, 0x94, 0x39, 0x06, 0x1D,
1343 0x73, 0xA6, 0xB2, 0x0E, 0xDB, 0x9B, 0x7D, 0xA0,
1344 0x45, 0x0B, 0x19, 0xF0, 0x20, 0x82, 0x02, 0x09,
1345 0xAF, 0xE0, 0x81, 0x12, 0xAE, 0x4A, 0xFD, 0xD3
1347 static const uint8_t ciphertext_aes256xts_48bytes[] = {
1348 0xCB, 0xF6, 0x88, 0x48, 0xC4, 0x20, 0x49, 0xEF,
1349 0xB1, 0x46, 0xE2, 0xD1, 0xE4, 0x11, 0x5F, 0x62,
1350 0xE4, 0xFA, 0xA4, 0xEF, 0xFF, 0x19, 0x8F, 0x1A,
1351 0x0A, 0xA0, 0xC9, 0x8B, 0xA0, 0x2C, 0xC4, 0x4D,
1352 0xA3, 0x76, 0xD7, 0x62, 0xD6, 0x15, 0x1F, 0x23,
1353 0x45, 0x87, 0xBF, 0x12, 0x8B, 0x6A, 0x7F, 0xFA
1356 blockcipher_test_data aes_test_data_xts_key_64_pt_48 = {
1357 .crypto_algo = RTE_CRYPTO_CIPHER_AES_XTS,
1360 0x7F, 0xB0, 0x92, 0x2F, 0xCE, 0x09, 0xED, 0xDD,
1361 0x36, 0x65, 0xA1, 0x1F, 0x52, 0x35, 0xD5, 0x1E,
1362 0xF7, 0x72, 0x06, 0xA7, 0xDE, 0x45, 0x47, 0x75,
1363 0xB6, 0x9D, 0xCC, 0x54, 0x59, 0xAC, 0xDB, 0x24,
1364 0xCC, 0xF0, 0x5C, 0x41, 0x5A, 0xF5, 0xAB, 0x8A,
1365 0x06, 0x62, 0x3D, 0x19, 0x8D, 0x5B, 0x91, 0x85,
1366 0x95, 0xA9, 0xDC, 0xAA, 0xF5, 0x39, 0x2E, 0xE7,
1367 0x17, 0xC1, 0x04, 0x7F, 0x2F, 0x08, 0xF6, 0x2B
1373 0x8E, 0xA3, 0x63, 0x8B, 0x9D, 0x40, 0x62, 0xF1,
1374 0x69, 0x19, 0x6F, 0xF4, 0x55, 0x5A, 0xD0, 0xAF
1379 .data = plaintext_aes256xts_48bytes,
1383 .data = ciphertext_aes256xts_48bytes,
1388 /* AES-DOCSIS-BPI test vectors */
1390 /* Multiple of AES block size */
1391 static const struct blockcipher_test_data aes_test_data_docsis_1 = {
1392 .crypto_algo = RTE_CRYPTO_CIPHER_AES_DOCSISBPI,
1395 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
1396 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
1402 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1403 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1408 .data = plaintext_aes_common,
1412 .data = ciphertext512_aes128cbc,
1417 /* Less than AES block size */
1418 static const struct blockcipher_test_data aes_test_data_docsis_2 = {
1419 .crypto_algo = RTE_CRYPTO_CIPHER_AES_DOCSISBPI,
1422 0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB,
1423 0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB
1429 0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A,
1430 0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A
1435 .data = plaintext_aes_docsis_bpi_cfb,
1439 .data = ciphertext_aes_docsis_bpi_cfb,
1444 /* Not multiple of AES block size */
1445 static const struct blockcipher_test_data aes_test_data_docsis_3 = {
1446 .crypto_algo = RTE_CRYPTO_CIPHER_AES_DOCSISBPI,
1449 0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB,
1450 0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB
1456 0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A,
1457 0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A
1462 .data = plaintext_aes_docsis_bpi_cbc_cfb,
1466 .data = ciphertext_aes_docsis_bpi_cbc_cfb,
1471 static const uint8_t
1472 cipher_aescbc_offset_16[] = {
1473 0x57, 0x68, 0x61, 0x74, 0x20, 0x61, 0x20, 0x6C,
1474 0x6F, 0x75, 0x73, 0x79, 0x20, 0x65, 0x61, 0x72,
1475 0x68, 0x2A, 0x6A, 0x82, 0xE0, 0x73, 0xC7, 0x51,
1476 0x81, 0xF4, 0x47, 0x27, 0x1A, 0xEF, 0x76, 0x15,
1477 0x1C, 0xE1, 0x38, 0x5F, 0xE1, 0x81, 0x77, 0xC7,
1478 0x8B, 0xF0, 0x69, 0xC3, 0x3C, 0x45, 0x1C, 0x0A,
1479 0xA3, 0x93, 0xBF, 0x60, 0x57, 0x88, 0xD2, 0xFF,
1480 0xE1, 0x8F, 0xC0, 0x64, 0x2C, 0x42, 0xC5, 0x22,
1481 0xE3, 0x5F, 0x71, 0x1F, 0xF7, 0x62, 0xA2, 0x7E,
1482 0x0D, 0x42, 0xD9, 0xE7, 0xF3, 0x10, 0xB0, 0xEE,
1485 /** AES-128-CBC SHA1 OOP test vector for swapping src/dst */
1486 static const struct blockcipher_test_data aes_test_data_14 = {
1487 .crypto_algo = RTE_CRYPTO_CIPHER_AES_CBC,
1490 0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
1491 0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
1497 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
1498 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
1503 .data = plaintext_aes_common,
1506 .cipher_offset = 16,
1509 .data = cipher_aescbc_offset_16,
1512 .auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
1515 0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
1516 0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
1517 0xDE, 0xF4, 0xDE, 0xAD
1523 0xCC, 0x15, 0x83, 0xF7, 0x23, 0x87, 0x96, 0xA7,
1524 0x29, 0x34, 0x32, 0xE4, 0x4C, 0x06, 0xE8, 0xEB,
1525 0x70, 0x72, 0x4B, 0xAD
1532 static const struct blockcipher_test_case aes_chain_test_cases[] = {
1534 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1535 "Verify OOP Offset",
1536 .test_data = &aes_test_data_14,
1537 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1538 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1539 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1540 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1541 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1544 .test_descr = "AES-128-CTR HMAC-SHA1 Encryption Digest",
1545 .test_data = &aes_test_data_1,
1546 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1547 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1548 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1549 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1550 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1551 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1552 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1553 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1554 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1555 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1558 .test_descr = "AES-128-CTR HMAC-SHA1 Decryption Digest "
1560 .test_data = &aes_test_data_1,
1561 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1562 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1563 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1564 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1565 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1566 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1567 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1568 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1569 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1570 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1573 .test_descr = "AES-192-CTR XCBC Encryption Digest",
1574 .test_data = &aes_test_data_2,
1575 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1576 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1577 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1578 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1581 .test_descr = "AES-192-CTR XCBC Decryption Digest Verify",
1582 .test_data = &aes_test_data_2,
1583 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1584 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1585 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1586 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1589 .test_descr = "AES-192-CTR XCBC Decryption Digest Verify "
1591 .test_data = &aes_test_data_2,
1592 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1593 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG |
1594 BLOCKCIPHER_TEST_FEATURE_OOP,
1596 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1597 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1600 .test_descr = "AES-256-CTR HMAC-SHA1 Encryption Digest",
1601 .test_data = &aes_test_data_3,
1602 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1603 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1604 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1605 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1606 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1607 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1608 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1609 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1610 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1611 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1614 .test_descr = "AES-256-CTR HMAC-SHA1 Decryption Digest "
1616 .test_data = &aes_test_data_3,
1617 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1618 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1619 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1620 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1621 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1622 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1623 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1624 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1625 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1626 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1629 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest",
1630 .test_data = &aes_test_data_4,
1631 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1632 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1633 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1634 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1635 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1636 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1637 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1638 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1639 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1640 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1641 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1642 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1643 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1646 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1648 .test_data = &aes_test_data_13,
1649 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1650 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1651 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1652 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1653 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1656 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1658 .test_data = &aes_test_data_4,
1659 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1660 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG |
1661 BLOCKCIPHER_TEST_FEATURE_OOP,
1663 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1664 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1665 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1666 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1667 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1668 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1669 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1670 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1673 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1675 .test_data = &aes_test_data_4,
1676 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1677 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1678 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1679 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1680 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1681 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1682 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1683 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1684 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1685 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1686 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1687 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1688 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1691 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1692 "Verify Scatter Gather",
1693 .test_data = &aes_test_data_4,
1694 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1695 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG,
1696 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1697 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1698 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1699 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1700 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1703 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1704 "Verify (short buffers)",
1705 .test_data = &aes_test_data_13,
1706 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1707 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1708 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1709 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1710 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1713 .test_descr = "AES-128-CBC HMAC-SHA256 Encryption Digest",
1714 .test_data = &aes_test_data_5,
1715 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1716 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1717 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1718 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1719 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1720 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1721 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1722 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1723 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1724 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1725 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1726 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1727 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1730 .test_descr = "AES-128-CBC HMAC-SHA256 Encryption Digest "
1732 .test_data = &aes_test_data_12,
1733 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1734 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1735 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1736 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1737 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1740 .test_descr = "AES-128-CBC HMAC-SHA256 Decryption Digest "
1742 .test_data = &aes_test_data_5,
1743 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1744 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1745 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1746 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1747 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1748 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1749 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1750 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1751 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1752 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1753 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1754 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1757 .test_descr = "AES-128-CBC HMAC-SHA256 Decryption Digest "
1758 "Verify (short buffers)",
1759 .test_data = &aes_test_data_12,
1760 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1761 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1762 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1763 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1764 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1767 .test_descr = "AES-128-CBC HMAC-SHA512 Encryption Digest",
1768 .test_data = &aes_test_data_6,
1769 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1770 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1771 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1772 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1773 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1774 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1775 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1776 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1777 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1778 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1779 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1782 .test_descr = "AES-128-CBC HMAC-SHA512 Encryption Digest "
1784 .test_data = &aes_test_data_6,
1785 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1786 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS,
1787 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1788 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1789 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1790 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1793 .test_descr = "AES-128-CBC HMAC-SHA512 Encryption Digest "
1794 "Scatter Gather Sessionless",
1795 .test_data = &aes_test_data_6,
1796 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1797 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS |
1798 BLOCKCIPHER_TEST_FEATURE_SG |
1799 BLOCKCIPHER_TEST_FEATURE_OOP,
1801 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1802 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1805 .test_descr = "AES-128-CBC HMAC-SHA512 Decryption Digest "
1807 .test_data = &aes_test_data_6,
1808 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1809 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1810 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1811 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1812 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1813 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1814 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1815 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1816 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1817 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1818 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1821 .test_descr = "AES-128-CBC HMAC-SHA512 Decryption Digest "
1822 "Verify Scatter Gather",
1823 .test_data = &aes_test_data_6,
1824 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1825 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG |
1826 BLOCKCIPHER_TEST_FEATURE_OOP,
1828 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1829 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1830 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1831 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1832 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1833 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1836 .test_descr = "AES-128-CBC XCBC Encryption Digest",
1837 .test_data = &aes_test_data_7,
1838 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1839 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1840 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1841 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1844 .test_descr = "AES-128-CBC XCBC Decryption Digest Verify",
1845 .test_data = &aes_test_data_7,
1846 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1847 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1848 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1849 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER
1852 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1854 .test_data = &aes_test_data_4,
1855 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1856 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1857 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1858 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1859 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1860 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1861 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1862 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1863 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1864 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1865 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1868 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1870 .test_data = &aes_test_data_14,
1871 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1872 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1873 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1874 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1875 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1878 .test_descr = "AES-128-CBC HMAC-SHA1 Decryption Digest "
1880 .test_data = &aes_test_data_4,
1881 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1882 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1883 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1884 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1885 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1886 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1887 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1888 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1889 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1890 BLOCKCIPHER_TEST_TARGET_PMD_MB |
1891 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1894 .test_descr = "AES-128-CBC HMAC-SHA224 Encryption Digest",
1895 .test_data = &aes_test_data_8,
1896 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1897 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1898 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1899 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1900 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1901 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1902 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1903 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1904 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1905 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1906 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1909 .test_descr = "AES-128-CBC HMAC-SHA224 Decryption Digest "
1911 .test_data = &aes_test_data_8,
1912 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1913 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1914 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1915 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1916 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1917 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1918 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1919 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1920 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1921 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX |
1922 BLOCKCIPHER_TEST_TARGET_PMD_NITROX
1925 .test_descr = "AES-128-CBC HMAC-SHA384 Encryption Digest",
1926 .test_data = &aes_test_data_9,
1927 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1928 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1929 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1930 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1931 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1932 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1933 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1934 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1935 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1936 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1939 .test_descr = "AES-128-CBC HMAC-SHA384 Decryption Digest "
1941 .test_data = &aes_test_data_9,
1942 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1943 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
1944 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1945 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
1946 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
1947 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
1948 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
1949 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
1950 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
1951 BLOCKCIPHER_TEST_TARGET_PMD_CCP
1954 .test_descr = "AES-128-CBC HMAC-SHA1 Encryption Digest "
1956 .test_data = &aes_test_data_4,
1957 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1958 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS,
1959 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1960 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1961 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1962 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1966 "AES-128-CBC HMAC-SHA1 Decryption Digest "
1967 "Verify Sessionless",
1968 .test_data = &aes_test_data_4,
1969 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1970 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS,
1971 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_ARMV8 |
1972 BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
1973 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
1974 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
1977 .test_descr = "NULL-CIPHER-NULL-AUTH encrypt & gen x8byte",
1978 .test_data = &null_test_data_chain_x8_multiple,
1979 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1980 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
1981 BLOCKCIPHER_TEST_TARGET_PMD_QAT
1984 .test_descr = "NULL-AUTH-NULL-CIPHER verify & decrypt x8byte",
1985 .test_data = &null_test_data_chain_x8_multiple,
1986 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1987 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
1988 BLOCKCIPHER_TEST_TARGET_PMD_QAT
1991 .test_descr = "NULL-CIPHER-NULL-AUTH encrypt & gen x8byte - OOP",
1992 .test_data = &null_test_data_chain_x8_multiple,
1993 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1994 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1995 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
1998 .test_descr = "NULL-AUTH-NULL-CIPHER verify & decrypt x8byte - OOP",
1999 .test_data = &null_test_data_chain_x8_multiple,
2000 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
2001 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2002 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2005 .test_descr = "NULL-CIPHER-NULL-AUTH encrypt & gen x4byte",
2006 .test_data = &null_test_data_chain_x4_multiple,
2007 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
2008 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2009 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2012 .test_descr = "NULL-AUTH-NULL-CIPHER verify & decrypt x4byte",
2013 .test_data = &null_test_data_chain_x4_multiple,
2014 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
2015 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2016 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2019 .test_descr = "NULL-CIPHER-NULL-AUTH encrypt & gen x4byte - OOP",
2020 .test_data = &null_test_data_chain_x4_multiple,
2021 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
2022 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2023 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2026 .test_descr = "NULL-AUTH-NULL-CIPHER verify & decrypt x4byte - OOP",
2027 .test_data = &null_test_data_chain_x4_multiple,
2028 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
2029 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2030 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2033 .test_descr = "NULL-CIPHER-NULL-AUTH encrypt & gen x1byte",
2034 .test_data = &null_test_data_chain_x1_multiple,
2035 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
2036 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2037 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2040 .test_descr = "NULL-AUTH-NULL-CIPHER verify & decrypt x1byte",
2041 .test_data = &null_test_data_chain_x1_multiple,
2042 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
2043 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2044 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2047 .test_descr = "NULL-CIPHER-NULL-AUTH encrypt & gen x1byte - OOP",
2048 .test_data = &null_test_data_chain_x1_multiple,
2049 .op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
2050 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2051 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2054 .test_descr = "NULL-AUTH-NULL-CIPHER verify & decrypt x1byte - OOP",
2055 .test_data = &null_test_data_chain_x1_multiple,
2056 .op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
2057 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2058 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2062 static const struct blockcipher_test_case aes_cipheronly_test_cases[] = {
2064 .test_descr = "AES-128-CBC Encryption",
2065 .test_data = &aes_test_data_4,
2066 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2067 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2068 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2069 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2070 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2071 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2072 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2073 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2074 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
2075 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2076 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
2077 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2080 .test_descr = "AES-128-CBC Decryption",
2081 .test_data = &aes_test_data_4,
2082 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2083 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2084 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2085 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2086 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2087 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2088 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2089 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2090 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
2091 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2092 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
2093 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2096 .test_descr = "AES-192-CBC Encryption",
2097 .test_data = &aes_test_data_10,
2098 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2099 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2100 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2101 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2102 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2103 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2104 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2105 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2106 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2107 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
2108 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2111 .test_descr = "AES-192-CBC Encryption Scater gather",
2112 .test_data = &aes_test_data_10,
2113 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2114 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG |
2115 BLOCKCIPHER_TEST_FEATURE_OOP,
2116 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2117 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2118 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2119 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2120 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2123 .test_descr = "AES-192-CBC Decryption",
2124 .test_data = &aes_test_data_10,
2125 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2126 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2127 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2128 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2129 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2130 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2131 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2132 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2133 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2134 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
2135 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2138 .test_descr = "AES-192-CBC Decryption Scatter Gather",
2139 .test_data = &aes_test_data_10,
2140 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2141 .feature_mask = BLOCKCIPHER_TEST_FEATURE_SG,
2142 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2143 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2144 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2145 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2148 .test_descr = "AES-256-CBC Encryption",
2149 .test_data = &aes_test_data_11,
2150 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2151 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2152 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2153 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2154 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2155 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2156 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2157 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2158 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
2159 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2160 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
2161 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2164 .test_descr = "AES-256-CBC Decryption",
2165 .test_data = &aes_test_data_11,
2166 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2167 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2168 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2169 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2170 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2171 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2172 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2173 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2174 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
2175 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2176 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
2177 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2180 .test_descr = "AES-256-CBC OOP Encryption",
2181 .test_data = &aes_test_data_11,
2182 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2183 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2184 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2185 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2186 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2187 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2188 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2189 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2190 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
2191 BLOCKCIPHER_TEST_TARGET_PMD_MB
2194 .test_descr = "AES-256-CBC OOP Decryption",
2195 .test_data = &aes_test_data_11,
2196 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2197 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2198 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2199 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2200 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2201 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2202 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2203 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2204 BLOCKCIPHER_TEST_TARGET_PMD_VIRTIO |
2205 BLOCKCIPHER_TEST_TARGET_PMD_MB
2208 .test_descr = "AES-128-CTR Encryption",
2209 .test_data = &aes_test_data_1,
2210 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2211 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2212 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2213 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2214 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2215 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2216 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2217 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2218 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
2219 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2220 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2223 .test_descr = "AES-128-CTR Decryption",
2224 .test_data = &aes_test_data_1,
2225 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2226 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2227 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2228 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2229 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2230 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2231 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2232 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2233 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
2234 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2235 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2238 .test_descr = "AES-192-CTR Encryption",
2239 .test_data = &aes_test_data_2,
2240 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2241 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2242 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2243 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2244 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2245 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2246 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2247 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2248 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2249 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2252 .test_descr = "AES-192-CTR Decryption",
2253 .test_data = &aes_test_data_2,
2254 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2255 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2256 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2257 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2258 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2259 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2260 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2261 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2262 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2263 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2266 .test_descr = "AES-256-CTR Encryption",
2267 .test_data = &aes_test_data_3,
2268 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2269 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2270 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2271 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2272 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2273 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2274 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2275 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2276 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
2277 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2278 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2281 .test_descr = "AES-256-CTR Decryption",
2282 .test_data = &aes_test_data_3,
2283 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2284 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_OPENSSL |
2285 BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2286 BLOCKCIPHER_TEST_TARGET_PMD_MB |
2287 BLOCKCIPHER_TEST_TARGET_PMD_SCHEDULER |
2288 BLOCKCIPHER_TEST_TARGET_PMD_DPAA2_SEC |
2289 BLOCKCIPHER_TEST_TARGET_PMD_DPAA_SEC |
2290 BLOCKCIPHER_TEST_TARGET_PMD_CAAM_JR |
2291 BLOCKCIPHER_TEST_TARGET_PMD_MVSAM |
2292 BLOCKCIPHER_TEST_TARGET_PMD_CCP |
2293 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2296 .test_descr = "AES-128-CTR Encryption (12-byte IV)",
2297 .test_data = &aes_test_data_1_IV_12_bytes,
2298 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2299 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2300 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2303 .test_descr = "AES-192-CTR Encryption (12-byte IV)",
2304 .test_data = &aes_test_data_2_IV_12_bytes,
2305 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2306 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2307 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2310 .test_descr = "AES-256-CTR Encryption (12-byte IV)",
2311 .test_data = &aes_test_data_3_IV_12_bytes,
2312 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2313 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2314 BLOCKCIPHER_TEST_TARGET_PMD_OCTEONTX
2317 .test_descr = "AES-128-XTS Encryption (16-byte plaintext)",
2318 .test_data = &aes_test_data_xts_key_32_pt_16,
2319 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2320 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2323 .test_descr = "AES-128-XTS Decryption (16-byte plaintext)",
2324 .test_data = &aes_test_data_xts_key_32_pt_16,
2325 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2326 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2329 .test_descr = "AES-128-XTS Encryption (32-byte plaintext)",
2330 .test_data = &aes_test_data_xts_key_32_pt_32,
2331 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2332 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2335 .test_descr = "AES-128-XTS Decryption (32-byte plaintext)",
2336 .test_data = &aes_test_data_xts_key_32_pt_32,
2337 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2338 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2341 .test_descr = "AES-256-XTS Encryption (32-byte plaintext)",
2342 .test_data = &aes_test_data_xts_key_64_pt_32,
2343 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2344 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2347 .test_descr = "AES-256-XTS Decryption (32-byte plaintext)",
2348 .test_data = &aes_test_data_xts_key_64_pt_32,
2349 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2350 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2353 .test_descr = "AES-256-XTS Encryption (48-byte plaintext)",
2354 .test_data = &aes_test_data_xts_key_64_pt_48,
2355 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2356 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2359 .test_descr = "AES-256-XTS Decryption (48-byte plaintext)",
2360 .test_data = &aes_test_data_xts_key_64_pt_48,
2361 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2362 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2365 .test_descr = "cipher-only - NULL algo - x8 - encryption",
2366 .test_data = &null_test_data_chain_x8_multiple,
2367 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2368 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2369 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2372 .test_descr = "cipher-only - NULL algo - x8 - decryption",
2373 .test_data = &null_test_data_chain_x8_multiple,
2374 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2375 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2376 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2379 .test_descr = "cipher-only - NULL algo - x4 - encryption",
2380 .test_data = &null_test_data_chain_x4_multiple,
2381 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2382 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2383 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2386 .test_descr = "cipher-only - NULL algo - x4 - decryption",
2387 .test_data = &null_test_data_chain_x4_multiple,
2388 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2389 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2390 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2393 .test_descr = "cipher-only - NULL algo - x4 - encryption - OOP",
2394 .test_data = &null_test_data_chain_x4_multiple,
2395 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2396 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2397 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2400 .test_descr = "cipher-only - NULL algo - x4 - decryption - OOP",
2401 .test_data = &null_test_data_chain_x4_multiple,
2402 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2403 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2404 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT
2407 .test_descr = "cipher-only - NULL algo - x1 - encryption",
2408 .test_data = &null_test_data_chain_x1_multiple,
2409 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2410 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2411 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2414 .test_descr = "cipher-only - NULL algo - x1 - decryption",
2415 .test_data = &null_test_data_chain_x1_multiple,
2416 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2417 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_NULL |
2418 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2422 static const struct blockcipher_test_case aes_docsis_test_cases[] = {
2425 .test_descr = "AES-DOCSIS-BPI Full Block Encryption",
2426 .test_data = &aes_test_data_docsis_1,
2427 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2428 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2429 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2432 .test_descr = "AES-DOCSIS-BPI Runt Block Encryption",
2433 .test_data = &aes_test_data_docsis_2,
2434 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2435 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2436 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2439 .test_descr = "AES-DOCSIS-BPI Uneven Encryption",
2440 .test_data = &aes_test_data_docsis_3,
2441 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2442 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2443 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2446 .test_descr = "AES-DOCSIS-BPI Full Block Decryption",
2447 .test_data = &aes_test_data_docsis_1,
2448 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2449 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2450 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2453 .test_descr = "AES-DOCSIS-BPI Runt Block Decryption",
2454 .test_data = &aes_test_data_docsis_2,
2455 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2456 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2457 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2460 .test_descr = "AES-DOCSIS-BPI Uneven Decryption",
2461 .test_data = &aes_test_data_docsis_3,
2462 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2463 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_MB |
2464 BLOCKCIPHER_TEST_TARGET_PMD_QAT
2467 .test_descr = "AES-DOCSIS-BPI OOP Full Block Encryption",
2468 .test_data = &aes_test_data_docsis_1,
2469 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2470 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2471 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2472 BLOCKCIPHER_TEST_TARGET_PMD_MB
2475 .test_descr = "AES-DOCSIS-BPI OOP Runt Block Encryption",
2476 .test_data = &aes_test_data_docsis_2,
2477 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2478 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2479 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2480 BLOCKCIPHER_TEST_TARGET_PMD_MB
2484 .test_descr = "AES-DOCSIS-BPI OOP Uneven Block Encryption",
2485 .test_data = &aes_test_data_docsis_3,
2486 .op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
2487 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2488 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2489 BLOCKCIPHER_TEST_TARGET_PMD_MB
2492 .test_descr = "AES-DOCSIS-BPI OOP Full Block Decryption",
2493 .test_data = &aes_test_data_docsis_1,
2494 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2495 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2496 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2497 BLOCKCIPHER_TEST_TARGET_PMD_MB
2500 .test_descr = "AES-DOCSIS-BPI OOP Runt Block Decryption",
2501 .test_data = &aes_test_data_docsis_2,
2502 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2503 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2504 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2505 BLOCKCIPHER_TEST_TARGET_PMD_MB
2508 .test_descr = "AES-DOCSIS-BPI OOP Uneven Block Decryption",
2509 .test_data = &aes_test_data_docsis_3,
2510 .op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
2511 .feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
2512 .pmd_mask = BLOCKCIPHER_TEST_TARGET_PMD_QAT |
2513 BLOCKCIPHER_TEST_TARGET_PMD_MB
2516 #endif /* TEST_CRYPTODEV_AES_TEST_VECTORS_H_ */