Skip to main content

Deterministic password generator

Project description

Master

Deploy pages

Generates deterministic passwords.

This is inspired by spectre.app but simpler. This uses a sha256 hashed combination of username + password + service + version (version is now locked to 0) to generate the same password, over and over again, thus eliminating the need to store, maintain and back up other generated passwords.

jpedro.github.io/master has the browser experience.

The used service name list is kept under the file ~/.config/master/list.txt (or whatever MASTER_LIST points to) purely for autocompletion, which will be added later.

Eventually, the idea is to create a simple browser extension that uses the URL domain name as the service.

Install

pip install master

Usage

$ master --help

NAME
    master — Generates deterministic passwords for services

USAGE
    master NAME                 Gets the password for service NAME
    master -l, --list           Lists all stored services
    master -r, --remove NAME    Removes service NAME from the stored list
    master -v, --version        Shows the version
    master -h, --help           Shows this help

Environment variables

Name Default
MASTER_LIST ~/.config/master/list.txt
MASTER_USERNAME (None) [1]
MASTER_PASSWORD (None) [1]
MASTER_SEPARATOR -
MASTER_LENGTH 6
MASTER_CHUNKS 6

Using these default settings, it will generate a password that's 41 characters long. 6 chunks of 6 character long with 5 separators in between.

Note [1] If you don't set the MASTER_USERNAME or the MASTER_PASSWORD you will be prompted for them.

Todos

  • Make the MASTER_LIST a directory to avoid git conflicts.
  • Integrate the user name with Oauth2 providers. Maybe the sub after an authentication flow can be used instead of the flat username. Cons: the email provider can change for the same email address. Plus, not 100% sure if one wants to tie passwords to an email.
  • Lock (close) the master page after 30 seconds of inactivity.

Project details


Download files

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

Source Distribution

master-0.2.5.tar.gz (6.7 kB view hashes)

Uploaded Source

Built Distribution

master-0.2.5-py3-none-any.whl (8.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page