From dce7b21c7ae5f97ce9f06fc00582e5bf3033c9c4 Mon Sep 17 00:00:00 2001 From: Erwin Nindl Date: Thu, 9 Aug 2007 13:41:08 +0000 Subject: * added key derivation functions --- authAlgo.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'authAlgo.cpp') diff --git a/authAlgo.cpp b/authAlgo.cpp index 57c9ee6..206d335 100644 --- a/authAlgo.cpp +++ b/authAlgo.cpp @@ -30,7 +30,37 @@ #include "authAlgo.h" +extern "C" { +#include +} + + auth_tag_t NullAuthAlgo::calc(const Buffer& buf) { return 0; } + + +// HMAC_SHA1 +auth_tag_t HmacAuthAlgo::calc(const Buffer& buf) +{ + extern auth_type_t hmac; + err_status_t status = err_status_ok; + auth_t *auth = NULL; + + uint8_t key[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, + 0x10, 0x11, 0x12, 0x13 + }; + + // auth_type_alloc(auth_type, auth, key_len, out_len) + status = auth_type_alloc(&hmac, &auth, 94, 4); + status = auth_init(auth, key); + + status = auth_dealloc(auth); + + return 0; +} + + -- cgit v1.2.3