SuperGenPass Python module and GTK interface
This project is a Python 3.x implementation of the SuperGenPass bookmarklet, designed to be compatible with the Android SuperGenPass utility. It provides a module to be used in other programs, a command-line interface and a GTK 3 interface.
Compared with the original SuperGenPass bookmarklet, it has a number of additional features:
- customizable hashing algorithm and password length,
- optional salt appended to the master password,
- PIN generation based on HOTP.
Setup is handled by distutils. To install the module and interface, do:
python setup.py install
The module and the CLI do not require any extra module. The GTK interface requires GTK+ 3 and PyGObject.
As a Python module
The module is named supergenpass. The three main methods are:
- generate(master, domain): derive a SuperGenPass password,
- generate_pin(master, domain): generate a PIN,
- strip_domain(domain): strip a domain name/URL to its base domain name.
Use Python's help function for more information.
As a standalone program
You can launch the CLI using supergenpass in your shell. Use with -h to get the full list of accepted arguments.
To launch the GTK interface, use supergenpass -g. The domain textbox will be populated with the clipboard's content if a URL or domain name is recognized. The derived password will be copied to the clipboard when clicking on the OK button. If the password is still in the clipboard after 2 minutes, it will be cleared.
The default options may be altered in ~/.config/supergenpass.ini (for user-specific configuration) or /etc/supergenpass.ini (for system-wide configuration). See supergenpass -h for more information.