# Hash Functions and Their Applications

Kannan Balasubramanian (Mepco Schlenk Engineering College, India)
DOI: 10.4018/978-1-5225-2915-6.ch005

## Abstract

Cryptographic Hash Functions are used to achieve a number of Security goals like Message Authentication, Message Integrity, and are also used to implement Digital Signatures (Non-repudiation), and Entity Authentication. This chapter discusses the construction of hash functions and the various attacks on the Hash functions. The Message Authentication Codes are similar to the Hash functions except that they require a key for producing the message digest or hash. Authenticated Encryption is a scheme that combines hashing and Encryption. The Various types of hash functions like one-way hash function, Collision Resistant hash function and Universal hash functions are also discussed in this chapter.
Chapter Preview
Top

## Cryptographic Hash Functions

Cryptographic Hash functions are one of the most important tool in the field of cryptography and are used to achieve a number of security goals like authenticity, digital signatures, pseudo number generation, digital steganography, digital time stamping and other security goals. The following definition of hash functions is due to Rompay (2004).

• Hash Function: A hash function is a function h: D R, where the domain D = {0,1}* and R = {0,1}n for some n > = 1.

Cryptographic Hash Functions are broadly of two types i.e. Keyed Hash functions; the ones that use a secret key, and Unkeyed Hash Functions; the other ones which do not use a secret key. The keyed Hash functions are referred to as Message Authentication codes (MAC). Generally, the term hash functions refer to unkeyed hash functions only. Unkeyed or simply Hash functions (some time also known as MDC – Manipulation Detection Codes) can further be classified into OWHF (One Way Hash Functions), CRHF (Collision Resistant Hash Functions) and UOWHF (Universal One Way Hash Functions) depending on the additional properties they satisfy.

• One Way Hash Functions (OWHF): One Way Hash Function as defined by Merkle (1979) is a hash function H that satisfies the following requirements:

• 1.

H can be applied to block of data of any length. (In practice, ‘any length’ may be actually be bounded by some huge constant, larger than any message we ever would want to hash).

• 2.

H produces a fixed-length output.

• 3.

Given H and x (any given input), it is easy to computer message digest H(x).

• 4.

Given H and H(x), it is computationally infeasible to find x.

• 5.

Given H and H(x), it is computationally infeasible to find x and x’ such that H(x) = H(x’).

The first three requirements are a must for practical applications of a hash function to message authentication and digital signatures. The fourth requirement also known as pre-image resistance or one way property, states that it is easy generate a message code given a message but hard (virtually impossible) to generate a message given a code (Sobti et al., 2012). The fifth requirement also known as Second pre-image resistance guarantees that an alternative message hashing to the same code as a given message cannot be found.

## Complete Chapter List

Search this Book:
Reset