1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright(c) 2018 Cavium Networks 3 */ 4 5 #ifndef TEST_CRYPTODEV_RSA_TEST_VECTORS_H__ 6 #define TEST_CRYPTODEV_RSA_TEST_VECTORS_H__ 7 8 #include <stdint.h> 9 10 #include "rte_crypto_asym.h" 11 12 #define TEST_DATA_SIZE 4096 13 14 struct rsa_test_data_2 { 15 enum rte_crypto_asym_xform_type xform_type; 16 const char *description; 17 uint64_t op_type_flags; 18 struct { 19 uint8_t data[DATA_SIZE]; 20 uint16_t len; 21 } pt; 22 struct { 23 uint8_t data[DATA_SIZE]; 24 uint16_t len; 25 } ct; 26 struct { 27 uint8_t data[DATA_SIZE]; 28 uint16_t len; 29 } sign; 30 struct { 31 uint8_t data[DATA_SIZE]; 32 uint16_t len; 33 } e; 34 struct { 35 uint8_t data[DATA_SIZE]; 36 uint16_t len; 37 } d; 38 struct { 39 uint8_t data[DATA_SIZE]; 40 uint16_t len; 41 } n; 42 struct { 43 uint8_t data[DATA_SIZE]; 44 uint16_t len; 45 } p; 46 struct { 47 uint8_t data[DATA_SIZE]; 48 uint16_t len; 49 } q; 50 struct { 51 uint8_t data[DATA_SIZE]; 52 uint16_t len; 53 } dP; 54 struct { 55 uint8_t data[DATA_SIZE]; 56 uint16_t len; 57 } dQ; 58 struct { 59 uint8_t data[DATA_SIZE]; 60 uint16_t len; 61 } qInv; 62 63 uint16_t result_len; 64 enum rte_crypto_rsa_padding_type padding; 65 int key_exp; 66 int key_qt; 67 }; 68 69 static const struct 70 rsa_test_data_2 rsa_test_case_list[] = { 71 { 72 .description = "RSA Encryption Decryption " 73 "(n=128, pt=20, e=3) EXP, QT", 74 .xform_type = RTE_CRYPTO_ASYM_XFORM_RSA, 75 .op_type_flags = 1UL << RTE_CRYPTO_ASYM_OP_ENCRYPT | 76 1UL << RTE_CRYPTO_ASYM_OP_DECRYPT, 77 .pt = { 78 .data = { 79 0x00, 0x02, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 80 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 81 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 82 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 83 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 84 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 85 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 86 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 87 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 88 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 89 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 90 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 91 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 92 0xbb, 0xbb, 0xbb, 0xbb, 0xf8, 0xba, 0x1a, 0x55, 93 0xd0, 0x2f, 0x85, 0xae, 0x96, 0x7b, 0xb6, 0x2f, 94 0xb6, 0xcd, 0xa8, 0xeb, 0x7e, 0x78, 0xa0, 0x50 95 }, 96 .len = 128, 97 }, 98 .ct = { 99 .data = { 100 0x3D, 0x8D, 0x2F, 0x85, 0xC0, 0xB7, 0x21, 0x3E, 101 0x5B, 0x4A, 0x96, 0xB2, 0x85, 0x35, 0xAF, 0x0C, 102 0x62, 0xE9, 0x73, 0xEF, 0x77, 0x76, 0x19, 0xD5, 103 0x92, 0xF7, 0x1D, 0xB0, 0x15, 0x69, 0x65, 0x82, 104 0x32, 0x30, 0x4E, 0x29, 0xE7, 0x83, 0xAD, 0x23, 105 0x66, 0xD9, 0x91, 0x9B, 0xFF, 0x01, 0x10, 0x3B, 106 0xB2, 0xF8, 0x78, 0x14, 0xD2, 0x6E, 0x3C, 0x59, 107 0x6E, 0x1A, 0x90, 0x3C, 0x5A, 0xB3, 0x0B, 0x60, 108 0xE2, 0x71, 0xCC, 0xF5, 0x0C, 0x57, 0x19, 0x03, 109 0x5B, 0x04, 0x46, 0x7E, 0x13, 0x5B, 0xFF, 0x2C, 110 0x01, 0x19, 0x75, 0x86, 0x6A, 0xAE, 0x60, 0xFB, 111 0x0A, 0x4C, 0x14, 0x1A, 0xBC, 0x0E, 0x86, 0xF1, 112 0x13, 0x10, 0xB3, 0x03, 0x8E, 0x66, 0x6F, 0xA5, 113 0x53, 0x80, 0x5A, 0x91, 0xE6, 0x7C, 0x3C, 0x38, 114 0x15, 0xB6, 0x69, 0x3E, 0xF6, 0x54, 0xB0, 0x60, 115 0x83, 0xE9, 0x2B, 0xF3, 0x26, 0x53, 0x3E, 0x11 116 }, 117 .len = 128, 118 }, 119 .e = { 120 .data = { 121 0x01, 0x00, 0x01 122 }, 123 .len = 3, 124 }, 125 .d = { 126 .data = { 127 0x24, 0xd7, 0xea, 0xf4, 0x7f, 0xe0, 0xca, 0x31, 128 0x4d, 0xee, 0xc4, 0xa1, 0xbe, 0xab, 0x06, 0x61, 129 0x32, 0xe7, 0x51, 0x46, 0x27, 0xdf, 0x72, 0xe9, 130 0x6f, 0xa8, 0x4c, 0xd1, 0x26, 0xef, 0x65, 0xeb, 131 0x67, 0xff, 0x5f, 0xa7, 0x3b, 0x25, 0xb9, 0x08, 132 0x8e, 0xa0, 0x47, 0x56, 0xe6, 0x8e, 0xf9, 0xd3, 133 0x18, 0x06, 0x3d, 0xc6, 0xb1, 0xf8, 0xdc, 0x1b, 134 0x8d, 0xe5, 0x30, 0x54, 0x26, 0xac, 0x16, 0x3b, 135 0x7b, 0xad, 0x46, 0x9e, 0x21, 0x6a, 0x57, 0xe6, 136 0x81, 0x56, 0x1d, 0x2a, 0xc4, 0x39, 0x63, 0x67, 137 0x81, 0x2c, 0xca, 0xcc, 0xf8, 0x42, 0x04, 0xbe, 138 0xcf, 0x8f, 0x6c, 0x5b, 0x81, 0x46, 0xb9, 0xc7, 139 0x62, 0x90, 0x87, 0x35, 0x03, 0x9b, 0x89, 0xcb, 140 0x37, 0xbd, 0xf1, 0x1b, 0x99, 0xa1, 0x9a, 0x78, 141 0xd5, 0x4c, 0xdd, 0x3f, 0x41, 0x0c, 0xb7, 0x1a, 142 0xd9, 0x7b, 0x87, 0x5f, 0xbe, 0xb1, 0x83, 0x41 143 }, 144 .len = 128, 145 }, 146 .n = { 147 .data = { 148 0xb3, 0xa1, 0xaf, 0xb7, 0x13, 0x08, 0x00, 0x0a, 149 0x35, 0xdc, 0x2b, 0x20, 0x8d, 0xa1, 0xb5, 0xce, 150 0x47, 0x8a, 0xc3, 0x80, 0xf4, 0x7d, 0x4a, 0xa2, 151 0x62, 0xfd, 0x61, 0x7f, 0xb5, 0xa8, 0xde, 0x0a, 152 0x17, 0x97, 0xa0, 0xbf, 0xdf, 0x56, 0x5a, 0x3d, 153 0x51, 0x56, 0x4f, 0x70, 0x70, 0x3f, 0x63, 0x6a, 154 0x44, 0x5b, 0xad, 0x84, 0x0d, 0x3f, 0x27, 0x6e, 155 0x3b, 0x34, 0x91, 0x60, 0x14, 0xb9, 0xaa, 0x72, 156 0xfd, 0xa3, 0x64, 0xd2, 0x03, 0xa7, 0x53, 0x87, 157 0x9e, 0x88, 0x0b, 0xc1, 0x14, 0x93, 0x1a, 0x62, 158 0xff, 0xb1, 0x5d, 0x74, 0xcd, 0x59, 0x63, 0x18, 159 0x11, 0x3d, 0x4f, 0xba, 0x75, 0xd4, 0x33, 0x4e, 160 0x23, 0x6b, 0x7b, 0x57, 0x44, 0xe1, 0xd3, 0x03, 161 0x13, 0xa6, 0xf0, 0x8b, 0x60, 0xb0, 0x9e, 0xee, 162 0x75, 0x08, 0x9d, 0x71, 0x63, 0x13, 0xcb, 0xa6, 163 0x81, 0x92, 0x14, 0x03, 0x22, 0x2d, 0xde, 0x55 164 }, 165 .len = 128, 166 }, 167 .p = { 168 .data = { 169 0xdc, 0xba, 0x00, 0x01, 0x57, 0x93, 0xe3, 0x05, 170 0xed, 0x61, 0x9a, 0xa3, 0xaf, 0x6a, 0xd3, 0x47, 171 0x8f, 0x2d, 0x1e, 0x7f, 0x4d, 0x60, 0xc8, 0x8d, 172 0x34, 0xb8, 0x17, 0x84, 0xbc, 0xd4, 0xe9, 0x79, 173 0x95, 0x75, 0x19, 0x37, 0xe0, 0xcc, 0xfe, 0x4c, 174 0x5d, 0x49, 0x53, 0x61, 0x29, 0xf1, 0xdc, 0x82, 175 0x03, 0x96, 0x7d, 0x95, 0x4f, 0xdd, 0x3c, 0x0a, 176 0x64, 0x8a, 0x43, 0x2f, 0x95, 0x4a, 0xed, 0xdd 177 }, 178 .len = 64, 179 }, 180 .q = { 181 .data = { 182 0xd0, 0x56, 0x7a, 0x0a, 0xd5, 0x95, 0xa4, 0x85, 183 0x53, 0x35, 0xa1, 0x48, 0x07, 0x6a, 0x7c, 0x08, 184 0xe0, 0xfd, 0x4b, 0x88, 0x77, 0xa6, 0x15, 0x23, 185 0x0f, 0xbf, 0x14, 0x46, 0x11, 0xee, 0x95, 0xc7, 186 0x5e, 0x77, 0x65, 0xa2, 0xb5, 0x50, 0xdf, 0x19, 187 0x07, 0xc7, 0x72, 0xdb, 0x29, 0xf6, 0x54, 0x86, 188 0xe1, 0xb3, 0x97, 0x0a, 0x28, 0x64, 0x3a, 0x38, 189 0xa6, 0x7d, 0x13, 0xc3, 0x79, 0xaa, 0x56, 0xd9 190 }, 191 .len = 64, 192 }, 193 .dP = { 194 .data = { 195 0xc5, 0x43, 0x0d, 0x82, 0x25, 0x8c, 0xab, 0x55, 196 0xbe, 0xc2, 0x7d, 0xfb, 0x4f, 0x68, 0x3f, 0x0e, 197 0x32, 0xec, 0xf5, 0xd6, 0x7b, 0x86, 0xc5, 0x75, 198 0x3c, 0xea, 0x51, 0x4a, 0x75, 0xa0, 0x2a, 0x50, 199 0x58, 0xbb, 0xe0, 0x1f, 0xca, 0x2e, 0x2a, 0x0e, 200 0x81, 0x48, 0x68, 0xd5, 0xeb, 0x30, 0x96, 0x0b, 201 0x33, 0xbd, 0xa8, 0xda, 0x6a, 0x17, 0xa3, 0xf2, 202 0xfd, 0xcb, 0x7b, 0x23, 0xe9, 0x5e, 0x9f, 0x99 203 }, 204 .len = 64, 205 }, 206 .dQ = { 207 .data = { 208 0xbe, 0xff, 0xf9, 0x05, 0x43, 0xc8, 0xdc, 0x3b, 209 0x0b, 0x0d, 0x28, 0xde, 0x73, 0x46, 0x11, 0x8e, 210 0xc6, 0x4e, 0x11, 0xd8, 0x7b, 0xf0, 0xfc, 0x81, 211 0xd7, 0x66, 0xd3, 0xbc, 0x65, 0xa6, 0x39, 0x14, 212 0xbd, 0xab, 0x72, 0xb7, 0x57, 0xc9, 0x5b, 0xaf, 213 0x83, 0xed, 0x3b, 0x84, 0x68, 0x15, 0x18, 0x6b, 214 0x4c, 0x32, 0xac, 0x6f, 0x38, 0x96, 0xa2, 0xb5, 215 0xdb, 0x14, 0xe2, 0x70, 0x9c, 0x73, 0x29, 0x09 216 }, 217 .len = 64, 218 }, 219 .qInv = { 220 .data = { 221 0x59, 0xbd, 0xb1, 0x37, 0xeb, 0x4e, 0xcf, 0x68, 222 0xe7, 0x85, 0x91, 0xbb, 0xc0, 0xdb, 0x8e, 0x41, 223 0x91, 0x4a, 0xc0, 0xb1, 0xc5, 0xe8, 0x91, 0xf6, 224 0xc7, 0x5a, 0x98, 0x1a, 0x8a, 0x0f, 0x45, 0xb2, 225 0x5b, 0xff, 0x7a, 0x2d, 0x98, 0x89, 0x55, 0xd9, 226 0xbf, 0x6e, 0xdd, 0x2d, 0xd4, 0xe8, 0x0a, 0xaa, 227 0xae, 0x2a, 0xc4, 0x16, 0xb5, 0xba, 0xe1, 0x69, 228 0x71, 0x94, 0xdd, 0xa0, 0xf5, 0x1e, 0x6d, 0xcc 229 }, 230 .len = 64, 231 }, 232 .padding = RTE_CRYPTO_RSA_PADDING_NONE, 233 .key_exp = 1, 234 .key_qt = 1, 235 } 236 }; 237 238 struct rsa_test_data { 239 uint8_t data[TEST_DATA_SIZE]; 240 unsigned int len; 241 }; 242 243 struct rsa_test_data rsaplaintext = { 244 .data = { 245 0xf8, 0xba, 0x1a, 0x55, 0xd0, 0x2f, 0x85, 0xae, 246 0x96, 0x7b, 0xb6, 0x2f, 0xb6, 0xcd, 0xa8, 0xeb, 247 0x7e, 0x78, 0xa0, 0x50 248 }, 249 .len = 20 250 }; 251 252 uint8_t rsa_n[] = { 253 0xb3, 0xa1, 0xaf, 0xb7, 0x13, 0x08, 0x00, 254 0x0a, 0x35, 0xdc, 0x2b, 0x20, 0x8d, 0xa1, 0xb5, 255 0xce, 0x47, 0x8a, 0xc3, 0x80, 0xf4, 0x7d, 0x4a, 256 0xa2, 0x62, 0xfd, 0x61, 0x7f, 0xb5, 0xa8, 0xde, 257 0x0a, 0x17, 0x97, 0xa0, 0xbf, 0xdf, 0x56, 0x5a, 258 0x3d, 0x51, 0x56, 0x4f, 0x70, 0x70, 0x3f, 0x63, 259 0x6a, 0x44, 0x5b, 0xad, 0x84, 0x0d, 0x3f, 0x27, 260 0x6e, 0x3b, 0x34, 0x91, 0x60, 0x14, 0xb9, 0xaa, 261 0x72, 0xfd, 0xa3, 0x64, 0xd2, 0x03, 0xa7, 0x53, 262 0x87, 0x9e, 0x88, 0x0b, 0xc1, 0x14, 0x93, 0x1a, 263 0x62, 0xff, 0xb1, 0x5d, 0x74, 0xcd, 0x59, 0x63, 264 0x18, 0x11, 0x3d, 0x4f, 0xba, 0x75, 0xd4, 0x33, 265 0x4e, 0x23, 0x6b, 0x7b, 0x57, 0x44, 0xe1, 0xd3, 266 0x03, 0x13, 0xa6, 0xf0, 0x8b, 0x60, 0xb0, 0x9e, 267 0xee, 0x75, 0x08, 0x9d, 0x71, 0x63, 0x13, 0xcb, 268 0xa6, 0x81, 0x92, 0x14, 0x03, 0x22, 0x2d, 0xde, 269 0x55 270 }; 271 272 uint8_t rsa_d[] = { 273 0x24, 0xd7, 0xea, 0xf4, 0x7f, 0xe0, 0xca, 0x31, 274 0x4d, 0xee, 0xc4, 0xa1, 0xbe, 0xab, 0x06, 0x61, 275 0x32, 0xe7, 0x51, 0x46, 0x27, 0xdf, 0x72, 0xe9, 276 0x6f, 0xa8, 0x4c, 0xd1, 0x26, 0xef, 0x65, 0xeb, 277 0x67, 0xff, 0x5f, 0xa7, 0x3b, 0x25, 0xb9, 0x08, 278 0x8e, 0xa0, 0x47, 0x56, 0xe6, 0x8e, 0xf9, 0xd3, 279 0x18, 0x06, 0x3d, 0xc6, 0xb1, 0xf8, 0xdc, 0x1b, 280 0x8d, 0xe5, 0x30, 0x54, 0x26, 0xac, 0x16, 0x3b, 281 0x7b, 0xad, 0x46, 0x9e, 0x21, 0x6a, 0x57, 0xe6, 282 0x81, 0x56, 0x1d, 0x2a, 0xc4, 0x39, 0x63, 0x67, 283 0x81, 0x2c, 0xca, 0xcc, 0xf8, 0x42, 0x04, 0xbe, 284 0xcf, 0x8f, 0x6c, 0x5b, 0x81, 0x46, 0xb9, 0xc7, 285 0x62, 0x90, 0x87, 0x35, 0x03, 0x9b, 0x89, 0xcb, 286 0x37, 0xbd, 0xf1, 0x1b, 0x99, 0xa1, 0x9a, 0x78, 287 0xd5, 0x4c, 0xdd, 0x3f, 0x41, 0x0c, 0xb7, 0x1a, 288 0xd9, 0x7b, 0x87, 0x5f, 0xbe, 0xb1, 0x83, 0x41 289 }; 290 291 uint8_t rsa_e[] = {0x01, 0x00, 0x01}; 292 293 uint8_t rsa_p[] = { 294 0xdc, 0xba, 0x00, 0x01, 0x57, 0x93, 0xe3, 0x05, 295 0xed, 0x61, 0x9a, 0xa3, 0xaf, 0x6a, 0xd3, 0x47, 296 0x8f, 0x2d, 0x1e, 0x7f, 0x4d, 0x60, 0xc8, 0x8d, 297 0x34, 0xb8, 0x17, 0x84, 0xbc, 0xd4, 0xe9, 0x79, 298 0x95, 0x75, 0x19, 0x37, 0xe0, 0xcc, 0xfe, 0x4c, 299 0x5d, 0x49, 0x53, 0x61, 0x29, 0xf1, 0xdc, 0x82, 300 0x03, 0x96, 0x7d, 0x95, 0x4f, 0xdd, 0x3c, 0x0a, 301 0x64, 0x8a, 0x43, 0x2f, 0x95, 0x4a, 0xed, 0xdd 302 }; 303 304 uint8_t rsa_q[] = { 305 0xd0, 0x56, 0x7a, 0x0a, 0xd5, 0x95, 0xa4, 0x85, 306 0x53, 0x35, 0xa1, 0x48, 0x07, 0x6a, 0x7c, 0x08, 307 0xe0, 0xfd, 0x4b, 0x88, 0x77, 0xa6, 0x15, 0x23, 308 0x0f, 0xbf, 0x14, 0x46, 0x11, 0xee, 0x95, 0xc7, 309 0x5e, 0x77, 0x65, 0xa2, 0xb5, 0x50, 0xdf, 0x19, 310 0x07, 0xc7, 0x72, 0xdb, 0x29, 0xf6, 0x54, 0x86, 311 0xe1, 0xb3, 0x97, 0x0a, 0x28, 0x64, 0x3a, 0x38, 312 0xa6, 0x7d, 0x13, 0xc3, 0x79, 0xaa, 0x56, 0xd9 313 }; 314 315 uint8_t rsa_dP[] = { 316 0xc5, 0x43, 0x0d, 0x82, 0x25, 0x8c, 0xab, 0x55, 317 0xbe, 0xc2, 0x7d, 0xfb, 0x4f, 0x68, 0x3f, 0x0e, 318 0x32, 0xec, 0xf5, 0xd6, 0x7b, 0x86, 0xc5, 0x75, 319 0x3c, 0xea, 0x51, 0x4a, 0x75, 0xa0, 0x2a, 0x50, 320 0x58, 0xbb, 0xe0, 0x1f, 0xca, 0x2e, 0x2a, 0x0e, 321 0x81, 0x48, 0x68, 0xd5, 0xeb, 0x30, 0x96, 0x0b, 322 0x33, 0xbd, 0xa8, 0xda, 0x6a, 0x17, 0xa3, 0xf2, 323 0xfd, 0xcb, 0x7b, 0x23, 0xe9, 0x5e, 0x9f, 0x99 324 }; 325 uint8_t rsa_dQ[] = { 326 0xbe, 0xff, 0xf9, 0x05, 0x43, 0xc8, 0xdc, 0x3b, 327 0x0b, 0x0d, 0x28, 0xde, 0x73, 0x46, 0x11, 0x8e, 328 0xc6, 0x4e, 0x11, 0xd8, 0x7b, 0xf0, 0xfc, 0x81, 329 0xd7, 0x66, 0xd3, 0xbc, 0x65, 0xa6, 0x39, 0x14, 330 0xbd, 0xab, 0x72, 0xb7, 0x57, 0xc9, 0x5b, 0xaf, 331 0x83, 0xed, 0x3b, 0x84, 0x68, 0x15, 0x18, 0x6b, 332 0x4c, 0x32, 0xac, 0x6f, 0x38, 0x96, 0xa2, 0xb5, 333 0xdb, 0x14, 0xe2, 0x70, 0x9c, 0x73, 0x29, 0x09 334 }; 335 336 uint8_t rsa_qInv[] = { 337 0x59, 0xbd, 0xb1, 0x37, 0xeb, 0x4e, 0xcf, 0x68, 338 0xe7, 0x85, 0x91, 0xbb, 0xc0, 0xdb, 0x8e, 0x41, 339 0x91, 0x4a, 0xc0, 0xb1, 0xc5, 0xe8, 0x91, 0xf6, 340 0xc7, 0x5a, 0x98, 0x1a, 0x8a, 0x0f, 0x45, 0xb2, 341 0x5b, 0xff, 0x7a, 0x2d, 0x98, 0x89, 0x55, 0xd9, 342 0xbf, 0x6e, 0xdd, 0x2d, 0xd4, 0xe8, 0x0a, 0xaa, 343 0xae, 0x2a, 0xc4, 0x16, 0xb5, 0xba, 0xe1, 0x69, 344 0x71, 0x94, 0xdd, 0xa0, 0xf5, 0x1e, 0x6d, 0xcc 345 }; 346 347 /** rsa xform using exponent key */ 348 struct rte_crypto_asym_xform rsa_xform = { 349 .next = NULL, 350 .xform_type = RTE_CRYPTO_ASYM_XFORM_RSA, 351 .rsa = { 352 .n = { 353 .data = rsa_n, 354 .length = sizeof(rsa_n) 355 }, 356 .e = { 357 .data = rsa_e, 358 .length = sizeof(rsa_e) 359 }, 360 .key_type = RTE_RSA_KEY_TYPE_EXP, 361 .d = { 362 .data = rsa_d, 363 .length = sizeof(rsa_d) 364 } 365 } 366 }; 367 368 /** rsa xform using quintuple key */ 369 struct rte_crypto_asym_xform rsa_xform_crt = { 370 .next = NULL, 371 .xform_type = RTE_CRYPTO_ASYM_XFORM_RSA, 372 .rsa = { 373 .n = { 374 .data = rsa_n, 375 .length = sizeof(rsa_n) 376 }, 377 .e = { 378 .data = rsa_e, 379 .length = sizeof(rsa_e) 380 }, 381 .key_type = RTE_RSA_KET_TYPE_QT, 382 .qt = { 383 .p = { 384 .data = rsa_p, 385 .length = sizeof(rsa_p) 386 }, 387 .q = { 388 .data = rsa_q, 389 .length = sizeof(rsa_q) 390 }, 391 .dP = { 392 .data = rsa_dP, 393 .length = sizeof(rsa_dP) 394 }, 395 .dQ = { 396 .data = rsa_dQ, 397 .length = sizeof(rsa_dQ) 398 }, 399 .qInv = { 400 .data = rsa_qInv, 401 .length = sizeof(rsa_qInv) 402 }, 403 } 404 } 405 }; 406 407 #endif /* TEST_CRYPTODEV_RSA_TEST_VECTORS_H__ */ 408