Rainbow Table
overview
Summary
A rainbow_table is precomputed data for reversing a hash_function in password_cracking. It stores chains of alternating hash and reduction_function outputs, enabling fast lookup via a time_memory_tradeoff. During precomputation, many candidate plaintext values are processed; during attack, the target hash is walked through chains to find a match. A salt largely defeats this because each unique salt needs its own table. Coverage gaps and collision effects mean success is not guaranteed.