Algorithm
Algorithm
There are several similarities in the evolution of hash function and that of symmetric
block ciphers. We have seen that the increasing power of brute-force attacks and advances in
cryptanalysis have led to the decline in the popularity of DES and in the design of newer
algorithm with longer key lengths and with features designed to resist specific cryptanalytic
attacks.
Similarly, advances in computing power and hash function cryptanalysis have led to the
decline in the popularity of first MD4 and then MD5, two very popular hash functions. In
response, newer hash algorithm have been developed with longer hash code length and with
features designed to resist specific cryptanalytic attacks. Another point of similarity is the
reluctance to depart from a proven structure.
DES is based on the Feistel cipher, which in turn is based on the Substitution-permutation
network proposal of Shannon. Many important subsequent block ciphers follow the feistel design
because the design can be adapted to resist newly discovered cryptanalytic threats. If, instead, an
entirely new design were used for a symmetric block cipher, there would be concern that the
structure itself opened up new avenues of attack not yet thought of. Similarly, most important
modern hash functions follow the basic structure. This has proved to be a fundamentally sound
structure and newer designs simply refine the structure and add to the hash code length. MD5,
SHA-1, and RIPEMD-160. We then look at an internet-standard message authentication code.