forked from wolfSSL/wolfssl
FIPS CAST Update
1. Added a public API to run a CAST. 2. Added the other test certs for the RSA tests. 3. Added IDs for the new RSA tests and the SHA3-pairwise test.
This commit is contained in:
@ -2980,6 +2980,7 @@ AS_CASE([$FIPS_VERSION],
|
|||||||
[ENABLED_SHA512="yes"; AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_SHA512 -DWOLFSSL_SHA384"])
|
[ENABLED_SHA512="yes"; AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_SHA512 -DWOLFSSL_SHA384"])
|
||||||
AS_IF([test "x$ENABLED_AESGCM" = "xno"],
|
AS_IF([test "x$ENABLED_AESGCM" = "xno"],
|
||||||
[ENABLED_AESGCM="yes"; AM_CFLAGS="$AM_CFLAGS -DHAVE_AESGCM"])
|
[ENABLED_AESGCM="yes"; AM_CFLAGS="$AM_CFLAGS -DHAVE_AESGCM"])
|
||||||
|
AM_CPPFLAGS="$AM_CPPFLAGS -DUSE_CERT_BUFFERS_3072 -DUSE_CERT_BUFFERS_4096"
|
||||||
],
|
],
|
||||||
["v3"],[ # FIPS Ready
|
["v3"],[ # FIPS Ready
|
||||||
AM_CFLAGS="$AM_CFLAGS -DHAVE_FIPS -DHAVE_FIPS_VERSION=3 -DWOLFSSL_KEY_GEN -DWOLFSSL_SHA224 -DWOLFSSL_AES_DIRECT -DHAVE_AES_ECB -DHAVE_ECC_CDH -DWC_RSA_NO_PADDING -DWOLFSSL_VALIDATE_FFC_IMPORT -DHAVE_FFDHE_Q"
|
AM_CFLAGS="$AM_CFLAGS -DHAVE_FIPS -DHAVE_FIPS_VERSION=3 -DWOLFSSL_KEY_GEN -DWOLFSSL_SHA224 -DWOLFSSL_AES_DIRECT -DHAVE_AES_ECB -DHAVE_ECC_CDH -DWC_RSA_NO_PADDING -DWOLFSSL_VALIDATE_FFC_IMPORT -DHAVE_FFDHE_Q"
|
||||||
|
@ -40,10 +40,13 @@ enum FipsCastId {
|
|||||||
FIPS_CAST_HMAC_SHA3_256,
|
FIPS_CAST_HMAC_SHA3_256,
|
||||||
FIPS_CAST_DRBG,
|
FIPS_CAST_DRBG,
|
||||||
FIPS_CAST_RSA_SIGN_PKCS1v15,
|
FIPS_CAST_RSA_SIGN_PKCS1v15,
|
||||||
|
FIPS_CAST_RSA_3072_SIGN_PKCS1v15,
|
||||||
|
FIPS_CAST_RSA_4096_SIGN_PKCS1v15,
|
||||||
FIPS_CAST_ECC_CDH,
|
FIPS_CAST_ECC_CDH,
|
||||||
FIPS_CAST_ECC_PRIMITIVE_Z,
|
FIPS_CAST_ECC_PRIMITIVE_Z,
|
||||||
FIPS_CAST_DH_PRIMITIVE_Z,
|
FIPS_CAST_DH_PRIMITIVE_Z,
|
||||||
FIPS_CAST_ECDSA_PAIRWISE,
|
FIPS_CAST_ECDSA_PAIRWISE,
|
||||||
|
FIPS_CAST_ECDSA_SHA3_PAIRWISE,
|
||||||
FIPS_CAST_COUNT
|
FIPS_CAST_COUNT
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -78,11 +81,12 @@ WOLFSSL_API const char* wolfCrypt_GetCoreHash_fips(void);
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
WOLFSSL_LOCAL int DoIntegrityTest(char*, int);
|
WOLFSSL_LOCAL int DoIntegrityTest(char*, int);
|
||||||
WOLFSSL_API int wc_GetCastStatus_fips(int);
|
|
||||||
WOLFSSL_LOCAL int DoPOST(char*, int);
|
WOLFSSL_LOCAL int DoPOST(char*, int);
|
||||||
WOLFSSL_LOCAL int DoCAST(int);
|
WOLFSSL_LOCAL int DoCAST(int);
|
||||||
WOLFSSL_LOCAL int DoKnownAnswerTests(char*, int); /* FIPSv1 and FIPSv2 */
|
WOLFSSL_LOCAL int DoKnownAnswerTests(char*, int); /* FIPSv1 and FIPSv2 */
|
||||||
|
|
||||||
|
WOLFSSL_API int wc_RunCast_fips(int);
|
||||||
|
WOLFSSL_API int wc_GetCastStatus_fips(int);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
} /* extern "C" */
|
} /* extern "C" */
|
||||||
|
Reference in New Issue
Block a user