**⚠️ Warning: This is a draft ⚠️**

This means it might contain formatting issues, incorrect code, conceptual problems, or other severe issues.

If you want to help to improve and eventually enable this page, please fork RosettaGit's repository and open a merge request on GitHub.

[[Category:Encyclopedia]] A [[wp:cryptographic hash function|cryptographic hash function]], also known as a ''collision resistant hash function'', maps a message (of any length) to a digest (of a fixed length), and has the following three properties:Dobbertin, Bosselaers, Preneel. [http://homes.esat.kuleuven.be/~bosselae/ripemd160.html "RIPEMD-160, a strengthened version of RIPEMD"] [https://en.wikibooks.org/wiki/Cryptography/Hashes Wikibooks: Cryptography: Hashes]

- ''Preimage resistance.'' It is too difficult to invert the function and find an original message from its digest.
- ''Second preimage resistance.'' It is too difficult to change the message without also changing its digest.
- ''Collision resistance.'' It is too difficult to find any two messages with the same digest.

With many algorithms, the message is a string of [[octet]]s, and the digest has a fixed number of bits. For example, SHA-256 always computes a 256-bit digest. One can write this digest in hexadecimal.

Though algorithms like [[MD4]] define digest for message of any bit length, many actual implementations assume that the bit length is a multiple of 8.

== Algorithms == [[SHA-256]] is the recommended stronger alternative to [[SHA-1]] and [[RIPEMD-160]], which in turn are stronger than [[MD5]], which in turn is stronger than [[MD4]].

== References ==