Skip to main content

Hashed-based password manager program/library.

Project description

hashedpass

Decentralized, storage less hash-based password management standard and program.

Version: 1.0.2 To Do:

  • Implement Argon2 parameter strings.

hashedpass is a program and library written in Python which seeks to standardize storage less, decentralized password management based off of hashing. In addition to hashedpass being a program/library, it also exists as a standard, written as a document; it can be found here.

hashedpass is based off of SHA512 and Argon2. The master password, along with other parameters such as service/website and email/username, are first hashed with SHA512, then are fed into an expensive Argon2 hashing algorithm, with consistent salts and parameters. A lot more information regarding the specifics can be found in the standard, in the docs/ folder.

The hope is that hashedpass can be used standalone to prevent ever losing a KeepassXC database, as all one requires is their common master password and the corresponding information for the account that the generated password is intended to go towards--if you remember the three parameters, you will always have your passwords. Alternatively, the more realistic approach is to use hashedpass in conjunction with something like KeepassXC: derive your passwords from hashedpass, store them into your KeepassXC database and use that primarily, using hashedpass as a backup if your KeepassXC database is ever lost.

hashedpass can be used as a program with command-line arguments, though this is not encouraged: it requires the inclusion of your master password as a command-line argument, which would likely make its way into a shell history--a large security blunder. To explain the various arguments that hashedpass can take, we can take inspiration from its help menu, which can be accessed by issuing -h/--help as a command-line parameter:

hashedpass.py - Make passwords via hashes with a master password, a decentralized password manager.
USAGE:

To use hashedpass in interactive mode (it gives prompts, etc), supply no arguments.

Using hashedpass with terminal arguments requires supplying the master password, service/website,
and username/email/id.

-m, --master-password  |        Supply the master password
-p, --password         |


-s, --service          |        Supply the website/service name
-w, --website          |        


-i, --id               |        Supply the id, username, or email.
-u, --username         |
-e, --email            |

If one wants to use hashedpass as an interactive application, which will receive input from the terminal and calculate the desired passwords in a convenient fashion, with more features, then provide no command-line arguments to the program to achieve this.

As an interactive application, after inputting a master password for all subsequent password derivations, the program will exit on a timeout of 60 seconds if there is no activity, clearing and resetting the terminal. This will hopefully help to prevent accidental seeing of the generated passwords by others.

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

hashedpass-1.0.2.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hashedpass-1.0.2-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file hashedpass-1.0.2.tar.gz.

File metadata

  • Download URL: hashedpass-1.0.2.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for hashedpass-1.0.2.tar.gz
Algorithm Hash digest
SHA256 bc2301d1be68ec3519f986642960ecee8782ee00e5c502dbc70f18bfb6278070
MD5 ed36edcd64561081391fa0048b6eaa52
BLAKE2b-256 74881cb4118ef06a791c66b026547f73f8a404728dbe591a8ed8ce6c77a210cd

See more details on using hashes here.

File details

Details for the file hashedpass-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: hashedpass-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for hashedpass-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c453751c964088b34e23ebf6177443a338544b884f5a40626beeac8d698aef50
MD5 20ec8382353e35ea7f84838758eb7c7b
BLAKE2b-256 38bccf52e5a1066eae9ce3660f2638d16b14a5bd4e4272fe3fb3c082dd506767

See more details on using hashes here.

Supported by

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