1
0
Fork
You've already forked vanissh
0
forked from ava/vanissh
Fast vanity SSH key pair finder/generator.
  • Rust 81.3%
  • Nix 18.7%
2025年10月25日 18:18:47 +02:00
.github/workflows feat(license): add MPL-2.0 2025年10月20日 23:24:03 +02:00
src feat: line ending chosen by os type, no dbg!() print 2025年10月25日 18:18:47 +02:00
.envrc feat(license): add MPL-2.0 2025年10月20日 23:24:03 +02:00
.gitignore chore: add items to gitignore 2025年10月20日 23:09:22 +02:00
Cargo.lock feat: remove color feature from clap, bump ver 2025年10月25日 18:18:47 +02:00
Cargo.toml feat: remove color feature from clap, bump ver 2025年10月25日 18:18:47 +02:00
default.nix feat(license): add MPL-2.0 2025年10月20日 23:24:03 +02:00
flake.lock feat: add flake 2025年10月20日 20:40:29 +02:00
flake.nix feat(license): add MPL-2.0 2025年10月20日 23:24:03 +02:00
LICENSE feat(license): add MPL-2.0 2025年10月20日 23:24:03 +02:00
README.md feat(doc): add readme, crate docs 2025年10月25日 18:11:11 +02:00
shell.nix feat(license): add MPL-2.0 2025年10月20日 23:24:03 +02:00

vanissh

Vanity SSH public key finder. Specify a pattern (e.g. hello), and this tool will generate random ed25519 SSH key pairs, until this pattern is found in the base64-encoded SSH public key.

vanissh uses the maximum degree of parallelism to find your desired keypair as quickly as possible.

About Vanity Keys

A vanity SSH key is a keypair where the base64-encoded public key contains a specific substring of your choice. This makes your public key more recognizable and memorable, though it provides no additional security.

Performance Considerations

The time required to find a matching keypair grows exponentially with pattern length:

  • 5 characters (case-insensitive): ~10-60 seconds
  • 6 characters (case-insensitive): ~5-15 minutes
  • 5 characters (case-sensitive): ~5-30 minutes
  • 6 characters (case-sensitive): ~5-16 hours

Actual time depends on your CPU cores and generation speed (typically 60k-170k keys/sec per core).

Usage

Usage: vanissh [OPTIONS] <PATTERN>
Arguments:
 <PATTERN>
 The pattern to search for. On completion, vanissh will return an ed25519 SSH keypair, where pattern is a substring of the public key
Options:
 -c, --case-sensitive
 Whether to make the pattern search case-sensitive. Note, that this will exponentially increase the search time by a factor of 2 * `length_of(pattern)`
 -h, --help
 Print help (see a summary with '-h')
 -V, --version
 Print version

The resulting key pair is placed in a folder found-keys/, relative to the directory in which you executed vanissh.