All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vidya Sagar Velumuri <vvelumuri@marvell.com>
To: <adwivedi@marvell.com>, <anoobj@marvell.com>,
	<ktejasree@marvell.com>, <ndabilpuram@marvell.com>,
	<gakhil@marvell.com>, <roy.fan.zhang@intel.com>
Cc: <dev@dpdk.org>
Subject: [dpdk-dev] [PATCH v3] test/crypto: fix: test vectors for zuc 256 bit key
Date: Wed, 3 Nov 2021 09:31:08 +0000	[thread overview]
Message-ID: <20211103093108.3143-1-vvelumuri@marvell.com> (raw)
In-Reply-To: <20211103065506.2690-1-vvelumuri@marvell.com>

Fix the test vectors added for zuc 256-bit key
Add known vectors form ZUC 256 RFC.

Fixes: fa5bf9345d4e (test/crypto: add ZUC cases with 256-bit keys)

Signed-off-by: Vidya Sagar Velumuri <vvelumuri@marvell.com>
v3:
* Fixed spell check

diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c
index 814a0b401d..38bbd6274b 100644
--- a/app/test/test_cryptodev.c
+++ b/app/test/test_cryptodev.c
@@ -7116,12 +7116,6 @@ test_zuc_encryption_test_case_6_sgl(void)
 	return test_zuc_encryption_sgl(&zuc_test_case_cipher_193b);
 }
 
-static int
-test_zuc_encryption_test_case_7(void)
-{
-	return test_zuc_encryption(&zuc_test_case_cipher_800b_key_256b);
-}
-
 static int
 test_zuc_hash_generate_test_case_1(void)
 {
@@ -7173,13 +7167,19 @@ test_zuc_hash_generate_test_case_8(void)
 static int
 test_zuc_hash_generate_test_case_9(void)
 {
-	return test_zuc_authentication(&zuc_test_case_auth_584b_mac_64b);
+	return test_zuc_authentication(&zuc_test_case_auth_4000b_mac_32b);
 }
 
 static int
 test_zuc_hash_generate_test_case_10(void)
 {
-	return test_zuc_authentication(&zuc_test_case_auth_2080b_mac_128b);
+	return test_zuc_authentication(&zuc_test_case_auth_4000b_mac_64b);
+}
+
+static int
+test_zuc_hash_generate_test_case_11(void)
+{
+	return test_zuc_authentication(&zuc_test_case_auth_4000b_mac_128b);
 }
 
 static int
@@ -14934,8 +14934,6 @@ static struct unit_test_suite cryptodev_zuc_testsuite  = {
 			test_zuc_encryption_test_case_5),
 		TEST_CASE_ST(ut_setup, ut_teardown,
 			test_zuc_encryption_test_case_6_sgl),
-		TEST_CASE_ST(ut_setup, ut_teardown,
-			test_zuc_encryption_test_case_7),
 
 		/** ZUC authenticate (EIA3) */
 		TEST_CASE_ST(ut_setup, ut_teardown,
@@ -14958,6 +14956,8 @@ static struct unit_test_suite cryptodev_zuc_testsuite  = {
 			test_zuc_hash_generate_test_case_9),
 		TEST_CASE_ST(ut_setup, ut_teardown,
 			test_zuc_hash_generate_test_case_10),
+		TEST_CASE_ST(ut_setup, ut_teardown,
+			test_zuc_hash_generate_test_case_11),
 
 
 		/** ZUC alg-chain (EEA3/EIA3) */
diff --git a/app/test/test_cryptodev_zuc_test_vectors.h b/app/test/test_cryptodev_zuc_test_vectors.h
index 35bbe0f6c4..90f353cced 100644
--- a/app/test/test_cryptodev_zuc_test_vectors.h
+++ b/app/test/test_cryptodev_zuc_test_vectors.h
@@ -517,68 +517,6 @@ static struct wireless_test_data zuc_test_case_cipher_4019b = {
 	}
 };
 
-static struct wireless_test_data zuc_test_case_cipher_800b_key_256b = {
-	.key = {
-		.data = {
-			0xE5, 0xBD, 0x3E, 0xA0, 0xEB, 0x55, 0xAD, 0xE8,
-			0x66, 0xC6, 0xAC, 0x58, 0xBD, 0x54, 0x30, 0x2A,
-			0xE5, 0xBD, 0x3E, 0xA0, 0xEB, 0x55, 0xAD, 0xE8,
-			0x66, 0xC6, 0xAC, 0x58, 0xBD, 0x54, 0x30, 0x2A
-		},
-		.len = 32
-	},
-	.cipher_iv = {
-		.data = {
-			0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00,
-			0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00,
-			0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00
-		},
-		.len = 24
-	},
-	.plaintext = {
-		.data = {
-			0x14, 0xA8, 0xEF, 0x69, 0x3D, 0x67, 0x85, 0x07,
-			0xBB, 0xE7, 0x27, 0x0A, 0x7F, 0x67, 0xFF, 0x50,
-			0x06, 0xC3, 0x52, 0x5B, 0x98, 0x07, 0xE4, 0x67,
-			0xC4, 0xE5, 0x60, 0x00, 0xBA, 0x33, 0x8F, 0x5D,
-			0x42, 0x95, 0x59, 0x03, 0x67, 0x51, 0x82, 0x22,
-			0x46, 0xC8, 0x0D, 0x3B, 0x38, 0xF0, 0x7F, 0x4B,
-			0xE2, 0xD8, 0xFF, 0x58, 0x05, 0xF5, 0x13, 0x22,
-			0x29, 0xBD, 0xE9, 0x3B, 0xBB, 0xDC, 0xAF, 0x38,
-			0x2B, 0xF1, 0xEE, 0x97, 0x2F, 0xBF, 0x99, 0x77,
-			0xBA, 0xDA, 0x89, 0x45, 0x84, 0x7A, 0x2A, 0x6C,
-			0x9A, 0xD3, 0x4A, 0x66, 0x75, 0x54, 0xE0, 0x4D,
-			0x1F, 0x7F, 0xA2, 0xC3, 0x32, 0x41, 0xBD, 0x8F,
-			0x01, 0xBA, 0x22, 0x0D
-		},
-		.len = 800
-	},
-	.ciphertext = {
-		.data = {
-			0xd0, 0xb4, 0x09, 0x5a, 0x83, 0xf3, 0x8d, 0x2a,
-			0x8a, 0xc1, 0x75, 0x5a, 0xed, 0x53, 0xd3, 0xc6,
-			0x15, 0x9d, 0x8c, 0x12, 0x98, 0x89, 0x66, 0x28,
-			0x05, 0xc8, 0xd1, 0xc4, 0xbf, 0xf7, 0x72, 0x79,
-			0xc7, 0x42, 0xde, 0xc8, 0xdc, 0xe9, 0xb4, 0x4a,
-			0x92, 0x85, 0x31, 0xb7, 0xc6, 0x51, 0x83, 0x0b,
-			0x96, 0x29, 0xdd, 0xe0, 0x3b, 0x7e, 0xbe, 0x7b,
-			0x34, 0x23, 0x1b, 0xe1, 0x8d, 0x8a, 0xe7, 0x0f,
-			0x12, 0x68, 0x41, 0x4e, 0xaa, 0xf0, 0xeb, 0x9d,
-			0xbf, 0xed, 0x00, 0xd9, 0x3c, 0x4d, 0x9a, 0xfb,
-			0x9c, 0xfe, 0xc7, 0xca, 0x3f, 0xd6, 0xbf, 0x03,
-			0x73, 0x67, 0xcc, 0xc2, 0x38, 0xa3, 0xe0, 0x6e,
-			0xe6, 0x4b, 0x63, 0x61
-		},
-		.len = 800
-	},
-	.validDataLenInBits = {
-		.len = 800
-	},
-	.validCipherLenInBits = {
-		.len = 800
-	}
-};
-
 static struct wireless_test_data zuc_test_case_cipher_200b_auth_200b = {
 	.key = {
 		.data = {
@@ -1108,114 +1046,116 @@ static struct wireless_test_data zuc_test_case_auth_584b = {
 	}
 };
 
-static struct wireless_test_data zuc_test_case_auth_2080b_mac_128b = {
+static struct wireless_test_data zuc_test_case_auth_4000b_mac_128b = {
 	.key = {
 		.data = {
-			0xC8, 0xA4, 0x82, 0x62, 0xD0, 0xC2, 0xE2, 0xBA,
-			0xC4, 0xB9, 0x6E, 0xF7, 0x7E, 0x80, 0xCA, 0x59,
-			0xC8, 0xA4, 0x82, 0x62, 0xD0, 0xC2, 0xE2, 0xBA,
-			0xC4, 0xB9, 0x6E, 0xF7, 0x7E, 0x80, 0xCA, 0x59
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
 		},
 		.len = 32
 	},
 	.auth_iv = {
 		.data = {
-			0x05, 0x09, 0x78, 0x50, 0x80, 0x00, 0x00, 0x00,
-			0x85, 0x09, 0x78, 0x50, 0x80, 0x00, 0x80, 0x00,
-			0x85, 0x09, 0x78, 0x50, 0x80, 0x00, 0x80, 0x00
-		},
-		.len = 24
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
+			0x3f
+			},
+		.len = 25
 	},
 	.plaintext = {
 		.data = {
-			0xB5, 0x46, 0x43, 0x0B, 0xF8, 0x7B, 0x4F, 0x1E,
-			0xE8, 0x34, 0x70, 0x4C, 0xD6, 0x95, 0x1C, 0x36,
-			0xE2, 0x6F, 0x10, 0x8C, 0xF7, 0x31, 0x78, 0x8F,
-			0x48, 0xDC, 0x34, 0xF1, 0x67, 0x8C, 0x05, 0x22,
-			0x1C, 0x8F, 0xA7, 0xFF, 0x2F, 0x39, 0xF4, 0x77,
-			0xE7, 0xE4, 0x9E, 0xF6, 0x0A, 0x4E, 0xC2, 0xC3,
-			0xDE, 0x24, 0x31, 0x2A, 0x96, 0xAA, 0x26, 0xE1,
-			0xCF, 0xBA, 0x57, 0x56, 0x38, 0x38, 0xB2, 0x97,
-			0xF4, 0x7E, 0x85, 0x10, 0xC7, 0x79, 0xFD, 0x66,
-			0x54, 0xB1, 0x43, 0x38, 0x6F, 0xA6, 0x39, 0xD3,
-			0x1E, 0xDB, 0xD6, 0xC0, 0x6E, 0x47, 0xD1, 0x59,
-			0xD9, 0x43, 0x62, 0xF2, 0x6A, 0xEE, 0xED, 0xEE,
-			0x0E, 0x4F, 0x49, 0xD9, 0xBF, 0x84, 0x12, 0x99,
-			0x54, 0x15, 0xBF, 0xAD, 0x56, 0xEE, 0x82, 0xD1,
-			0xCA, 0x74, 0x63, 0xAB, 0xF0, 0x85, 0xB0, 0x82,
-			0xB0, 0x99, 0x04, 0xD6, 0xD9, 0x90, 0xD4, 0x3C,
-			0xF2, 0xE0, 0x62, 0xF4, 0x08, 0x39, 0xD9, 0x32,
-			0x48, 0xB1, 0xEB, 0x92, 0xCD, 0xFE, 0xD5, 0x30,
-			0x0B, 0xC1, 0x48, 0x28, 0x04, 0x30, 0xB6, 0xD0,
-			0xCA, 0xA0, 0x94, 0xB6, 0xEC, 0x89, 0x11, 0xAB,
-			0x7D, 0xC3, 0x68, 0x24, 0xB8, 0x24, 0xDC, 0x0A,
-			0xF6, 0x68, 0x2B, 0x09, 0x35, 0xFD, 0xE7, 0xB4,
-			0x92, 0xA1, 0x4D, 0xC2, 0xF4, 0x36, 0x48, 0x03,
-			0x8D, 0xA2, 0xCF, 0x79, 0x17, 0x0D, 0x2D, 0x50,
-			0x13, 0x3F, 0xD4, 0x94, 0x16, 0xCB, 0x6E, 0x33,
-			0xBE, 0xA9, 0x0B, 0x8B, 0xF4, 0x55, 0x9B, 0x03,
-			0x73, 0x2A, 0x01, 0xEA, 0x29, 0x0E, 0x6D, 0x07,
-			0x4F, 0x79, 0xBB, 0x83, 0xC1, 0x0E, 0x58, 0x00,
-			0x15, 0xCC, 0x1A, 0x85, 0xB3, 0x6B, 0x55, 0x01,
-			0x04, 0x6E, 0x9C, 0x4B, 0xDC, 0xAE, 0x51, 0x35,
-			0x69, 0x0B, 0x86, 0x66, 0xBD, 0x54, 0xB7, 0xA7,
-			0x03, 0xEA, 0x7B, 0x6F, 0x22, 0x0A, 0x54, 0x69,
-			0xA5, 0x68, 0x02, 0x7E
+			[0 ... 499] = 0x11,
 		},
-		.len = 2080
+		.len = 4000
 	},
 	.validAuthLenInBits = {
-		.len = 2080
+		.len = 4000
 	},
 	.digest = {
-		.data = {0x05, 0x9f, 0xd8, 0x21, 0x90, 0xfb, 0x13, 0x26,
-				0x94, 0x37, 0x6d, 0xc0, 0xcc, 0x52, 0xb9, 0xcc},
+		.data = {
+			0x3a, 0x83, 0xb5, 0x54, 0xbe, 0x40, 0x8c, 0xa5,
+			0x49, 0x41, 0x24, 0xed, 0x9d, 0x47, 0x32, 0x05
+		},
 		.len  = 16
 	}
 };
 
-static struct wireless_test_data zuc_test_case_auth_584b_mac_64b = {
+static struct wireless_test_data zuc_test_case_auth_4000b_mac_64b = {
 	.key = {
 		.data = {
-			0xc9, 0xe6, 0xce, 0xc4, 0x60, 0x7c, 0x72, 0xdb,
-			0x00, 0x0a, 0xef, 0xa8, 0x83, 0x85, 0xab, 0x0a,
-			0xc9, 0xe6, 0xce, 0xc4, 0x60, 0x7c, 0x72, 0xdb,
-			0x00, 0x0a, 0xef, 0xa8, 0x83, 0x85, 0xab, 0x0a
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
 		},
 		.len = 32
 	},
 	.auth_iv = {
 		.data = {
-			0xa9, 0x40, 0x59, 0xda, 0x50, 0x0, 0x0, 0x0,
-			0x29, 0x40, 0x59, 0xda, 0x50, 0x0, 0x80, 0x0,
-			0x29, 0x40, 0x59, 0xda, 0x50, 0x0, 0x80, 0x0
-		},
-		.len = 24
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
+			0x3f
+			},
+		.len = 25
 	},
 	.plaintext = {
 		.data = {
-			0x98, 0x3b, 0x41, 0xd4, 0x7d, 0x78, 0x0c, 0x9e,
-			0x1a, 0xd1, 0x1d, 0x7e, 0xb7, 0x03, 0x91, 0xb1,
-			0xde, 0x0b, 0x35, 0xda, 0x2d, 0xc6, 0x2f, 0x83,
-			0xe7, 0xb7, 0x8d, 0x63, 0x06, 0xca, 0x0e, 0xa0,
-			0x7e, 0x94, 0x1b, 0x7b, 0xe9, 0x13, 0x48, 0xf9,
-			0xfc, 0xb1, 0x70, 0xe2, 0x21, 0x7f, 0xec, 0xd9,
-			0x7f, 0x9f, 0x68, 0xad, 0xb1, 0x6e, 0x5d, 0x7d,
-			0x21, 0xe5, 0x69, 0xd2, 0x80, 0xed, 0x77, 0x5c,
-			0xeb, 0xde, 0x3f, 0x40, 0x93, 0xc5, 0x38, 0x81,
-			0x00, 0x00, 0x00, 0x00
+			[0 ... 499] = 0x11,
 		},
-		.len = 584
+		.len = 4000
 	},
 	.validAuthLenInBits = {
-		.len = 584
+		.len = 4000
 	},
 	.digest = {
-		.data = {0xf5, 0x45, 0x4a, 0x75, 0x22, 0x39, 0x4b, 0xf2},
+		.data = {
+			0xea, 0x1d, 0xee, 0x54, 0x4b, 0xb6, 0x22, 0x3b
+		},
 		.len  = 8
 	}
 };
 
+static struct wireless_test_data zuc_test_case_auth_4000b_mac_32b = {
+	.key = {
+		.data = {
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+		},
+		.len = 32
+	},
+	.auth_iv = {
+		.data = {
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+			0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
+			0x3f
+			},
+		.len = 25
+	},
+	.plaintext = {
+		.data = {
+			[0 ... 499] = 0x11,
+		},
+		.len = 4000
+	},
+	.validAuthLenInBits = {
+		.len = 4000
+	},
+	.digest = {
+		.data = {
+			0x5c, 0x7c, 0x8b, 0x88
+		},
+		.len  = 4
+	}
+};
+
+
 struct wireless_test_data zuc_auth_cipher_test_case_1 = {
 	.key = {
 		.data = {
-- 
2.31.1


  parent reply	other threads:[~2021-11-03  9:31 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-27  8:40 [dpdk-dev] [PATCH v1] test/crypto: fix: test vectors for zuc 256 bit key Vidya Sagar Velumuri
2021-10-28  7:10 ` Akhil Goyal
2021-10-29 12:37 ` De Lara Guarch, Pablo
2021-10-30 12:25   ` Vidya Sagar Velumuri
2021-10-31 22:06     ` De Lara Guarch, Pablo
2021-11-01 10:23       ` Vidya Sagar Velumuri
2021-11-02  4:40         ` Vidya Sagar Velumuri
2021-11-02 11:17           ` De Lara Guarch, Pablo
2021-11-03  6:55 ` [dpdk-dev] [PATCH v2] " Vidya Sagar Velumuri
2021-11-03  9:28   ` De Lara Guarch, Pablo
2021-11-03  9:31   ` Vidya Sagar Velumuri [this message]
2021-11-04 10:52     ` [dpdk-dev] [PATCH v3] " Akhil Goyal
2021-11-04 12:18       ` De Lara Guarch, Pablo
2021-11-04 18:38         ` Akhil Goyal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211103093108.3143-1-vvelumuri@marvell.com \
    --to=vvelumuri@marvell.com \
    --cc=adwivedi@marvell.com \
    --cc=anoobj@marvell.com \
    --cc=dev@dpdk.org \
    --cc=gakhil@marvell.com \
    --cc=ktejasree@marvell.com \
    --cc=ndabilpuram@marvell.com \
    --cc=roy.fan.zhang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.