Skip to main content
Author:

Olivier Grisel <olivier.grisel@ensta.org>

description:

Generate rebuildable strong passwords

Oneliner overview:

domain_password == base62(sha1(master_password + domain_key))[:8]

Goal

This utility script helps generate a set of rebuildable domain-specific strong passwords out of a single easy to remember master password and domain specific keys such as “login@host”.

The generated passwords are strong since they use 8 characters out of a 62 characters long alphabet (lowercase and uppercase letters + digits) that are not to be found in any dictionary.

You can always re-generate your passwords by taking the base 62 encoding of the sha1 hash of the concatenation of your master password and domain key.

Install

With pip:

$ pip install -U virtualkeyring

Usage

Use the interactive command-line tool vkr that should now be in your PATH, and type in you master password and domain key:

$ vkr
master password: mysecret
domain key [e.g. 'login@host']: foobar@example.com
Your password is available in the clipboard. You have 10s to paste it.

To generate passwords with length larger that 8 chars, for instance for an ssh key passphrase:

$ vkr -l 20

To generate passwords for a specific alphabet:

$ vkr -a 42aAuUTt

Add your ssh key with virtualkeyring

Add a ssh key to your ssh-agent:

$ vkr-key

This will use your hostname as domain key. You can also set your domain key in ~/.virtualkeyring.

Changes

  • 1.6 (2013-07-21): use xerox to copy password to clipboard

  • 1.4 (2010-04-01): hashlib support. add vkr-key script

  • 1.3 (2008-06-01): add factorized out password fetching from stdin (thanks to gawel)

  • 1.2 (2008-05-16): add -l and -a parameters

  • 1.1 (2008-02-16) use getpass to read the master password from the keyboard

  • 1.0 (2007-11-10) initial relase

Download files

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

Source Distribution

virtualkeyring-1.6.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

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

virtualkeyring-1.6-py2.7.egg (8.9 kB view details)

Uploaded Egg

File details

Details for the file virtualkeyring-1.6.tar.gz.

File metadata

  • Download URL: virtualkeyring-1.6.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for virtualkeyring-1.6.tar.gz
Algorithm Hash digest
SHA256 02b278673c389c5ba4846554206781a3e551dfafe22da1133923cee8611b1a6d
MD5 b71427af17d4f27e49bf6085efa45102
BLAKE2b-256 f8223df08fcf43779d4dd915978181005407711dbc23e109fad1225cd30e0b5d

See more details on using hashes here.

File details

Details for the file virtualkeyring-1.6-py2.7.egg.

File metadata

File hashes

Hashes for virtualkeyring-1.6-py2.7.egg
Algorithm Hash digest
SHA256 69d850496c21f526ed11387659d2ed375f9b359600aec553c3edf1a576d5c0b8
MD5 ed62699758d5540c0db6f2d0deeb03bb
BLAKE2b-256 82f6034125fe3e3f7dafea28aba71d53a4b12b7b7e44afa117fb504092a2e0c0

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.6 This release

2 files

1.5

3 files

1.4

1 file

1.3

2 files

1.2

2 files

1.1

2 files

1.0

2 files

Supported by

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