8d9004b85a
Allow RSA-OAEP in Fips mode Add the algorithm to fips_algorythms and add additional checks.
21 lines
988 B
Diff
21 lines
988 B
Diff
diff -up ./lib/softoken/pkcs11u.c.fipsrsaoaep ./lib/softoken/pkcs11u.c
|
|
--- ./lib/softoken/pkcs11u.c.fipsrsaoaep 2024-10-24 09:27:17.971673855 +0200
|
|
+++ ./lib/softoken/pkcs11u.c 2024-10-24 09:23:35.006352872 +0200
|
|
@@ -2565,6 +2565,16 @@ sftk_handleSpecial(SFTKSlot *slot, CK_ME
|
|
}
|
|
}
|
|
return sftk_checkKeyLength(targetKeyLength, 112, 512, 1);
|
|
+ case SFTKFIPSRSAOAEP:;
|
|
+ CK_RSA_PKCS_OAEP_PARAMS *rsaoaep = (CK_RSA_PKCS_OAEP_PARAMS *)
|
|
+ mech->pParameter;
|
|
+
|
|
+ HASH_HashType hash_msg = sftk_GetHashTypeFromMechanism(rsaoaep->hashAlg);
|
|
+ HASH_HashType hash_pad = sftk_GetHashTypeFromMechanism(rsaoaep->mgf);
|
|
+ /* message hash and mask generation function must be the same */
|
|
+ if (hash_pad != hash_msg) return PR_FALSE;
|
|
+
|
|
+ return sftk_checkFIPSHash(rsaoaep->hashAlg, PR_FALSE, PR_FALSE);
|
|
default:
|
|
break;
|
|
}
|