Go to the source code of this file.
Defines |
#define | SHA256_MAC_LEN 32 |
Functions |
void | hmac_sha256 (const u8 *key, size_t key_len, const u8 *data, size_t data_len, u8 *mac) |
void | hmac_sha256_vector (const u8 *key, size_t key_len, size_t num_elem, const u8 *addr[], const size_t *len, u8 *mac) |
void | sha256_prf (const u8 *key, size_t key_len, const char *label, const u8 *data, size_t data_len, u8 *buf, size_t buf_len) |
Define Documentation
Function Documentation
void hmac_sha256 |
( |
const u8 * |
key, |
|
|
size_t |
key_len, |
|
|
const u8 * |
data, |
|
|
size_t |
data_len, |
|
|
u8 * |
mac |
|
) |
| |
hmac_sha256 - HMAC-SHA256 over data buffer (RFC 2104) : Key for HMAC operations : Length of the key in bytes : Pointers to the data area : Length of the data area : Buffer for the hash (20 bytes)
Definition at line 102 of file sha256.c.
void hmac_sha256_vector |
( |
const u8 * |
key, |
|
|
size_t |
key_len, |
|
|
size_t |
num_elem, |
|
|
const u8 * |
addr[], |
|
|
const size_t * |
len, |
|
|
u8 * |
mac |
|
) |
| |
hmac_sha256_vector - HMAC-SHA256 over data vector (RFC 2104) : Key for HMAC operations : Length of the key in bytes : Number of elements in the data vector : Pointers to the data areas : Lengths of the data blocks : Buffer for the hash (32 bytes)
Definition at line 31 of file sha256.c.
void sha256_prf |
( |
const u8 * |
key, |
|
|
size_t |
key_len, |
|
|
const char * |
label, |
|
|
const u8 * |
data, |
|
|
size_t |
data_len, |
|
|
u8 * |
buf, |
|
|
size_t |
buf_len |
|
) |
| |
sha256_prf - SHA256-based Pseudo-Random Function (IEEE 802.11r, 8.5.1.5.2) : Key for PRF : Length of the key in bytes : A unique label for each purpose of the PRF : Extra data to bind into the key : Length of the data : Buffer for the generated pseudo-random key : Number of bytes of key to generate
This function is used to derive new, cryptographically separate keys from a given key.
Definition at line 122 of file sha256.c.