Skip to main content

Keysmith

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'

Metadata

Release files for keysmith 3.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for keysmith 3.0.1
File Size Uploaded
keysmith-3.0.1.tar.gz 3.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for keysmith 3.0.1
File Interpreter ABI Platform
keysmith-3.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 7.8 kB

Release files / keysmith-3.0.1.tar.gz

Download URL keysmith-3.0.1.tar.gz
Size 3.4 kB
Tags Source
SHA-256 checksum
How to use checksums
338ce4c93e9539e84faf4b544a39ecc24ca183d35a1fa52b77df124f87d18450
BLAKE2b-256 checksum
How to use checksums
4ecb6ed482d97f1d388fcb4673c7eb75e3788bf8b6b3130a9b9fb251fff3a8c0
Upload date
Uploaded using Trusted Publishing?
What is 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

Release files / keysmith-3.0.1-py3-none-any.whl

Download URL keysmith-3.0.1-py3-none-any.whl
Size 4.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8ad6106915660f48496e916b4eb6b77b79323c74d68a19bc0479550a54bf58bc
BLAKE2b-256 checksum
How to use checksums
8717f861b6024a53980db88d4e0d554a3879e2949160d8def3d77843e4f2f937
Upload date
Uploaded using Trusted Publishing?
What is 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

Release history Release notifications | RSS feed

This release

3.0.1 This release

2 release files

3.0.0

2 release files

2.0.0

1 release file

1.1.0

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.3.0

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page