PBKDF2 Password Hash & Key DerivationPrivacy: All processing runs locally
Derive PBKDF2 hashes from passwords using Web Crypto, configure salt, iterations, hash function, and output length — entirely in your browser.
How PBKDF2 Works
PBKDF2 (Password-Based Key Derivation Function 2) derives cryptographic bytes from a password and a salt by applying a pseudorandom function (like HMAC-SHA-256) many times. It is not bcrypt — PBKDF2 is a different algorithm with different parameters.
The key parameters are: password, salt (random bytes), iterations (number of HMAC rounds), hash function (SHA-256, SHA-384, or SHA-512), and derived key length (output byte count).
Web Crypto API
This tool uses the browser's native crypto.subtle.deriveBits() with the PBKDF2 algorithm. This is fast, secure, and does not require any external library.
Iterations
More iterations increase computation time, making brute-force attacks slower. Current recommendations suggest at least 600,000 iterations for SHA-256. Browser performance may limit practical iteration counts.
Konvi Portable String Format
This tool can output a portable string that includes all parameters needed for verification:konvi-pbkdf2$sha256$i=600000$l=32$s=<salt>$h=<hash>
This is a Konvi.ch format, not a universal standard. Salt and hash are base64url-encoded.
Comparison
PBKDF2 is widely supported and available in Web Crypto. For new systems, Argon2id is generally preferred. Bcrypt and scrypt are also common alternatives.
FAQ
Can I decrypt a PBKDF2 hash?
No. PBKDF2 is a one-way key derivation function. The password cannot be recovered.
Is it safe to paste a real password here?
This tool runs entirely in your browser. However, avoid pasting real production passwords into any online tool.
Should I hash passwords in the browser before login?
No. The hash would become the password. Hash on the server side.
What is a salt?
A random value mixed into the derivation. It prevents identical passwords from producing identical hashes and helps against precomputed tables.
Why does the same password produce different hashes?
Because a new random salt is generated each time. The salt is stored alongside the hash for verification.
Which algorithm should I use in production?
Follow your platform's security guidance. PBKDF2 is used where compliance or platform compatibility matters. Argon2id is generally recommended for new systems.
Why is derivation slow?
Intentionally. High iteration counts make brute-force attacks impractical.
What do iterations mean?
The number of times the pseudorandom function is applied. More iterations = more computation time per hash = harder to brute-force.