SHA1 and MD5 are broken

SHA1 (RFC 3174) and MD5 (RFC 1321) legacy, broken hash functions. Don't use them in a new protocol. What "broken" means:

MD5 architecture is similar to SHA1, with some differences:

  • reduced output length: 16 bytes (128 bit) instead of 20
  • 64 rounds, instead of 80
  • little-endian: could be faster, but will require more code
  • non-linear index selection: huge speed-up for unroll
  • per round constants: more memory accesses, additional speed-up for unroll

Was this page helpful?