(c) 2024–2026, RetiredCoder (RC) + TrueCollider fork
TrueRCKangaroo-Puzzles is free and open-source (GPLv3 — same as upstream; not MIT).
Upstream: https://github.com/RetiredC/RCKangaroo
This fork: https://github.com/TrueSc3nt/TrueRCKangaroo-Puzzles
SOTA Kangaroo ECDLP on NVIDIA GPUs, retargeted to Bitcoin Puzzle #140, with research inventions — without claiming any √N break.
RCK_FORK_VERSION 3.8-p140
Discussion: https://bitcointalk.org/index.php?topic=5517607
| Capability | Class | What it is | What it is NOT |
|---|---|---|---|
| SOTA kangaroo | core | Pollard's kangaroo GPU search | A fast #140 solve |
| v4 turbo ASM | core (Ada/Blackwell) | RetiredC pure-ASM cubins sm89/sm120 | Available as executable ASM on sm_86 yet |
| CUDA fatbin StreamTrio | constant-factor | Real multi-stream hop/DP/copy on sm75–89 | Complexity-class change |
| Inventions pack | mixed | JumpDNA, TagTrace, Chronos, … | Guaranteed key recovery |
See ROADMAP.md for Ampere ASM ULDC port and dual-path TKparams work.
Recommended (VS 2022 Build Tools + CUDA 12.8 — avoids VS 2026 cudafe++ AV):
_build_release.batBuilds multi-arch fatbin sm_75 / sm_80 / sm_86 / sm_89, links CallCubin + turbo_cubin, does not use cuda_host_shim.
Output: RCKangaroo.exe at package root (bats expect this).
Ship cubins next to the exe: kernel_sm89.cubin, kernel_sm120.cubin (optional experimental upstream_v4_optional/kernel_sm86.cubin).
Dry-run / rent scaffolding for Puzzle #140 on Vast.ai: see docs/VAST.md.
RUN_VAST_DRY.bat
RUN_VAST_PUZZLE140.batDefault is dry-run (prints API/SSH steps). Live create needs VAST_API_KEY + --i-understand-billing. Do not leave rented instances running unpaid for.
| Field | Value |
|---|---|
| Address | 1QKBaU6WAeycb3DbKbLBkX7vJiaS8r42Xo |
| Pubkey | 031f6a332d3c5c4f2de2378c012f429cd109ba07d69690c6c701b6bb87860d6640 |
| Start | 80000000000000000000000000000000000 (2^139) |
| End | fffffffffffffffffffffffffffffffffff (2^140 - 1) |
| Range | 139 bits (-puzzle 140) |
| Ref | https://privatekeys.pw/puzzles/bitcoin-puzzle-tx#p140 |
Honest ETA: ~1.15 × 2^(139/2) ≈ 2^69.5 group ops. One 3060 Ti is years alone.
RCKangaroo.exe -puzzle 140 -profile 3060ti -autotune -gpu 0 -max 0.01Expect log lines like:
GPU 0: RTX Ampere sm_86 — optimized CUDA fatbin pathGPU 0: turbo kernel path ACTIVE (sm_86 CUDA fatbin + StreamTrio/DualLane, no host-shim)GPU 0: StreamTrio ON (...)
| GPU | Cubin | Status in this fork |
|---|---|---|
| RTX 40xx (sm_89) | kernel_sm89.cubin |
Loaded; Asm execute dual-path still pending (CUDA hops active) |
| RTX 50xx (sm_120) | kernel_sm120.cubin |
Same |
| RTX 3060 Ti (sm_86) | experimental artifact only | Not executable until ULDC→LDC ASM port (Ada ISA) |
| Turing/Ampere others | fatbin | CUDA StreamTrio |
3.8.1-p140: Fix Ampere 0 Mk/s FILL stall — StreamTrio now launches unified ABC on the hop stream (shim-era semantics), KernelGen progress logs, stats average ignores empty window slots. Verified on RTX 3060 Ti: ~1900 MKeys/s with rising DPs.
3.8-p140: Repo → TrueRCKangaroo-Puzzles. VS2022 fatbin rebuild; shim removed; CallCubin/turbo selector; #140 autotune; ROADMAP; experimental sm86 cubin artifact.
3.7-p140: Retarget #135 → #140; vendored upstream v4 assets.
Older 3.x-p135 notes: inventions / StreamTrio / JumpDNA — see git history.