What is hash ?
A hash value (or simply hash) is a number generated from a string of text. The hash is substantially smaller than the text itself, and is generated by a formula in such a way that it is extremely unlikely that some other text will produce the same hash value. The purpose of using hash functions could be a password verification.
The Secure Hash Algorithm (SHA), developed by NIST, along with the NSA, for use with the Digital Signature Standard
(DSS) is specified within the Secure Hash Standard (SHS) [National Institute of Standards and Technology
(NIST). FIPS Publication 180: Secure Hash Standard (SHS). May 1993.]. SHA-1 [National Institute of Standards and Technology
(NIST). Announcement of Weakness in the Secure Hash Standard. May 1994.] was a revision to SHA that was published in 1994. The revision corrected an unpublished flaw in
SHA1 is a cryptographic message digest algorithmdeveloped by Ronald L. Rivest
.The Secure Hash Algorithm takes a message of less than 264 bits in length and produces a 160-bit message digest which is designed so that it should be
computationally expensive to find a text which matches a given hash. i.e. if you have a hash for document A, H(A), it is difficult to find a document B which has the same hash, and even more difficult to arrange that document B says what you want it to say.
MD5 was developed by Ronald L. Rivest of MIT. The MD5 algorithm takes as input a message of arbitrary length and produces as output a 128-bit "fingerprint" or "message digest" of the input. It is conjectured that it is computationally infeasible to produce two messages having the same message digest, or to produce any message having a given prespecified target message digest. The MD5 algorithm is intended for digital signature applications, where a large file must be "compressed" in a secure manner before being encrypted with a private (secret) key under a public-key cryptosystem such as
RSA. In essence, MD5 is a way to verify data integrity, and is much more reliable than checksum and many other commonly used methods.
RIPEMD-160 is a 160-bit cryptographic hash function, designed by Hans
Dobbertin, Antoon Bosselaers, and Bart Preneel. It is intended to be used as a secure replacement for the 128-bit hash functions MD4, MD5, and
RIPEMD. MD4 and MD5 were developed by Ron Rivest for RSA Data Security, while RIPEMD was developed in the framework of the EU project RIPE (RACE Integrity Primitives Evaluation, 1988-1992).