Skip to content

v0.1.0

Choose a tag to compare

@oritwoen oritwoen released this 12 Dec 16:41
· 85 commits to main since this release

v0.1.0 is the initial release.

πŸ‘€ Highlights

🦘 GPU-accelerated Pollard's Kangaroo for solving ECDLP on secp256k1. Runs on AMD, NVIDIA, Intel, and Apple Silicon through wgpu β€” Vulkan, Metal, and DX12, no CUDA dependency.

⚑ GPU Compute

Cross-platform GPU acceleration via wgpu compute shaders. WGSL implementations of secp256k1 field arithmetic and Jacobian point operations, with auto-calibrated kangaroo count and DP bits for your hardware.

πŸ” Pollard's Kangaroo

O(√n) discrete log solver with tame and wild kangaroos. Distinguished Points keep memory usage practical β€” only points matching a specific bit pattern get stored. Configurable search range, thousands of parallel jumps per GPU dispatch.

πŸ’» CLI & Library

Command-line tool with progress bar, JSON output, and quiet mode. Also ships as a Rust library (KangarooSolver). Includes a CPU solver for testing and comparison.

πŸ§ͺ Testing

Test fixtures from real Bitcoin puzzles (20-25 bit), CPU/GPU parity validation, and Criterion benchmarks.

βœ… Installing

cargo install kangaroo

πŸ‘‰ Changelog

πŸš€ Features

  • gpu: Cross-platform GPU compute via wgpu (Vulkan/Metal/DX12)
  • gpu: WGSL shaders for secp256k1 field arithmetic and Jacobian point operations
  • gpu: Automatic kangaroo count and DP bits calibration
  • solver: Distinguished Points for memory-efficient collision detection
  • solver: Pure CPU fallback solver
  • cli: Progress bars, JSON output, quiet mode
  • lib: Public library API (KangarooSolver)
  • tests: Puzzle fixtures and Criterion benchmarks

❀️ Contributors