Master
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_USERNAMEor theMASTER_PASSWORDyou will be prompted for them.
Todos
- Make the
MASTER_LISTa directory to avoid git conflicts. - Integrate the user name with Oauth2 providers.
Maybe the
subafter 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.
Metadata
Release files for master 0.2.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| master-0.2.6.tar.gz | 5.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| master-0.2.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.7 kB
Release files / master-0.2.6.tar.gz
| Download URL | master-0.2.6.tar.gz |
|---|---|
| Size | 5.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
396c9b9a974a079efc4eb3fa65127b5b0e4cc27e092c3c04810a2f6b0241cf7a
|
|
BLAKE2b-256 checksum How to use checksums |
358e0ddbe63188e615e529b0878e17b390d659f25e1462162978610648ead8d0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.8
|
Release files / master-0.2.6-py3-none-any.whl
| Download URL | master-0.2.6-py3-none-any.whl |
|---|---|
| Size | 6.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f714431af0069cd6615c776533b2c0f4aa74517f60dc2a86e7b59ec9f426e73c
|
|
BLAKE2b-256 checksum How to use checksums |
eab3416f4876791c65b98d099e854b6c7edd19e59c82fb0dee87fb8b90924254
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.8
|
Security for master 0.2.6
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.