Skip to content
uencoder

SHACAL

SHACAL is a derived cipher that treats the SHA-1 compression function as a block cipher, with the chaining value as plaintext and the message block as key.

Purpose

It exploits the invertibility of the SHA-1 compression function to build a block cipher, used to analyze SHA-1 security and design hash-based ciphers.

Mechanism

The SHA-1 compression function h′ = f(h, W) is invertible in h (given W), so it can be viewed as the block cipher SHACAL-1 keyed by W — a 160-bit block with a 512-bit key.

Use cases

  • SHA-1 security analysis
  • Hash-derived block ciphers
  • Cryptography teaching

Related tools

References