rainbow tables
A rainbow table is a precomputed table used to reverse cryptographic hash functions, primarily for cracking passwords. It contains a large set of hash values and their corresponding plaintext passwords, allowing attackers to quickly find the original password for a given hash without needing to compute it from scratch.
These tables exploit the fact that many users choose weak or common passwords, making it easier to match hashes. To defend against rainbow table attacks, users can employ techniques like salting, which adds random data to passwords before hashing, making each hash unique and significantly increasing the complexity of the attack.