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