Django Password Hash Generator
Generate a real Django-format password hash - pbkdf2_sha256, matching Django's exact default hasher output, including the $-delimited format Django expects.
This generates a real hash in Django's exact default format - pbkdf2_sha256$<iterations>$<salt>$<hash> - directly usable in a Django database.
Computed using your browser's native Web Crypto API - a real PBKDF2-HMAC-SHA256 derivation in Django's exact string format, not a simulated example. Your password is never transmitted anywhere.
This implements Django's default PBKDF2 hasher specifically - not a generic bcrypt/Argon2 hash relabeled as Django-compatible.
How Django Hashes Passwords
Django's default password hasher (PBKDF2PasswordHasher) uses PBKDF2 with HMAC-SHA256, storing the result as pbkdf2_sha256$<iterations>$<salt>$<base64 hash> in the password field of the user model.
Why Use This Tool?
Useful for seeding a Django database directly (e.g. via a raw SQL insert or fixture) without running Django itself, or for understanding exactly what Django's stored password format looks like.
How to Use It
- Enter a password.
- Set the iteration count (Django's current default is a six-figure number that increases periodically - check your Django version's default if exact matching matters).
- Copy the generated
pbkdf2_sha256$...string directly into the password field.
Limitations
This implements Django's default PBKDF2 hasher specifically - Django also supports alternative hashers (Argon2, bcrypt) configurable via PASSWORD_HASHERS; if your project uses a non-default hasher, this tool's output won't match what your Django app expects.