HMAC-SHA384 message authentication code.
- Copyright (C) 2003, 2010 Niels Möller
+ Copyright (C) 2003, 2010, 2024 Niels Möller
This file is part of GNU Nettle.
#endif
#include "hmac.h"
+#include "hmac-internal.h"
void
hmac_sha384_set_key(struct hmac_sha512_ctx *ctx,
size_t key_length, const uint8_t *key)
{
- HMAC_SET_KEY(ctx, &nettle_sha384, key_length, key);
+ _nettle_hmac_set_key (sizeof(ctx->outer), ctx->outer, ctx->inner, &ctx->state,
+ ctx->state.block, &nettle_sha384, key_length, key);
}
void
hmac_sha384_digest(struct hmac_sha512_ctx *ctx,
uint8_t *digest)
{
- HMAC_DIGEST(ctx, &nettle_sha384, digest);
+ sha384_digest (&ctx->state, ctx->state.block);
+ ctx->state.index = SHA384_DIGEST_SIZE;
+ _NETTLE_HMAC_DIGEST (ctx->outer, ctx->inner, &ctx->state, sha384_digest, digest);
}
HMAC-SHA512 message authentication code.
- Copyright (C) 2003, 2010 Niels Möller
+ Copyright (C) 2003, 2010, 2024 Niels Möller
This file is part of GNU Nettle.
#endif
#include "hmac.h"
+#include "hmac-internal.h"
void
hmac_sha512_set_key(struct hmac_sha512_ctx *ctx,
size_t key_length, const uint8_t *key)
{
- HMAC_SET_KEY(ctx, &nettle_sha512, key_length, key);
+ _nettle_hmac_set_key (sizeof(ctx->outer), ctx->outer, ctx->inner, &ctx->state,
+ ctx->state.block, &nettle_sha512, key_length, key);
}
void
hmac_sha512_digest(struct hmac_sha512_ctx *ctx,
uint8_t *digest)
{
- HMAC_DIGEST(ctx, &nettle_sha512, digest);
+ sha512_digest (&ctx->state, ctx->state.block);
+ ctx->state.index = SHA512_DIGEST_SIZE;
+ _NETTLE_HMAC_DIGEST (ctx->outer, ctx->inner, &ctx->state, sha512_digest, digest);
}
uint8_t *digest);
/* hmac-sha512 */
-struct hmac_sha512_ctx OLD_HMAC_CTX(struct sha512_ctx);
+struct hmac_sha512_ctx HMAC_CTX (struct sha512_ctx, offsetof (struct sha512_ctx, index));
void
hmac_sha512_set_key(struct hmac_sha512_ctx *ctx,