EOL - Reference Only - A git mirror of django-bcrypt.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
django_bcrypt Initial support for Django 1.4. Jan 2, 2012
.hgignore Add "docs/build" to .hgignore. Aug 17, 2011
.hgtags Added tag v0.9.2 for changeset 8e6510cf2c14 Apr 28, 2011
LICENSE Convert docs to reStructuredText and include them in the sdist. Mar 14, 2011
MANIFEST.in Convert docs to reStructuredText and include them in the sdist. Mar 14, 2011



You should be using bcrypt.

django-bcrypt makes it easy to use bcrypt to hash passwords with Django.

Installation and Usage

Install the package with pip and Mercurial or git:

pip install -e hg+http://bitbucket.org/dwaiter/django-bcrypt#egg=django-bcrypt

# or ...

pip install -e git://github.com/dwaiter/django-bcrypt.git#egg=django-bcrypt

Add django_bcrypt to your INSTALLED_APPS.

That's it.

Any new passwords set will be hashed with bcrypt. Old passwords will still work fine.


You can configure how django-bcrypt behaves with a few settings in your settings.py file.


Enables bcrypt hashing when User.set_password() is called.

Default: True


Enables bcrypt hashing when running inside Django TestCases.

Default: False (to speed up user creation)


Number of rounds to use for bcrypt hashing. Increase this as computers get faster.

You can change the number of rounds without breaking already-hashed passwords. New passwords will use the new number of rounds, and old ones will use the old number.

Default: 12


Enables bcrypt password migration on a check_password() call.

The hash is also migrated when BCRYPT_ROUNDS changes.

Default: False


This is pretty much a packaged-up version of this blog post for easier use.

It also depends on the py-bcrypt library.