| Crates.io | monero-vanity |
| lib.rs | monero-vanity |
| version | 0.4.1 |
| created_at | 2023-04-02 03:38:27.487343+00 |
| updated_at | 2023-04-02 15:27:34.808434+00 |
| description | Monero Vanity Address Generator |
| homepage | |
| repository | https://github.com/hinto-janai/monero-vanity |
| max_upload_size | |
| id | 827825 |
| size | 2,071,307 |
monero-vanity is a GUI/CLI tool that generates vanity addresses for Monero, like this one:
44hintoFpuo3ugKfcqJvh5BmrsTRpnTasJmetKC4VXCt6QDtbHVuixdTtsm6Ptp7Y8haXnJ6j8Gj2dra8CKy5ewz7Vi9CYW
| Generator | Hardware needed | Regex | Calculates seed | Normal speed | Regex speed |
|---|---|---|---|---|---|
| vanity-monero | CPU (x86, 32/64-bit) | Yes | Yes | 400k/sec | 170k/sec |
| monero-vanity | CPU (x86, 64-bit) | Yes | No | 5.8million/sec | 5.8million/sec |
| vanity-xmr-cuda | NVIDIA GPU (with CUDA) | No | No | 8.1million/sec |
Tested with: Ryzen 5950x, GTX 1660 Ti
| Characters | Example | Rough Time Estimate |
|---|---|---|
| 1 | 44h |
Instant |
| 2 | 44hi |
Instant |
| 3 | 44hin |
Instant |
| 4 | 44hint |
2 seconds |
| 5 | 44hinto |
1 minute, 30 seconds |
| 6 | 44hintoj |
1 hour, 30 minutes |
| 7 | 44hintoja |
4 days, 10 hours |
| 8 | 44hintojan |
280 days |
| 9 | 44hintojana |
49 years |
| 10 | 44hintojanai |
3,151 years |
| 11 | 44hintojanaiy |
100,852 years |
| 12 | 44hintojanaiyo |
Pretty much never |
Assuming speed of 5.8million keys a second
After finding an address, create a new Monero wallet:
Input the address, private view key, and private spend key:
And verify your new wallet address is correct:
Usage: monero-vanity [--OPTIONS]
Options:
-t, --threads <THREADS> How many threads to use [default: HALF_THREADS]
-p, --pattern <PATTERN> Address regex pattern to look for
-f, --first Start from 1st character instead of: ^4.PATTERN.*$
-r, --refresh <REFRESH> How many milliseconds in-between output refreshes [default: 500]
-v, --version Print version
-h, --help Print help (see more with '--help')
Example 1 - Basic pattern using half threads:
./monero-vanity --pattern hinto
> 44hinto...
Example 2 - Advanced regex pattern using half threads:
./monero-vanity --first --pattern "^4(4|8)h(i|1)nto.*$"
> 48hinto...
After finding the private spend key:
./monero-wallet-cli --generate-from-spend-key YOUR_WALLET_NAME
Enter the private key and the generated wallet will have the address found.
Notes:
I, O, l, 0, +, / are invalid characters in Monero addressesmonero-vanity automatically prefixes your input with ^4. and suffixes it with .*$ so that your PATTERN starts from the 3rd character until the 43rd character of the address.
Example input: hinto
Actual regex used: ^4.hinto.*$
To disable this, use --first.
Warning: this puts you in full control of the regex, you can input any value, even an impossible one.
Download here.
If you have cargo, you can install with:
cargo install monero-vanity
If you're using Arch Linux, you can install from the AUR with:
paru monero-vanity
[u8; 64] is generated (512 bits/64 bytes)Notes:
cargo build --release
Optimized for your specific CPU (up to 15%~ speed increase):
RUSTFLAGS="-C target-cpu=native" cargo build --release
Big thanks to kayabaNerve for helping me with ECC cryptography and Rust (he's the reason why it's fast).