11 #include "mbedtls/sha256.h" 12 #include "mbedtls/entropy.h" 13 #include "mbedtls/ctr_drbg.h" 15 #define SHA256_DIGEST_LENGTH 32 17 #define KEY_LENGTH_BITS 3072 23 #ifdef MBEDTLS_ENTROPY_HARDWARE_ALT 24 extern int mbedtls_hardware_poll(
void *data,
unsigned char *output,
size_t len,
size_t *olen );
34 #ifdef MBEDTLS_ENTROPY_HARDWARE_ALT 35 (void) mbedtls_entropy_add_source(&
entropy, mbedtls_hardware_poll, (
void*)NULL, 1, MBEDTLS_ENTROPY_SOURCE_STRONG);
49 MCL_DEBUG_ENTRY(
"const mcl_uint8_t *data = <%p>, mcl_size_t data_size = <%u>, mcl_uint8_t **hash = <%p>, mcl_size_t *hash_size = <%p>", data, data_size, hash, hash_size);
65 MCL_DEBUG(
"Calculating SHA256 with mbedTLS.");
66 mbedtls_sha256(data, data_size, *hash, 0);
Assert module header file.
#define SHA256_DIGEST_LENGTH
#define MCL_CALLOC(count, bytes)
mcl_error_t security_generate_random_bytes(unsigned char *buffer, mcl_size_t size)
#define MCL_DEBUG_ENTRY(...)
static mbedtls_entropy_context entropy
mcl_error_t security_generate_rsa_key(char **public_key, char **private_key)
mcl_error_t security_hash_sha256(const mcl_uint8_t *data, mcl_size_t data_size, mcl_uint8_t **hash, mcl_size_t *hash_size)
static mbedtls_ctr_drbg_context ctr_drbg
mcl_error_t security_initialize(void)
mcl_error_t security_rsa_sign(char *rsa_key, char *data, mcl_size_t data_size, mcl_uint8_t **signature, mcl_size_t *signature_size)
static mcl_bool_t is_initialized
mcl_error_t security_rsa_get_modulus_and_exponent(char *public_key, char **modulus, char **exponent)
#define MCL_DEBUG_LEAVE(...)
Memory module interface header file.