16#ifndef CRYPT_CMVP_SELFTEST_H
17#define CRYPT_CMVP_SELFTEST_H
19#include "hitls_build.h"
20#if defined(HITLS_CRYPTO_CMVP_ISO19790) || defined(HITLS_CRYPTO_CMVP_SM) || defined(HITLS_CRYPTO_CMVP_FIPS)
23#include "crypt_cmvp.h"
24#include "crypt_types.h"
25#include "crypt_eal_pkey.h"
26#include "crypt_eal_rand.h"
27#include "crypt_eal_md.h"
28#include "crypt_eal_mac.h"
29#include "crypt_eal_cipher.h"
30#include "crypt_eal_kdf.h"
38bool CRYPT_CMVP_SelftestProviderDrbg(
void *libCtx,
const char *attrName,
CRYPT_RAND_AlgId id);
42bool CRYPT_CMVP_SelftestProviderMd(
void *libCtx,
const char *attrName,
CRYPT_MD_AlgId id);
44bool CRYPT_CMVP_SelftestRsa(
void);
46bool CRYPT_CMVP_SelftestProviderRsa(
void *libCtx,
const char *attrName);
48bool CRYPT_CMVP_SelftestCipher(CRYPT_CIPHER_AlgId
id);
50bool CRYPT_CMVP_SelftestProviderCipher(
void *libCtx,
const char *attrName, CRYPT_CIPHER_AlgId
id);
52bool CRYPT_CMVP_SelftestChacha20poly1305(
void);
54bool CRYPT_CMVP_SelftestProviderChacha20poly1305(
void *libCtx,
const char *attrName);
56bool CRYPT_CMVP_SelftestDh(
void);
58bool CRYPT_CMVP_SelftestProviderDh(
void *libCtx,
const char *attrName);
60bool CRYPT_CMVP_SelftestDsa(
void);
62bool CRYPT_CMVP_SelftestProviderDsa(
void *libCtx,
const char *attrName);
64bool CRYPT_CMVP_SelftestEd25519(
void);
66bool CRYPT_CMVP_SelftestProviderEd25519(
void *libCtx,
const char *attrName);
68bool CRYPT_CMVP_SelftestHkdf(
void);
70bool CRYPT_CMVP_SelftestProviderHkdf(
void *libCtx,
const char *attrName);
74bool CRYPT_CMVP_SelftestProviderMac(
void *libCtx,
const char *attrName,
CRYPT_MAC_AlgId id);
78bool CRYPT_CMVP_SelftestProviderPbkdf2(
void *libCtx,
const char *attrName,
CRYPT_MAC_AlgId id);
80bool CRYPT_CMVP_SelftestScrypt(
void);
82bool CRYPT_CMVP_SelftestProviderScrypt(
void *libCtx,
const char *attrName);
84bool CRYPT_CMVP_SelftestKdfTls12(
void);
86bool CRYPT_CMVP_SelftestProviderKdfTls12(
void *libCtx,
const char *attrName);
88bool CRYPT_CMVP_SelftestX25519(
void);
90bool CRYPT_CMVP_SelftestProviderX25519(
void *libCtx,
const char *attrName);
92bool CRYPT_CMVP_SelftestEcdsa(
void);
94bool CRYPT_CMVP_SelftestProviderEcdsa(
void *libCtx,
const char *attrName);
96bool CRYPT_CMVP_SelftestEcdh(
void);
98bool CRYPT_CMVP_SelftestProviderEcdh(
void *libCtx,
const char *attrName);
100bool CRYPT_CMVP_SelftestSM2(
void);
102bool CRYPT_CMVP_SelftestProviderSM2(
void *libCtx,
const char *attrName);
104bool CRYPT_CMVP_SelftestMlkemEncapsDecaps(
void);
106bool CRYPT_CMVP_SelftestProviderMlkemEncapsDecaps(
void *libCtx,
const char *attrName);
108bool CRYPT_CMVP_SelftestMldsaSignVerify(
void);
110bool CRYPT_CMVP_SelftestProviderMldsaSignVerify(
void *libCtx,
const char *attrName);
112bool CRYPT_CMVP_SelftestSlhdsaSignVerify(
void);
114bool CRYPT_CMVP_SelftestProviderSlhdsaSignVerify(
void *libCtx,
const char *attrName);
116bool CRYPT_CMVP_SelftestPkeyPct(
void *ctx, int32_t algId);
118int32_t CRYPT_CMVP_RandomnessTest(
const uint8_t *data,
const uint32_t len);
CRYPT_RAND_AlgId
定义 crypt_algid.h:41
CRYPT_MD_AlgId
定义 crypt_algid.h:68
CRYPT_MAC_AlgId
定义 crypt_algid.h:91