KeyKiller is the GPU-powered version of the KeyKiller project, designed to achieve extreme performance in solving Satoshi puzzles on modern NVIDIA GPUs.
Leveraging CUDA, warp-level parallelism, and batch EC operations, KeyKiller CUDA pushes the limits of cryptographic key search.
The Secp256k1 algorithm is based on the excellent work of JeanLucPons/VanitySearch , FixedPaul/VanitySearch-Bitcrack,This implementation is based on modifications and improvements of the above implementation. Contributions are welcome! The algorithm has been significantly modified for CUDA. Special thanks to Jean-Luc Pons for his pioneering contributions to the cryptography community.
KeyKiller GPU-based solution to Satoshi's puzzle. This is an experimental project, Please look at it rationally!
While KeyKiller CUDA is simple to use, it leverages massive GPU parallelism** to achieve extreme performance in elliptic curve calculations, compressed public keys, and Hash160 pipelines.
In theory, 4090 automatically configures the size, and the theoretical speed is about 6G, but this needs to be tested on the actual platform. Each platform environment is different, and the results obtained are also different.
./kk -h
Usage: ./kk -r <bits> [-a <b58_addr> | -p <pubkey> | -i <file>] [options]
Modes (choose one):
-a <b58_addr> Find the private key for a P2PKH Bitcoin address.
-p <pubkey> Find the private key for a specific public key (hex, compressed format only).
-i <file> Search for a list of addresses or public keys from a file (one per line).
Keyspace:
-r <bits> Set the bit range for the search (e.g., 71 for 2^70 to 2^71-1) (required).
Options:
-R Activate random mode.
-b Enable backup mode to resume from last progress (not for random mode).
-G <ID> Specify the GPU ID to use, default is 0.
-h, --help Display this help message.
Note: When using -i, all targets in the file must be of the same type (all addresses or all public keys).
Technical Support: github.com/8891689
Below is a sample run of KeyKiller for reference.
RTX1030
./kk -r 33 -a 187swFMjz1G54ycVU56B7jZFHFTNVQFDiu
[+] KeyKiller v.007
[+] Search: 187swFMjz1G54ycVU56B7jZFHFTNVQFDiu [P2PKH/Compressed]
[+] Start Fri Sep 19 04:40:53 2025
[+] Range (2^33)
[+] from : 0x100000000
[+] to : 0x1FFFFFFFF
[+] GPU: GPU #0 NVIDIA GeForce GT 1030 (3x128 cores) Grid(256x256)
[+] Starting keys set in 0.02 seconds
[+] GPU 57.61 Mkey/s][Total 2^31.39][Prob 65.62%] [50% in seconds][Found 0]
[!] (Add): 187swFMjz1G54ycVU56B7jZFHFTNVQFDiu
[!] (WIF): p2pkh:KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9MDGKrXXQL647jj
[!] (HEX): 0x00000000000000000000000000000000000000000000000000000001A96CA8D8
RTX1030
./kk -r 33 -a 187swFMjz1G54ycVU56B7jZFHFTNVQFDiu -R
[+] KeyKiller v.007
[+] Search: 187swFMjz1G54ycVU56B7jZFHFTNVQFDiu [P2PKH/Compressed]
[+] Start Fri Sep 19 04:41:56 2025
[+] Random mode
[+] Range (2^33)
[+] from : 0x100000000
[+] to : 0x1FFFFFFFF
[+] GPU: GPU #0 NVIDIA GeForce GT 1030 (3x128 cores) Grid(384x256)
[+] Starting keys set in 0.03 seconds
[+] [GPU 56.93 Mkey/s][Total 2^31.94][Prob 9.6e+01%][50% in seconds][Found 0]
[!] (Add): 187swFMjz1G54ycVU56B7jZFHFTNVQFDiu
[!] (WIF): p2pkh:KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9MDGKrXXQL647jj
[!] (HEX): 0x00000000000000000000000000000000000000000000000000000001A96CA8D8
RTX1030
./kk -r 31 -p 0387dc70db1806cd9a9a76637412ec11dd998be666584849b3185f7f9313c8fd28
[+] KeyKiller v.007
[+] Search: 0387dc70db1806cd9a9a76637412ec11dd998be666584849b3185f7f9313c8fd28 [Public Key]
[+] Start Fri Sep 19 04:59:25 2025
[+] Range (2^31)
[+] from : 0x40000000
[+] to : 0x7FFFFFFF
[+] GPU: GPU #0 NVIDIA GeForce GT 1030 (3x128 cores) Grid(256x256)
[+] Starting keys set in 0.02 seconds
[+] GPU 100.04 Mkey/s][Total 2^29.17][Prob 56.25%] [50% in seconds][Found 0]
[!] (Pub): 0387dc70db1806cd9a9a76637412ec11dd998be666584849b3185f7f9313c8fd28
[!] (WIF): Compressed:KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M9SmFMSCA4jQRW
[!] (HEX): 0x000000000000000000000000000000000000000000000000000000007D4FE747
RTX1030
./kk -r 31 -p 0387dc70db1806cd9a9a76637412ec11dd998be666584849b3185f7f9313c8fd28 -R
[+] KeyKiller v.007
[+] Search: 0387dc70db1806cd9a9a76637412ec11dd998be666584849b3185f7f9313c8fd28 [Public Key]
[+] Start Fri Sep 19 04:57:39 2025
[+] Random mode
[+] Range (2^31)
[+] from : 0x40000000
[+] to : 0x7FFFFFFF
[+] GPU: GPU #0 NVIDIA GeForce GT 1030 (3x128 cores) Grid(384x256)
[+] Starting keys set in 0.03 seconds
[+] [GPU 98.95 Mkey/s][Total 2^26.58][Prob 9.4e+00%][50% in seconds][Found 0]
[!] (Pub): 0387dc70db1806cd9a9a76637412ec11dd998be666584849b3185f7f9313c8fd28
[!] (WIF): Compressed:KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M9SmFMSCA4jQRW
[!] (HEX): 0x000000000000000000000000000000000000000000000000000000007D4FE747
make all
git clone https://gitlab.com/8891689/keykiller-cuda.git
| GPU | Grid | Speed (Mkeys/s) | Notes |
| RTX1030 | 256,256 | 56 Mkeys/s | My test |
| GPU | Grid | Speed (Mkeys/s) | Notes |
| RTX1030 | 256,256 | 99.6 Mkeys/s | My test |
Usage: ./kk [-n <bits> | -r <min:max>] [-a <addr> | -h <hash> | -p <pub> | -i <file> ] [options]
Modes (choose one):
-a <b58_addr> Find private key for Address. Supports Prefixes (e.g., 1Bit...).
-h <hash160> Find private key for Hash160. Supports Hex Prefixes.
-p <pubkey> Find private key for Public Key. Supports Hex Prefixes.
-i <file> Search for a list of targets from a file (one per line).
Keyspace (choose one):
-n <bits> Set the bit range for the search (e.g., -n 71 for 2^71 to 2^71-1 , Bitcoin Puzzle #71 ).
-r <hexA:hexB> Search keys in the hexadecimal range from A to B (e.g., -r 400000000000000000:7fffffffffffffffff Bitcoin Puzzle #71 ).
Options:
-R Activate random mode.
-b Enable backup mode to resume from last progress (not for random mode).
* Note: When performing multiple backups, you need to rename the backup files in the specified directory before proceeding!
-G <ID> Specify the GPU ID to use, default is 0.
-h, --help Display this help message.
Note: When using -i, mixed types (Address, Hash160, PubKey) and Prefixes are supported.
Press 'p' at any time to pause/resume.
Technical Support: www.8891689.com
chmod +x keyelf_gui
Once completed, double-click to use the graphical interface version.
Once completed, double-click to use the graphical interface version.
The advanced graphical interface version is a paid service. You need to pay a membership fee to have the same password as other paid services in the open source library. This is because development requires financial support to maintain or develop more services. Thank you for your understanding!
If you have any questions, please contact me or visit the website directly: https://www.8891689.com/
If this project has been helpful or inspiring, please consider buying me a coffee. Your support is greatly appreciated. Thank you!
BTC: bc1qt3nh2e6gjsfkfacnkglt5uqghzvlrr6jahyj2k
ETH: 0xD6503e5994bF46052338a9286Bc43bC1c3811Fa1
DOGE: DTszb9cPALbG9ESNJMFJt4ECqWGRCgucky
TRX: TAHUmjyzg7B3Nndv264zWYUhQ9HUmX4Xu4
This tool is for learning and research purposes only. Do not use it for illegal activities!
Decrypting someone else's private key is illegal and morally reprehensible. Please comply with local laws and regulations and use this tool only after understanding the associated risks.
The developer is not responsible for any direct or indirect financial losses or legal liabilities resulting from the use of this tool.