]> git.cryptolib.org Git - avr-crypto-lib.git/blob - hmac-sha1.h
2fdb2432cb7b38769751dc9b40a16dcb1d710301
[avr-crypto-lib.git] / hmac-sha1.h
1 /* hmac-sha256.h */
2 /*
3     This file is part of the AVR-Crypto-Lib.
4     Copyright (C) 2008  Daniel Otte (daniel.otte@rub.de)
5
6     This program is free software: you can redistribute it and/or modify
7     it under the terms of the GNU General Public License as published by
8     the Free Software Foundation, either version 3 of the License, or
9     (at your option) any later version.
10
11     This program is distributed in the hope that it will be useful,
12     but WITHOUT ANY WARRANTY; without even the implied warranty of
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14     GNU General Public License for more details.
15
16     You should have received a copy of the GNU General Public License
17     along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 */
19 #ifndef HMACSHA1_H_
20 #define HMACSHA1_H_
21
22 #include "sha1.h"
23
24 #define HMACSHA1_BITS SHA1_HASH_BITS
25 #define HMACSHA1_BYTES ((HMAC_BITS+7)/8)
26
27 typedef sha1_ctx_t hmac_sha1_ctx_t;
28
29
30 void hmac_sha1_init(hmac_sha1_ctx_t *s, void* key, uint16_t keylength_b);
31 void hmac_sha1_final(hmac_sha1_ctx_t *s, void* key, uint16_t keylength_b);
32 void hmac_sha1(void* dest, void* key, uint16_t keylength_b, void* msg, uint64_t msglength_b);
33
34
35 #endif /*HMACSHA1_H_*/