BitCrack (OP)
Jr. Member
Offline
Activity: 30
Merit: 122
|
|
June 11, 2018, 02:39:00 AM Last edit: June 17, 2018, 09:59:51 PM by BitCrack Merited by ABCbits (32), hugeblack (24), tyz (20), NotATether (20), Tamarindei (8), math09183 (5), suchmoon (4), JayJuanGee (2), Husna QA (2), bitmover (1), joniboini (1), gogxmagog (1), TheWolf666 (1) |
|
Hi all, I've been working on a tool for brute-forcing Bitcoin private keys. The main purpose of this tool is to contribute to the effort of solving the Bitcoin puzzle transactions: https://blockchain.info/tx/08389f34c98c606322740c0be6a7125d9860bb8d5cb182c02f98461e5fa6cd15Screenshot: It is open-source under the MIT licence and requires no external dependencies other than the CUDA toolkit. It builds on Windows using Visual Studio 2015, and Linux using Make (you might have to edit the Makefile and point it towards your CUDA toolkit directory). It can search for compressed/uncompressed keys or both. The performance is good, but can likely be improved. On my hardware (GeForce GT 640) it gets 9.4 million keys per second compressed, 7.3 million uncompressed. Note: -Currently it is CUDA only. -It can only search one target key at a time Features I would like to add if there is enough interest for the project: -Support for searching multiple target keys at one time Done-OpenCL/AMD device support -CPU with AVX/AVX2/SHA support -Checkpoints/Stop and resume -Vanity address generation Source and Win32/Win64 binaries available here: https://github.com/brichard19/BitCrackhttps://github.com/brichard19/BitCrack/releases/tag/v0.0.6Thoughts? Thanks!
|
|
|
|
bitmover
Legendary
Offline
Activity: 2478
Merit: 6316
bitcoindata.science
|
Hi all,
I've been working on a tool for brute-forcing Bitcoin private keys.
.....
The performance is good, but can likely be improved. On my hardware (GeForce GT 640) it gets 9.4 million keys per second compressed, 7.3 million uncompressed.
....
Thoughts?
Thanks!
what I am going to say is purely theoretical, as I have never tried to brute force private keys. I don´t think you will have any success doing this. If you have enough hash power, you would probably make more money working as an honest node, mining. Bitcoin protocol is secure enough. If it were brute force-able, bitcoin wouldn't be worth anything. What i think you could do is to find a collision. If someone made an insecure private key, by just hashing some passphrase... maybe you could have some luck. I tried to do this once, but never found anything. I tried those terms like "wallet" "bitcoin". I found some addresses which used to have balances, but not anymore. But I was doing manually, like 1 address/3 minutes lol If you could somehow at the same time check if any of those 9.4 million keys/sec have any balance in btc/bch/btg etc... But I don't think any of that will work, and will be a waste of time and resources.
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4361
<insert witty quote here>
|
what I am going to say is purely theoretical, as I have never tried to brute force private keys.
I don´t think you will have any success doing this.
I think you misunderstand what it is that the OP is attempting to achieve... What i think you could do is to find a collision. If someone made an insecure private key, by just hashing some passphrase... maybe you could have some luck.
That is exactly what the OP is trying to achieve: The Bitcoin puzzle transactions were setup as an exercise to see how tough it is bruteforce BTC... and is essentially what the LBC is attempting to cash in on (aside from other "collateral damage" of people with weak keys). What is interesting is that the addresses in the middle range of amounts (0.056 to 0.16 BTC), which were theoretically "easier" than the addresses with the larger amounts, have not yet been "cracked"??!?
|
|
|
|
|
Thirdspace
|
|
June 11, 2018, 08:19:19 AM |
|
I've been working on a tool for brute-forcing Bitcoin private keys. The main purpose of this tool is to contribute to the effort of solving the Bitcoin puzzle transactions:
that's the main group effort for this btc puzzle, however the program is closed-source (cmiiw) OP is trying to do the same effort, but without collective efforts this will be redundant The Bitcoin puzzle transactions were setup as an exercise to see how tough it is bruteforce BTC... and is essentially what the LBC is attempting to cash in on (aside from other "collateral damage" of people with weak keys).
What is interesting is that the addresses in the middle range of amounts (0.056 to 0.16 BTC), which were theoretically "easier" than the addresses with the larger amounts, have not yet been "cracked"??!?
I think the higher amounts that already spent was not 'cracked' but moved by the creator and I just noticed 1LzhS3k3e9Ub8i2W1V8xQFdB8n2MYCHPCa has just been found recently! on May 29th However LBC site still show the task for finding its key Did someone else find it? or was LBC site just slow on updating its stats page? Time to hit #55 of the puzzle transaction (1LzhS3k3e9Ub8i2W1V8xQFdB8n2MYCHPCa) 0 to 112 days at current speed in sub-55bit search space.
|
|
|
|
Gerci
Member
Offline
Activity: 87
Merit: 10
|
|
June 11, 2018, 08:38:28 AM |
|
Hi all, I've been working on a tool for brute-forcing Bitcoin private keys. The main purpose of this tool is to contribute to the effort of solving the Bitcoin puzzle transactions: https://blockchain.info/tx/08389f34c98c606322740c0be6a7125d9860bb8d5cb182c02f98461e5fa6cd15Screenshot: It is open-source under the MIT licence and requires no external dependencies other than the CUDA toolkit. It builds on Windows using Visual Studio 2015, and Linux using Make (you might have to edit the Makefile and point it towards your CUDA toolkit directory). It can search for compressed/uncompressed keys or both. The performance is good, but can likely be improved. On my hardware (GeForce GT 640) it gets 9.4 million keys per second compressed, 7.3 million uncompressed. Note: -Currently it is CUDA only. -It can only search one target key at a time Features I would like to add if there is enough interest for the project: -Support for searching multiple target keys at one time -OpenCL/AMD device support -CPU with AVX/AVX2/SHA support -Checkpoints/Stop and resume -Vanity address generation Source and Win32/Win64 binaries available here: https://github.com/brichard19/BitCrackhttps://github.com/brichard19/BitCrack/releases/tag/v0.0.6Thoughts? Thanks! A set of tools for Bitcoin private keys that destroy. Currently the project requires a CUDA GPU. The main purpose of this project is to contribute to solving Bitcoin puzzle transactions: A transaction with 32 addresses becomes increasingly difficult to solve. Currently this project is only CUDA, but I would like to bring it to another architecture if there is enough interest in the project.
|
|
|
|
arulbero
Legendary
Offline
Activity: 1937
Merit: 2080
|
|
June 11, 2018, 09:01:08 AM |
|
I just noticed 1LzhS3k3e9Ub8i2W1V8xQFdB8n2MYCHPCa has just been found recently! on May 29thHowever LBC site still show the task for finding its key Did someone else find it? or was LBC site just slow on updating its stats page? LBC will search any key in sub-55 bit space, its main goal is not related to the puzzle transaction.
|
|
|
|
Thirdspace
|
|
June 11, 2018, 10:25:15 PM |
|
LBC will search any key in sub-55 bit space, its main goal is not related to the puzzle transaction.
on stats page, they put up a notice "Time to hit #55 of the puzzle transaction (1LzhS3k3e9Ub8i2W1V8xQFdB8n2MYCHPCa)" so I thought they're aiming for those addresses listed in that puzzle transaction https://blockchain.info/tx/08389f34c98c606322740c0be6a7125d9860bb8d5cb182c02f98461e5fa6cd15 @OP can your program work collectively in a pool? running it individually without any means of cooperative works would be somewhat useless and waste of resources
|
|
|
|
monkeydominicorobin
Full Member
Offline
Activity: 294
Merit: 104
✪ NEXCHANGE | BTC, LTC, ETH & DOGE ✪
|
|
June 13, 2018, 01:12:58 AM |
|
Hi all, I've been working on a tool for brute-forcing Bitcoin private keys. The main purpose of this tool is to contribute to the effort of solving the Bitcoin puzzle transactions: https://blockchain.info/tx/08389f34c98c606322740c0be6a7125d9860bb8d5cb182c02f98461e5fa6cd15Screenshot: It is open-source under the MIT licence and requires no external dependencies other than the CUDA toolkit. It builds on Windows using Visual Studio 2015, and Linux using Make (you might have to edit the Makefile and point it towards your CUDA toolkit directory). It can search for compressed/uncompressed keys or both. The performance is good, but can likely be improved. On my hardware (GeForce GT 640) it gets 9.4 million keys per second compressed, 7.3 million uncompressed. Note: -Currently it is CUDA only. -It can only search one target key at a time Features I would like to add if there is enough interest for the project: -Support for searching multiple target keys at one time -OpenCL/AMD device support -CPU with AVX/AVX2/SHA support -Checkpoints/Stop and resume -Vanity address generation Source and Win32/Win64 binaries available here: https://github.com/brichard19/BitCrackhttps://github.com/brichard19/BitCrack/releases/tag/v0.0.6Thoughts? Thanks! Assuming that you are successful. What is the use of cracking keys when you are not scanning for balances. This is just another BIP39 social engineering clone tool. Yes BIP39 is a cool improvement but don't use it to fool the non-programmers.
|
|
|
|
BitCrack (OP)
Jr. Member
Offline
Activity: 30
Merit: 122
|
|
June 13, 2018, 01:56:38 AM Last edit: June 13, 2018, 03:07:20 AM by BitCrack |
|
I'm not touching LBC, as the client source code is not available. My machine is getting ~1 million keys per second with oclVanityGen. Not sure if it's not using my GPU or not picking optimal parameters. Assuming that you are successful. What is the use of cracking keys when you are not scanning for balances. This is just another BIP39 social engineering clone tool. Yes BIP39 is a cool improvement but don't use it to fool the non-programmers.
I imagine people would check the balance for an address before trying to crack it. But like I said, it's main purpose is for the puzzle addresses, which have balances. It's not social engineering anything. It's simply a brute-force tool.
|
|
|
|
Coin-1
Legendary
Offline
Activity: 2618
Merit: 2304
|
|
June 13, 2018, 03:47:06 AM Last edit: June 13, 2018, 07:57:56 AM by Coin-1 Merited by JayJuanGee (1) |
|
My machine is getting ~1 million keys per second with oclVanityGen. Not sure if it's not using my GPU or not picking optimal parameters. Yes, your program might be useful for creating a "beautiful" Bitcoin-addresses using VanityGen, but only for that. It's not social engineering anything. It's simply a brute-force tool.
Please don't waste your time and resources to brute force a Bitcoin private key. Let's calculate how much time you need to crack one Bitcoin-address on your machine. You said that your performance is 9 million BTC-addresses per second, i.e. approximately 2 23 BTC-addresses per second. Thus the brute forcing will take 2 160-23 = 2 137 seconds! I guess it is more than septillion (10 24) years! Note that this calculating is very approximate, because actually the private key length is 2 256, but I think it is enough to stop making an attempts to crack Bitcoin-addresses.
|
|
|
|
monkeydominicorobin
Full Member
Offline
Activity: 294
Merit: 104
✪ NEXCHANGE | BTC, LTC, ETH & DOGE ✪
|
|
June 14, 2018, 02:46:31 AM |
|
I'm not touching LBC, as the client source code is not available. My machine is getting ~1 million keys per second with oclVanityGen. Not sure if it's not using my GPU or not picking optimal parameters. Assuming that you are successful. What is the use of cracking keys when you are not scanning for balances. This is just another BIP39 social engineering clone tool. Yes BIP39 is a cool improvement but don't use it to fool the non-programmers.
I imagine people would check the balance for an address before trying to crack it. But like I said, it's main purpose is for the puzzle addresses, which have balances. It's not social engineering anything. It's simply a brute-force tool. Once you try to get people involved in a crusade like yours. It is social engineering. Your asking them to use your tool which is wasting computing resources. How can you brute force something that has combinations that almost rivals the number of atoms in our universe which is sha256.
|
|
|
|
MrCrank
|
|
June 15, 2018, 06:18:48 PM |
|
This is good idea. Do you think is it possible? For this need many years.. or create worldwide GPU online pool
|
|
|
|
BitCrack (OP)
Jr. Member
Offline
Activity: 30
Merit: 122
|
|
June 16, 2018, 12:14:36 PM |
|
Good project idea.
How to deploy this to 100 CUDA cards?
thanks
It doesn't have distributed processing right now but it's on the to-do list. For now you'll need to run it for each GPU on each machine. It shouldn't be too difficult if you have SSH access to your machines.
|
|
|
|
butka
|
|
June 22, 2018, 05:44:59 AM |
|
For all those (like me) wondering what the heck these puzzle transactions are, here is a link to an older tread trying to explain that: https://bitcointalk.org/index.php?topic=1306983.0Now at least you would have a clue what the OP is trying to achieve.
|
|
|
|
Kakmakr
Legendary
Offline
Activity: 3542
Merit: 1965
Leading Crypto Sports Betting & Casino Platform
|
|
June 22, 2018, 06:08:55 AM |
|
Is there a way that this program can be changed to query every private key to see if it contains any bitcoins, instead of targeting specific predefined private keys? I think the probability to find a private key that contains some coins are more likely than brute forcing a specific private key? Looking at the odds, it might be easier to just save up the electricity cost to do this over years, than having enough luck to get 1 private key that contains some coins.
|
..Stake.com.. | | | ▄████████████████████████████████████▄ ██ ▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄ ██ ▄████▄ ██ ▀▀▀▀▀▀▀▀▀▀ ██████████ ▀▀▀▀▀▀▀▀▀▀ ██ ██████ ██ ██████████ ██ ██ ██████████ ██ ▀██▀ ██ ██ ██ ██████ ██ ██ ██ ██ ██ ██ ██████ ██ █████ ███ ██████ ██ ████▄ ██ ██ █████ ███ ████ ████ █████ ███ ████████ ██ ████ ████ ██████████ ████ ████ ████▀ ██ ██████████ ▄▄▄▄▄▄▄▄▄▄ ██████████ ██ ██ ▀▀▀▀▀▀▀▀▀▀ ██ ▀█████████▀ ▄████████████▄ ▀█████████▀ ▄▄▄▄▄▄▄▄▄▄▄▄███ ██ ██ ███▄▄▄▄▄▄▄▄▄▄▄▄ ██████████████████████████████████████████ | | | | | | ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄ █ ▄▀▄ █▀▀█▀▄▄ █ █▀█ █ ▐ ▐▌ █ ▄██▄ █ ▌ █ █ ▄██████▄ █ ▌ ▐▌ █ ██████████ █ ▐ █ █ ▐██████████▌ █ ▐ ▐▌ █ ▀▀██████▀▀ █ ▌ █ █ ▄▄▄██▄▄▄ █ ▌▐▌ █ █▐ █ █ █▐▐▌ █ █▐█ ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀█ | | | | | | ▄▄█████████▄▄ ▄██▀▀▀▀█████▀▀▀▀██▄ ▄█▀ ▐█▌ ▀█▄ ██ ▐█▌ ██ ████▄ ▄█████▄ ▄████ ████████▄███████████▄████████ ███▀ █████████████ ▀███ ██ ███████████ ██ ▀█▄ █████████ ▄█▀ ▀█▄ ▄██▀▀▀▀▀▀▀██▄ ▄▄▄█▀ ▀███████ ███████▀ ▀█████▄ ▄█████▀ ▀▀▀███▄▄▄███▀▀▀ | | | ..PLAY NOW.. |
|
|
|
butka
|
|
June 22, 2018, 08:25:22 AM |
|
Does your tool include the increasing bits of entropy with each consecutive address? This pattern was indicated before: I see a pattern but I do not think it will help much.
My conjecture is that the sequence number (the BTC amount) simply states the number of random bits in the private key.
Check it out:
The 0.001 BTC output used a 1 bit key (already claimed obviously)
The 0.002 BTC output used a 2 bit key
The 0.003 BTC output used a 3 bit key
etc...
The 0.019 BTC output used a 19 bit key
So I would claim the next unclaimed output uses a 51 bit key.
Interesting. Here's a thought. What if that is the ONLY pattern. Consider the possibility that the person that created this "puzzle" has done so as a form of "canary in the coal mine". The idea would be to generate a bitcoin address completely randomly, but which only uses X bits of entropy. Then progressively store large values of bitcoins for each increase in entropy to provide an incentive for someone to try and access it. So: - The only possible address with 1 bit of entropy is the address associated with the private key having binary value 1
- There are 3 possible addresses with 2 bits of entropy. The addresses associated with the private keys having each of the following binary values (01, 10, 11), and one of them was chosen at random (11)
- There are 7 possible addresses with 3 bits of entropy, The addresses associated with the private keys having each of the following values (001, 010, 011, 100, 101, 110, and 111), and one of them was chosen at random (111)
- There are 15 possible addresses with 4 bits of entropy, and one of them was chosen at random (1000)
- There are 31 possible addresses with 5 bits of entropy, and one of them was chosen at random (10101)
- There are 63 possible addresses with 6 bits of entropy, and one of them was chosen at random (110001)
- There are 127 possible addresses with 7 bits of entropy, and one of them was chosen at random (1001100)
- and so on
By looking at which addresses have been "claimed", the creator of the "puzzle" can get a feel for the current security of version 1 bitcoin addresses. So, if there are 50 addresses that have been "claimed", perhaps they'll avoid using any bitcoin address that has a private key with less than 51 binary digits for storing large amounts (actually, I'd probably go a bit higher than that just to be safe), and would have a feel for how secure addresses with 160 or more bits of entropy would be. If that is what's going on here, then there may not be a "formula" or "pattern" that can be used. To get the 51st address, you'd just have to brute force try all addresses associated with private keys between 1125899906842624 and 2251799813685248 (which is only about 1.126 X 10 15 addresses).
|
|
|
|
holy_ship
Jr. Member
Offline
Activity: 115
Merit: 1
|
|
September 13, 2018, 05:28:55 AM |
|
Hey! Still no benchmarks on good cards?
|
|
|
|
giftseller8x
Newbie
Offline
Activity: 19
Merit: 1
|
|
September 14, 2018, 10:30:56 AM |
|
Hey! Still no benchmarks on good cards?
I have try with my 1060 D:\C\BitCrack>BitCrack64 1FshYsUh3mqgsG29XpZ23eLjWV8Ur3VwH [2018-09-14.17:24:58] [Info] Compression: compressed [2018-09-14.17:24:58] [Info] Starting at: 0000000000000000000000000000000000000000000000000000000000000001 [2018-09-14.17:24:58] [Info] Initializing GeForce GTX 1060 3GB [2018-09-14.17:25:07] [Info] Generating 1,179,648 starting points (45.0MB) [2018-09-14.17:25:08] [Info] 10.0% [2018-09-14.17:25:08] [Info] 20.0% [2018-09-14.17:25:08] [Info] 30.0% [2018-09-14.17:25:08] [Info] 40.0% [2018-09-14.17:25:09] [Info] 50.0% [2018-09-14.17:25:09] [Info] 60.0% [2018-09-14.17:25:09] [Info] 70.0% [2018-09-14.17:25:09] [Info] 80.0% [2018-09-14.17:25:10] [Info] 90.0% [2018-09-14.17:25:10] [Info] 100.0% [2018-09-14.17:25:10] [Info] Done GeForce GTX 1060 381/3072MB | 1 target 60.61 MKey/s (1,875,640,320 total) [00:00:29]^C D:\C\BitCrack>BitCrack64 -c -u 1FshYsUh3mqgsG29XpZ23eLjWV8Ur3VwH [2018-09-14.17:25:48] [Info] Compression: both [2018-09-14.17:25:48] [Info] Starting at: 0000000000000000000000000000000000000000000000000000000000000001 [2018-09-14.17:25:48] [Info] Initializing GeForce GTX 1060 3GB [2018-09-14.17:25:48] [Info] Generating 1,179,648 starting points (45.0MB) [2018-09-14.17:25:48] [Info] 10.0% [2018-09-14.17:25:48] [Info] 20.0% [2018-09-14.17:25:49] [Info] 30.0% [2018-09-14.17:25:49] [Info] 40.0% [2018-09-14.17:25:49] [Info] 50.0% [2018-09-14.17:25:49] [Info] 60.0% [2018-09-14.17:25:50] [Info] 70.0% [2018-09-14.17:25:50] [Info] 80.0% [2018-09-14.17:25:50] [Info] 90.0% [2018-09-14.17:25:50] [Info] 100.0% [2018-09-14.17:25:50] [Info] Done GeForce GTX 1060 381/3072MB | 1 target 46.93 MKey/s (685,375,488 total) [00:00:12] This result give the same speed of Vanitigen, but it not support multi GPU at now. https://prnt.sc/kubfus
|
|
|
|
giftseller8x
Newbie
Offline
Activity: 19
Merit: 1
|
|
September 16, 2018, 03:45:08 PM |
|
Have a multi GPU version running 170mKeys/s on RX570 or 150mKeys/s on GTX 1060, a rig with 6 runs just above a billion/sec.
Windows 10
Your speed is double compare with mine.1060 3G win 7, 16G ram, core i5 ivy.
|
|
|
|
|