hash.h
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 | wc_Md5Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_ShaHash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Sha224Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Sha256Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Sha384Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Sha512Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Sha3_224Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Sha3_256Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Sha3_384Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Sha3_512Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Shake128Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
int | wc_Shake256Hash(const byte * data, word32 len, byte * hash) Convenience function, handles all the hashing and places the result into hash. |
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 wc_Md5Hash
int wc_Md5Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the data.
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
const byte* data;
word32 data_len;
byte* hash;
int ret;
...
ret = wc_Md5Hash(data, data_len, hash);
if (ret != 0) {
// Md5 Hash Failure Case.
}
function wc_ShaHash
int wc_ShaHash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully ….
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Sha224Hash
int wc_Sha224Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Success
- <0 Error
Example
none
function wc_Sha256Hash
int wc_Sha256Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully …
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Sha384Hash
int wc_Sha384Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the data
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Sha512Hash
int wc_Sha512Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the inputted data
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Sha3_224Hash
int wc_Sha3_224Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the data
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Sha3_256Hash
int wc_Sha3_256Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the data
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Sha3_384Hash
int wc_Sha3_384Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the data
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Sha3_512Hash
int wc_Sha3_512Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the inputted data
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Shake128Hash
int wc_Shake128Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the inputted data
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
function wc_Shake256Hash
int wc_Shake256Hash(
const byte * data,
word32 len,
byte * hash
)
Convenience function, handles all the hashing and places the result into hash.
Parameters:
- data the data to hash
- len the length of data
- hash Byte array to hold hash value.
See:
Return:
- 0 Returned upon successfully hashing the inputted data
- Memory_E memory error, unable to allocate memory. This is only possible with the small stack option enabled.
Example
none
Source code
int wc_HashGetOID(enum wc_HashType hash_type);
int wc_HashGetDigestSize(enum wc_HashType hash_type);
int wc_Hash(enum wc_HashType hash_type,
const byte* data, word32 data_len,
byte* hash, word32 hash_len);
int wc_Md5Hash(const byte* data, word32 len, byte* hash);
int wc_ShaHash(const byte* data, word32 len, byte* hash);
int wc_Sha224Hash(const byte* data, word32 len, byte* hash);
int wc_Sha256Hash(const byte* data, word32 len, byte* hash);
int wc_Sha384Hash(const byte* data, word32 len, byte* hash);
int wc_Sha512Hash(const byte* data, word32 len, byte* hash);
int wc_Sha3_224Hash(const byte* data, word32 len, byte* hash);
int wc_Sha3_256Hash(const byte* data, word32 len, byte* hash);
int wc_Sha3_384Hash(const byte* data, word32 len, byte* hash);
int wc_Sha3_512Hash(const byte* data, word32 len, byte* hash);
int wc_Shake128Hash(const byte* data, word32 len, byte* hash);
int wc_Shake256Hash(const byte* data, word32 len, byte* hash);
Updated on 2024-11-21 at 01:17:07 +0000