Hashing Glossary
Clear, technical definitions of the hashing and cryptography terms used across the blog.
- Work Factor (Cost Factor)
- A work factor is a tunable parameter that sets how expensive a password hash is to compute, letting defenders raise the cost as hardware gets faster.
- Checksum
- A checksum is a small value used to detect accidental data corruption. Unlike cryptographic hashes, checksums like CRC32 offer no security against tampering.
- Digest (Hash Value)
- A digest is the fixed-size output of a hash function — also called a hash value, hash, or message digest. The same input always produces the same digest.
- Birthday Attack
- A birthday attack uses probability to find hash collisions in about 2^(n/2) tries instead of 2^n — why a 256-bit hash gives only ~128-bit collision security.
- Key Derivation Function (KDF)
- A KDF derives keys from a secret such as a password, often deliberately slow or memory-hard to resist brute force. Examples: PBKDF2, scrypt, and Argon2.
- Message Authentication Code (MAC)
- A MAC is a short tag computed from a message and a secret key that proves both integrity and authenticity. HMAC is the most widely used construction.
- Sponge Construction
- The sponge construction absorbs input into a large internal state and squeezes output from it. It underlies SHA-3/Keccak and resists length-extension attacks.
- Merkle–Damgård Construction
- The Merkle–Damgård construction builds a hash from a compression function by chaining fixed-size message blocks — the basis of MD5, SHA-1, and SHA-2.
- Rainbow Table
- A rainbow table is a precomputed structure that reverses unsalted password hashes by trading storage for computation. Per-user salts defeat it entirely.
- Pepper (Cryptography)
- A pepper is a secret value added to passwords before hashing, kept outside the database so that a database-only breach cannot crack the stored hashes.
- Salt (Cryptography)
- A salt is a unique, random value added to each password before hashing, so identical passwords get different hashes and precomputed rainbow tables fail.
- Avalanche Effect
- The avalanche effect is the property that flipping one input bit changes about half of the output bits — a hallmark of good diffusion in a hash function.
- Preimage Resistance
- Preimage resistance means that given a hash output you cannot find any input that produces it. It is what makes a cryptographic hash 'one-way'.
- Collision Resistance
- Collision resistance is the property that no one can find two different inputs with the same hash — the hardest core security property for a hash function.
- Hash Collision
- A hash collision is when two different inputs produce the same hash output. Secure hash functions make finding one computationally infeasible.