Skip to main content

Modern password hashing for your software and your servers

Project description

bcrypt

https://travis-ci.org/dstufft/bcrypt.png?branch=master

Modern password hashing for your software and your servers

Installation

To install bcrypt, simply:

$ pip install bcrypt

Usage

Basic

Hashing and then later checking that a password matches the previous hashed password is very simple:

>>> import bcrypt
>>> password = b"super secret password"
>>> # Hash a password for the first time, with a randomly-generated salt
>>> hashed = bcrypt.hashpw(password, bcrypt.gensalt())
>>> # Check that a unhashed password matches one that has previously been
>>> #   hashed
>>> if bcrypt.hashpw(password, hashed) == hashed:
...     print("It Matches!")
... else:
...     print("It Does not Match :(")

Adjustable Work Factor

One of bcrypt’s features is an adjustable logarithmic work factor. To adjust the work factor merely pass the desired number of rounds to bcrypt.gensalt(rounds=12) which defaults to 12):

>>> import bcrypt
>>> password = b"super secret password"
>>> # Hash a password for the first time, with a certain number of rounds
>>> hashed = bcrypt.hashpw(password, bcrypt.gensalt(10))
>>> # Check that a unhashed password matches one that has previously been
>>> #   hashed
>>> if bcrypt.hashpw(password, hashed) == hashed:
...     print("It Matches!")
... else:
...     print("It Does not Match :(")

Compatibility

This library should be compatible with py-bcrypt and it will run on Python 2.6, 2.7, 3.2, 3.3 and PyPy 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bcrypt-1.0.2.tar.gz (40.4 kB view details)

Uploaded Source

File details

Details for the file bcrypt-1.0.2.tar.gz.

File metadata

  • Download URL: bcrypt-1.0.2.tar.gz
  • Upload date:
  • Size: 40.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bcrypt-1.0.2.tar.gz
Algorithm Hash digest
SHA256 374761172bcec64e29d580cbda83d4c0594a93ddf28935b1636d5ceab132193b
MD5 c5df008669d17dd6eeb5e2042d5e136f
BLAKE2b-256 5017ba03213ec9542b259af9b67433f3017ea31e382af98e466aee5fcb1718cb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page