Skip to content

Rainbow tables

24 November 2023

In the context of password cracking, a typical explanation of a rainbow table is: a table with 2 columns, 1 for the plaintext and 1 for the hash. This is incorrect.

Rainbow tables are actually long chains of plaintexts and their hashes, a clever way to compromise between storage (pre-computation) and time (memory usage). Storing a massive table with every possible plaintext and its hash would be too big. Storing nothing and computing hashes on demand would be too slow.

rainbow-tables

The best explanations I've found of how rainbow tables actually work are: