Browse Prior Art Database

HMAC: Keyed-Hashing for Message Authentication (RFC2104)

IP.com Disclosure Number: IPCOM000002658D
Original Publication Date: 1997-Feb-01
Included in the Prior Art Database: 2000-Sep-13
Document File: 9 page(s) / 21K

Publishing Venue

Internet Society Requests For Comment (RFCs)

Related People

H. Krawczyk: AUTHOR [+3]

Abstract

This document describes HMAC, a mechanism for message authentication using cryptographic hash functions. HMAC can be used with any iterative cryptographic hash function, e.g., MD5, SHA-1, in combination with a secret shared key. The cryptographic strength of HMAC depends on the properties of the underlying hash function.

This text was extracted from a ASCII Text document.
This is the abbreviated version, containing approximately 14% of the total text.

Network Working Group H. Krawczyk

Request for Comments: 2104 IBM

Category: Informational M. Bellare

UCSD

R. Canetti

IBM

February 1997

HMAC: Keyed-Hashing for Message Authentication

Status of This Memo

This memo provides information for the Internet community. This memo

does not specify an Internet standard of any kind. Distribution of

this memo is unlimited.

Abstract

This document describes HMAC, a mechanism for message authentication

using cryptographic hash functions. HMAC can be used with any

iterative cryptographic hash function, e.g., MD5, SHA-1, in

combination with a secret shared key. The cryptographic strength of

HMAC depends on the properties of the underlying hash function.

1. Introduction

Providing a way to check the integrity of information transmitted

over or stored in an unreliable medium is a prime necessity in the

world of open computing and communications. Mechanisms that provide

such integrity check based on a secret key are usually called

"message authentication codes" (MAC). Typically, message

authentication codes are used between two parties that share a secret

key in order to validate information transmitted between these

parties. In this document we present such a MAC mechanism based on

cryptographic hash functions. This mechanism, called HMAC, is based

on work by the authors [BCK1] where the construction is presented and

cryptographically analyzed. We refer to that work for the details on

the rationale and security analysis of HMAC, and its comparison to

other keyed-hash methods.

HMAC can be used in combination with any iterated cryptographic hash

function. MD5 and SHA-1 are examples of such hash functions. HMAC

also uses a secret key for calculation and verification of the

message authentication values. The main goals behind this

construction are

* To use, without modifications, available hash functions.

In particular, hash functions that perform well in software,

and for which code is freely and widely available.

* To preserve the original performance of the hash function without

incurring a significant degradation.

* To use and handle keys in a simple way.

* To have a well understood cryptographic analysis of the strength of

the authentication mechanism based on reasonable assumptions on the

underlying hash function.

* To allow for easy replaceability of the underlying hash function in

case that faster or more secure hash functions are found or

required.

This document specifies HMAC using a generic cryptographic hash

function (denoted by H). Specific instanti...