Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

A password attribute that stores hashes

Project Description

The password module offers you a single utility class called Password. This class is meant to be used as an attribute of any other object class on which you want to store passwords in hashed mode. This module is framework-agnostic so it is up to you to provide persistence (you need to store ‘hash’ and ‘salt’ set on the object).

Example usage

Create your class:

>>> import password
>>> class User():
...     password = password.Password(method='sha1', hash_encoding='base64')
        # You also probably want to create 'hash' and 'salt' attributes
        # With your chosen persistence mechanism

Set a password on the object:

>>> user = User()
>>> user.password = 'abcdef'

You cannot read the password back:

>>> user.password
<password._HashedPassword object at 0x7fdba1fef990>

but you can see, that hash and salt are set:

>>> user.hash
>>> user.salt

You can also check for equality with a string:

>>> user.password == 'abcdef'
>>> user.password == '12345'
Release History

Release History

This version
History Node


History Node


Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
password-0.2.tar.bz2 (2.5 kB) Copy SHA256 Checksum SHA256 Source Nov 17, 2013 (3.8 kB) Copy SHA256 Checksum SHA256 Source Nov 17, 2013

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting