Skip to content
Generate RSA keypairs containing an arbitrary string in the public key.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

This tool generates valid RSA keypairs which contain some piece of text. The details are discussed in the accompanying blog post.


Simplest usage: python3 "MyVanityText"

usage: [-h] [--key-length KEY_LENGTH] [--key-format {PEM,SSH}]
                     [--output-file OUTPUT_FILE]
                     [--output-file-public OUTPUT_FILE_PUBLIC]

Generate an RSA key containing arbitrary text in the public key.

positional arguments:
  vanity                The text to inject

optional arguments:
  -h, --help            show this help message and exit
  --key-length KEY_LENGTH
                        The length of the key in bits
  --key-format {PEM,SSH}
                        The format of the key
  --output-file OUTPUT_FILE
                        Where to save the private key
  --output-file-public OUTPUT_FILE_PUBLIC
                        Where to save the public key


The code depends on cryptography package. While not strictly necessary, you may want to install gmpy2 for a factor 10 speedup. You can install both of these using pip install cryptography gmpy2.

You can’t perform that action at this time.