Cryptographic Hash function is a complex encryption algorithm used in cryptography and it refers to a shortened version of full-scale encryption. A Cryptographic hash function is a deterministic procedure that takes an arbitrary block of data and returns a fixed-size bit string, the hash value, such that an accidental or intentional change to the data will change the hash value, such that an accidental or intentional change to the data will change the hash value. The data to be encoded is often called the message. The hash value is sometimes called message digest or simply digest.

Ideal Characteristics of Cryptographic Hash Functions

  • It is easy to compute the hash value for any given message.
  • Cryptographic hash functions are infeasible to generate a message that has a given hash.
  • It is not possible to modify a message without changing the hash in cryptographic hash functions.
  • In cryptographic hash functions, two different messages cannot be with same hash.

Types of Cryptographic Hash Functions are: MAC, MDC, CRHF (collision resistant hash functions), UOWHF (universal one-way hash functions), and OWHF (one-way hash functions). Some of the popular Cryptographic Hash Functions are: SHA- Secure Hash Algorithms (SHA-0, SHA-1), MD- Message Digest Algorithms (MD5, which has 128-bit hash value), and RIPEMD- Race Integrity Primitives Evaluation Message Digest Algorithms (RIPEMD-128 and RIPEMD-160). Of all these, the most commonly used cryptographic hash functions are MD5 and SHA-1.

Applications of Cryptographic Hash Functions

  • Cryptographic hash functions are used in the verification of message integrity.
  • These hash functions allows a fast look-up of the data in a hash table.
  • Cryptographic hash functions use peer-to-peer filesharing networks to identify files.
  • These hash functions are used in contexts where it is necessary for the users to protect themselves against the possibility of forgery.
  • Cryptographic hash functions are also used in the generation of pseudorandom bits, to derive new keys or passwords from a single, secure key or password.
  • These functions are widely used in information authentication.
  • Cryptographic hashes are used in randomization [through PSS padding] and compression of Digital Signatures.
  • These cryptographic hash functions are used to maintain secrecy of the client password and hashes must be kept valid for a session.
  • Cryptographic hashes provide security for E-mail and file transfer systems.
  • Cryptographic Hash Functions are also used in Database matching and software downloads.