I would like to use py-bcrypt to store passwords in a db. Storing is easy:
password = u'foobar'
password_hashed = bcrypt.hashpw(password, bcrypt.gensalt())
#then store password_hashed in db
With py-bcrypt, you don't need to store the salt separately:
bcrypt stores the salt in the hash.
You can simply use the hash as a salt, and the salt is stored in the beginning of the hash.
>>> import bcrypt >>> salt = bcrypt.gensalt() >>> hashed = bcrypt.hashpw('secret', salt) >>> hashed.find(salt) 0 >>> hashed == bcrypt.hashpw('secret', hashed) True >>>