00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _HMAC_H
00029 #define _HMAC_H
00030
00031 #include "beecrypt.h"
00032
00035 typedef struct
00036 {
00037 byte kxi[64];
00038 byte kxo[64];
00039 } hmacParam;
00040
00041 #ifdef __cplusplus
00042 extern "C" {
00043 #endif
00044
00047 BEECRYPTAPI
00048 int hmacSetup (hmacParam* hp, const hashFunction* hash, hashFunctionParam* param, const uint32* key, int keybits)
00049 ;
00050
00053 BEECRYPTAPI
00054 int hmacReset (hmacParam* hp, const hashFunction* hash, hashFunctionParam* param)
00055 ;
00056
00059 BEECRYPTAPI
00060 int hmacUpdate(hmacParam* hp, const hashFunction* hash, hashFunctionParam* param, const byte* data, int size)
00061 ;
00062
00065 BEECRYPTAPI
00066 int hmacDigest(hmacParam* hp, const hashFunction* hash, hashFunctionParam* param, uint32* data)
00067 ;
00068
00069 #ifdef __cplusplus
00070 }
00071 #endif
00072
00073 #endif