Computational cryptography › Live on mainnet today › Hashes and symmetric crypto
Hardness assumption

AES, ChaCha20, HMAC are PRFs

In plain words

The assumption that ciphers like AES and ChaCha20 scramble data so it looks random without the key.

The idea: A block cipher like AES takes a key and a 16-byte block and returns a scrambled block. The bet is that, without the key, its outputs look like those of a truly random function. That's what makes encryption work: run the cipher on a counter (1, 2, 3...) to get a random-looking stream and mix it into your data. If the stream had any pattern, the pattern would leak into the data.

Why it matters: Protects node traffic, validator keystores and wallet seeds.

The details

The assumption that AES and ChaCha20 behave like random functions[1, 2] to anyone without the key, and that HMAC does too[3].

They encrypt peer-to-peer traffic, protect validator keystores and derive wallet keys from seeds. Decades of cryptanalysis back them, and quantum computers only halve their effective key length[4].

Rests on

If any of these breaks, this breaks too.

If it falls

If this breaks, these break with it.

Everything that falls with it (5 boxes)

References

  1. NIST. Advanced Encryption Standard (AES). NIST FIPS 197, 2001. doi:10.6028/NIST.FIPS.197
  2. Daniel J. Bernstein. ChaCha, a variant of Salsa20. SASC 2008. cr.yp.to/chacha/chacha-20080128.pdf
  3. Mihir Bellare, Ran Canetti and Hugo Krawczyk. Keying Hash Functions for Message Authentication. Advances in Cryptology — CRYPTO ’96, 1996. doi:10.1007/3-540-68697-5_1
  4. Lov K. Grover. A fast quantum mechanical algorithm for database search. Proceedings of the twenty-eighth annual ACM symposium on Theory of computing - STOC '96, 1996. doi:10.1145/237814.237866