Adding a unique random salt to each password before hashing mainly defends against what?

Precomputed lookup tables, because every user's hash becomes unique.

Start playing free

  1. Precomputed lookup tables such as rainbow tables ✔
  2. Shoulder surfing
  3. Phishing emails

Why: Without a salt, two users with the same password get the same hash and attackers can use one table for everyone. A unique salt forces them to crack each hash separately.

Huh, didn't know that: OWASP notes that with unique salts, nobody can tell whether two users share a password without cracking both hashes.

The dad joke
Salt makes every password hash different. Chefs and security teams agree it improves the dish.
Like this card?
Play the game

References

Answer: Precomputed lookup tables such as rainbow tables. Without a salt, two users with the same password get the same hash and attackers can use one table for everyone. A unique salt forces them to crack each hash separately.

  1. OWASP Password Storage Cheat Sheet cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html
    A unique salt must be added to each password to prevent attackers from using precomputed lookup tables like rainbow tables.
    Checked 2026-10-10.

Think this answer is wrong? Tap "Challenge this answer" on the card in the game and tell us why.

Test yourself in the game