DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] app/crypto-perf: add support for RSA decrypt
@ 2025-06-04  6:27 Sucharitha Sarananaga
  2025-06-05  9:24 ` [PATCH v2] " Sucharitha Sarananaga
  0 siblings, 1 reply; 2+ messages in thread
From: Sucharitha Sarananaga @ 2025-06-04  6:27 UTC (permalink / raw)
  To: dev; +Cc: kai.ji, Sucharitha Sarananaga

This patch enables support for RSA decrypt and verify operations
and added cipher and sign test vectors.

Signed-off-by: Sucharitha Sarananaga <ssarananaga@marvell.com>
---
 app/test-crypto-perf/cperf_ops.c          |  25 +-
 app/test-crypto-perf/cperf_test_vectors.c | 536 ++++++++++++++++++++++
 app/test-crypto-perf/cperf_test_vectors.h |   2 +
 3 files changed, 557 insertions(+), 6 deletions(-)

diff --git a/app/test-crypto-perf/cperf_ops.c b/app/test-crypto-perf/cperf_ops.c
index 47965bbc32..a2e4058f50 100644
--- a/app/test-crypto-perf/cperf_ops.c
+++ b/app/test-crypto-perf/cperf_ops.c
@@ -45,7 +45,7 @@ cperf_set_ops_asym_rsa(struct rte_crypto_op **ops,
 		   uint32_t *imix_idx __rte_unused,
 		   uint64_t *tsc_start __rte_unused)
 {
-	uint8_t cipher_buf[4096] = {0};
+	uint8_t output_buf[4096] = {0};
 	uint16_t i;
 
 	for (i = 0; i < nb_ops; i++) {
@@ -53,16 +53,29 @@ cperf_set_ops_asym_rsa(struct rte_crypto_op **ops,
 
 		ops[i]->status = RTE_CRYPTO_OP_STATUS_NOT_PROCESSED;
 		asym_op->rsa.op_type = options->asym_op_type;
-		asym_op->rsa.message.data = rsa_plaintext.data;
-		asym_op->rsa.message.length = rsa_plaintext.len;
 		if (options->asym_op_type == RTE_CRYPTO_ASYM_OP_SIGN) {
-			asym_op->rsa.sign.data = cipher_buf;
+			asym_op->rsa.message.data = rsa_plaintext.data;
+			asym_op->rsa.message.length = rsa_plaintext.len;
+			asym_op->rsa.sign.data = output_buf;
 			asym_op->rsa.sign.length = options->rsa_data->n.length;
 		} else if (options->asym_op_type == RTE_CRYPTO_ASYM_OP_ENCRYPT) {
-			asym_op->rsa.cipher.data = cipher_buf;
+			asym_op->rsa.message.data = rsa_plaintext.data;
+			asym_op->rsa.message.length = rsa_plaintext.len;
+			asym_op->rsa.cipher.data = output_buf;
 			asym_op->rsa.cipher.length = options->rsa_data->n.length;
+		} else if (options->asym_op_type == RTE_CRYPTO_ASYM_OP_DECRYPT) {
+			asym_op->rsa.cipher.data = options->rsa_data->cipher.data;
+			asym_op->rsa.cipher.length = options->rsa_data->cipher.length;
+			asym_op->rsa.message.data = output_buf;
+			asym_op->rsa.message.length = options->rsa_data->n.length;
+		} else if (options->asym_op_type == RTE_CRYPTO_ASYM_OP_VERIFY) {
+			asym_op->rsa.sign.data = options->rsa_data->sign.data;
+			asym_op->rsa.sign.length = options->rsa_data->sign.length;
+			asym_op->rsa.message.data = rsa_plaintext.data;
+			asym_op->rsa.message.length = rsa_plaintext.len;
 		} else {
-			printf("RSA DECRYPT/VERIFY not supported");
+			rte_panic("Unsupported RSA operation type %d\n",
+				  options->asym_op_type);
 		}
 		rte_crypto_op_attach_asym_session(ops[i], sess);
 	}
diff --git a/app/test-crypto-perf/cperf_test_vectors.c b/app/test-crypto-perf/cperf_test_vectors.c
index aa52800fbd..682988ccff 100644
--- a/app/test-crypto-perf/cperf_test_vectors.c
+++ b/app/test-crypto-perf/cperf_test_vectors.c
@@ -1568,6 +1568,44 @@ uint8_t rsa_qinv[] = {
 	0x71, 0x94, 0xdd, 0xa0, 0xf5, 0x1e, 0x6d, 0xcc
 };
 
+uint8_t rsa_sign[] = {
+	0x2f, 0x42, 0xb3, 0xb1, 0x7f, 0xa8, 0x66, 0x00,
+	0xc6, 0xb4, 0x7d, 0x12, 0x67, 0x5f, 0x94, 0xf7,
+	0x25, 0xd6, 0x7e, 0x14, 0xe4, 0xc2, 0x63, 0xb2,
+	0xdc, 0x1b, 0x13, 0xc0, 0xda, 0xda, 0x0d, 0x32,
+	0x9b, 0xf4, 0x8a, 0x62, 0x90, 0xe7, 0xb3, 0xf3,
+	0xbb, 0x5a, 0xab, 0x5f, 0xf8, 0xaf, 0xf4, 0x19,
+	0x0d, 0xa5, 0x66, 0x25, 0x95, 0x69, 0x57, 0x43,
+	0x87, 0x44, 0xb0, 0x92, 0x1a, 0x39, 0xa6, 0x97,
+	0x06, 0xfd, 0xf3, 0x20, 0x72, 0xfb, 0xea, 0xef,
+	0xcf, 0xd1, 0x88, 0xca, 0x23, 0x26, 0xa9, 0xa9,
+	0x22, 0xcd, 0xa0, 0x10, 0xf9, 0x14, 0x28, 0xc7,
+	0x0e, 0x82, 0xe1, 0xcd, 0xc3, 0x31, 0x0f, 0x75,
+	0x6d, 0x69, 0xcd, 0x55, 0x30, 0xa3, 0x26, 0xcb,
+	0xf8, 0xbc, 0xf3, 0xc5, 0xfa, 0xd7, 0x7e, 0x51,
+	0x81, 0xc9, 0x5c, 0x9f, 0x2a, 0x40, 0x40, 0x83,
+	0xb3, 0xba, 0xdb, 0x94, 0x2d, 0x31, 0x1c, 0xf8,
+};
+
+uint8_t rsa_cipher[] = {
+	0x90, 0x65, 0xb0, 0x2e, 0xe0, 0xdd, 0x52, 0x0f,
+	0xaf, 0x59, 0x30, 0x1d, 0xed, 0x15, 0x44, 0x27,
+	0x98, 0xf6, 0xd2, 0xae, 0xa6, 0x51, 0x4e, 0xf3,
+	0xd1, 0x5c, 0x59, 0x24, 0xa3, 0xaf, 0x1f, 0x42,
+	0xaa, 0x4a, 0xd3, 0x94, 0xe5, 0x6f, 0xfd, 0x68,
+	0x6a, 0xa3, 0xc9, 0x69, 0x2b, 0xb5, 0x48, 0x69,
+	0xe8, 0x04, 0x44, 0x64, 0x47, 0xe2, 0xab, 0xb1,
+	0x49, 0x19, 0xb1, 0x17, 0x76, 0x06, 0x20, 0xa6,
+	0x81, 0x57, 0x69, 0x76, 0x99, 0xf7, 0x3c, 0xf6,
+	0x3f, 0x23, 0x58, 0xe6, 0xad, 0x4b, 0xb5, 0xdc,
+	0x9d, 0xf1, 0x22, 0xfe, 0xda, 0xad, 0x8b, 0x4d,
+	0x7a, 0xe8, 0x8a, 0x8f, 0x7b, 0x16, 0x47, 0x7b,
+	0x48, 0x91, 0x22, 0x04, 0x44, 0x80, 0xcb, 0x93,
+	0x63, 0x42, 0x73, 0x55, 0x4d, 0x73, 0x1a, 0x64,
+	0xbf, 0x56, 0x12, 0x25, 0xe6, 0x9e, 0xb2, 0xd2,
+	0xeb, 0x01, 0x57, 0x2c, 0x3a, 0xdf, 0x02, 0xfb,
+};
+
 uint8_t rsa_2048_n[] = {
 	0xB0, 0xF9, 0xE8, 0x19, 0x43, 0xA7, 0xAE, 0x98,
 	0x92, 0xAA, 0xDE, 0x17, 0xCA, 0x7C, 0x40, 0xF8,
@@ -1732,6 +1770,76 @@ uint8_t rsa_2048_qinv[] = {
 	0x2F, 0x67, 0xB5, 0xC8, 0xAA, 0x38, 0x7F, 0xF7
 };
 
+uint8_t rsa_2048_sign[] = {
+	0x12, 0x76, 0xE0, 0x0B, 0xD9, 0x08, 0x66, 0x9A,
+	0x92, 0x53, 0xD1, 0x70, 0xAA, 0x5B, 0x9D, 0xC0,
+	0x88, 0x11, 0x9F, 0x0C, 0x97, 0x7C, 0x9F, 0x96,
+	0x4C, 0x12, 0x3D, 0xB6, 0xFC, 0xF3, 0xEB, 0x3C,
+	0x19, 0x1E, 0x21, 0x6D, 0x56, 0x8F, 0x8D, 0xFA,
+	0x58, 0xE3, 0xED, 0xD8, 0xD6, 0x89, 0x6C, 0x29,
+	0xDE, 0x12, 0x05, 0xDB, 0x7A, 0x1F, 0x1E, 0x94,
+	0x02, 0x2D, 0x4A, 0x57, 0xC8, 0x77, 0x59, 0x08,
+	0x84, 0xC4, 0xD9, 0x44, 0x82, 0x8A, 0x7F, 0x0E,
+	0x5E, 0x2A, 0x45, 0xE7, 0x7E, 0xB6, 0xB1, 0x95,
+	0x09, 0x2C, 0xED, 0x08, 0x32, 0x31, 0xA5, 0x01,
+	0x76, 0x9E, 0x8A, 0x76, 0xA2, 0xBD, 0xD3, 0xE6,
+	0x26, 0x5A, 0x16, 0x0D, 0xF8, 0xE5, 0xF6, 0xC5,
+	0x94, 0x21, 0xF2, 0x9E, 0xB3, 0x26, 0xE0, 0xA4,
+	0xF7, 0xA7, 0x20, 0xFC, 0xE0, 0xE3, 0xF3, 0xB2,
+	0x2C, 0xA7, 0x6B, 0x99, 0x68, 0xDC, 0x43, 0xDF,
+	0xE0, 0x5B, 0x78, 0xAC, 0xDB, 0x78, 0x19, 0x44,
+	0x66, 0x8B, 0x1E, 0x56, 0x5E, 0xD7, 0xD8, 0x4A,
+	0x73, 0x4F, 0x00, 0xA8, 0x75, 0x9F, 0xEB, 0x8F,
+	0x97, 0x32, 0x35, 0xCC, 0xEF, 0xC9, 0xF9, 0x26,
+	0xBE, 0xB6, 0x63, 0x86, 0x8F, 0x23, 0xDA, 0x44,
+	0x77, 0xC3, 0x36, 0x7B, 0xC7, 0x9B, 0x13, 0x0F,
+	0xDB, 0x6E, 0x3C, 0xDF, 0x33, 0xC0, 0x1F, 0x41,
+	0x4C, 0x58, 0xEA, 0x0E, 0xB2, 0x8A, 0x44, 0xDB,
+	0x9B, 0x82, 0x63, 0xA4, 0x89, 0x58, 0xB5, 0x98,
+	0xFC, 0x0D, 0x1E, 0x00, 0x82, 0x26, 0x27, 0xB4,
+	0x43, 0xFD, 0x78, 0xA8, 0xBD, 0xDC, 0x91, 0xE4,
+	0xC2, 0xB5, 0xD3, 0xF8, 0x7A, 0x86, 0x1D, 0xD8,
+	0x1E, 0x3F, 0xD7, 0x0D, 0x79, 0xB3, 0xBE, 0x24,
+	0xB0, 0x07, 0x95, 0xDF, 0xFC, 0xBA, 0xF9, 0x09,
+	0xF7, 0xDF, 0xBA, 0x3F, 0x7A, 0x8C, 0xDA, 0xB0,
+	0xA5, 0x36, 0xA2, 0xFF, 0x8A, 0x68, 0x4F, 0x68,
+};
+
+uint8_t rsa_2048_cipher[] = {
+	0x9f, 0xd3, 0xf2, 0x54, 0x23, 0xb2, 0x0f, 0x8e,
+	0x8b, 0x16, 0x3c, 0x22, 0x66, 0x00, 0xe1, 0x38,
+	0x86, 0xdc, 0x8c, 0x3f, 0x6b, 0x99, 0xa1, 0x45,
+	0x0b, 0xb5, 0x39, 0x90, 0x4d, 0x59, 0xc4, 0xe5,
+	0x9b, 0xe5, 0x2b, 0xb9, 0xad, 0xca, 0x1c, 0x9c,
+	0x51, 0x7b, 0xdd, 0x7f, 0x25, 0x24, 0xe7, 0x6d,
+	0x96, 0x04, 0x64, 0x76, 0x9d, 0x65, 0xb3, 0x03,
+	0x65, 0xc9, 0xd4, 0xfb, 0x48, 0x89, 0x2a, 0x8d,
+	0xf0, 0xb1, 0x03, 0x3a, 0x55, 0x4e, 0x8e, 0x4c,
+	0x25, 0x88, 0xf8, 0x3c, 0x7f, 0xb8, 0x6c, 0xb9,
+	0x65, 0x58, 0x13, 0xc9, 0x71, 0xdf, 0xeb, 0x98,
+	0x1d, 0x69, 0x4f, 0x70, 0xbd, 0x2e, 0xa6, 0xf8,
+	0x99, 0xe7, 0xcf, 0xc9, 0xb7, 0x18, 0x4a, 0x49,
+	0xad, 0x3c, 0xe7, 0xee, 0x50, 0xea, 0x3d, 0xb4,
+	0x6e, 0x14, 0x9f, 0x2e, 0x0e, 0x50, 0xba, 0xd1,
+	0x2e, 0xd2, 0x3b, 0x3b, 0x2a, 0xe1, 0x33, 0x6a,
+	0xdb, 0xbc, 0x5b, 0x80, 0x39, 0xe2, 0xb0, 0xf3,
+	0xbe, 0x6b, 0xfa, 0x0d, 0x34, 0x0b, 0x84, 0x16,
+	0x5f, 0x08, 0x17, 0xac, 0xf1, 0x94, 0xc1, 0xd8,
+	0xa8, 0x56, 0x6d, 0x62, 0xc9, 0xdb, 0x53, 0xfc,
+	0x2d, 0xca, 0xa2, 0xad, 0x34, 0xc9, 0x3c, 0x5e,
+	0xfd, 0x5f, 0x44, 0x2e, 0x4a, 0x0f, 0x25, 0x68,
+	0x5f, 0x57, 0xb8, 0xd7, 0xd7, 0xb1, 0x5c, 0xc6,
+	0xb6, 0x90, 0xcf, 0x14, 0xd9, 0x0b, 0x6c, 0xab,
+	0x8c, 0x05, 0x12, 0x00, 0x5f, 0x14, 0x4e, 0x84,
+	0xdd, 0x64, 0x8a, 0xdd, 0xcb, 0x98, 0xab, 0x22,
+	0x84, 0x97, 0xa0, 0xae, 0xfe, 0xab, 0xe6, 0xba,
+	0xf0, 0xb3, 0x8a, 0x1d, 0xf5, 0xad, 0x0e, 0x26,
+	0xec, 0x07, 0x5b, 0x67, 0xed, 0xe0, 0xbd, 0x58,
+	0xdb, 0x75, 0xff, 0x83, 0xe8, 0x52, 0x40, 0x2b,
+	0xf8, 0x4d, 0x43, 0xf5, 0xfc, 0x69, 0xcc, 0x5f,
+	0x31, 0xb2, 0xb9, 0x07, 0x2f, 0x9a, 0x7f, 0x89,
+};
+
 uint8_t rsa_4096_n[] = {
 	0xB3, 0x8B, 0x49, 0x60, 0xE6, 0x3B, 0xE6, 0xA8,
 	0xDB, 0xA8, 0x9A, 0x82, 0x97, 0x8E, 0xF1, 0xF6,
@@ -2041,6 +2149,140 @@ uint8_t rsa_4096_qinv[] = {
 	0xFD, 0xEB, 0x8A, 0xBA, 0xF4, 0x91, 0x31, 0xBF
 };
 
+uint8_t rsa_4096_sign[] = {
+	0x1C, 0xFA, 0x48, 0x6A, 0x74, 0x1B, 0xD5, 0x08,
+	0xB4, 0x34, 0x37, 0x8E, 0x1C, 0x12, 0x98, 0x87,
+	0x3D, 0xB4, 0xB9, 0x3F, 0xFE, 0xF4, 0x4F, 0x49,
+	0xB9, 0xD7, 0x8E, 0x19, 0xA1, 0x85, 0xD0, 0x39,
+	0xB0, 0xC6, 0xBD, 0x25, 0x2F, 0xE0, 0x94, 0xEE,
+	0x41, 0xC5, 0xEF, 0xAD, 0xBC, 0xA4, 0xCE, 0xED,
+	0xAF, 0x2B, 0x26, 0x67, 0x8F, 0x53, 0x02, 0x9D,
+	0xB5, 0x95, 0x15, 0x84, 0xF2, 0x1F, 0x4A, 0x59,
+	0x1C, 0x91, 0x61, 0xFC, 0x83, 0x60, 0x73, 0x2B,
+	0xD3, 0x0C, 0xC6, 0xDF, 0xF8, 0xC0, 0xD0, 0x22,
+	0x77, 0xDB, 0xE0, 0xD9, 0x5A, 0x5B, 0x45, 0x10,
+	0x20, 0x35, 0x6B, 0xFB, 0x86, 0x8B, 0xD1, 0xD4,
+	0xC3, 0x4F, 0x4C, 0x57, 0xCC, 0xE8, 0xCB, 0x1F,
+	0x61, 0x07, 0xDD, 0x15, 0x83, 0xBE, 0x3F, 0x80,
+	0x81, 0xEA, 0xD4, 0x29, 0xC5, 0x5C, 0xE9, 0x36,
+	0xB4, 0x29, 0x92, 0x17, 0x31, 0x66, 0x42, 0x5E,
+	0x5A, 0x6E, 0xAA, 0x2A, 0x78, 0x37, 0xEA, 0x45,
+	0xF4, 0x41, 0xC2, 0x6B, 0x31, 0xD0, 0x93, 0x2A,
+	0x7E, 0x69, 0x9F, 0x16, 0xE0, 0xB2, 0xE0, 0x7E,
+	0x55, 0xD0, 0x97, 0xCA, 0x64, 0x3F, 0x8C, 0x90,
+	0x56, 0xE9, 0xCD, 0xAA, 0xED, 0xC7, 0x56, 0x51,
+	0x05, 0xC9, 0xA3, 0x09, 0x1C, 0xDD, 0x1E, 0x82,
+	0x57, 0x8A, 0xA3, 0x43, 0xC2, 0xA7, 0xD9, 0x9B,
+	0x19, 0x04, 0x98, 0x02, 0x70, 0xF3, 0xE1, 0x0D,
+	0x5D, 0x7F, 0x3B, 0xC4, 0x74, 0x14, 0xC1, 0xBF,
+	0xBA, 0x44, 0xF7, 0xAB, 0x26, 0xF9, 0x9E, 0x37,
+	0x09, 0x17, 0x10, 0xA1, 0xD0, 0xEB, 0xE2, 0x74,
+	0xB3, 0x70, 0x56, 0xBA, 0x99, 0x5A, 0x05, 0x21,
+	0x82, 0x0A, 0x1D, 0xE8, 0xCC, 0x3E, 0x49, 0x35,
+	0x9A, 0xE8, 0x18, 0x7E, 0x89, 0x46, 0x6D, 0xA9,
+	0x93, 0x22, 0x22, 0xB1, 0xCA, 0x3E, 0xFF, 0x3E,
+	0x06, 0x76, 0x3B, 0x08, 0x8B, 0xA9, 0x60, 0xE2,
+	0x32, 0xAC, 0x10, 0x95, 0x07, 0xF1, 0x4B, 0x1D,
+	0x02, 0xD3, 0xC6, 0xB6, 0xD2, 0x9A, 0xB1, 0xEA,
+	0x97, 0x81, 0xE7, 0x1F, 0x86, 0x7E, 0xE1, 0x1D,
+	0xB2, 0xA2, 0x15, 0x85, 0x54, 0x6B, 0x0E, 0x01,
+	0x37, 0x9F, 0x09, 0xF2, 0xFF, 0x44, 0x32, 0x68,
+	0x2E, 0x11, 0x8F, 0xBC, 0x85, 0x9A, 0x6C, 0xCA,
+	0x80, 0xBF, 0xEC, 0x02, 0x1F, 0xEB, 0x0A, 0xCA,
+	0x3F, 0x68, 0xE8, 0x2E, 0xA2, 0xE4, 0xCE, 0xEB,
+	0xC1, 0x76, 0xCD, 0x2F, 0xC1, 0x07, 0x5C, 0x34,
+	0x98, 0xD1, 0x36, 0xEE, 0x44, 0xFB, 0xF1, 0x33,
+	0xF8, 0x40, 0xE7, 0xEE, 0xA5, 0xC5, 0x6F, 0x67,
+	0x1D, 0xF9, 0x5E, 0x14, 0xE0, 0xD8, 0x19, 0xA9,
+	0x9A, 0x62, 0xB9, 0x69, 0xAE, 0x04, 0x08, 0xC3,
+	0xEF, 0x18, 0xE2, 0x9B, 0xB3, 0xB1, 0x88, 0x5F,
+	0x7C, 0x9A, 0x25, 0x09, 0x84, 0x66, 0xA2, 0xBD,
+	0xA7, 0x6B, 0xFC, 0x1B, 0xA5, 0x3C, 0xD4, 0x03,
+	0x59, 0x2E, 0x3A, 0x6E, 0x1E, 0x3F, 0x1D, 0x73,
+	0x07, 0xC7, 0x90, 0x64, 0xE6, 0x86, 0x42, 0xC6,
+	0xFF, 0x36, 0x0F, 0xB3, 0x35, 0x8E, 0xEC, 0x8A,
+	0x04, 0x46, 0x1D, 0xBE, 0xD9, 0x1D, 0x51, 0x5D,
+	0x30, 0xC8, 0xE1, 0x40, 0x28, 0xE1, 0xA8, 0x1D,
+	0x87, 0xB6, 0x9A, 0x6B, 0x79, 0xFA, 0x94, 0x2D,
+	0x50, 0x85, 0x81, 0xB6, 0x6B, 0x0A, 0x61, 0xA2,
+	0x82, 0x60, 0xFE, 0xA4, 0x52, 0x6C, 0x9D, 0xAE,
+	0x60, 0x92, 0x15, 0x63, 0x17, 0x57, 0x4B, 0x5A,
+	0x27, 0xD4, 0xD8, 0xA6, 0x22, 0x1F, 0x5A, 0x3E,
+	0x6A, 0x73, 0x19, 0x67, 0x0F, 0xCD, 0x65, 0x20,
+	0x82, 0x8B, 0x96, 0xA8, 0xF1, 0x14, 0xB9, 0xC6,
+	0xBD, 0x3E, 0xD8, 0x36, 0xF2, 0x0C, 0xFF, 0x15,
+	0x8E, 0x2B, 0xE7, 0x76, 0x1E, 0xEB, 0x71, 0x4F,
+	0x44, 0xD8, 0x67, 0xF6, 0x87, 0x3D, 0xE1, 0x28,
+	0xE6, 0xD4, 0x23, 0xCA, 0x3F, 0xB1, 0xAF, 0xF8
+};
+
+uint8_t rsa_4096_cipher[] = {
+	0xab, 0x03, 0x5f, 0x3f, 0x35, 0x8c, 0xd8, 0xcd,
+	0x68, 0x23, 0x2f, 0x99, 0xa4, 0xac, 0x47, 0xbb,
+	0x6d, 0x7c, 0x56, 0xb0, 0x74, 0x50, 0x10, 0xe9,
+	0x77, 0xfe, 0x6e, 0xec, 0xab, 0x6c, 0x3f, 0x71,
+	0xc2, 0xe8, 0x39, 0xfc, 0x31, 0x84, 0xff, 0x7e,
+	0x8d, 0xaf, 0x28, 0x14, 0x41, 0x59, 0x7e, 0xd2,
+	0x5e, 0xe9, 0xc8, 0xfb, 0x1a, 0x66, 0x19, 0xe6,
+	0x24, 0x95, 0x27, 0x83, 0x40, 0x68, 0x09, 0xa8,
+	0x4f, 0xd3, 0x7c, 0x46, 0xb3, 0xc9, 0xd9, 0xd6,
+	0x8e, 0xc8, 0x0b, 0xad, 0xe3, 0x4e, 0x42, 0xea,
+	0x7e, 0x95, 0x05, 0x7d, 0x74, 0xa1, 0x69, 0x6c,
+	0x03, 0xd1, 0xd7, 0x2e, 0xf8, 0x96, 0x92, 0x84,
+	0x61, 0x97, 0x01, 0x8f, 0x6e, 0xe0, 0x03, 0x00,
+	0x02, 0x2f, 0xf4, 0xe0, 0xbe, 0xb3, 0xa9, 0xed,
+	0x31, 0x2d, 0x0b, 0xff, 0xc2, 0xba, 0xcf, 0xb1,
+	0xf5, 0x83, 0xb4, 0x61, 0x43, 0x1d, 0x74, 0xd3,
+	0x1b, 0xfb, 0x16, 0xbb, 0x04, 0xce, 0xde, 0x30,
+	0x92, 0x93, 0x63, 0xdd, 0x4b, 0xef, 0x4c, 0x48,
+	0x39, 0xd1, 0xdc, 0x55, 0xe6, 0xd7, 0x9d, 0x31,
+	0x0e, 0x8f, 0x74, 0x26, 0xed, 0x80, 0xe1, 0xea,
+	0x27, 0xb5, 0x29, 0x9b, 0x9f, 0xa6, 0xe7, 0xb1,
+	0xe4, 0x42, 0xc0, 0x8f, 0xfb, 0x90, 0x8a, 0x5e,
+	0xfb, 0xf5, 0x30, 0x9d, 0xdc, 0x74, 0x2a, 0x0c,
+	0xdf, 0x28, 0xe4, 0x66, 0x7d, 0x3c, 0x38, 0x9c,
+	0x48, 0x95, 0x6f, 0xb8, 0xfc, 0x47, 0x79, 0x89,
+	0x0a, 0x99, 0xe5, 0xf6, 0x25, 0x3e, 0x74, 0x34,
+	0x2e, 0x2c, 0xcb, 0x98, 0x14, 0x24, 0x97, 0x7d,
+	0x21, 0x64, 0xdb, 0xe9, 0xbc, 0xbd, 0x63, 0xab,
+	0xdb, 0xc7, 0xcf, 0xd4, 0x8e, 0xb7, 0x7f, 0x5c,
+	0x8f, 0x52, 0x69, 0x2b, 0x21, 0x73, 0x43, 0x60,
+	0xa2, 0xdf, 0x3c, 0x97, 0x50, 0x9a, 0x5f, 0xc9,
+	0x56, 0xac, 0x7d, 0xe7, 0xe1, 0x7b, 0xaa, 0xbe,
+	0x8a, 0x48, 0x1d, 0x1c, 0xa5, 0x50, 0xae, 0xcf,
+	0x41, 0xb3, 0x56, 0x92, 0x12, 0xda, 0x91, 0x69,
+	0x59, 0x7c, 0x68, 0x77, 0xea, 0xd3, 0x90, 0x3c,
+	0x4f, 0x36, 0x4b, 0xb8, 0xf6, 0x3d, 0xb8, 0x8b,
+	0xf6, 0xca, 0x80, 0x20, 0x95, 0xf2, 0x95, 0x8c,
+	0xbd, 0x19, 0xd4, 0x6a, 0x89, 0xa6, 0x72, 0xf8,
+	0x43, 0x02, 0xdc, 0x81, 0x5c, 0xcd, 0x74, 0xca,
+	0xb3, 0xdf, 0x9b, 0xe4, 0x37, 0xfa, 0x07, 0xa6,
+	0x40, 0xc0, 0x11, 0x88, 0x55, 0xdf, 0x50, 0x1f,
+	0x47, 0x3d, 0xb1, 0xbe, 0x5b, 0xf6, 0xa7, 0xd9,
+	0x3b, 0x39, 0x0b, 0x03, 0xbb, 0xa0, 0x7a, 0xb2,
+	0xd0, 0xda, 0x43, 0x37, 0x92, 0x2e, 0xd2, 0x09,
+	0x4f, 0x9d, 0x0a, 0xbe, 0xec, 0x1e, 0x1f, 0x46,
+	0xd9, 0x90, 0xe6, 0xfc, 0xcb, 0x78, 0x1e, 0x8c,
+	0x91, 0x35, 0x2b, 0x2f, 0xc8, 0x4a, 0x70, 0x5c,
+	0x90, 0x46, 0xb1, 0xca, 0x9f, 0x37, 0xa2, 0x27,
+	0x1f, 0xdf, 0xdb, 0xd9, 0xe0, 0x09, 0x40, 0x87,
+	0x07, 0x07, 0x4b, 0xd0, 0x3c, 0xbe, 0xe9, 0xcc,
+	0xb9, 0x0e, 0xf8, 0x70, 0x69, 0xef, 0x3a, 0xa4,
+	0x90, 0x8e, 0x15, 0xce, 0x2a, 0x9c, 0x67, 0xe9,
+	0xb4, 0x6d, 0xfd, 0x62, 0x77, 0xc5, 0x1a, 0xed,
+	0xf6, 0x7c, 0xdc, 0xe2, 0x3d, 0x6c, 0x0c, 0x25,
+	0x65, 0x25, 0x32, 0x8d, 0xb4, 0xcd, 0xac, 0x4b,
+	0x8e, 0x16, 0xbf, 0x13, 0x2e, 0xc4, 0x51, 0xfc,
+	0x39, 0x04, 0x23, 0xec, 0x7d, 0x8b, 0x2f, 0x0f,
+	0x24, 0x55, 0x14, 0x09, 0x8a, 0x82, 0xc6, 0xb8,
+	0x66, 0x91, 0x8c, 0xde, 0x72, 0x0f, 0x6d, 0xc2,
+	0x94, 0x17, 0xe8, 0x6f, 0x65, 0x93, 0xc8, 0x2c,
+	0x74, 0x29, 0xf6, 0x19, 0x78, 0xaf, 0x45, 0xba,
+	0x4c, 0x5f, 0x98, 0x87, 0xc8, 0x23, 0xe1, 0xb0,
+	0xba, 0xb6, 0x93, 0x44, 0xc9, 0x14, 0x63, 0xa5,
+	0x95, 0x32, 0x7d, 0xac, 0x1a, 0xde, 0x8a, 0x65,
+};
+
 uint8_t rsa_8192_n[] = {
 	0xcf, 0xb0, 0x0e, 0x88, 0x72, 0x2d, 0x19, 0x63,
 	0x7f, 0xe0, 0x13, 0x9a, 0xe1, 0x01, 0xec, 0x1f,
@@ -2638,6 +2880,268 @@ uint8_t rsa_8192_qinv[] = {
 	0x25, 0x33, 0xf1, 0x4a, 0x8b, 0x68, 0x07, 0x7b,
 };
 
+uint8_t rsa_8192_sign[] = {
+	0x5D, 0xD0, 0x26, 0x63, 0x96, 0x97, 0x0A, 0x00,
+	0xAE, 0x01, 0x17, 0x77, 0x46, 0x89, 0x66, 0xC0,
+	0x7B, 0xA9, 0x00, 0x4B, 0xFE, 0x6B, 0xFB, 0xD5,
+	0xD6, 0x84, 0x90, 0xE4, 0xEF, 0x0C, 0xED, 0x2F,
+	0xC9, 0x0E, 0x69, 0x8F, 0xC5, 0x9F, 0xA0, 0xE4,
+	0xD9, 0xF8, 0x36, 0x3F, 0x74, 0xA2, 0xC8, 0x4D,
+	0x78, 0xFF, 0x8C, 0x25, 0x18, 0x81, 0x5E, 0xD3,
+	0xDC, 0x6F, 0x6F, 0xC4, 0x03, 0xA9, 0x16, 0x58,
+	0xAE, 0x74, 0x0B, 0x31, 0xF4, 0xDC, 0x85, 0x93,
+	0xD0, 0x94, 0x47, 0x38, 0x8E, 0xBC, 0xB2, 0xCF,
+	0xCE, 0x85, 0xF3, 0xF3, 0x44, 0x13, 0x3F, 0xA9,
+	0xCA, 0x59, 0x89, 0x85, 0xBC, 0xA4, 0x66, 0x26,
+	0xC1, 0x56, 0xD1, 0x62, 0xCD, 0xFF, 0xD6, 0x6F,
+	0x18, 0xA1, 0x6E, 0x77, 0xFB, 0x32, 0x91, 0xAB,
+	0xC8, 0x33, 0x31, 0xF1, 0x04, 0x82, 0x44, 0x3E,
+	0x59, 0xD4, 0x33, 0xD4, 0x81, 0x6D, 0xB1, 0x7C,
+	0x0F, 0x85, 0xD8, 0xD9, 0x8D, 0x79, 0x12, 0x9C,
+	0x1B, 0xF5, 0x0C, 0xF0, 0xDA, 0x91, 0xA9, 0x78,
+	0x09, 0xAB, 0x0E, 0x41, 0xA5, 0x8E, 0xAD, 0x8C,
+	0x91, 0x23, 0x9D, 0xD0, 0x3E, 0xE6, 0xC7, 0x93,
+	0x1D, 0xBD, 0x49, 0x18, 0xD7, 0x6F, 0x30, 0xEB,
+	0x22, 0x12, 0xC6, 0x82, 0x75, 0xC1, 0xDA, 0x97,
+	0x9C, 0xEC, 0xD9, 0x6B, 0xDC, 0xA5, 0x19, 0xE5,
+	0x0B, 0x83, 0x15, 0x7D, 0x4B, 0xB4, 0xFA, 0x3E,
+	0x01, 0xB2, 0xDF, 0x5F, 0xA0, 0xE9, 0x21, 0x59,
+	0x0D, 0x45, 0xB1, 0x51, 0x81, 0x40, 0xE7, 0xD1,
+	0x1D, 0x7B, 0xD8, 0xFF, 0xD5, 0x0A, 0xE0, 0x6B,
+	0x2B, 0x38, 0x81, 0xBC, 0x13, 0x53, 0xDC, 0x87,
+	0x03, 0x5B, 0x96, 0xAB, 0xE2, 0xF4, 0x9F, 0x81,
+	0x3E, 0x53, 0x41, 0x3E, 0x0B, 0xC4, 0xD1, 0x0A,
+	0x83, 0x96, 0x61, 0x3C, 0x2E, 0xC2, 0x11, 0x1B,
+	0x32, 0x09, 0x7C, 0xEF, 0x9A, 0x18, 0x50, 0xB8,
+	0xFF, 0xA1, 0xEE, 0xFF, 0xC9, 0x8E, 0xFA, 0xDF,
+	0xEE, 0x8F, 0xF9, 0x02, 0x7A, 0xC1, 0x69, 0x86,
+	0xE3, 0x16, 0xCC, 0x20, 0x76, 0xC0, 0x1A, 0x9B,
+	0x5B, 0x6F, 0xCB, 0x31, 0xEB, 0x8C, 0x84, 0x2C,
+	0x1E, 0xF4, 0x1D, 0x48, 0xDA, 0x04, 0x10, 0x8E,
+	0xFE, 0xB0, 0x75, 0x58, 0x05, 0xDD, 0xBC, 0x01,
+	0x83, 0x9B, 0xAE, 0x73, 0x89, 0x29, 0x73, 0x1B,
+	0x14, 0xEA, 0x52, 0xF8, 0xA5, 0x11, 0xA7, 0x23,
+	0x2A, 0xAA, 0xBE, 0xC9, 0x71, 0xE1, 0x20, 0x5F,
+	0xB0, 0x18, 0x56, 0xED, 0x0A, 0x63, 0x07, 0x2F,
+	0x3F, 0xDF, 0xFA, 0xEF, 0xFE, 0x8F, 0x5C, 0xC4,
+	0xDC, 0xE6, 0xC8, 0x4E, 0xD1, 0xDE, 0x0E, 0xD4,
+	0x9C, 0xEA, 0x49, 0xF4, 0xCD, 0x30, 0xDE, 0x5D,
+	0x79, 0xAE, 0x5A, 0x64, 0x4F, 0x0A, 0xDB, 0x5C,
+	0x6A, 0xBB, 0x83, 0x3B, 0xAE, 0x7E, 0x48, 0xA8,
+	0x03, 0x46, 0x2F, 0x56, 0xD8, 0x5B, 0xFE, 0xE4,
+	0xCE, 0xC1, 0xC2, 0xC6, 0xDE, 0x85, 0xF2, 0x6E,
+	0x94, 0x67, 0x04, 0x79, 0xD9, 0xBA, 0x63, 0x38,
+	0x80, 0x88, 0x7B, 0xEC, 0xA8, 0x84, 0x51, 0xFA,
+	0x85, 0x7B, 0xD5, 0x9B, 0xCB, 0xB4, 0x4A, 0x28,
+	0xE2, 0x50, 0x84, 0xC6, 0x8C, 0xE2, 0x9C, 0xC1,
+	0xFB, 0xD8, 0x77, 0x18, 0xF1, 0x54, 0x3E, 0x4E,
+	0x67, 0x12, 0x36, 0x34, 0xB5, 0xA8, 0x53, 0x5A,
+	0x71, 0x25, 0xCA, 0x34, 0x8E, 0xC0, 0x4E, 0x67,
+	0xD8, 0xBC, 0xE5, 0x0B, 0x2B, 0xB0, 0x3A, 0xBE,
+	0x12, 0xD4, 0x27, 0x58, 0x06, 0x36, 0x3F, 0x6D,
+	0xC2, 0xC0, 0xAD, 0x8B, 0xBB, 0xF0, 0x7B, 0x91,
+	0xB1, 0xA0, 0xBD, 0xFD, 0x3B, 0xAD, 0x4F, 0x36,
+	0x3C, 0x51, 0x14, 0xBD, 0x29, 0xCA, 0x49, 0x45,
+	0x00, 0xC8, 0x3D, 0xF0, 0xA7, 0xF3, 0x16, 0x93,
+	0x4B, 0x63, 0xB1, 0x50, 0x79, 0xF9, 0x7D, 0x5D,
+	0x72, 0x15, 0xFF, 0x45, 0x44, 0xBC, 0x7E, 0x8A,
+	0x14, 0xA2, 0x64, 0x26, 0xB1, 0x48, 0x20, 0x88,
+	0x77, 0x9B, 0x45, 0xD1, 0xB3, 0x32, 0x6B, 0x3D,
+	0x6C, 0xDB, 0x27, 0x83, 0x4C, 0x49, 0xEC, 0x86,
+	0x40, 0x90, 0x95, 0x4E, 0x07, 0x01, 0xDD, 0xF3,
+	0x72, 0x7B, 0x8B, 0xA2, 0xAE, 0x42, 0xD3, 0xE5,
+	0xA5, 0x7B, 0x58, 0x67, 0x85, 0x3B, 0x84, 0xF0,
+	0x82, 0x5F, 0x01, 0x13, 0x9F, 0xD4, 0xEB, 0x2A,
+	0x60, 0xB7, 0x0C, 0x78, 0x42, 0x84, 0x56, 0xFE,
+	0x8D, 0xF0, 0x59, 0x29, 0xA0, 0xB4, 0x50, 0xCC,
+	0x5F, 0xC0, 0x66, 0xA2, 0x2F, 0x5E, 0x29, 0x21,
+	0x09, 0x42, 0x61, 0xE5, 0x85, 0x43, 0xFA, 0xB0,
+	0xE6, 0x61, 0x37, 0x34, 0x75, 0x8A, 0x10, 0xB9,
+	0xEE, 0xDF, 0xAC, 0x2E, 0xFB, 0xB1, 0x8C, 0x86,
+	0x96, 0x73, 0xAE, 0xF6, 0xC1, 0x71, 0x81, 0x2A,
+	0x17, 0x79, 0x6E, 0x8F, 0x61, 0xF8, 0xD4, 0x9D,
+	0xFD, 0x1E, 0xF9, 0x89, 0xE7, 0x9A, 0x8E, 0xA0,
+	0xE5, 0xAF, 0x81, 0x53, 0xFE, 0xF0, 0xC3, 0x4F,
+	0xD2, 0x91, 0xE1, 0xE0, 0x78, 0xF1, 0xF5, 0xD6,
+	0x22, 0x57, 0x0F, 0xFD, 0x3B, 0x8F, 0x0F, 0xE2,
+	0x99, 0x57, 0xE1, 0xBA, 0x29, 0x1F, 0x2B, 0x25,
+	0xF9, 0xC5, 0xDD, 0xA9, 0x5C, 0xC5, 0x9E, 0x18,
+	0x88, 0x99, 0xD5, 0x80, 0xC7, 0x5D, 0x4D, 0xD3,
+	0xDE, 0xE7, 0x0D, 0x0D, 0xEC, 0x62, 0xBE, 0x72,
+	0x0C, 0x9D, 0xAC, 0x2B, 0x18, 0x0B, 0x9E, 0xBB,
+	0xC3, 0x46, 0xAC, 0x04, 0x79, 0x25, 0x1B, 0x13,
+	0x13, 0x88, 0x82, 0xA4, 0x86, 0x38, 0xA8, 0x6C,
+	0xAA, 0x83, 0xF6, 0xD4, 0x97, 0x37, 0xA3, 0x21,
+	0x5B, 0x84, 0xCC, 0xEE, 0xA3, 0x77, 0x2A, 0xA4,
+	0x93, 0x02, 0x99, 0x4B, 0xD6, 0x64, 0x01, 0x91,
+	0xCC, 0xBE, 0x8F, 0x62, 0x4F, 0x2D, 0xA1, 0xF1,
+	0x4E, 0x20, 0x4C, 0x8E, 0x91, 0x5B, 0xCB, 0x82,
+	0xD1, 0xE6, 0xF3, 0x92, 0x31, 0x13, 0x9E, 0x7D,
+	0x14, 0xF1, 0xF3, 0x89, 0x67, 0x10, 0xF8, 0x9A,
+	0x15, 0x31, 0x01, 0x36, 0xD0, 0x1B, 0x8A, 0xA1,
+	0xE9, 0xB1, 0x50, 0xB8, 0xF8, 0x9B, 0x93, 0x9A,
+	0xBA, 0x05, 0x5E, 0xE0, 0xC9, 0x05, 0x3A, 0x1B,
+	0xB4, 0xBB, 0x53, 0x18, 0xE5, 0x8E, 0x2C, 0x42,
+	0xC3, 0x4F, 0x6E, 0x36, 0x8E, 0xBA, 0x51, 0xD4,
+	0xCB, 0xD3, 0x51, 0xF0, 0x96, 0x72, 0x42, 0x87,
+	0xBE, 0xD8, 0xC9, 0x2B, 0x11, 0xB7, 0xCE, 0xC1,
+	0xC9, 0xBF, 0x56, 0x2C, 0x53, 0xC2, 0x1B, 0xF1,
+	0x52, 0x23, 0xAA, 0xDA, 0x5F, 0x1A, 0x3F, 0x2C,
+	0xBC, 0x4D, 0x21, 0xA5, 0x0D, 0x7A, 0x1C, 0x0C,
+	0x21, 0x64, 0x49, 0xAA, 0x19, 0xC0, 0x1D, 0x16,
+	0x6C, 0xE2, 0x75, 0xC5, 0xB1, 0x0E, 0xC4, 0x7C,
+	0x96, 0x1E, 0xF8, 0xFA, 0xC4, 0x0C, 0xE8, 0x5B,
+	0x94, 0x4B, 0x5F, 0x71, 0x14, 0x6C, 0xF1, 0xAA,
+	0x9B, 0xF9, 0x9D, 0xD1, 0x6B, 0x43, 0x79, 0xBD,
+	0x19, 0xED, 0xF5, 0x74, 0x3E, 0xA7, 0xF2, 0x37,
+	0x7E, 0xCB, 0x08, 0x35, 0xFB, 0x31, 0xF5, 0x08,
+	0x54, 0xB2, 0x51, 0xA7, 0x4B, 0x42, 0x9D, 0x7A,
+	0xFC, 0x7B, 0x09, 0x24, 0xF3, 0x37, 0x41, 0x52,
+	0x34, 0xCC, 0x54, 0x05, 0x3D, 0x10, 0xF6, 0xF2,
+	0xB2, 0xC8, 0xDD, 0x8B, 0x33, 0x43, 0x1B, 0x18,
+	0xA9, 0xE9, 0xFA, 0xEB, 0x05, 0xA9, 0xBB, 0xBA,
+	0x9B, 0x18, 0x84, 0x98, 0xB7, 0xAE, 0x10, 0x65,
+	0xDC, 0x8A, 0x4D, 0x71, 0xD3, 0xB5, 0x04, 0xE0,
+	0x67, 0x80, 0xBF, 0x09, 0x10, 0x1B, 0xEB, 0x1B,
+	0x76, 0x57, 0xAC, 0x09, 0xB9, 0x7F, 0x96, 0x52,
+	0x39, 0x47, 0xEB, 0x18, 0xA9, 0x0B, 0x0A, 0xBD,
+	0x9E, 0x8B, 0xBA, 0x4B, 0x99, 0x53, 0x6A, 0x9D,
+	0x0B, 0x8A, 0xF2, 0x53, 0x15, 0xC4, 0xC6, 0x45,
+	0x48, 0x49, 0xAD, 0xA9, 0x92, 0x6E, 0x97, 0xE5,
+	0x69, 0x18, 0x2C, 0x0D, 0x4D, 0xD7, 0x2B, 0x3C,
+};
+
+uint8_t rsa_8192_cipher[] = {
+	0x3e, 0x48, 0xb9, 0x61, 0x62, 0xeb, 0x9d, 0x13,
+	0x9c, 0xc3, 0x3a, 0xeb, 0x21, 0x8b, 0xe7, 0x72,
+	0x65, 0xd0, 0xc3, 0x26, 0x49, 0xf2, 0x6c, 0x90,
+	0xb7, 0xbe, 0x34, 0xc7, 0xe0, 0x57, 0x16, 0x4e,
+	0x30, 0x04, 0x7e, 0xdf, 0x65, 0x3b, 0x68, 0xc5,
+	0x8e, 0xc1, 0x53, 0x3d, 0x43, 0xa4, 0x9a, 0x80,
+	0x0e, 0x55, 0x96, 0x12, 0x5c, 0x1b, 0x8c, 0x14,
+	0x45, 0x3a, 0xe5, 0xac, 0xcb, 0xe4, 0x5f, 0x2a,
+	0x50, 0x0d, 0xeb, 0xf2, 0x63, 0xb9, 0x6b, 0xba,
+	0xb2, 0x48, 0xa5, 0xa3, 0x13, 0xa6, 0xe9, 0x5e,
+	0x07, 0xbb, 0x13, 0x0d, 0x17, 0xc0, 0x2a, 0x3f,
+	0xed, 0xf1, 0x2f, 0x91, 0x5e, 0xf0, 0x24, 0xdc,
+	0xde, 0x2f, 0xa4, 0x52, 0x4e, 0xa2, 0xba, 0x02,
+	0x32, 0xf1, 0x02, 0x94, 0xf2, 0x34, 0xe9, 0x22,
+	0x44, 0xc8, 0x88, 0x87, 0x57, 0x61, 0xce, 0xe5,
+	0x08, 0x35, 0x18, 0x27, 0x0b, 0x1b, 0x50, 0xf7,
+	0xa7, 0x41, 0xec, 0x38, 0x50, 0x6c, 0x62, 0xe1,
+	0xcd, 0x8e, 0x10, 0x3b, 0x6a, 0xbd, 0xf8, 0x2a,
+	0x7c, 0x5b, 0x81, 0xed, 0x72, 0xb4, 0xca, 0xeb,
+	0xca, 0xc5, 0xe7, 0x1c, 0xc0, 0xf3, 0x57, 0xbd,
+	0xe8, 0x07, 0xd5, 0xcd, 0x5c, 0x30, 0x98, 0xff,
+	0x64, 0x64, 0xfc, 0x2c, 0x20, 0x67, 0xe7, 0xdb,
+	0x0d, 0x7b, 0x40, 0x4c, 0x1f, 0x34, 0xbe, 0x3f,
+	0x69, 0x7d, 0x76, 0x94, 0x94, 0x59, 0x56, 0x1d,
+	0x7b, 0x04, 0x9c, 0xfe, 0x4e, 0x95, 0xd4, 0xf6,
+	0xb0, 0xda, 0x56, 0x88, 0x78, 0x77, 0x76, 0x89,
+	0xe8, 0x60, 0xed, 0x5d, 0x00, 0xb2, 0xde, 0xa6,
+	0x63, 0x0d, 0xdb, 0xdc, 0xa1, 0xc1, 0x23, 0x8a,
+	0xe7, 0x2b, 0x5c, 0xf2, 0x45, 0x68, 0x42, 0x90,
+	0xc5, 0xa3, 0x7b, 0xb6, 0xbe, 0x71, 0xaa, 0xe3,
+	0xdb, 0xd3, 0xc5, 0x37, 0xf2, 0xfb, 0x3b, 0x7c,
+	0xa0, 0x23, 0x05, 0x8a, 0x7b, 0xf3, 0xd9, 0x86,
+	0xc7, 0x94, 0x36, 0x02, 0xc3, 0xdb, 0x0e, 0xb1,
+	0x83, 0x8f, 0xef, 0x1d, 0xc6, 0x6d, 0x39, 0x30,
+	0x81, 0x61, 0x15, 0x02, 0xae, 0x04, 0x9b, 0x48,
+	0x4a, 0x80, 0xef, 0x8c, 0xea, 0x20, 0x6b, 0x59,
+	0xfa, 0xb6, 0x79, 0x28, 0x68, 0x15, 0x05, 0xf1,
+	0xbf, 0x7b, 0x6b, 0xa0, 0x2a, 0x2f, 0x86, 0x67,
+	0x92, 0x0f, 0xcf, 0xcc, 0xfe, 0x2a, 0x23, 0x09,
+	0x89, 0x2c, 0xb1, 0xcd, 0x7d, 0x9e, 0x13, 0xe3,
+	0x8a, 0xfb, 0x56, 0xc0, 0xee, 0x3e, 0xb1, 0x0d,
+	0xd7, 0xd3, 0x95, 0xa9, 0xc5, 0xa3, 0x07, 0xd4,
+	0x8d, 0x26, 0xa5, 0x19, 0x6b, 0xed, 0x01, 0x83,
+	0x84, 0x07, 0x00, 0x71, 0x4f, 0x67, 0xd6, 0x8c,
+	0x58, 0x12, 0xc1, 0x07, 0xeb, 0x81, 0xd9, 0x88,
+	0x49, 0x8b, 0xe1, 0x95, 0xa1, 0xff, 0xed, 0xae,
+	0x1f, 0x48, 0x7d, 0xea, 0x86, 0xc9, 0xc9, 0x6c,
+	0xcc, 0x96, 0xb1, 0x96, 0x47, 0x9d, 0x4a, 0x68,
+	0xb4, 0xb3, 0x5b, 0x14, 0x08, 0x67, 0xbe, 0x6f,
+	0x66, 0xa2, 0xd7, 0x8d, 0x65, 0x5b, 0xdb, 0xe5,
+	0x60, 0x9c, 0xca, 0xea, 0xc1, 0x6a, 0x82, 0x98,
+	0x7c, 0xdd, 0x1d, 0xe8, 0xa7, 0xc3, 0x78, 0xc7,
+	0x65, 0xee, 0xea, 0x7d, 0x8b, 0x1b, 0x3b, 0x62,
+	0xe6, 0xfa, 0x6f, 0x83, 0xf2, 0xbc, 0x32, 0x01,
+	0x7b, 0xb2, 0x35, 0xf7, 0x02, 0x7d, 0x38, 0xb6,
+	0x12, 0x45, 0x3f, 0xed, 0x42, 0xdc, 0x01, 0xc1,
+	0x7c, 0xb6, 0xd1, 0x63, 0xbe, 0x46, 0xe0, 0x23,
+	0x8b, 0xe6, 0x17, 0x4d, 0xac, 0x86, 0x45, 0xf6,
+	0x0f, 0x0b, 0x02, 0xe4, 0x5c, 0x2b, 0x5e, 0xeb,
+	0x76, 0x79, 0xc2, 0x86, 0xc6, 0x04, 0xec, 0xc9,
+	0xbd, 0xdd, 0xd5, 0x56, 0x78, 0x3b, 0x6c, 0xa3,
+	0xfe, 0xeb, 0x98, 0x30, 0x62, 0x78, 0xf4, 0xde,
+	0x4d, 0x7a, 0x9f, 0xdc, 0x7f, 0x81, 0xe1, 0x43,
+	0x21, 0xef, 0xb1, 0x05, 0xf6, 0xd6, 0x87, 0xde,
+	0x8a, 0xa1, 0x80, 0x4f, 0xb1, 0xc1, 0xae, 0xc2,
+	0x48, 0x50, 0xa4, 0x1d, 0x03, 0x9e, 0x23, 0xa1,
+	0x02, 0x31, 0x50, 0x8e, 0x84, 0xe3, 0xde, 0x9f,
+	0x79, 0x6e, 0xe9, 0x46, 0xc2, 0xe0, 0x17, 0xb9,
+	0x7e, 0x1e, 0x9a, 0x12, 0x95, 0xc3, 0x6f, 0x52,
+	0xd7, 0xcd, 0x44, 0xeb, 0x23, 0xf3, 0xc9, 0xdc,
+	0x3f, 0x33, 0x1d, 0xad, 0x10, 0x11, 0x49, 0x2d,
+	0x4d, 0xdf, 0x65, 0xbb, 0xc1, 0x6d, 0x2a, 0xee,
+	0x0d, 0xad, 0x4d, 0xd2, 0x01, 0xf3, 0xfe, 0x46,
+	0x70, 0xff, 0x49, 0xe2, 0x0f, 0x91, 0xe5, 0x23,
+	0x60, 0xdb, 0x59, 0x0b, 0x8f, 0x62, 0x9d, 0xc5,
+	0xd9, 0xec, 0xb8, 0x8c, 0xe2, 0xae, 0xce, 0x9e,
+	0xfc, 0x65, 0xde, 0xa0, 0x1b, 0x2e, 0x5f, 0x8a,
+	0xf5, 0xf9, 0x18, 0x2e, 0xfa, 0x32, 0x7c, 0x54,
+	0x81, 0x26, 0xf0, 0x72, 0xeb, 0xb6, 0xb2, 0x71,
+	0xee, 0x78, 0x4b, 0x1b, 0x2e, 0xa3, 0xac, 0x33,
+	0x5c, 0x68, 0x77, 0xcc, 0x0d, 0x8c, 0xdf, 0x2e,
+	0x57, 0xe9, 0x87, 0xfe, 0xda, 0xaf, 0xf4, 0xee,
+	0xef, 0xd6, 0x1d, 0x22, 0x97, 0xcb, 0xb7, 0x0d,
+	0xa3, 0x92, 0xa2, 0xc9, 0xa2, 0x18, 0xa3, 0x93,
+	0x49, 0x19, 0x60, 0x01, 0xe5, 0x92, 0xeb, 0xf5,
+	0x85, 0x29, 0x36, 0xdb, 0x67, 0xf7, 0x10, 0xfb,
+	0xff, 0x69, 0x08, 0x52, 0x96, 0x41, 0x67, 0x2f,
+	0x3d, 0xf0, 0x28, 0xe4, 0x8f, 0xb2, 0x6e, 0x97,
+	0xa4, 0xbd, 0xfe, 0x6b, 0xaf, 0x84, 0x91, 0xa2,
+	0x47, 0x97, 0x90, 0x8e, 0x58, 0x78, 0x5e, 0x29,
+	0x58, 0x45, 0xea, 0x6a, 0x31, 0x2d, 0x4b, 0xc7,
+	0x0e, 0x8c, 0x0e, 0x50, 0x05, 0x44, 0x2c, 0x1a,
+	0xab, 0xff, 0x38, 0xda, 0x73, 0x7c, 0x6d, 0x09,
+	0xe4, 0x6e, 0x78, 0x41, 0xec, 0xd2, 0x36, 0x8b,
+	0x6d, 0xb7, 0x6b, 0xb8, 0x18, 0x15, 0x5d, 0xee,
+	0xb6, 0xf1, 0x2d, 0xdf, 0xc2, 0x54, 0xdf, 0x84,
+	0xfd, 0x4c, 0xa3, 0x43, 0x09, 0x8d, 0xe7, 0x1b,
+	0x9d, 0x69, 0xb8, 0x91, 0x7c, 0x50, 0x99, 0x88,
+	0x6a, 0x48, 0xb6, 0xab, 0xc3, 0xfe, 0x36, 0x08,
+	0x0e, 0xae, 0x31, 0x1c, 0x0c, 0xbe, 0xb2, 0x1f,
+	0xdd, 0x60, 0x68, 0x15, 0x25, 0xa4, 0x97, 0xaa,
+	0xf7, 0x12, 0x30, 0xc4, 0xca, 0x40, 0x33, 0x8b,
+	0x71, 0x1d, 0xa5, 0x65, 0x8d, 0x99, 0x96, 0xc8,
+	0x73, 0xc2, 0x66, 0xe9, 0x55, 0xde, 0x55, 0x73,
+	0x5a, 0xd9, 0x97, 0x3d, 0x0a, 0x38, 0xe2, 0x63,
+	0xd4, 0x96, 0x9f, 0x9e, 0x91, 0x01, 0xa6, 0xb3,
+	0x4c, 0x01, 0xec, 0xc8, 0xeb, 0x89, 0x94, 0x57,
+	0x28, 0x21, 0xc8, 0x8f, 0x90, 0x2c, 0xec, 0x54,
+	0x61, 0x66, 0x34, 0x31, 0xd9, 0x0e, 0x06, 0xad,
+	0x70, 0x85, 0x0e, 0x69, 0xcd, 0x97, 0x9b, 0x4c,
+	0x15, 0xd5, 0x96, 0xb2, 0x8d, 0x7f, 0x95, 0xd8,
+	0x64, 0x87, 0x1e, 0xac, 0x76, 0xd4, 0xe1, 0x8f,
+	0x0c, 0xf2, 0x93, 0x93, 0x19, 0xa3, 0x7a, 0xc5,
+	0x14, 0x52, 0xe8, 0x89, 0x1a, 0x52, 0x9a, 0xf5,
+	0x34, 0x27, 0xca, 0xed, 0x5b, 0xb7, 0xc3, 0x23,
+	0xce, 0x8c, 0x67, 0xcc, 0x38, 0x15, 0xb1, 0xd4,
+	0x2e, 0xba, 0xf4, 0x43, 0x18, 0xd8, 0x5e, 0x43,
+	0x55, 0x43, 0x0b, 0x67, 0xc8, 0xb1, 0x54, 0xe6,
+	0xf5, 0x1c, 0xd4, 0x13, 0x47, 0x08, 0x80, 0xea,
+	0x20, 0x1a, 0xeb, 0xa4, 0x89, 0x64, 0x58, 0x87,
+	0x23, 0x15, 0xa6, 0x19, 0x76, 0xd2, 0xc5, 0xab,
+	0x8e, 0x09, 0x0b, 0x61, 0xe3, 0x74, 0x6d, 0x22,
+	0x72, 0x59, 0x0b, 0x46, 0xd1, 0x44, 0x43, 0xea,
+	0x66, 0x41, 0x98, 0xc1, 0x63, 0x79, 0xba, 0x56,
+	0x49, 0x09, 0x13, 0x05, 0xeb, 0x69, 0x9b, 0x43,
+	0xec, 0xbf, 0x5f, 0xb5, 0xae, 0x92, 0xa9, 0xc2,
+	0xb7, 0x6b, 0xfb, 0xf9, 0x28, 0x23, 0x35, 0x31,
+	0xab, 0x45, 0xa7, 0x55, 0xf5, 0xc1, 0x33, 0x3e,
+};
+
 struct
 cperf_rsa_test_data rsa_qt_perf_data[4] = {
 	{
@@ -2674,6 +3178,10 @@ cperf_rsa_test_data rsa_qt_perf_data[4] = {
 			.data = rsa_qinv,
 			.length = sizeof(rsa_qinv),
 		},
+		.cipher = {
+			.data = rsa_cipher,
+			.length = sizeof(rsa_cipher),
+		},
 		.key_type = RTE_RSA_KEY_TYPE_QT,
 		.padding = RTE_CRYPTO_RSA_PADDING_PKCS1_5,
 	},
@@ -2711,6 +3219,10 @@ cperf_rsa_test_data rsa_qt_perf_data[4] = {
 			.data = rsa_2048_qinv,
 			.length = sizeof(rsa_2048_qinv),
 		},
+		.cipher = {
+			.data = rsa_2048_cipher,
+			.length = sizeof(rsa_2048_cipher),
+		},
 		.key_type = RTE_RSA_KEY_TYPE_QT,
 		.padding = RTE_CRYPTO_RSA_PADDING_PKCS1_5,
 	},
@@ -2748,6 +3260,10 @@ cperf_rsa_test_data rsa_qt_perf_data[4] = {
 			.data = rsa_4096_qinv,
 			.length = sizeof(rsa_4096_qinv),
 		},
+		.cipher = {
+			.data = rsa_4096_cipher,
+			.length = sizeof(rsa_4096_cipher),
+		},
 		.key_type = RTE_RSA_KEY_TYPE_QT,
 		.padding = RTE_CRYPTO_RSA_PADDING_PKCS1_5,
 	},
@@ -2785,6 +3301,10 @@ cperf_rsa_test_data rsa_qt_perf_data[4] = {
 			.data = rsa_8192_qinv,
 			.length = sizeof(rsa_8192_qinv),
 		},
+		.cipher = {
+			.data = rsa_8192_cipher,
+			.length = sizeof(rsa_8192_cipher),
+		},
 		.key_type = RTE_RSA_KEY_TYPE_QT,
 		.padding = RTE_CRYPTO_RSA_PADDING_PKCS1_5,
 	}
@@ -2806,6 +3326,10 @@ cperf_rsa_test_data rsa_exp_perf_data[4] = {
 			.data = rsa_d,
 			.length = sizeof(rsa_d),
 		},
+		.sign = {
+			.data = rsa_sign,
+			.length = sizeof(rsa_sign),
+		},
 		.key_type = RTE_RSA_KEY_TYPE_EXP,
 		.padding = RTE_CRYPTO_RSA_PADDING_PKCS1_5,
 	},
@@ -2823,6 +3347,10 @@ cperf_rsa_test_data rsa_exp_perf_data[4] = {
 			.data = rsa_2048_d,
 			.length = sizeof(rsa_2048_d),
 		},
+		.sign = {
+			.data = rsa_2048_sign,
+			.length = sizeof(rsa_2048_sign),
+		},
 		.key_type = RTE_RSA_KEY_TYPE_EXP,
 		.padding = RTE_CRYPTO_RSA_PADDING_PKCS1_5,
 	},
@@ -2840,6 +3368,10 @@ cperf_rsa_test_data rsa_exp_perf_data[4] = {
 			.data = rsa_4096_d,
 			.length = sizeof(rsa_4096_d),
 		},
+		.sign = {
+			.data = rsa_4096_sign,
+			.length = sizeof(rsa_4096_sign),
+		},
 		.key_type = RTE_RSA_KEY_TYPE_EXP,
 		.padding = RTE_CRYPTO_RSA_PADDING_PKCS1_5,
 	},
@@ -2857,6 +3389,10 @@ cperf_rsa_test_data rsa_exp_perf_data[4] = {
 			.data = rsa_8192_d,
 			.length = sizeof(rsa_8192_d),
 		},
+		.sign = {
+			.data = rsa_8192_sign,
+			.length = sizeof(rsa_8192_sign),
+		},
 		.key_type = RTE_RSA_KEY_TYPE_EXP,
 		.padding = RTE_CRYPTO_RSA_PADDING_PKCS1_5,
 	}
diff --git a/app/test-crypto-perf/cperf_test_vectors.h b/app/test-crypto-perf/cperf_test_vectors.h
index 3025280ecd..b5e300dc1b 100644
--- a/app/test-crypto-perf/cperf_test_vectors.h
+++ b/app/test-crypto-perf/cperf_test_vectors.h
@@ -124,6 +124,8 @@ struct cperf_rsa_test_data {
 	rte_crypto_param dp;
 	rte_crypto_param dq;
 	rte_crypto_param qinv;
+	rte_crypto_param sign;
+	rte_crypto_param cipher;
 	enum rte_crypto_rsa_padding_type padding;
 };
 
-- 
2.48.1


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-06-05  9:24 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-04  6:27 [PATCH] app/crypto-perf: add support for RSA decrypt Sucharitha Sarananaga
2025-06-05  9:24 ` [PATCH v2] " Sucharitha Sarananaga

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).