vgenBitcoin Vanity Address Generator with GPU AccelerationCommand-line tool for generating Bitcoin addresses matching regex patterns. Uses wgpu compute shaders for GPU acceleration (Vulkan/Metal/DX12) - works on AMD, NVIDIA, Intel, and Apple Silicon. No CUDA dependency.
Part of the same toolset as
Kangaroo,
boha and
vuke.
Features- Full regex pattern matching (not just prefix)
- Address formats: P2PKH (1...), P2WPKH/Bech32 (bc1q...), P2TR (bc1p...), Ethereum (0x...)
- GPU acceleration via wgpu (Vulkan/Metal/DX12/OpenGL)
- CPU parallel scanning with rayon (automatic fallback)
- Interactive TUI with real-time hashrate, luck indicator, sparkline chart
- Bitcoin Puzzle range scanning with boha data provider integration
- Difficulty estimation
- Private key verification
- Output: text, JSON, JSONL, CSV, minimal (WIF only)
InstallationArch Linux (AUR):
Via Cargo:
From source:
git clone https://github.com/oritwoen/vgen
cd vgen
cargo build --release
Usage# Find address starting with "1Cat"
vgen generate -p "^1Cat"
# Case insensitive
vgen generate -p "^1cat" -i
# Bech32 ending with "dead"
vgen generate -p "dead$" -f p2wpkh
# Ethereum
vgen generate -p "^0xdead" -f ethereum
# Find 5 matches
vgen generate -p "^1Cat" -c 5
# CPU only
vgen generate -p "^1Cat" --no-gpu
# Estimate difficulty
vgen estimate -p "^1CatDog"
# Bitcoin Puzzle range scan using boha
vgen range -p "boha:b1000:66"
# Verify private key
vgen verify -k "5HueCGU8rMjxEXxiPuD5BDku4MkFqeZyd4dZ1jvhTVqvbTLvyTJ"
# JSON output
vgen generate -p "^1Cat" -o json
TUI
Enabled by default in terminal sessions. Shows search config, hashrate, checked keys, elapsed time, luck, performance chart, and found matches with WIF keys.
Pattern syntaxStandard Rust regex. Base58 excludes 0, O, I, l. Bech32 is always lowercase and excludes 1, b, i, o.
^1Cat - starts with "1Cat"
dead$ - ends with "dead"
^1[Cc]at - "1Cat" or "1cat"
^1.*dead$ - starts with "1", ends with "dead"
Data providersIntegrates with
boha for puzzle data:
# Vanity with puzzle address prefix
vgen generate -p "boha:b1000:66" -l 6
# Puzzle solving (auto key range + full address match)
vgen range -p "boha:b1000:66"
Related projects-
kangaroo - GPU Pollard's Kangaroo ECDLP solver (same wgpu stack)
-
boha - Crypto puzzle & bounty data library
-
vuke - Research tool for vulnerable key generation (brainwallet, milksad, LCG, xorshift)
Links- GitHub:
https://github.com/oritwoen/vgen- crates.io:
https://crates.io/crates/vgen- License: MIT