rustywallet-vanity 0.2.0

Vanity address generator for Bitcoin and Ethereum
Documentation

rustywallet-vanity

High-performance vanity address generator for Bitcoin and Ethereum.

Features

  • Prefix/Suffix/Contains Matching: Find addresses with custom patterns
  • Multi-Pattern Search: Search for multiple patterns simultaneously
  • Case-Insensitive Matching: Find more matches faster
  • Difficulty Estimation: Know how long a search will take
  • Progress Callbacks: Track search progress in real-time
  • Parallel Processing: Utilize all CPU cores
  • Multiple Address Types: P2PKH, P2WPKH, P2TR, Ethereum

Quick Start

use rustywallet_vanity::prelude::*;
use rustywallet_keys::prelude::Network;

// Search for an address starting with "1Love"
let result = VanityGenerator::new()
    .pattern("1Love")
    .search_parallel()
    .unwrap();

println!("Address: {}", result.address);
println!("Private Key: {}", result.private_key.to_wif(Network::Mainnet));

Difficulty Estimation

use rustywallet_vanity::prelude::*;

let gen = VanityGenerator::new().pattern("1Love");
for est in gen.estimate_difficulty() {
    println!("{}", est);
}

Address Types

use rustywallet_vanity::prelude::*;

// Legacy (1...)
let result = VanityGenerator::new()
    .pattern("1BTC")
    .address_type(AddressType::P2PKH)
    .search();

// SegWit (bc1q...)
let result = VanityGenerator::new()
    .pattern("bc1qtest")
    .address_type(AddressType::P2WPKH)
    .search();

// Ethereum (0x...)
let result = VanityGenerator::new()
    .pattern("0xdead")
    .address_type(AddressType::Ethereum)
    .case_insensitive()
    .search();

Performance

Leverages rustywallet-batch for high-speed key generation (1M+ keys/sec).

License

MIT