wolfCrypt Init and Cleanup
Functions
Name | |
---|---|
int | wc_HashGetOID(enum wc_HashType hash_type) This function will return the OID for the wc_HashType provided. |
int | wc_HashGetDigestSize(enum wc_HashType hash_type) This function returns the size of the digest (output) for a hash_type. The returns size is used to make sure the output buffer provided to wc_Hash is large enough. |
int | wc_Hash(enum wc_HashType hash_type, const byte * data, word32 data_len, byte * hash, word32 hash_len) This function performs a hash on the provided data buffer and returns it in the hash buffer provided. |
int | wolfCrypt_Init(void ) Used to initialize resources used by wolfCrypt. |
int | wolfCrypt_Cleanup(void ) Used to clean up resources used by wolfCrypt. |
Functions Documentation
function wc_HashGetOID
int wc_HashGetOID(
enum wc_HashType hash_type
)
This function will return the OID for the wc_HashType provided.
Parameters:
- hash_type A hash type from the “enum wc_HashType” such as “WC_HASH_TYPE_SHA256”.
See:
Return:
- OID returns value greater than 0
- HASH_TYPE_E hash type not supported.
- BAD_FUNC_ARG one of the provided arguments is incorrect.
Example
enum wc_HashType hash_type = WC_HASH_TYPE_SHA256;
int oid = wc_HashGetOID(hash_type);
if (oid > 0) {
// Success
}
function wc_HashGetDigestSize
int wc_HashGetDigestSize(
enum wc_HashType hash_type
)
This function returns the size of the digest (output) for a hash_type. The returns size is used to make sure the output buffer provided to wc_Hash is large enough.
Parameters:
- hash_type A hash type from the “enum wc_HashType” such as “WC_HASH_TYPE_SHA256”.
See: wc_Hash
Return:
- Success A positive return value indicates the digest size for the hash.
- Error Returns HASH_TYPE_E if hash_type is not supported.
- Failure Returns BAD_FUNC_ARG if an invalid hash_type was used.
Example
int hash_len = wc_HashGetDigestSize(hash_type);
if (hash_len <= 0) {
WOLFSSL_MSG("Invalid hash type/len");
return BAD_FUNC_ARG;
}
function wc_Hash
int wc_Hash(
enum wc_HashType hash_type,
const byte * data,
word32 data_len,
byte * hash,
word32 hash_len
)
This function performs a hash on the provided data buffer and returns it in the hash buffer provided.
Parameters:
- hash_type A hash type from the “enum wc_HashType” such as “WC_HASH_TYPE_SHA256”.
- data Pointer to buffer containing the data to hash.
- data_len Length of the data buffer.
- hash Pointer to buffer used to output the final hash to.
- hash_len Length of the hash buffer.
See: wc_HashGetDigestSize
Return: 0 Success, else error (such as BAD_FUNC_ARG or BUFFER_E).
Example
enum wc_HashType hash_type = WC_HASH_TYPE_SHA256;
int hash_len = wc_HashGetDigestSize(hash_type);
if (hash_len > 0) {
int ret = wc_Hash(hash_type, data, data_len, hash_data, hash_len);
if(ret == 0) {
// Success
}
}
function wolfCrypt_Init
int wolfCrypt_Init(
void
)
Used to initialize resources used by wolfCrypt.
Parameters:
- none No parameters.
See: wolfCrypt_Cleanup
Return:
- 0 upon success.
- <0 upon failure of init resources.
Example
...
if (wolfCrypt_Init() != 0) {
WOLFSSL_MSG("Error with wolfCrypt_Init call");
}
function wolfCrypt_Cleanup
int wolfCrypt_Cleanup(
void
)
Used to clean up resources used by wolfCrypt.
Parameters:
- none No parameters.
See: wolfCrypt_Init
Return:
- 0 upon success.
- <0 upon failure of cleaning up resources.
Example
...
if (wolfCrypt_Cleanup() != 0) {
WOLFSSL_MSG("Error with wolfCrypt_Cleanup call");
}
Updated on 2024-11-22 at 01:12:39 +0000