xref: /dpdk/app/test/test_cryptodev_des_test_vectors.h (revision b4c469ec4f3beef3117ffc62675d9672144c099f)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2016 Intel Corporation
3  */
4 
5 #ifndef TEST_CRYPTODEV_DES_TEST_VECTORS_H_
6 #define TEST_CRYPTODEV_DES_TEST_VECTORS_H_
7 
8 static const uint8_t plaintext_des[] = {
9 	"What a lousy earth! He wondered how many people "
10 	"were destitute that same night even in his own "
11 	"prosperous country, how many homes were "
12 	"shanties, how many husbands were drunk and "
13 	"wives socked, and how many children were "
14 	"bullied, abused, or abandoned. How many "
15 	"families hungered for food they could not "
16 	"afford to buy? How many hearts were broken? How "
17 	"many suicides would take place that same night, "
18 	"how many people would go insane? How many "
19 	"cockroaches and landlords would triumph? How "
20 	"many winners were losers, successes failures, "
21 	"and rich men poor men? How many wise guys were "
22 	"stupid? How many happy endings were unhappy "
23 	"endings? How many honest men were liars, brave "
24 	"men cowards, loyal men traitors, how many "
25 	"sainted men were corrupt, how many people in "
26 	"positions of trust had sold their souls to "
27 	"bodyguards, how many had never had souls? How "
28 	"many straight-and-narrow paths were crooked "
29 	"paths? How many best families were worst "
30 	"families and how many good people were bad "
31 	"people? When you added them all up and then "
32 	"subtracted, you might be left with only the "
33 	"children, and perhaps with Albert Einstein and "
34 	"an old violinist or sculptor somewhere."
35 };
36 
37 static const uint8_t ciphertext512_des128ctr[] = {
38 	0x13, 0x39, 0x3B, 0xBC, 0x1D, 0xE3, 0x23, 0x09,
39 	0x9B, 0x08, 0xD1, 0x09, 0x52, 0x93, 0x78, 0x29,
40 	0x11, 0x21, 0xBA, 0x01, 0x15, 0xCD, 0xEC, 0xAA,
41 	0x79, 0x77, 0x58, 0xAE, 0xAE, 0xBC, 0x97, 0x33,
42 	0x94, 0xA9, 0x2D, 0xC0, 0x0A, 0xA9, 0xA4, 0x4B,
43 	0x19, 0x07, 0x88, 0x06, 0x7E, 0x81, 0x0F, 0xB5,
44 	0x60, 0xCF, 0xA7, 0xC3, 0x2A, 0x43, 0xFF, 0x16,
45 	0x3A, 0x5F, 0x11, 0x2D, 0x11, 0x38, 0x37, 0x94,
46 	0x2A, 0xC8, 0x3D, 0x20, 0xBB, 0x93, 0x95, 0x54,
47 	0x12, 0xFF, 0x0C, 0x47, 0x89, 0x7D, 0x73, 0xD1,
48 	0x2E, 0x3A, 0x80, 0x52, 0xA8, 0x92, 0x93, 0x99,
49 	0x16, 0xB8, 0x12, 0x1B, 0x8B, 0xA8, 0xC1, 0x81,
50 	0x95, 0x18, 0x82, 0xD6, 0x5A, 0xA7, 0xFE, 0xCF,
51 	0xC4, 0xAC, 0x85, 0x91, 0x0C, 0x2F, 0x1D, 0x10,
52 	0x9A, 0x65, 0x07, 0xB0, 0x2E, 0x5A, 0x2D, 0x48,
53 	0x26, 0xF8, 0x17, 0x7A, 0x53, 0xD6, 0xB8, 0xDF,
54 	0xB1, 0x10, 0x48, 0x7E, 0x8F, 0xBE, 0x2E, 0xA1,
55 	0x0D, 0x9E, 0xA9, 0xF1, 0x3B, 0x3B, 0x33, 0xCD,
56 	0xDC, 0x52, 0x7E, 0xC0, 0x0E, 0xA0, 0xD8, 0xA7,
57 	0xC6, 0x34, 0x5A, 0xAA, 0x29, 0x8B, 0xA9, 0xAC,
58 	0x1F, 0x78, 0xAD, 0xEE, 0x34, 0x59, 0x30, 0xFB,
59 	0x2A, 0x20, 0x3D, 0x4D, 0x30, 0xA7, 0x7D, 0xD8,
60 	0xA0, 0xC6, 0xA2, 0xD3, 0x9A, 0xFB, 0x50, 0x97,
61 	0x4D, 0x25, 0xA2, 0x37, 0x51, 0x54, 0xB7, 0xEB,
62 	0xED, 0x77, 0xDB, 0x94, 0x35, 0x8B, 0x70, 0x95,
63 	0x4A, 0x00, 0xA7, 0xF1, 0x8A, 0x66, 0x0E, 0xC6,
64 	0x05, 0x7B, 0x69, 0x05, 0x42, 0x03, 0x96, 0x2C,
65 	0x55, 0x00, 0x1B, 0xC0, 0x19, 0x4D, 0x0D, 0x2E,
66 	0xF5, 0x81, 0x11, 0x64, 0xCA, 0xBB, 0xF2, 0x0F,
67 	0x9C, 0x60, 0xE2, 0xCC, 0x02, 0x6E, 0x83, 0xD5,
68 	0x24, 0xF4, 0x12, 0x0E, 0x6A, 0xEA, 0x4F, 0x6C,
69 	0x79, 0x69, 0x65, 0x67, 0xDB, 0xF7, 0xEA, 0x98,
70 	0x5D, 0x56, 0x98, 0xB7, 0x88, 0xE7, 0x23, 0xC9,
71 	0x17, 0x32, 0x92, 0x33, 0x5A, 0x0C, 0x15, 0x20,
72 	0x3B, 0x1C, 0xF9, 0x0F, 0x4D, 0xD1, 0xE8, 0xE6,
73 	0x9E, 0x5E, 0x24, 0x1B, 0xA4, 0xB8, 0xB9, 0xE9,
74 	0x2F, 0xFC, 0x89, 0xB4, 0xB9, 0xF4, 0xA6, 0xAD,
75 	0x55, 0xF4, 0xDF, 0x58, 0x63, 0x25, 0xE3, 0x41,
76 	0x70, 0xDF, 0x10, 0xE7, 0x13, 0x87, 0x8D, 0xB3,
77 	0x62, 0x4F, 0xF5, 0x86, 0x85, 0x8F, 0x59, 0xF0,
78 	0x21, 0x0E, 0x8F, 0x11, 0xAD, 0xBF, 0xDD, 0x61,
79 	0x68, 0x3F, 0x54, 0x57, 0x49, 0x38, 0xC8, 0x24,
80 	0x8E, 0x0A, 0xAC, 0xCA, 0x2C, 0x36, 0x3E, 0x5F,
81 	0x0A, 0xCE, 0xFD, 0x1A, 0x60, 0x63, 0x5A, 0xE6,
82 	0x06, 0x64, 0xB5, 0x94, 0x3C, 0xC9, 0xAF, 0x7C,
83 	0xCD, 0x49, 0x10, 0xCF, 0xAF, 0x0E, 0x2E, 0x79,
84 	0x27, 0xB2, 0x67, 0x02, 0xED, 0xEE, 0x80, 0x77,
85 	0x7C, 0x6D, 0x4B, 0xDB, 0xCF, 0x8D, 0x68, 0x00,
86 	0x2E, 0xD9, 0xF0, 0x8E, 0x08, 0xBF, 0xA6, 0x9B,
87 	0xFE, 0xA4, 0xFB, 0x19, 0x46, 0xAF, 0x1B, 0xA9,
88 	0xF8, 0x22, 0x81, 0x21, 0x97, 0xFC, 0xC0, 0x8A,
89 	0x26, 0x58, 0x13, 0x29, 0xB6, 0x69, 0x94, 0x4B,
90 	0xAB, 0xB3, 0x88, 0x0D, 0xA9, 0x48, 0x0E, 0xE8,
91 	0x70, 0xFC, 0xA1, 0x21, 0xC4, 0x2C, 0xE5, 0x99,
92 	0xB4, 0xF1, 0x6F, 0xB2, 0x4B, 0x4B, 0xCD, 0x48,
93 	0x15, 0x47, 0x2D, 0x72, 0x39, 0x99, 0x9D, 0x24,
94 	0x0C, 0x8B, 0xDC, 0xA1, 0xEE, 0xF6, 0xF4, 0x73,
95 	0xC3, 0xB8, 0x0C, 0x23, 0x0D, 0xA7, 0xC4, 0x7D,
96 	0x27, 0xE2, 0x14, 0x11, 0x53, 0x19, 0xE7, 0xCA,
97 	0x94, 0x4E, 0x0D, 0x2C, 0xF7, 0x36, 0x47, 0xDB,
98 	0x77, 0x3C, 0x22, 0xAC, 0xBE, 0xE1, 0x06, 0x55,
99 	0xE5, 0xDD, 0x8B, 0x65, 0xE8, 0xE9, 0x91, 0x52,
100 	0x59, 0x97, 0xFC, 0x8C, 0xEE, 0x96, 0x22, 0x60,
101 	0xEE, 0xBF, 0x82, 0xF0, 0xCA, 0x14, 0xF9, 0xD3
102 };
103 
104 static const struct blockcipher_test_data
105 triple_des128ctr_test_vector = {
106 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CTR,
107 	.cipher_key = {
108 		.data = {
109 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
110 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
111 		},
112 		.len = 16
113 	},
114 	.iv = {
115 		.data = {
116 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
117 		},
118 		.len = 8
119 	},
120 	.plaintext = {
121 		.data = plaintext_des,
122 		.len = 512
123 	},
124 	.ciphertext = {
125 		.data = ciphertext512_des128ctr,
126 		.len = 512
127 	}
128 };
129 
130 static const struct blockcipher_test_data
131 triple_des128ctr_sha1_test_vector = {
132 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CTR,
133 	.cipher_key = {
134 		.data = {
135 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
136 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
137 		},
138 		.len = 16
139 	},
140 	.iv = {
141 		.data = {
142 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
143 		},
144 		.len = 8
145 	},
146 	.plaintext = {
147 		.data = plaintext_des,
148 		.len = 512
149 	},
150 	.ciphertext = {
151 		.data = ciphertext512_des128ctr,
152 		.len = 512
153 	},
154 	.auth_algo = RTE_CRYPTO_AUTH_SHA1,
155 	.digest = {
156 		.data = {
157 			0xC3, 0x40, 0xD5, 0xD9, 0x8F, 0x8A, 0xC0, 0xF0,
158 			0x46, 0x28, 0x02, 0x01, 0xB5, 0xC1, 0x87, 0x4D,
159 			0xAC, 0xFE, 0x48, 0x76
160 		},
161 		.len = 20
162 	}
163 };
164 
165 static const struct blockcipher_test_data
166 triple_des128ctr_hmac_sha1_test_vector = {
167 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CTR,
168 	.cipher_key = {
169 		.data = {
170 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
171 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
172 		},
173 		.len = 16
174 	},
175 	.iv = {
176 		.data = {
177 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
178 		},
179 		.len = 8
180 	},
181 	.plaintext = {
182 		.data = plaintext_des,
183 		.len = 512
184 	},
185 	.ciphertext = {
186 		.data = ciphertext512_des128ctr,
187 		.len = 512
188 	},
189 	.auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
190 	.auth_key = {
191 		.data = {
192 			0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
193 			0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
194 			0xDE, 0xF4, 0xDE, 0xAD
195 		},
196 		.len = 20
197 	},
198 	.digest = {
199 		.data = {
200 			0xF1, 0xC1, 0xDB, 0x4D, 0xFA, 0x7F, 0x2F, 0xE5,
201 			0xF8, 0x49, 0xEA, 0x1D, 0x7F, 0xCB, 0x42, 0x59,
202 			0xC4, 0x1E, 0xB1, 0x18
203 		},
204 		.len = 20
205 	}
206 };
207 
208 static const uint8_t ciphertext512_des192ctr[] = {
209 	0xFF, 0x32, 0x52, 0x97, 0x10, 0xBF, 0x0B, 0x10,
210 	0x68, 0x0F, 0x4F, 0x56, 0x8B, 0x2C, 0x7B, 0x8E,
211 	0x39, 0x1E, 0x1A, 0x2F, 0x83, 0xDE, 0x5E, 0x35,
212 	0xC8, 0x4B, 0xDF, 0xD5, 0xBC, 0x84, 0x50, 0x1A,
213 	0x02, 0xDF, 0xB3, 0x11, 0xE4, 0xDA, 0xB8, 0x0E,
214 	0x47, 0xC6, 0x0C, 0x51, 0x09, 0x62, 0x9C, 0x5D,
215 	0x71, 0x40, 0x49, 0xD8, 0x55, 0xBD, 0x7D, 0x90,
216 	0x71, 0xC5, 0xF7, 0x07, 0x6F, 0x08, 0x71, 0x2A,
217 	0xB1, 0x77, 0x9B, 0x0F, 0xA1, 0xB0, 0xD6, 0x10,
218 	0xB2, 0xE5, 0x31, 0xEC, 0x21, 0x13, 0x89, 0x2A,
219 	0x09, 0x7E, 0x30, 0xDB, 0xA0, 0xF0, 0xDC, 0xE4,
220 	0x74, 0x64, 0x39, 0xA3, 0xB0, 0xB1, 0x80, 0x66,
221 	0x52, 0xD4, 0x4E, 0xC9, 0x5A, 0x52, 0x6A, 0xC7,
222 	0xB5, 0x2B, 0x61, 0xD5, 0x17, 0xD5, 0xF3, 0xCC,
223 	0x41, 0x61, 0xD2, 0xA6, 0xF4, 0x51, 0x24, 0x3A,
224 	0x63, 0x5D, 0x23, 0xB1, 0xF0, 0x22, 0xE7, 0x45,
225 	0xFA, 0x5F, 0x7E, 0x99, 0x00, 0x11, 0x28, 0x35,
226 	0xA3, 0xF4, 0x61, 0x94, 0x0E, 0x98, 0xCE, 0x35,
227 	0xDD, 0x91, 0x1B, 0x0B, 0x4D, 0xEE, 0xFF, 0xFF,
228 	0x0B, 0xD4, 0xDC, 0x56, 0xFC, 0x71, 0xE9, 0xEC,
229 	0xE8, 0x36, 0x51, 0xF8, 0x8B, 0x6A, 0xE1, 0x8C,
230 	0x2B, 0x25, 0x91, 0x91, 0x9B, 0x92, 0x76, 0xB5,
231 	0x3D, 0x26, 0xA8, 0x53, 0xEA, 0x30, 0x5B, 0x4D,
232 	0xDA, 0x16, 0xDA, 0x7D, 0x04, 0x88, 0xF5, 0x22,
233 	0xA8, 0x0C, 0xB9, 0x41, 0xC7, 0x91, 0x64, 0x86,
234 	0x99, 0x7D, 0x18, 0xB9, 0x67, 0xA2, 0x6E, 0x05,
235 	0x1A, 0x82, 0x8F, 0xA2, 0xEB, 0x4D, 0x0B, 0x8C,
236 	0x88, 0x2D, 0xBA, 0x77, 0x87, 0x32, 0x50, 0x3C,
237 	0x4C, 0xD8, 0xD3, 0x50, 0x39, 0xFA, 0xDF, 0x48,
238 	0x3E, 0x30, 0xF5, 0x76, 0x06, 0xB0, 0x1A, 0x05,
239 	0x60, 0x2C, 0xD3, 0xA0, 0x63, 0x1A, 0x19, 0x2D,
240 	0x6B, 0x76, 0xF2, 0x31, 0x4C, 0xA7, 0xE6, 0x5C,
241 	0x1B, 0x23, 0x20, 0x41, 0x32, 0xE5, 0x83, 0x47,
242 	0x04, 0xB6, 0x3E, 0xE0, 0xFD, 0x49, 0x1E, 0x1B,
243 	0x75, 0x10, 0x11, 0x46, 0xE9, 0xF9, 0x96, 0x9A,
244 	0xD7, 0x59, 0xFE, 0x38, 0x31, 0xFE, 0x79, 0xC4,
245 	0xC8, 0x46, 0x88, 0xDE, 0x2E, 0xAE, 0x20, 0xED,
246 	0x77, 0x50, 0x40, 0x38, 0x26, 0xD3, 0x35, 0xF6,
247 	0x29, 0x55, 0x6A, 0x6B, 0x38, 0x69, 0xFE, 0x90,
248 	0x5B, 0xA7, 0xFA, 0x6B, 0x73, 0x4F, 0xB9, 0x5D,
249 	0xDC, 0x6F, 0x98, 0xC3, 0x6A, 0xC4, 0xB5, 0x09,
250 	0xC5, 0x84, 0xA5, 0x6A, 0x84, 0xA4, 0xB3, 0x8A,
251 	0x5F, 0xCA, 0x92, 0x64, 0x9E, 0xC3, 0x0F, 0x84,
252 	0x8B, 0x2D, 0x48, 0xC6, 0x67, 0xAE, 0x07, 0xE0,
253 	0x28, 0x38, 0x6D, 0xC4, 0x4D, 0x13, 0x87, 0xE0,
254 	0xB2, 0x2F, 0xAA, 0xC0, 0xCF, 0x68, 0xD7, 0x9C,
255 	0xB8, 0x07, 0xE4, 0x51, 0xD7, 0x75, 0x86, 0xFA,
256 	0x0C, 0x50, 0x74, 0x68, 0x00, 0x64, 0x2A, 0x27,
257 	0x59, 0xE9, 0x80, 0xEB, 0xC2, 0xA3, 0xFA, 0x58,
258 	0xCC, 0x03, 0xE7, 0x7B, 0x66, 0x53, 0xFF, 0x90,
259 	0xA0, 0x85, 0xE2, 0xF8, 0x82, 0xFE, 0xC6, 0x2B,
260 	0xFF, 0x5E, 0x70, 0x85, 0x34, 0xB7, 0x22, 0x38,
261 	0xDB, 0xBC, 0x15, 0x30, 0x59, 0xC1, 0x48, 0x42,
262 	0xE5, 0x38, 0x8D, 0x37, 0x59, 0xDB, 0xA3, 0x20,
263 	0x17, 0x36, 0x1D, 0x4B, 0xBF, 0x4E, 0xA4, 0x35,
264 	0xCC, 0xFE, 0xF5, 0x7A, 0x73, 0xB4, 0x6D, 0x20,
265 	0x1D, 0xC0, 0xE5, 0x21, 0x5C, 0xD2, 0x8A, 0x65,
266 	0x08, 0xB6, 0x63, 0xAC, 0x9A, 0x1E, 0x3F, 0x3C,
267 	0xAB, 0xB6, 0x6D, 0x34, 0xB2, 0x3A, 0x08, 0xDA,
268 	0x29, 0x63, 0xD1, 0xA4, 0x83, 0x52, 0xB0, 0x63,
269 	0x1B, 0x89, 0x35, 0x57, 0x59, 0x2C, 0x0F, 0x72,
270 	0x72, 0xFD, 0xA0, 0xAC, 0xDB, 0xB4, 0xA3, 0xA1,
271 	0x18, 0x10, 0x12, 0x97, 0x99, 0x63, 0x38, 0x98,
272 	0x96, 0xB5, 0x16, 0x07, 0x4E, 0xE9, 0x2C, 0x97
273 };
274 
275 static const struct blockcipher_test_data
276 triple_des192ctr_test_vector = {
277 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CTR,
278 	.cipher_key = {
279 		.data = {
280 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
281 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
282 			0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0
283 		},
284 		.len = 24
285 	},
286 	.iv = {
287 		.data = {
288 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
289 		},
290 		.len = 8
291 	},
292 	.plaintext = {
293 		.data = plaintext_des,
294 		.len = 512
295 	},
296 	.ciphertext = {
297 		.data = ciphertext512_des192ctr,
298 		.len = 512
299 	}
300 };
301 
302 static const struct blockcipher_test_data
303 triple_des192ctr_sha1_test_vector = {
304 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CTR,
305 	.cipher_key = {
306 		.data = {
307 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
308 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
309 			0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0
310 		},
311 		.len = 24
312 	},
313 	.iv = {
314 		.data = {
315 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
316 		},
317 		.len = 8
318 	},
319 	.plaintext = {
320 		.data = plaintext_des,
321 		.len = 512
322 	},
323 	.ciphertext = {
324 		.data = ciphertext512_des192ctr,
325 		.len = 512
326 	},
327 	.auth_algo = RTE_CRYPTO_AUTH_SHA1,
328 	.digest = {
329 		.data = {
330 			0xEA, 0x62, 0xB9, 0xB2, 0x78, 0x6C, 0x8E, 0xDB,
331 			0xA3, 0xB6, 0xFF, 0x23, 0x3A, 0x47, 0xD8, 0xC8,
332 			0xED, 0x5E, 0x20, 0x1D
333 		},
334 		.len = 20
335 	}
336 };
337 
338 static const struct blockcipher_test_data
339 triple_des192ctr_hmac_sha1_test_vector = {
340 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CTR,
341 	.cipher_key = {
342 		.data = {
343 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
344 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
345 			0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0
346 		},
347 		.len = 24
348 	},
349 	.iv = {
350 		.data = {
351 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
352 		},
353 		.len = 8
354 	},
355 	.plaintext = {
356 		.data = plaintext_des,
357 		.len = 512
358 	},
359 	.ciphertext = {
360 		.data = ciphertext512_des192ctr,
361 		.len = 512
362 	},
363 	.auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
364 	.auth_key = {
365 		.data = {
366 			0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
367 			0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
368 			0xDE, 0xF4, 0xDE, 0xAD
369 		},
370 		.len = 20
371 	},
372 	.digest = {
373 		.data = {
374 			0x32, 0xD5, 0x19, 0x8F, 0x79, 0x3A, 0xAA, 0x7B,
375 			0x70, 0x67, 0x4E, 0x63, 0x88, 0xA3, 0x9A, 0x82,
376 			0x07, 0x33, 0x12, 0x94
377 		},
378 		.len = 20
379 	}
380 };
381 
382 static const uint8_t ciphertext512_des128cbc[] = {
383 	0x28, 0x2a, 0xff, 0x15, 0x5c, 0xdf, 0xd9, 0x6b,
384 	0x54, 0xbc, 0x7b, 0xfb, 0xc5, 0x64, 0x4d, 0xdd,
385 	0x3e, 0xf2, 0x9e, 0xb7, 0x53, 0x65, 0x37, 0x05,
386 	0xe0, 0xdf, 0xae, 0xf7, 0xc9, 0x27, 0xe4, 0xec,
387 	0x11, 0x27, 0xc2, 0x9e, 0x02, 0x4e, 0x03, 0x3b,
388 	0x33, 0xf2, 0x66, 0x08, 0x24, 0x5f, 0xab, 0xc2,
389 	0x7e, 0x21, 0x19, 0x5d, 0x51, 0xc3, 0xe2, 0x97,
390 	0x6f, 0x2e, 0xb4, 0xaa, 0x34, 0x70, 0x88, 0x78,
391 	0x4e, 0xe7, 0x3d, 0xe1, 0x9f, 0x87, 0x1c, 0x8b,
392 	0xac, 0x8d, 0xa1, 0x1a, 0xcd, 0xb0, 0xf8, 0xb6,
393 	0x24, 0x36, 0xe3, 0x8c, 0x07, 0xe7, 0xe4, 0x92,
394 	0x13, 0x86, 0x6f, 0x13, 0xec, 0x04, 0x5c, 0xe9,
395 	0xb9, 0xca, 0x45, 0x8a, 0x2c, 0x46, 0xda, 0x54,
396 	0x1d, 0xb5, 0x81, 0xb1, 0xcd, 0xf3, 0x7d, 0x11,
397 	0x6b, 0xb3, 0x0a, 0x45, 0xe5, 0x6e, 0x51, 0x3e,
398 	0x2c, 0xac, 0x7c, 0xbc, 0xa7, 0x7e, 0x22, 0x4d,
399 	0xe6, 0x02, 0xe3, 0x3f, 0x77, 0xd7, 0x73, 0x72,
400 	0x0e, 0xfb, 0x42, 0x85, 0x80, 0xdf, 0xa8, 0x91,
401 	0x60, 0x40, 0x48, 0xcd, 0x1b, 0xd9, 0xbf, 0x2f,
402 	0xf2, 0xdf, 0xd0, 0xbd, 0x3f, 0x82, 0xce, 0x15,
403 	0x9d, 0x6e, 0xc6, 0x59, 0x6f, 0x27, 0x0d, 0xf9,
404 	0x26, 0xe2, 0x11, 0x29, 0x50, 0xc3, 0x0a, 0xb7,
405 	0xde, 0x9d, 0xe9, 0x55, 0xa1, 0xe9, 0x01, 0x33,
406 	0x56, 0x51, 0xa7, 0x3a, 0x9e, 0x63, 0xc5, 0x08,
407 	0x01, 0x3b, 0x03, 0x4b, 0xc6, 0xc4, 0xa1, 0xc0,
408 	0xc0, 0xd0, 0x0e, 0x48, 0xe5, 0x4c, 0x55, 0x6b,
409 	0x4a, 0xc1, 0x0a, 0x24, 0x4b, 0xd0, 0x02, 0xf4,
410 	0x31, 0x63, 0x11, 0xbd, 0xa6, 0x1f, 0xf4, 0xae,
411 	0x23, 0x5a, 0x40, 0x7e, 0x0e, 0x4e, 0x63, 0x8b,
412 	0x66, 0x3d, 0x55, 0x46, 0x6e, 0x5c, 0x76, 0xa7,
413 	0x68, 0x31, 0xce, 0x5d, 0xca, 0xe2, 0xb4, 0xb0,
414 	0xc1, 0x1f, 0x66, 0x18, 0x75, 0x64, 0x73, 0xa9,
415 	0x9e, 0xd5, 0x0e, 0x0e, 0xf7, 0x77, 0x61, 0xf8,
416 	0x89, 0xc6, 0xcf, 0x0c, 0x41, 0xd3, 0x8f, 0xfd,
417 	0x22, 0x52, 0x4f, 0x94, 0x5c, 0x19, 0x11, 0x3a,
418 	0xb5, 0x63, 0xe8, 0x81, 0x33, 0x13, 0x54, 0x3c,
419 	0x93, 0x36, 0xb5, 0x5b, 0x51, 0xaf, 0x51, 0xa2,
420 	0x08, 0xae, 0x83, 0x15, 0x77, 0x07, 0x28, 0x0d,
421 	0x98, 0xe1, 0x2f, 0x69, 0x0e, 0xfb, 0x9a, 0x2e,
422 	0x27, 0x27, 0xb0, 0xd5, 0xce, 0xf8, 0x16, 0x55,
423 	0xfd, 0xaa, 0xd7, 0x1a, 0x1b, 0x2e, 0x4c, 0x86,
424 	0x7a, 0x6a, 0x90, 0xf7, 0x0a, 0x07, 0xd3, 0x81,
425 	0x4b, 0x75, 0x6a, 0x79, 0xdb, 0x63, 0x45, 0x0f,
426 	0x31, 0x7e, 0xd0, 0x2a, 0x14, 0xff, 0xee, 0xcc,
427 	0x97, 0x8a, 0x7d, 0x74, 0xbd, 0x9d, 0xaf, 0x00,
428 	0xdb, 0x7e, 0xf3, 0xe6, 0x22, 0x76, 0x77, 0x58,
429 	0xba, 0x1c, 0x06, 0x96, 0xfb, 0x6f, 0x41, 0x71,
430 	0x66, 0x98, 0xae, 0x31, 0x7d, 0x29, 0x18, 0x71,
431 	0x0e, 0xe4, 0x98, 0x7e, 0x59, 0x5a, 0xc9, 0x78,
432 	0x9c, 0xfb, 0x6c, 0x81, 0x44, 0xb4, 0x0f, 0x5e,
433 	0x18, 0x53, 0xb8, 0x6f, 0xbc, 0x3b, 0x15, 0xf0,
434 	0x10, 0xdd, 0x0d, 0x4b, 0x0a, 0x36, 0x0e, 0xb4,
435 	0x76, 0x0f, 0x16, 0xa7, 0x5c, 0x9d, 0xcf, 0xb0,
436 	0x6d, 0x38, 0x02, 0x07, 0x05, 0xe9, 0xe9, 0x46,
437 	0x08, 0xb8, 0x52, 0xd6, 0xd9, 0x4c, 0x81, 0x63,
438 	0x1d, 0xe2, 0x5b, 0xd0, 0xf6, 0x5e, 0x1e, 0x81,
439 	0x48, 0x08, 0x66, 0x3a, 0x85, 0xed, 0x65, 0xfe,
440 	0xe8, 0x05, 0x7a, 0xe1, 0xe6, 0x12, 0xf2, 0x52,
441 	0x83, 0xdd, 0x82, 0xbe, 0xf6, 0x34, 0x8a, 0x6f,
442 	0xc5, 0x83, 0xcd, 0x3f, 0xbe, 0x58, 0x8b, 0x11,
443 	0x78, 0xdc, 0x0c, 0x83, 0x72, 0x5d, 0x05, 0x2a,
444 	0x01, 0x29, 0xee, 0x48, 0x9a, 0x67, 0x00, 0x6e,
445 	0x14, 0x60, 0x2d, 0x00, 0x52, 0x87, 0x98, 0x5e,
446 	0x43, 0xfe, 0xf1, 0x10, 0x14, 0xf1, 0x91, 0xcc
447 };
448 
449 
450 static const uint8_t ciphertext512_des[] = {
451 		0x1A, 0x46, 0xDB, 0x69, 0x43, 0x45, 0x0F, 0x2F,
452 		0xDC, 0x27, 0xF9, 0x41, 0x0E, 0x01, 0x58, 0xB4,
453 		0x5E, 0xCC, 0x13, 0xF5, 0x92, 0x99, 0xE4, 0xF2,
454 		0xD5, 0xF9, 0x16, 0xFE, 0x0F, 0x7E, 0xDE, 0xA0,
455 		0xF5, 0x32, 0xFE, 0x20, 0x67, 0x93, 0xCA, 0xE1,
456 		0x8E, 0x4D, 0x72, 0xA3, 0x50, 0x72, 0x14, 0x15,
457 		0x70, 0xE7, 0xAB, 0x49, 0x25, 0x88, 0x0E, 0x01,
458 		0x5C, 0x52, 0x87, 0xE2, 0x27, 0xDC, 0xD4, 0xD1,
459 		0x14, 0x1B, 0x08, 0x9F, 0x42, 0x48, 0x93, 0xA9,
460 		0xD1, 0x2F, 0x2C, 0x69, 0x48, 0x16, 0x59, 0xCF,
461 		0x8B, 0xF6, 0x8B, 0xD9, 0x34, 0xD4, 0xD7, 0xE4,
462 		0xAE, 0x35, 0xFD, 0xDA, 0x73, 0xBE, 0xDC, 0x6B,
463 		0x10, 0x90, 0x75, 0x2D, 0x4C, 0x14, 0x37, 0x8B,
464 		0xC8, 0xC7, 0xDF, 0x6E, 0x6F, 0xED, 0xF3, 0xE3,
465 		0xD3, 0x21, 0x29, 0xCD, 0x06, 0xB6, 0x5B, 0xF4,
466 		0xB9, 0xBD, 0x77, 0xA2, 0xF7, 0x91, 0xF4, 0x95,
467 		0xF0, 0xE0, 0x62, 0x03, 0x46, 0xAE, 0x1B, 0xEB,
468 		0xE2, 0xA9, 0xCF, 0xB9, 0x0E, 0x3B, 0xB9, 0xDA,
469 		0x5C, 0x1B, 0x45, 0x3F, 0xDD, 0xCC, 0xCC, 0xB3,
470 		0xF0, 0xDD, 0x36, 0x26, 0x11, 0x57, 0x97, 0xA7,
471 		0xF6, 0xF4, 0xE1, 0x4F, 0xBB, 0x31, 0xBB, 0x07,
472 		0x4B, 0xA3, 0xB4, 0x83, 0xF9, 0x23, 0xA1, 0xCD,
473 		0x8C, 0x1C, 0x76, 0x92, 0x45, 0xA5, 0xEB, 0x7D,
474 		0xEB, 0x22, 0x88, 0xB1, 0x9F, 0xFB, 0xE9, 0x06,
475 		0x8F, 0x67, 0xA6, 0x8A, 0xB7, 0x0B, 0xCD, 0x8F,
476 		0x34, 0x40, 0x4F, 0x4F, 0xAD, 0xA0, 0xF2, 0xDC,
477 		0x2C, 0x53, 0xE1, 0xCA, 0xA5, 0x7A, 0x03, 0xEF,
478 		0x08, 0x00, 0xCC, 0x52, 0xA6, 0xAB, 0x56, 0xD2,
479 		0xF1, 0xCD, 0xC7, 0xED, 0xBE, 0xCB, 0x78, 0x37,
480 		0x4B, 0x61, 0xA9, 0xD2, 0x3C, 0x8D, 0xCC, 0xFD,
481 		0x21, 0xFD, 0x0F, 0xE4, 0x4E, 0x3D, 0x6F, 0x8F,
482 		0x2A, 0xEC, 0x69, 0xFA, 0x20, 0x50, 0x99, 0x35,
483 		0xA1, 0xCC, 0x3B, 0xFD, 0xD6, 0xAC, 0xE9, 0xBE,
484 		0x14, 0xF1, 0xBC, 0x71, 0x70, 0xFE, 0x13, 0xD1,
485 		0x48, 0xCC, 0xBE, 0x7B, 0xCB, 0xC0, 0x20, 0xD9,
486 		0x28, 0xD7, 0xD4, 0x0F, 0x66, 0x7A, 0x60, 0xAB,
487 		0x20, 0xA9, 0x23, 0x41, 0x03, 0x34, 0xC3, 0x63,
488 		0x91, 0x69, 0x02, 0xD5, 0xBC, 0x41, 0xDA, 0xA8,
489 		0xD1, 0x48, 0xC9, 0x8E, 0x4F, 0xCD, 0x0F, 0x21,
490 		0x5B, 0x4D, 0x5F, 0xF5, 0x1B, 0x2A, 0x44, 0x10,
491 		0x16, 0xA7, 0xFD, 0xC0, 0x55, 0xE1, 0x98, 0xBB,
492 		0x76, 0xB5, 0xAB, 0x39, 0x6B, 0x9B, 0xAB, 0x85,
493 		0x45, 0x4B, 0x9C, 0x64, 0x7D, 0x78, 0x3F, 0x61,
494 		0x22, 0xB1, 0xDE, 0x0E, 0x39, 0x2B, 0x21, 0x26,
495 		0xE2, 0x1D, 0x5A, 0xD7, 0xAC, 0xDF, 0xD4, 0x12,
496 		0x69, 0xD1, 0xE8, 0x9B, 0x1A, 0xCE, 0x6C, 0xA0,
497 		0x3B, 0x23, 0xDC, 0x03, 0x2B, 0x97, 0x16, 0xD0,
498 		0xD0, 0x46, 0x98, 0x36, 0x53, 0xCE, 0x88, 0x6E,
499 		0xCA, 0x2C, 0x15, 0x0E, 0x49, 0xED, 0xBE, 0xE5,
500 		0xBF, 0xBD, 0x7B, 0xC2, 0x21, 0xE1, 0x09, 0xFF,
501 		0x71, 0xA8, 0xBE, 0x8F, 0xB4, 0x1D, 0x25, 0x5C,
502 		0x37, 0xCA, 0x26, 0xD2, 0x1E, 0x63, 0xE1, 0x7F,
503 		0x0D, 0x89, 0x10, 0xEF, 0x78, 0xB0, 0xDB, 0xD0,
504 		0x72, 0x44, 0x60, 0x1D, 0xCF, 0x7C, 0x25, 0x1A,
505 		0xBB, 0xC3, 0x92, 0x53, 0x8E, 0x9F, 0x27, 0xC7,
506 		0xE8, 0x08, 0xFC, 0x5D, 0x50, 0x3E, 0xFC, 0xB0,
507 		0x00, 0xE2, 0x48, 0xB2, 0x4B, 0xF8, 0xF2, 0xE3,
508 		0xD3, 0x8B, 0x71, 0x64, 0xB8, 0xF0, 0x6E, 0x4A,
509 		0x23, 0xA0, 0xA4, 0x88, 0xA4, 0x36, 0x45, 0x6B,
510 		0x5A, 0xE7, 0x57, 0x65, 0xEA, 0xC9, 0xF8, 0xE8,
511 		0x7A, 0x80, 0x22, 0x67, 0x1A, 0x05, 0xF2, 0x78,
512 		0x81, 0x17, 0xCD, 0x87, 0xFB, 0x0D, 0x25, 0x84,
513 		0x49, 0x06, 0x25, 0xCE, 0xFC, 0x38, 0x06, 0x18,
514 		0x2E, 0x1D, 0xE1, 0x33, 0x97, 0xB6, 0x7E, 0xAB,
515 };
516 
517 
518 static const struct blockcipher_test_data
519 triple_des128cbc_test_vector = {
520 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CBC,
521 	.cipher_key = {
522 		.data = {
523 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
524 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
525 		},
526 		.len = 16
527 	},
528 	.iv = {
529 		.data = {
530 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
531 		},
532 		.len = 8
533 	},
534 	.plaintext = {
535 		.data = plaintext_des,
536 		.len = 512
537 	},
538 	.ciphertext = {
539 		.data = ciphertext512_des128cbc,
540 		.len = 512
541 	}
542 };
543 
544 static const struct blockcipher_test_data
545 triple_des128cbc_sha1_test_vector = {
546 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CBC,
547 	.cipher_key = {
548 		.data = {
549 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
550 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
551 		},
552 		.len = 16
553 	},
554 	.iv = {
555 		.data = {
556 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
557 		},
558 		.len = 8
559 	},
560 	.plaintext = {
561 		.data = plaintext_des,
562 		.len = 512
563 	},
564 	.ciphertext = {
565 		.data = ciphertext512_des128cbc,
566 		.len = 512
567 	},
568 	.auth_algo = RTE_CRYPTO_AUTH_SHA1,
569 	.digest = {
570 		.data = {
571 			0x94, 0x45, 0x7B, 0xDF, 0xFE, 0x80, 0xB9, 0xA6,
572 			0xA0, 0x7A, 0xE8, 0x93, 0x40, 0x7B, 0x85, 0x02,
573 			0x1C, 0xD7, 0xE8, 0x87
574 		},
575 		.len = 20
576 	}
577 };
578 
579 static const struct blockcipher_test_data
580 triple_des128cbc_hmac_sha1_test_vector = {
581 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CBC,
582 	.cipher_key = {
583 		.data = {
584 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
585 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A
586 		},
587 		.len = 16
588 	},
589 	.iv = {
590 		.data = {
591 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
592 		},
593 		.len = 8
594 	},
595 	.plaintext = {
596 		.data = plaintext_des,
597 		.len = 512
598 	},
599 	.ciphertext = {
600 		.data = ciphertext512_des128cbc,
601 		.len = 512
602 	},
603 	.auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
604 	.auth_key = {
605 		.data = {
606 			0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
607 			0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
608 			0xDE, 0xF4, 0xDE, 0xAD
609 		},
610 		.len = 20
611 	},
612 	.digest = {
613 		.data = {
614 			0x7E, 0xBA, 0xFF, 0x86, 0x8D, 0x65, 0xCD, 0x08,
615 			0x76, 0x34, 0x94, 0xE9, 0x9A, 0xCD, 0xB2, 0xBB,
616 			0xBF, 0x65, 0xF5, 0x42
617 		},
618 		.len = 20
619 	}
620 };
621 
622 static const uint8_t ciphertext512_des192cbc[] = {
623 	0xd0, 0xc9, 0xdc, 0x51, 0x29, 0x97, 0x03, 0x64,
624 	0xcd, 0x22, 0xba, 0x3d, 0x2b, 0xbc, 0x21, 0x37,
625 	0x7b, 0x1e, 0x29, 0x23, 0xeb, 0x51, 0x6e, 0xac,
626 	0xbe, 0x5b, 0xd3, 0x67, 0xe0, 0x3f, 0xc3, 0xb5,
627 	0xe3, 0x04, 0x17, 0x42, 0x2b, 0xaa, 0xdd, 0xd6,
628 	0x0e, 0x69, 0xd0, 0x8f, 0x8a, 0xfc, 0xb4, 0x55,
629 	0x67, 0x06, 0x51, 0xbb, 0x00, 0x57, 0xee, 0x95,
630 	0x28, 0x79, 0x3f, 0xd9, 0x97, 0x2b, 0xb0, 0x02,
631 	0x35, 0x08, 0xce, 0x7a, 0xc3, 0x43, 0x2c, 0x87,
632 	0xaa, 0x97, 0x6a, 0xad, 0xf0, 0x26, 0xea, 0x1d,
633 	0xbb, 0x08, 0xe9, 0x52, 0x11, 0xd3, 0xaf, 0x36,
634 	0x17, 0x14, 0x21, 0xb2, 0xbc, 0x42, 0x51, 0x33,
635 	0x27, 0x8c, 0xd8, 0x45, 0xb9, 0x76, 0xa0, 0x11,
636 	0x24, 0x34, 0xde, 0x4d, 0x13, 0x67, 0x1b, 0xc3,
637 	0x31, 0x12, 0x66, 0x56, 0x59, 0xd2, 0xb1, 0x8f,
638 	0xec, 0x1e, 0xc0, 0x10, 0x7a, 0x86, 0xb1, 0x60,
639 	0xc3, 0x01, 0xd6, 0xa8, 0x55, 0xad, 0x58, 0x63,
640 	0xca, 0x68, 0xa9, 0x33, 0xe3, 0x93, 0x90, 0x7d,
641 	0x8f, 0xca, 0xf8, 0x1c, 0xc2, 0x9e, 0xfb, 0xde,
642 	0x9c, 0xc7, 0xf2, 0x6c, 0xff, 0xcc, 0x39, 0x17,
643 	0x49, 0x33, 0x0d, 0x7c, 0xed, 0x07, 0x99, 0x91,
644 	0x91, 0x6c, 0x5f, 0x3f, 0x02, 0x09, 0xdc, 0x70,
645 	0xf9, 0x3b, 0x8d, 0xaa, 0xf4, 0xbc, 0x0e, 0xec,
646 	0xf2, 0x26, 0xfb, 0xb2, 0x1c, 0x31, 0xae, 0xc6,
647 	0x72, 0xe8, 0x0b, 0x75, 0x05, 0x57, 0x58, 0x98,
648 	0x92, 0x37, 0x27, 0x8e, 0x3b, 0x0c, 0x25, 0xfb,
649 	0xcf, 0x82, 0x02, 0xd5, 0x0b, 0x1f, 0x89, 0x49,
650 	0xcd, 0x0f, 0xa1, 0xa7, 0x08, 0x63, 0x56, 0xa7,
651 	0x1f, 0x80, 0x3a, 0xef, 0x24, 0x89, 0x57, 0x1a,
652 	0x02, 0xdc, 0x2e, 0x51, 0xbd, 0x4a, 0x10, 0x23,
653 	0xfc, 0x02, 0x1a, 0x3f, 0x34, 0xbf, 0x1c, 0x98,
654 	0x1a, 0x40, 0x0a, 0x96, 0x8e, 0x41, 0xd5, 0x09,
655 	0x55, 0x37, 0xe9, 0x25, 0x11, 0x83, 0xf8, 0xf3,
656 	0xd4, 0xb0, 0xdb, 0x16, 0xd7, 0x51, 0x7e, 0x94,
657 	0xf7, 0xb4, 0x26, 0xe0, 0xf4, 0x80, 0x01, 0x65,
658 	0x51, 0xeb, 0xbc, 0xb0, 0x65, 0x8f, 0xdd, 0xb5,
659 	0xf7, 0x00, 0xec, 0x40, 0xab, 0x7d, 0x96, 0xcc,
660 	0x8d, 0xec, 0x89, 0x80, 0x31, 0x39, 0xa2, 0x5c,
661 	0xb0, 0x55, 0x4c, 0xee, 0xdd, 0x15, 0x2b, 0xa9,
662 	0x86, 0x4e, 0x23, 0x14, 0x36, 0xc5, 0x57, 0xf5,
663 	0xe3, 0xe8, 0x89, 0xc9, 0xb7, 0xf8, 0xeb, 0x08,
664 	0xe5, 0x93, 0x12, 0x5c, 0x0f, 0x79, 0xa1, 0x86,
665 	0xe4, 0xc2, 0xeb, 0xa6, 0xa0, 0x50, 0x6a, 0xec,
666 	0xd3, 0xce, 0x50, 0x78, 0x4e, 0x4f, 0x93, 0xd8,
667 	0xdc, 0xb4, 0xec, 0x02, 0xe9, 0xbd, 0x17, 0x99,
668 	0x1e, 0x16, 0x4e, 0xd7, 0xb0, 0x07, 0x02, 0x55,
669 	0x63, 0x24, 0x4f, 0x7b, 0x8f, 0xc5, 0x7a, 0x12,
670 	0x29, 0xff, 0x5d, 0xc1, 0xe7, 0xae, 0x48, 0xc8,
671 	0x57, 0x53, 0xe7, 0xcd, 0x10, 0x6c, 0x19, 0xfc,
672 	0xcc, 0xb9, 0xb1, 0xbe, 0x48, 0x9f, 0x2d, 0x3f,
673 	0x39, 0x2e, 0xdd, 0x71, 0xde, 0x1b, 0x54, 0xee,
674 	0x7d, 0x94, 0x8f, 0x27, 0x23, 0xe9, 0x74, 0x92,
675 	0x14, 0x93, 0x84, 0x65, 0xc9, 0x22, 0x7c, 0xa8,
676 	0x1b, 0x72, 0x73, 0xb1, 0x23, 0xa0, 0x6b, 0xcc,
677 	0xb5, 0x22, 0x06, 0x15, 0xe5, 0x96, 0x03, 0x4a,
678 	0x52, 0x8d, 0x1d, 0xbf, 0x3e, 0x82, 0x45, 0x9c,
679 	0x75, 0x9e, 0xa9, 0x3a, 0x97, 0xb6, 0x5d, 0xc4,
680 	0x75, 0x67, 0xa1, 0xf3, 0x0f, 0x7a, 0xfd, 0x71,
681 	0x58, 0x04, 0xf9, 0xa7, 0xc2, 0x56, 0x74, 0x04,
682 	0x74, 0x68, 0x6d, 0x8a, 0xf6, 0x6c, 0x5d, 0xd8,
683 	0xb5, 0xed, 0x70, 0x23, 0x32, 0x4d, 0x75, 0x92,
684 	0x88, 0x7b, 0x39, 0x37, 0x02, 0x4b, 0xb2, 0x1c,
685 	0x1f, 0x7e, 0x5b, 0x1b, 0x10, 0xfc, 0x17, 0x21,
686 	0x66, 0x62, 0x63, 0xc2, 0xcd, 0x16, 0x96, 0x3e
687 };
688 
689 static const struct blockcipher_test_data
690 triple_des192cbc_test_vector = {
691 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CBC,
692 	.cipher_key = {
693 		.data = {
694 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
695 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
696 			0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0
697 		},
698 		.len = 24
699 	},
700 	.iv = {
701 		.data = {
702 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
703 		},
704 		.len = 8
705 	},
706 	.plaintext = {
707 		.data = plaintext_des,
708 		.len = 512
709 	},
710 	.ciphertext = {
711 		.data = ciphertext512_des192cbc,
712 		.len = 512
713 	}
714 };
715 
716 static const struct blockcipher_test_data
717 triple_des192cbc_sha1_test_vector = {
718 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CBC,
719 	.cipher_key = {
720 		.data = {
721 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
722 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
723 			0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0
724 		},
725 		.len = 24
726 	},
727 	.iv = {
728 		.data = {
729 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
730 		},
731 		.len = 8
732 	},
733 	.plaintext = {
734 		.data = plaintext_des,
735 		.len = 512
736 	},
737 	.ciphertext = {
738 		.data = ciphertext512_des192cbc,
739 		.len = 512
740 	},
741 	.auth_algo = RTE_CRYPTO_AUTH_SHA1,
742 	.digest = {
743 		.data = {
744 			0x53, 0x27, 0xC0, 0xE6, 0xD6, 0x1B, 0xD6, 0x45,
745 			0x94, 0x2D, 0xCE, 0x8B, 0x29, 0xA3, 0x52, 0x14,
746 			0xC1, 0x6B, 0x87, 0x99
747 		},
748 		.len = 20
749 	}
750 };
751 
752 static const struct blockcipher_test_data
753 triple_des192cbc_hmac_sha1_test_vector = {
754 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CBC,
755 	.cipher_key = {
756 		.data = {
757 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2,
758 			0x49, 0x03, 0xDD, 0xC6, 0xB8, 0xCA, 0x55, 0x7A,
759 			0xD4, 0xC3, 0xA3, 0xAA, 0x33, 0x62, 0x61, 0xE0
760 		},
761 		.len = 24
762 	},
763 	.iv = {
764 		.data = {
765 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
766 		},
767 		.len = 8
768 	},
769 	.plaintext = {
770 		.data = plaintext_des,
771 		.len = 512
772 	},
773 	.ciphertext = {
774 		.data = ciphertext512_des192cbc,
775 		.len = 512
776 	},
777 	.auth_algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
778 	.auth_key = {
779 		.data = {
780 			0xF8, 0x2A, 0xC7, 0x54, 0xDB, 0x96, 0x18, 0xAA,
781 			0xC3, 0xA1, 0x53, 0xF6, 0x1F, 0x17, 0x60, 0xBD,
782 			0xDE, 0xF4, 0xDE, 0xAD
783 		},
784 		.len = 20
785 	},
786 	.digest = {
787 		.data = {
788 			0xBA, 0xAC, 0x74, 0x19, 0x43, 0xB0, 0x72, 0xB8,
789 			0x08, 0xF5, 0x24, 0xC4, 0x09, 0xBD, 0x48, 0xC1,
790 			0x3C, 0x50, 0x1C, 0xDD
791 		},
792 		.len = 20
793 	}
794 };
795 static const struct blockcipher_test_data
796 triple_des64cbc_test_vector = {
797 	.crypto_algo = RTE_CRYPTO_CIPHER_3DES_CBC,
798 	.cipher_key = {
799 		.data = {
800 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2
801 		},
802 		.len = 8
803 	},
804 	.iv = {
805 		.data = {
806 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
807 		},
808 		.len = 8
809 	},
810 	.plaintext = {
811 		.data = plaintext_des,
812 		.len = 512
813 	},
814 	.ciphertext = {
815 		.data = ciphertext512_des,
816 		.len = 512
817 	},
818 };
819 
820 static const struct blockcipher_test_data
821 des_cbc_test_vector = {
822 	.crypto_algo = RTE_CRYPTO_CIPHER_DES_CBC,
823 	.cipher_key = {
824 		.data = {
825 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2
826 		},
827 		.len = 8
828 	},
829 	.iv = {
830 		.data = {
831 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
832 		},
833 		.len = 8
834 	},
835 	.plaintext = {
836 		.data = plaintext_des,
837 		.len = 512
838 	},
839 	.ciphertext = {
840 		.data = ciphertext512_des,
841 		.len = 512
842 	},
843 };
844 
845 static const struct blockcipher_test_case des_cipheronly_test_cases[] = {
846 	{
847 		.test_descr = "DES-CBC Encryption",
848 		.test_data = &des_cbc_test_vector,
849 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
850 	},
851 	{
852 		.test_descr = "DES-CBC Decryption",
853 		.test_data = &des_cbc_test_vector,
854 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
855 	},
856 
857 };
858 
859 /* DES-DOCSIS-BPI test vectors */
860 
861 static const uint8_t plaintext_des_docsis_bpi_cfb[] = {
862 	0x00, 0x01, 0x02, 0x88, 0xEE, 0x59, 0x7E
863 };
864 
865 static const uint8_t ciphertext_des_docsis_bpi_cfb[] = {
866 	0x17, 0x86, 0xA8, 0x03, 0xA0, 0x85, 0x75
867 };
868 
869 static const uint8_t plaintext_des_docsis_bpi_cbc_cfb[] = {
870 	0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
871 	0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x91,
872 	0xD2, 0xD1, 0x9F
873 };
874 
875 static const uint8_t ciphertext_des_docsis_bpi_cbc_cfb[] = {
876 	0x0D, 0xDA, 0x5A, 0xCB, 0xD0, 0x5E, 0x55, 0x67,
877 	0x51, 0x47, 0x46, 0x86, 0x8A, 0x71, 0xE5, 0x77,
878 	0xEF, 0xAC, 0x88
879 };
880 
881 /* Multiple of DES block size */
882 static const struct blockcipher_test_data des_test_data_1 = {
883 	.crypto_algo = RTE_CRYPTO_CIPHER_DES_DOCSISBPI,
884 	.cipher_key = {
885 		.data = {
886 			0xE4, 0x23, 0x33, 0x8A, 0x35, 0x64, 0x61, 0xE2
887 		},
888 		.len = 8
889 	},
890 	.iv = {
891 		.data = {
892 			0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
893 		},
894 		.len = 8
895 	},
896 	.plaintext = {
897 		.data = plaintext_des,
898 		.len = 512
899 	},
900 	.ciphertext = {
901 		.data = ciphertext512_des,
902 		.len = 512
903 	},
904 };
905 
906 /* Less than DES block size */
907 static const struct blockcipher_test_data des_test_data_2 = {
908 	.crypto_algo = RTE_CRYPTO_CIPHER_DES_DOCSISBPI,
909 	.cipher_key = {
910 		.data = {
911 
912 			0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB
913 		},
914 		.len = 8
915 	},
916 	.iv = {
917 		.data = {
918 			0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A
919 		},
920 		.len = 8
921 	},
922 	.plaintext = {
923 		.data = plaintext_des_docsis_bpi_cfb,
924 		.len = 7
925 	},
926 	.ciphertext = {
927 		.data = ciphertext_des_docsis_bpi_cfb,
928 		.len = 7
929 	}
930 };
931 
932 /* Not multiple of DES block size */
933 static const struct blockcipher_test_data des_test_data_3 = {
934 	.crypto_algo = RTE_CRYPTO_CIPHER_DES_DOCSISBPI,
935 	.cipher_key = {
936 		.data = {
937 			0xE6, 0x60, 0x0F, 0xD8, 0x85, 0x2E, 0xF5, 0xAB
938 		},
939 		.len = 8
940 	},
941 	.iv = {
942 		.data = {
943 			0x81, 0x0E, 0x52, 0x8E, 0x1C, 0x5F, 0xDA, 0x1A
944 		},
945 		.len = 8
946 	},
947 	.plaintext = {
948 		.data = plaintext_des_docsis_bpi_cbc_cfb,
949 		.len = 19
950 	},
951 	.ciphertext = {
952 		.data = ciphertext_des_docsis_bpi_cbc_cfb,
953 		.len = 19
954 	}
955 };
956 static const struct blockcipher_test_case des_docsis_test_cases[] = {
957 	{
958 		.test_descr = "DES-DOCSIS-BPI Full Block Encryption",
959 		.test_data = &des_test_data_1,
960 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
961 	},
962 	{
963 		.test_descr = "DES-DOCSIS-BPI Runt Block Encryption",
964 		.test_data = &des_test_data_2,
965 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
966 	},
967 	{
968 		.test_descr = "DES-DOCSIS-BPI Uneven Encryption",
969 		.test_data = &des_test_data_3,
970 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
971 	},
972 	{
973 		.test_descr = "DES-DOCSIS-BPI Full Block Decryption",
974 		.test_data = &des_test_data_1,
975 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
976 	},
977 	{
978 		.test_descr = "DES-DOCSIS-BPI Runt Block Decryption",
979 		.test_data = &des_test_data_2,
980 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
981 	},
982 	{
983 		.test_descr = "DES-DOCSIS-BPI Uneven Decryption",
984 		.test_data = &des_test_data_3,
985 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
986 	},
987 	{
988 		.test_descr = "DES-DOCSIS-BPI OOP Full Block Encryption",
989 		.test_data = &des_test_data_1,
990 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
991 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
992 	},
993 	{
994 		.test_descr = "DES-DOCSIS-BPI OOP Runt Block Encryption",
995 		.test_data = &des_test_data_2,
996 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
997 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
998 	},
999 	{
1000 		.test_descr = "DES-DOCSIS-BPI OOP Uneven Encryption",
1001 		.test_data = &des_test_data_3,
1002 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1003 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1004 	},
1005 	{
1006 		.test_descr = "DES-DOCSIS-BPI OOP Full Block Decryption",
1007 		.test_data = &des_test_data_1,
1008 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1009 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1010 	},
1011 	{
1012 		.test_descr = "DES-DOCSIS-BPI OOP Runt Block Decryption",
1013 		.test_data = &des_test_data_2,
1014 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1015 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1016 	},
1017 	{
1018 		.test_descr = "DES-DOCSIS-BPI OOP Uneven Decryption",
1019 		.test_data = &des_test_data_3,
1020 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1021 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1022 	}
1023 };
1024 
1025 static const struct blockcipher_test_case triple_des_chain_test_cases[] = {
1026 	{
1027 		.test_descr = "3DES-128-CBC HMAC-SHA1 Encryption Digest",
1028 		.test_data = &triple_des128cbc_hmac_sha1_test_vector,
1029 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1030 	},
1031 	{
1032 		.test_descr = "3DES-128-CBC HMAC-SHA1 Decryption Digest Verify",
1033 		.test_data = &triple_des128cbc_hmac_sha1_test_vector,
1034 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1035 	},
1036 	{
1037 		.test_descr = "3DES-128-CBC SHA1 Encryption Digest",
1038 		.test_data = &triple_des128cbc_sha1_test_vector,
1039 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1040 	},
1041 	{
1042 		.test_descr = "3DES-128-CBC SHA1 Decryption Digest Verify",
1043 		.test_data = &triple_des128cbc_sha1_test_vector,
1044 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1045 	},
1046 	{
1047 		.test_descr = "3DES-192-CBC HMAC-SHA1 Encryption Digest",
1048 		.test_data = &triple_des192cbc_hmac_sha1_test_vector,
1049 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1050 	},
1051 	{
1052 		.test_descr = "3DES-192-CBC HMAC-SHA1 Decryption Digest Verify",
1053 		.test_data = &triple_des192cbc_hmac_sha1_test_vector,
1054 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1055 	},
1056 	{
1057 		.test_descr = "3DES-192-CBC SHA1 Encryption Digest",
1058 		.test_data = &triple_des192cbc_sha1_test_vector,
1059 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1060 	},
1061 	{
1062 		.test_descr = "3DES-192-CBC SHA1 Decryption Digest Verify",
1063 		.test_data = &triple_des192cbc_sha1_test_vector,
1064 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1065 	},
1066 	{
1067 		.test_descr = "3DES-128-CTR HMAC-SHA1 Encryption Digest",
1068 		.test_data = &triple_des128ctr_hmac_sha1_test_vector,
1069 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1070 	},
1071 	{
1072 		.test_descr = "3DES-128-CTR HMAC-SHA1 Decryption Digest Verify",
1073 		.test_data = &triple_des128ctr_hmac_sha1_test_vector,
1074 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1075 	},
1076 	{
1077 		.test_descr = "3DES-128-CTR SHA1 Encryption Digest",
1078 		.test_data = &triple_des128ctr_sha1_test_vector,
1079 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1080 	},
1081 	{
1082 		.test_descr = "3DES-128-CTR SHA1 Decryption Digest Verify",
1083 		.test_data = &triple_des128ctr_sha1_test_vector,
1084 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1085 	},
1086 	{
1087 		.test_descr = "3DES-192-CTR HMAC-SHA1 Encryption Digest",
1088 		.test_data = &triple_des192ctr_hmac_sha1_test_vector,
1089 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1090 	},
1091 	{
1092 		.test_descr = "3DES-192-CTR HMAC-SHA1 Decryption Digest Verify",
1093 		.test_data = &triple_des192ctr_hmac_sha1_test_vector,
1094 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1095 	},
1096 	{
1097 		.test_descr = "3DES-192-CTR SHA1 Encryption Digest",
1098 		.test_data = &triple_des192ctr_sha1_test_vector,
1099 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1100 	},
1101 	{
1102 		.test_descr = "3DES-192-CTR SHA1 Decryption Digest Verify",
1103 		.test_data = &triple_des192ctr_sha1_test_vector,
1104 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1105 	},
1106 	{
1107 		.test_descr = "3DES-128-CBC HMAC-SHA1 Encryption Digest OOP",
1108 		.test_data = &triple_des128cbc_hmac_sha1_test_vector,
1109 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1110 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1111 	},
1112 	{
1113 		.test_descr = "3DES-128-CBC HMAC-SHA1 Decryption Digest"
1114 				" Verify OOP",
1115 		.test_data = &triple_des128cbc_hmac_sha1_test_vector,
1116 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1117 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_OOP,
1118 	},
1119 	{
1120 		.test_descr = "3DES-128-CBC HMAC-SHA1 Encryption Digest"
1121 				" Sessionless",
1122 		.test_data = &triple_des128cbc_hmac_sha1_test_vector,
1123 		.op_mask = BLOCKCIPHER_TEST_OP_ENC_AUTH_GEN,
1124 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS,
1125 	},
1126 	{
1127 		.test_descr =
1128 				"3DES-128-CBC HMAC-SHA1 Decryption Digest"
1129 				" Verify Sessionless",
1130 		.test_data = &triple_des128cbc_hmac_sha1_test_vector,
1131 		.op_mask = BLOCKCIPHER_TEST_OP_AUTH_VERIFY_DEC,
1132 		.feature_mask = BLOCKCIPHER_TEST_FEATURE_SESSIONLESS,
1133 	},
1134 };
1135 
1136 static const struct blockcipher_test_case triple_des_cipheronly_test_cases[] = {
1137 	{
1138 		.test_descr = "3DES-64-CBC Encryption",
1139 		.test_data = &triple_des64cbc_test_vector,
1140 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1141 	},
1142 	{
1143 		.test_descr = "3DES-64-CBC Decryption",
1144 		.test_data = &triple_des64cbc_test_vector,
1145 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1146 	},
1147 	{
1148 		.test_descr = "3DES-128-CBC Encryption",
1149 		.test_data = &triple_des128cbc_test_vector,
1150 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1151 	},
1152 	{
1153 		.test_descr = "3DES-128-CBC Decryption",
1154 		.test_data = &triple_des128cbc_test_vector,
1155 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1156 	},
1157 	{
1158 		.test_descr = "3DES-192-CBC Encryption",
1159 		.test_data = &triple_des192cbc_test_vector,
1160 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1161 	},
1162 	{
1163 		.test_descr = "3DES-192-CBC Decryption",
1164 		.test_data = &triple_des192cbc_test_vector,
1165 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1166 	},
1167 	{
1168 		.test_descr = "3DES-128-CTR Encryption",
1169 		.test_data = &triple_des128ctr_test_vector,
1170 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1171 	},
1172 	{
1173 		.test_descr = "3DES-128-CTR Decryption",
1174 		.test_data = &triple_des128ctr_test_vector,
1175 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1176 	},
1177 	{
1178 		.test_descr = "3DES-192-CTR Encryption",
1179 		.test_data = &triple_des192ctr_test_vector,
1180 		.op_mask = BLOCKCIPHER_TEST_OP_ENCRYPT,
1181 	},
1182 	{
1183 		.test_descr = "3DES-192-CTR Decryption",
1184 		.test_data = &triple_des192ctr_test_vector,
1185 		.op_mask = BLOCKCIPHER_TEST_OP_DECRYPT,
1186 	}
1187 };
1188 
1189 #endif /* TEST_CRYPTODEV_DES_TEST_VECTORS_H_ */
1190