#include "includes.h"#include "common.h"#include "sha1.h"#include "crypto.h"
Go to the source code of this file.
Functions | |
| int | hmac_sha1 (const u8 *key, size_t key_len, const u8 *data, size_t data_len, u8 *mac) |
| int | hmac_sha1_vector (const u8 *key, size_t key_len, size_t num_elem, const u8 *addr[], const size_t *len, u8 *mac) |
| int | sha1_prf (const u8 *key, size_t key_len, const char *label, const u8 *data, size_t data_len, u8 *buf, size_t buf_len) |
| int hmac_sha1_vector | ( | const u8 * | key, | |
| size_t | key_len, | |||
| size_t | num_elem, | |||
| const u8 * | addr[], | |||
| const size_t * | len, | |||
| u8 * | mac | |||
| ) |
hmac_sha1_vector - HMAC-SHA1 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 (20 bytes) Returns: 0 on success, -1 on failure
| int sha1_prf | ( | const u8 * | key, | |
| size_t | key_len, | |||
| const char * | label, | |||
| const u8 * | data, | |||
| size_t | data_len, | |||
| u8 * | buf, | |||
| size_t | buf_len | |||
| ) |
sha1_prf - SHA1-based Pseudo-Random Function (PRF) (IEEE 802.11i, 8.5.1.1) : 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 Returns: 0 on success, -1 of failure
This function is used to derive new, cryptographically separate keys from a given key (e.g., PMK in IEEE 802.11i).