Skip to main content

Generate passphrases by randomly selecting and concatenating words from a list.

Note: This project is no longer maintained. Use xkcdpass instead.

https://imgs.xkcd.com/comics/password_strength.png

Installation

Use pip to install Keysmith.

pip install keysmith

Usage

Keysmith can be invoked from a command-line or imported in Python.

CLI

$ keysmith --help
usage: keysmith [-h] [--delimiter DELIMITER] [--encoding ENCODING]
                [--nsamples NTEETH] [--population POPULATION] [--stats]
                [--version]

optional arguments:
  -h, --help            show this help message and exit
  --delimiter DELIMITER
                        a delimiter for the samples (teeth) in the key
                        (default: )
  --encoding ENCODING   the encoding of the population file (default: utf-8)
  --nsamples NTEETH, -n NTEETH
                        the number of random samples to take (default: 6)
  --population POPULATION, -p POPULATION
                        alphanumeric, ascii_letters, digits, printable, or a
                        path to a file of line-delimited items (default:
                        /usr/share/dict/words)
  --stats               show statistics for the key (default: False)
  --version             show program's version number and exit
$ keysmith -n4
correct horse battery staple

API

>>> import keysmith
>>> help(keysmith)
>>> with open('/usr/share/dict/words', 'r') as words:
...     keysmith.key(seq=list(words), nteeth=4, delimiter=' ')
...
'correct horse battery staple'

Download files

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

Source Distribution

keysmith-3.0.1.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

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

keysmith-3.0.1-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file keysmith-3.0.1.tar.gz.

File metadata

  • Download URL: keysmith-3.0.1.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.3

File hashes

Hashes for keysmith-3.0.1.tar.gz
Algorithm Hash digest
SHA256 338ce4c93e9539e84faf4b544a39ecc24ca183d35a1fa52b77df124f87d18450
MD5 c36e8f4f0700d68987ec2065514ec657
BLAKE2b-256 4ecb6ed482d97f1d388fcb4673c7eb75e3788bf8b6b3130a9b9fb251fff3a8c0

See more details on using hashes here.

File details

Details for the file keysmith-3.0.1-py3-none-any.whl.

File metadata

  • Download URL: keysmith-3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.3

File hashes

Hashes for keysmith-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8ad6106915660f48496e916b4eb6b77b79323c74d68a19bc0479550a54bf58bc
MD5 5acc104d367119a311e60ddab2248f19
BLAKE2b-256 8717f861b6024a53980db88d4e0d554a3879e2949160d8def3d77843e4f2f937

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

3.0.1 This release

2 files

3.0.0

2 files

2.0.0

1 file

1.1.0

1 file

1.0.1

1 file

1.0.0

1 file

0.3.0

1 file

0.2.1

1 file

0.2.0

1 file

0.1.1

1 file

0.1.0

1 file

Supported by

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