Rainbow Tables

A precomputed table for catching the output of cryptographic hash functions, usually for cracking password hashes

  • Precomputed Hash chains

  • Hash and reduce

    • The hashing function of a given set of Rainbow Tables must match the hatched password you want to recover
    • The reduction function of a given set of Rainbow Tables must transform a hash into something usable as a password
  • Rainbow Tables are constructed of "chains" of an n length

    • You start the chain by picking a random seed value
    • Then apply the hashing and reduction functions to this seed, and its output, and continue iterating this n times
    • Each link in the chain is compared with the final value of each chain and if there's a match, the chain can be reconstructed, keeping both the output of each reduction function
    • That reconstructed chain will contain the hash of the password in question as well as the password that produced it

 Rainbow Table algorithm concept

 Rainbow Table example