commit 23956d1b87bcd75b598b95328445c2d662a050ae
Author: Ingo Franzki <ifranzki@linux.ibm.com>
Date: Mon Jun 8 17:04:12 2020 +0200
TESTCASE: DH tests: remove key size checks
Signed-off-by: Ingo Franzki <ifranzki@linux.ibm.com>
diff --git a/testcases/crypto/dh_func.c b/testcases/crypto/dh_func.c
index 9214dd24..9a4ecfd2 100644
--- a/testcases/crypto/dh_func.c
+++ b/testcases/crypto/dh_func.c
@@ -260,15 +260,8 @@ CK_RV do_DeriveDHKey(CK_BBOOL do_import)
testcase_error("C_GetAttributeValue #1: rc = %s", p11_get_ckr(rc));
goto testcase_cleanup;
}
- // Make sure peer's key is the right size
- if ((extr1_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME)) &&
- (extr1_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME) - 1)) {
- testcase_fail("ERROR:size error peer's key %ld",
- extr1_tmpl[0].ulValueLen);
- goto testcase_cleanup;
- } else {
- testcase_pass("Successfully generated DH keys");
- }
+
+ testcase_pass("Successfully generated DH keys");
} else {
// First, import the DH key Pair for Party A
@@ -320,15 +313,8 @@ CK_RV do_DeriveDHKey(CK_BBOOL do_import)
testcase_error("C_GetAttributeValue #1: rc = %s", p11_get_ckr(rc));
goto testcase_cleanup;
}
- // Make sure peer's key is the right size
- if ((extr1_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME)) &&
- (extr1_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME) - 1)) {
- testcase_fail("ERROR:size error peer's key %ld",
- extr1_tmpl[0].ulValueLen);
- goto testcase_cleanup;
- } else {
- testcase_pass("Successfully imported DH keys");
- }
+
+ testcase_pass("Successfully imported DH keys");
}
// Testcase #2 - Now derive the secrets...
@@ -358,13 +344,6 @@ CK_RV do_DeriveDHKey(CK_BBOOL do_import)
testcase_error("C_GetAttributeValue #2: rc = %s", p11_get_ckr(rc));
goto testcase_cleanup;
}
- // Make sure party A's key is the right size
- if ((extr2_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME)) &&
- (extr2_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME) - 1)) {
- testcase_fail("ERROR:size error party A's key %ld",
- extr2_tmpl[0].ulValueLen);
- goto testcase_cleanup;
- }
// Now, derive a generic secret key using peer's private key
// and A's public key
mech.mechanism = CKM_DH_PKCS_DERIVE;
@@ -388,13 +367,6 @@ CK_RV do_DeriveDHKey(CK_BBOOL do_import)
goto testcase_cleanup;
}
- if (extr1_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME) ||
- *((int *) extr1_tmpl[0].pValue) == 0) {
- testcase_fail("ERROR:derived key #1 length or value %ld",
- extr1_tmpl[0].ulValueLen);
- goto testcase_cleanup;
- }
-
memset(key2_value, 0, sizeof(key2_value));
extr2_tmpl[0].ulValueLen = sizeof(key2_value);
@@ -405,14 +377,8 @@ CK_RV do_DeriveDHKey(CK_BBOOL do_import)
goto testcase_cleanup;
}
- if (extr2_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME) ||
- *((int *) extr2_tmpl[0].pValue) == 0) {
- testcase_fail("ERROR:derived key #2 length or value %ld",
- extr2_tmpl[0].ulValueLen);
- goto testcase_cleanup;
- }
-
- if (memcmp(key1_value, key2_value, sizeof(DH_PUBL_PRIME)) != 0) {
+ if (extr1_tmpl[0].ulValueLen != extr2_tmpl[0].ulValueLen ||
+ memcmp(key1_value, key2_value, extr1_tmpl[0].ulValueLen) != 0) {
testcase_fail("ERROR:derived key mismatch");
goto testcase_cleanup;
}
@@ -453,13 +419,6 @@ CK_RV do_DeriveDHKey(CK_BBOOL do_import)
testcase_error("C_GetAttributeValue #2: rc = %s", p11_get_ckr(rc));
goto testcase_cleanup;
}
- // Make sure party A's key is the right size
- if ((extr2_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME)) &&
- (extr2_tmpl[0].ulValueLen != sizeof(DH_PUBL_PRIME) - 1)) {
- testcase_fail("ERROR:size error party A's key %ld",
- extr2_tmpl[0].ulValueLen);
- goto testcase_cleanup;
- }
// Now, derive a generic secret key using peer's private key
// and A's public key
mech.mechanism = CKM_DH_PKCS_DERIVE;