15#ifndef CRYPT_EAL_RAND_H
16#define CRYPT_EAL_RAND_H
57 const uint8_t *pers, uint32_t persLen);
149 const uint8_t *pers, uint32_t persLen);
void CRYPT_EAL_DrbgDeinit(CRYPT_EAL_RndCtx *ctx)
CRYPT_EAL_DrbgDeinit Deinitialization interface, this interface does not support multiple threads.
struct EAL_RndCtx CRYPT_EAL_RndCtx
Definition crypt_eal_rand.h:119
CRYPT_EAL_RndCtx * CRYPT_EAL_DrbgInit(CRYPT_RAND_AlgId id, CRYPT_RandSeedMethod *seedMeth, void *seedCtx, const uint8_t *pers, uint32_t persLen)
Random number initialization interface, and this interface does not support multiple threads.
CRYPT_RAND_AlgId
Definition crypt_algid.h:34
int32_t CRYPT_EAL_Drbgbytes(CRYPT_EAL_RndCtx *ctx, uint8_t *byte, uint32_t len)
bool CRYPT_EAL_RandIsValidAlgId(CRYPT_RAND_AlgId id)
Check whether the id is valid Rand algorithm ID.
int32_t CRYPT_EAL_RandbytesWithAdin(uint8_t *byte, uint32_t len, uint8_t *addin, uint32_t addinLen)
Generate a random number.
int32_t CRYPT_EAL_Randbytes(uint8_t *byte, uint32_t len)
int32_t CRYPT_EAL_DrbgSeed(CRYPT_EAL_RndCtx *ctx)
Regenerate the seed, which is equivalent to CRYPT_EAL_RandSeedWithAdin(NULL, 0).
int32_t CRYPT_EAL_RandSeedWithAdin(uint8_t *addin, uint32_t addinLen)
Regenerate the seed.
int32_t CRYPT_EAL_RandInit(CRYPT_RAND_AlgId id, CRYPT_RandSeedMethod *seedMeth, void *seedCtx, const uint8_t *pers, uint32_t persLen)
Random number initialization interface. This interface does not support multiple threads.
int32_t CRYPT_EAL_DrbgSeedWithAdin(CRYPT_EAL_RndCtx *ctx, uint8_t *addin, uint32_t addinLen)
Regenerate the seed. The addtional data can be NULL. This interface supports multi-thread access.
void CRYPT_EAL_RandDeinit(void)
Deinitializing the global RAND interface, this interface does not support multiple threads.
int32_t CRYPT_EAL_DrbgbytesWithAdin(CRYPT_EAL_RndCtx *ctx, uint8_t *byte, uint32_t len, uint8_t *addin, uint32_t addinLen)
Generate a random number.
int32_t CRYPT_EAL_RandSeed(void)
Definition crypt_types.h:294