Skip to main content

better passwords using hashes

Project description

Petapass makes better passwords using stateless hashes.

The traditional approach to password management is to store passwords in an encrypted file (various password managers use this approach). Petapass instead implements a ‘stateless’ password management scheme (all state resides in your head). It uses a master password and per-login descriptive token to generate unique 10-character passwords. The token is merely something you will remember when you need to log in.

See this blog post for more information.


Petapass has a single script named petapass with various subcommands. It features two modes of operation: single and daemon. Enter your master password and a token - the generated password will be copied to the clipboard.


Single mode uses a simple terminal UI. It allows you to generate a single password. Run petapass one in a shell.


Daemon mode starts a long running-process using a hidden GTK window. The master password will be remembered for a user-configurable timeout. Upon activation, the window is displayed and a token can be entered

petapass daemon --help
usage: petapass daemon [-h] [--timeout TIMEOUT]

optional arguments:
  -h, --help         show this help message and exit
  --timeout TIMEOUT  how long to remember the master password, in minutes.
                     Default: 15

Show the window using petapass show. You may want to bind this to a hotkey in your window manager. The password entry box is reasonably intelligent and may be controlled using only tab/enter (it works as you would hope). Click the Cancel or hit the escape key to dismiss the window.

To clear the master password, click the Forget button or run petapass forget. You may want to add this command to your power management sleep hooks so that the master password is cleared when you suspend or hibernate your laptop - see the suspend directory in the source distribution.

Quit the daemon by pressing Control-q when the window is visible, or by running petapass kill.


Single mode works on Linux and OS X. Linux users need xclip, available in most distros repositories. Daemon mode requires pygtk. Petapass works on Python 2.7, or Python 2.6 with argparse.


The window doesn’t always raise to the top & receive focus when shown. Adding Windows support should be trivial, but the author does not care to do so himself. Patches welcome. More bugs here.

Project details

Download files

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

Files for Petapass, version 0.2.1
Filename, size File type Python version Upload date Hashes
Filename, size Petapass-0.2.1.tar.gz (5.0 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page