[PATCH 07/14] test/crypto: add AES-GCM 128 TLS 1.2 vector
Anoob Joseph
anoobj at marvell.com
Thu Dec 7 14:02:09 CET 2023
From: Tejasree Kondoj <ktejasree at marvell.com>
Add AES-GCM-128 test vector generated with kTLS.
Signed-off-by: Tejasree Kondoj <ktejasree at marvell.com>
Signed-off-by: Vidya Sagar Velumuri <vvelumuri at marvell.com>
---
app/test/test_cryptodev.c | 8 +--
app/test/test_cryptodev_security_tls_record.h | 2 +-
...yptodev_security_tls_record_test_vectors.h | 67 ++++++++++++++++++-
3 files changed, 71 insertions(+), 6 deletions(-)
diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c
index cd83370790..e7e4b93c20 100644
--- a/app/test/test_cryptodev.c
+++ b/app/test/test_cryptodev.c
@@ -16814,13 +16814,13 @@ static struct unit_test_suite tls12_record_proto_testsuite = {
.setup = tls_record_proto_testsuite_setup,
.unit_test_cases = {
TEST_CASE_NAMED_WITH_DATA(
- "Known vector TBD",
+ "Write record known vector AES-GCM-128 (vector 1)",
ut_setup_security, ut_teardown,
- test_tls_record_proto_known_vec, &tls_test_data1),
+ test_tls_record_proto_known_vec, &tls_test_data_aes_128_gcm_v1),
TEST_CASE_NAMED_WITH_DATA(
- "Known vector TBD",
+ "Read record known vector AES-GCM-128 (vector 1)",
ut_setup_security, ut_teardown,
- test_tls_record_proto_known_vec_read, &tls_test_data1),
+ test_tls_record_proto_known_vec_read, &tls_test_data_aes_128_gcm_v1),
TEST_CASES_END() /**< NULL terminate unit test array */
}
};
diff --git a/app/test/test_cryptodev_security_tls_record.h b/app/test/test_cryptodev_security_tls_record.h
index 9a0cf70218..b9cadd5cd4 100644
--- a/app/test/test_cryptodev_security_tls_record.h
+++ b/app/test/test_cryptodev_security_tls_record.h
@@ -55,7 +55,7 @@ struct tls_record_test_flags {
bool display_alg;
};
-extern struct tls_record_test_data tls_test_data1;
+extern struct tls_record_test_data tls_test_data_aes_128_gcm_v1;
int test_tls_record_status_check(struct rte_crypto_op *op);
diff --git a/app/test/test_cryptodev_security_tls_record_test_vectors.h b/app/test/test_cryptodev_security_tls_record_test_vectors.h
index 5aa0d27fda..52e97e8557 100644
--- a/app/test/test_cryptodev_security_tls_record_test_vectors.h
+++ b/app/test/test_cryptodev_security_tls_record_test_vectors.h
@@ -11,6 +11,71 @@
#include "test_cryptodev.h"
#include "test_cryptodev_security_tls_record.h"
-struct tls_record_test_data tls_test_data1;
+/* TLS 1.2 AES-GCM 128 vector generated with kTLS. */
+struct tls_record_test_data tls_test_data_aes_128_gcm_v1 = {
+ .key = {
+ .data = {
+ 0x77, 0xc4, 0x9b, 0x0c, 0x2b, 0xe2, 0xd2, 0x4e,
+ 0xf5, 0x36, 0xb4, 0xea, 0x16, 0xb0, 0xed, 0x1f
+ },
+ },
+ .input_text = {
+ .data = {
+ 0x61, 0x62, 0x63, 0x64, 0x31, 0x32, 0x33, 0x34,
+ 0x61, 0x62, 0x63, 0x64, 0x31, 0x32, 0x33, 0x34,
+ 0xa
+ },
+ .len = 17,
+ },
+ .output_text = {
+ .data = {
+ 0x17, 0x03, 0x03, 0x00, 0x29,
+ 0x3a, 0xcd, 0x41, 0x5d, 0x42, 0xac, 0xce, 0x36,
+ 0xad, 0xd1, 0x83, 0xa0, 0x16, 0x84, 0xce, 0x84,
+ 0xfc, 0xc2, 0xa7, 0x6b, 0xa1, 0x89, 0x5d, 0xf2,
+ 0xeb,
+ 0x9b, 0x90, 0x01, 0x56, 0xf8, 0x9d, 0xac, 0x0c,
+ 0xa8, 0x95, 0xba, 0xcc, 0x1f, 0xf3, 0x36, 0x2b
+ },
+ .len = 46,
+ },
+ .imp_nonce = {
+ .data = {
+ 0xda, 0xf8, 0x8f, 0x12
+ },
+ .len = 4,
+ },
+
+ .iv = {
+ .data = {
+ 0x3a, 0xcd, 0x41, 0x5d, 0x42, 0xac, 0xce, 0x36
+ },
+ },
+
+ .xform = {
+ .aead = {
+ .next = NULL,
+ .type = RTE_CRYPTO_SYM_XFORM_AEAD,
+ .aead = {
+ .op = RTE_CRYPTO_AEAD_OP_ENCRYPT,
+ .algo = RTE_CRYPTO_AEAD_AES_GCM,
+ .key.length = 16,
+ .iv.length = 12,
+ .iv.offset = IV_OFFSET,
+ .digest_length = 16,
+ .aad_length = 13,
+ },
+ },
+ },
+
+ .tls_record_xform = {
+ .ver = RTE_SECURITY_VERSION_TLS_1_2,
+ .type = RTE_SECURITY_TLS_SESS_TYPE_WRITE,
+ .tls_1_2.seq_no = 0x1,
+ },
+
+ .aead = true,
+ .app_type = 0x17,
+};
#endif
--
2.25.1
More information about the dev
mailing list