sha256.h
Go to the documentation of this file.
/*
* SHA256 hash implementation and interface functions
* Copyright (c) 2003-2011, Jouni Malinen <j@w1.fi>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* Alternatively, this software may be distributed under the terms of BSD
* license.
*
* See README and COPYING for more details.
*/
#ifndef SHA256_H
#define SHA256_H
#define SHA256_MAC_LEN 32
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 hmac_sha256(const u8 *key, size_t key_len, const u8 *data,
size_t data_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);
void tls_prf_sha256(const u8 *secret, size_t secret_len,
const char *label, const u8 *seed, size_t seed_len,
u8 *out, size_t outlen);
#endif /* SHA256_H */
data
uint8_t data[0]
len
uint8_t len
Definition: gsm_04_11.h:0
u8
uint8_t u8
Definition: common.h:27
hmac_sha256_vector
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: Key for HMAC operations @key_len: ...
Definition: sha256.c:30
hmac_sha256
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: Key for HMAC operations @key_len: Length ...
Definition: sha256.c:101
tls_prf_sha256
void tls_prf_sha256(const u8 *secret, size_t secret_len, const char *label, const u8 *seed, size_t seed_len, u8 *out, size_t outlen)
sha256_prf
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: Key for PRF @key_len...
Definition: sha256.c:121