Graph
Pepper

🌶️Pepper

NEW

A secret value added to password hashing, stored separately from hashes to increase resistance against database compromise.

DESCRIPTION

A pepper is a secret, application-wide value combined with a password during hashing to harden storage against compromise. Unlike salts, peppers are not stored alongside hashes and are kept in secure storage (e.g., HSM or secrets manager). If a database is breached, the attacker still needs the pepper to verify guesses. Peppers complement unique per-record salts and slow KDFs such as Argon2, scrypt, or PBKDF2. Management of pepper secrecy and rotation is critical.

ALTERNATIVE DEFINITIONS

OWASP Cheat Sheet Series

A pepper is a secret added to the password before hashing; unlike a salt, it is not stored with the password.

Contrasts pepper with salt, emphasizing secrecy and storage.

Source

Wikipedia

In cryptography, a pepper is a secret added to an input such as a password prior to hashing.

Plain definition focused on secrecy of the additional input.

Source

Password Hashing Password-Based Key Derivation Function 2 scrypt Argon2 Key Derivation Function Hardware Security Module Knowledge Management System Secrets Management Credential Hardening

COMPETING TERMS

Salt

KNOWLEDGE AREAS

Data Security

TARGET AUDIENCE

Security Architect Cybersecurity Engineer Software Developer DevOps Engineer

EXTERNAL SOURCES

TOP QUESTIONS

Why use a pepper when salts already exist?

Salts defeat precomputation; a pepper adds an extra secret barrier so a database breach alone isn’t enough to verify guesses.

Category: Benefits

Where should a pepper be stored?

In a secrets manager or HSM/KMS separate from the database and application configuration.

Category: BestPractices

How often should a pepper be rotated?

Rotate based on risk and operational feasibility; design for rolling rehash or split-key schemes to minimize user impact.

Category: Management

Does peppering replace salts?

No. Use unique per-record salts with a slow KDF; peppering is a complementary defense.

Category: Misunderstanding

What are risks of using a pepper?

Pepper loss may prevent password verification; inadequate separation or logging exposure can leak the pepper.

Category: Risks

How is a pepper applied in practice?

Combine the pepper with the password (or derived key) within a secure component before hashing; avoid exposing it in app memory.

Category: Methods

Should each user have a unique pepper?

Typically no; a pepper is application-scoped, while salts are per-user. Focus on secure storage and rotation.

Category: Opinion

Can hardware security modules help with peppering?

Yes. HSMs can protect pepper material and perform cryptographic operations without revealing secrets to the host.

Category: Tooling

Where to learn about pepper usage?

OWASP’s Password Storage guidance and cloud KMS docs offer practical patterns.

Category: GettingStarted