r16317@catbus: nickm | 2007-10-31 23:52:52 -0400

Use HMAC() function from openssl. Oops.


svn:r12304
This commit is contained in:
Nick Mathewson 2007-11-01 03:56:17 +00:00
parent 1855856d87
commit 7712ddf8e7

View File

@ -31,6 +31,7 @@ const char crypto_c_id[] =
#include <openssl/bn.h>
#include <openssl/dh.h>
#include <openssl/conf.h>
#include <openssl/hmac.h>
#ifdef HAVE_CTYPE_H
#include <ctype.h>
@ -1297,6 +1298,7 @@ crypto_digest_assign(crypto_digest_env_t *into,
memcpy(into,from,sizeof(crypto_digest_env_t));
}
#if 0
/**DOCDOC */
#define DIGEST_BLOCKSIZE 64
@ -1344,6 +1346,20 @@ crypto_hmac_sha1(char *hmac_out,
SHA1_Update(&sha, D, sizeof(D));
SHA1_Final((unsigned char*)hmac_out, &sha);
}
#endif
/** Compute the HMAC-SHA-1 of the <b>msg_len</b> bytes in <b>msg</b>, using
* the <b>key</b> of length <b>key_len</b>. Store the DIGEST_LEN-byte result
* in <b>hmac_out</b>.
*/
void
crypto_hmac_sha1(char *hmac_out,
const char *key, size_t key_len,
const char *msg, size_t msg_len)
{
HMAC(EVP_sha1(), key, key_len, (unsigned char*)msg, msg_len,
(unsigned char*)hmac_out, NULL);
}
/* DH */