summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Stufft <donald@stufft.io>2013-05-11 00:41:30 -0400
committerDonald Stufft <donald@stufft.io>2013-05-11 00:50:36 -0400
commitfc119a49668e93b2c009ea2e270044a97c017d51 (patch)
tree3b1614799433acf7d4fe222445a8f9e0dd54336a
parent3cb40dbea4764bb929d3926f8649b7213bad8b40 (diff)
downloadpy-bcrypt-git-fc119a49668e93b2c009ea2e270044a97c017d51.tar.gz
Add some usage instructions to the README
-rw-r--r--README.rst63
1 files changed, 63 insertions, 0 deletions
diff --git a/README.rst b/README.rst
index d05eae8..5004a8d 100644
--- a/README.rst
+++ b/README.rst
@@ -1,4 +1,67 @@
bcrypt
======
+.. image:: https://travis-ci.org/dstufft/bcrypt.png?branch=master
+ :target: https://travis-ci.org/dstufft/bcrypt
+
Modern password hashing for your software and your servers
+
+
+Installation
+============
+
+To install bcrypt, simply:
+
+.. code:: bash
+
+ $ pip install bcrypt
+
+
+Usage
+-----
+
+Basic
+~~~~~
+
+Hashing and then later checking that a password matches the previous hashed
+password is very simple:
+
+.. code:: pycon
+
+ >>> 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):
+
+.. code:: pycon
+
+ >>> 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.