Expand description
GPU Scatter-Gather Wordlist Generator
The world’s fastest wordlist generator using GPU acceleration.
§Core Innovation
Instead of sequential odometer iteration (like maskprocessor), this uses direct index-to-word mapping via mixed-radix arithmetic on the GPU:
Index → Mixed-Radix Decomposition → WordThis enables:
- Massively parallel generation (every thread works independently)
- O(1) random access to any position in the keyspace
- Perfect GPU utilization with coalesced memory access
- 500M-1B+ words/second throughput (3-7x faster than maskprocessor)
- Multi-GPU support for linear scaling (v1.1.0+)
§Example Usage
use gpu_scatter_gather::{WordlistGenerator, Charset};
let mut generator = WordlistGenerator::builder()
.charset(1, Charset::from("abc"))
.charset(2, Charset::from("123"))
.mask(&[1, 2, 1, 2]) // Pattern: ?1?2?1?2
.build()?;
// Generate wordlist
for word in generator.iter() {
println!("{}", String::from_utf8_lossy(&word));
}Re-exports§
pub use charset::Charset;pub use keyspace::calculate_keyspace;pub use keyspace::index_to_word;pub use mask::Mask;
Modules§
- bindings
- Output bindings for different consumption patterns
- charset
- Charset management for wordlist generation
- ffi
- C Foreign Function Interface (FFI) layer
- gpu
- GPU acceleration module using CUDA
- keyspace
- Keyspace calculation and index-to-word conversion
- mask
- Mask pattern parsing and management
- multigpu
- Multi-GPU context management
- transpose
- SIMD-optimized matrix transpose for column-major to row-major conversion
Structs§
- Wordlist
Generator - Main wordlist generator
- Wordlist
Generator Builder - Main wordlist generator builder
- Wordlist
Iterator - Iterator over wordlist entries