Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Production-grade multi-threaded Rust vanity address generator for Solana — 100K+ keys/sec using Rayon parallel iterators with solana-sdk, Base58 pattern matching, prefix/suffix support, security-hardened file output, and Criterion benchmarks.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Production-grade Rust binary achieving 100K+ keys/sec using Rayon parallel iterators with security-hardened file output and Solana CLI compatibility.
CLI Args ──► VanityConfig ──► VanityGenerator
│
Rayon par_iter
┌─────┼─────┐
Thread Thread Thread ...
│ │ │
Keypair::new() per iteration
│ │ │
Base58 encode + match
│ │ │
└─────┼─────┘
│
AtomicBool found
│
SecureOutput (0o600)
| Argument | Description |
|---|---|
--prefix | Required Base58 prefix to match |
--suffix | Optional Base58 suffix |
--output | Output file path (default: stdout) |
--threads | Number of threads (default: all CPUs) |
struct VanityConfig {
prefix: String,
suffix: Option<String>,
output: Option<PathBuf>,
threads: Option<usize>,
}
struct GeneratedAddress {
keypair: Keypair,
address: String,
attempts: u64,
}
fn generate(config: &VanityConfig) -> Result<GeneratedAddress> {
let found = AtomicBool::new(false);
let result = (0..num_cpus::get())
.into_par_iter()
.find_map_any(|_| {
let mut attempts = 0u64;
loop {
if found.load(Ordering::Relaxed) { return None; }
attempts += 1;
let keypair = Keypair::new();
let address = keypair.pubkey().to_string();
if matches_pattern(&address, &config) {
found.store(true, Ordering::Relaxed);
return Some(GeneratedAddress { keypair, address, attempts });
}
}
});
result.ok_or_else(|| anyhow!("No match found"))
}
| Feature | Implementation |
|---|---|
| CSPRNG | OsRng via solana-sdk |
| Memory cleanup | Zeroize trait on secret key bytes |
| File permissions | 0o600 via std::fs::set_permissions |
| No network | Pure offline operation |
| Crate | Purpose |
|---|---|
solana-sdk | Keypair generation, Base58, signing |
rayon | Data-parallel iteration |
clap | CLI argument parsing |
anyhow | Error handling |
criterion | Benchmarking |
cargo test # Unit + integration tests
cargo test --test security_tests # Security-focused tests
cargo bench # Criterion benchmarks
solana-sdk for cryptographic operationsZeroize on all key material0o600 immediately after writingAtomicBool for cross-thread termination signalingfind_map_any for early termination on first matchpump ≠ PumpKeypair::new() uses OS entropy — do not seed with user inputrayon thread pool size should match CPU cores for optimal throughput아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Manage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and export notes). Use when a user asks SolanaOS to add a note, list notes, search notes, or manage note folders.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Manage Apple Reminders via remindctl CLI (list, add, edit, complete, delete). Supports lists, date filters, and JSON/plain output.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Create, search, and manage Bear notes via grizzly CLI.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
BluOS CLI (blu) for discovery, playback, grouping, and volume.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.