1189251Ssam/* 2189251Ssam * SHA1 hash implementation and interface functions 3214734Srpaulo * Copyright (c) 2003-2009, Jouni Malinen <j@w1.fi> 4189251Ssam * 5252726Srpaulo * This software may be distributed under the terms of the BSD license. 6252726Srpaulo * See README for more details. 7189251Ssam */ 8189251Ssam 9189251Ssam#ifndef SHA1_H 10189251Ssam#define SHA1_H 11189251Ssam 12189251Ssam#define SHA1_MAC_LEN 20 13189251Ssam 14214734Srpauloint hmac_sha1_vector(const u8 *key, size_t key_len, size_t num_elem, 15214734Srpaulo const u8 *addr[], const size_t *len, u8 *mac); 16214734Srpauloint hmac_sha1(const u8 *key, size_t key_len, const u8 *data, size_t data_len, 17189251Ssam u8 *mac); 18214734Srpauloint sha1_prf(const u8 *key, size_t key_len, const char *label, 19214734Srpaulo const u8 *data, size_t data_len, u8 *buf, size_t buf_len); 20214734Srpauloint sha1_t_prf(const u8 *key, size_t key_len, const char *label, 21214734Srpaulo const u8 *seed, size_t seed_len, u8 *buf, size_t buf_len); 22252726Srpauloint __must_check tls_prf_sha1_md5(const u8 *secret, size_t secret_len, 23252726Srpaulo const char *label, const u8 *seed, 24252726Srpaulo size_t seed_len, u8 *out, size_t outlen); 25252726Srpauloint pbkdf2_sha1(const char *passphrase, const u8 *ssid, size_t ssid_len, 26214734Srpaulo int iterations, u8 *buf, size_t buflen); 27189251Ssam#endif /* SHA1_H */ 28