Documentation
Everything you need to get started with the Solana Wallet Toolkit.
Quick Start
Web (This Site)
Use the Tools page directly in your browser. No installation required. All cryptography runs client-side.
Rust CLI (Fastest)
git clone https://github.com/nirholas/solana-wallet-toolkit.git cd solana-wallet-toolkit/rust cargo build --release ./target/release/solana-vanity --prefix Sol
TypeScript / Node.js
cd solana-wallet-toolkit/typescript npm install && npm run build node dist/index.js --prefix ABC
Shell Scripts
# Requires Solana CLI tools installed cd solana-wallet-toolkit/scripts chmod +x *.sh ./generate-vanity.sh Sol
CLI Reference
| Flag | Description | Example |
|---|---|---|
| --prefix, -p | Address prefix | --prefix Sol |
| --suffix, -s | Address suffix | --suffix 99 |
| --ignore-case, -i | Case-insensitive | --ignore-case |
| --threads | Thread count | --threads 8 |
| --output, -o | Output file | --output wallet.json |
| --count | Generate multiple | --count 5 |
| --dry-run | Estimate only | --dry-run |
| --quiet | Minimal output | --quiet |
Security
Official Libraries Only
All Ed25519 key generation uses solana-sdk (Rust) and @solana/web3.js (TypeScript) from Solana Labs.
Run Offline
Disconnect from the internet before generating wallets. This toolkit makes zero network calls.
Secure File Permissions
Keypair files are saved with 0600 permissions (owner read/write only).
Memory Zeroization
The Rust implementation uses the zeroize crate to clear private keys from memory.
Audit the Code
The source code is open, documented, and designed to be auditable. Read it yourself.
How It Works
- Generate random Ed25519 keypair using
solana-sdk/@solana/web3.js - Get the public key (32 bytes)
- Encode as Base58 string (Solana address format)
- Check if address matches the desired pattern
- Repeat until a match is found
- Save keypair in Solana CLI JSON format (64-byte array)
Output Format
Keypairs are saved in Solana CLI JSON format — a JSON array of 64 bytes (32 secret + 32 public):
[174,47,154,16,202,193,206,113,199,190,53,133,169,175,31,56,...]
Compatible with solana config set --keypair and other Solana CLI tools.
Comparison
How this toolkit compares to other Solana vanity address tools:
| Feature | This Toolkit | solana-keygen grind | Other Tools |
|---|---|---|---|
| Official Libraries | ✅ solana-sdk + @solana/web3.js | ✅ solana-sdk | ❌ Often custom/unknown |
| Implementations | 4 (Rust, TS, Shell, Web) | 1 (Rust CLI) | Usually 1 |
| Multi-threaded | ✅ All CPU cores | ✅ Yes | Varies |
| Prefix Search | ✅ Yes | ✅ Yes | ✅ Usually |
| Suffix Search | ✅ Yes | ❌ No | Varies |
| Case-Insensitive | ✅ Yes | ❌ No | Rarely |
| Difficulty Estimation | ✅ Built-in | ❌ No | Rarely |
| Solana CLI Compatible | ✅ Yes (64-byte JSON) | ✅ Yes | Varies |
| Browser-based | ✅ This website | ❌ No | Some (risky) |
| MCP Server | ✅ For AI agents | ❌ No | ❌ No |
| Open Source | ✅ MIT License | ✅ Apache 2.0 | Varies |
| Memory Zeroization | ✅ zeroize crate | ✅ Yes | ❌ Rarely |