Bitcoin Forum
May 08, 2024, 07:50:30 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2]  All
  Print  
Author Topic: solve key 66 67 Puzzle how to avoid double spends the tx?  (Read 613 times)
mckemo
Newbie
*
Offline Offline

Activity: 15
Merit: 0


View Profile
April 25, 2024, 01:53:18 PM
 #21

If the pubkey is revealed,may someone use BSGS algorithm to crack the privkey and double spend the coins? Huh

The public key is already known information, but that is not enough to crack the private key, and if someone get's access to the private key first they need to spend the coins before be able to double spend it. But looks like you are lost in the topic, what op means is.

Let's say someone finds the private key from puzzles 66 and 67, if they spend the coins and make public the private key, som users could use that private key to make a double spend from the same coins and if they use bigger fees then they could steal those coins. But the way to avoid that is to not make public the private key until it has more than 1 confirmation.

if the public key is known,the bsgs will solve it in seconds. i get 48 exahashes per second.
TalkImg was created especially for hosting images on bitcointalk.org: try it next time you want to post an image
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715154630
Hero Member
*
Offline Offline

Posts: 1715154630

View Profile Personal Message (Offline)

Ignore
1715154630
Reply with quote  #2

1715154630
Report to moderator
COBRAS
Member
**
Offline Offline

Activity: 850
Merit: 22

$$P2P BTC BRUTE.JOIN NOW ! https://uclck.me/SQPJk


View Profile
April 29, 2024, 01:08:54 PM
 #22

Quote
but that also comes with the issue of trusting the miner whether they wouldn't take the puzzle reward themselves or not
Well, it is also possible to share some data, which is needed to mine a block (like transaction ID, transaction Segwit ID, etc.), without sharing transaction data. Then, it would be sufficient to mine a block, but the pool wouldn't know, if it is valid or not.
Fair enough, the miner can start to "mine" the block header without the actual transaction.

In the event that they produced a hash lower than the target, they wouldn't be able to broadcast the block without the actual raw transaction. (or would they? Please CMIIAW)
And in mining, every millisecond counts so if the transmission of raw transaction isn't coordinated well and quick, other pools/solo miners could broadcast a block in their place.
This would need a specialized software in both miner's and user's side to be automated for low latency.

And also, if you want to prove, that you know the public key, but you don't want to reveal it, then you can share for example SHA-256 of that key, and then everyone can validate, that RIPEMD-160 of it is equal to the address, used in the puzzle.
Good idea, but I'd like to know how can this be applied exactly to existing P2PKH outputs like what OP is pertaining to?
If not possible, the creator of the puzzle may have to consider spending those weak ranges into your proposed output.

puzzless addresses has RBF  transactions...


$$$ P2P NETWORK FOR BTC WALLET.DAT BRUTE F ORCE .JOIN NOW=GET MANY COINS NOW !!!
https://github.com/phrutis/LostWallet  https://t.me/+2niP9bQ8uu43MDg6
graphite
Jr. Member
*
Offline Offline

Activity: 30
Merit: 4


View Profile
May 03, 2024, 12:04:04 AM
 #23

the private key will be compromise in seconds (1s) as i mention above with kangaroo or a similar algorithme

I was looking at https://github.com/JeanLucPons/Kangaroo and he says it would take several years to crack #130 with an exposed public key which is 129bits of entropy but don't some wallets use a 128bit private key? This would mean they could be cracked if their public key is exposed and the attack has a decent amount of compute. I know some wallets allow 12 words seeds but when they actually produce private keys from that seed do they make it a 256bit private key or 128bit?
satashi_nokamato
Jr. Member
*
Offline Offline

Activity: 49
Merit: 3


View Profile
May 03, 2024, 02:35:41 AM
Merited by nc50lc (1)
 #24

All standard wallets generate 256 bit private keys. With algorithms like kangaroo, it takes only 2**128 operations to crack one of the 256 bit keys out there.
I have no idea how many hashes all the miners generate to this date but certainly it's less than 2**85. And mining is a global effort worth billions, can you find such a group of people to come together just to crack a single private key?
graphite
Jr. Member
*
Offline Offline

Activity: 30
Merit: 4


View Profile
May 03, 2024, 03:58:27 AM
 #25

All standard wallets generate 256 bit private keys. With algorithms like kangaroo, it takes only 2**128 operations to crack one of the 256 bit keys out there.
I have no idea how many hashes all the miners generate to this date but certainly it's less than 2**85. And mining is a global effort worth billions, can you find such a group of people to come together just to crack a single private key?

I wasn't clear on if some wallets used 128bit private keys or not but if wallets were actually using 128bit private keys and the public key was exposed it would take 2**64 operations to crack it. Which is doable based on puzzle #64. Initially This was a shock to me because i know some people use wallets with master private keys that are 128bit entropy but if the private keys derived from that seed are 256 bits then its no problem right? In this example the 256bit private key is derived from a 128bit seed so the 256bit private key is effectively 128bits of entropy. but I'm assuming the kangaroo method wouldn't be able to extend past the public and private key and take advantage of the 128bit seed.
nc50lc
Legendary
*
Offline Offline

Activity: 2408
Merit: 5591


Self-proclaimed Genius


View Profile
May 03, 2024, 06:54:00 AM
 #26

-snip- but I'm assuming the kangaroo method wouldn't be able to extend past the public and private key and take advantage of the 128bit seed.
Correct, kangaroo is utilizing ECDLP for secp256k1 curve which computes the private key from its public key pair
so it's not applicable to compute the seed from the public key which doesn't directly involve secp256k1.

In this example the 256bit private key is derived from a 128bit seed so the 256bit private key is effectively 128bits of entropy.
The "master private key" derived from the seed is calculated with HMAC-SHA512 which outputs 256-bit private key and 256-bit chain code regardless if the seed is 128bits.
So still an overall of 128-bit security: it requires 128-bit operations to compute the (master) private key from (master) public key via ECDLP or 128-bit operations to blindly bruteforce the seed.

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
Veliquant
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
May 03, 2024, 09:13:54 PM
 #27

Some words from satoshi himself while undercover.  Grin

There's simply no feasible way to withdraw the funds on lower end puzzles like #66. It will be snatched up by bots. Not maybe, but it's 100% guaranteed. There will be hundreds of withdrawal transactions with varying fees all battling each other. You will simply be left in the dust.

It's a fundamental flaw in this puzzle that was originally aimed to bring the community together and try to solve the puzzle. The puzzle creator did not think much about the puzzle, and this is proof of it.

The only way the original solver will get the funds of puzzle #66 is if they can prove to be in possession of the private keys directly to the puzzle creator. The puzzle creator then withdraws the funds at a 6BTC fee (they can afford it) to your address.

no doubt on that!
the speed now is crazy imagine

how to reach the creator? his last appear here 2019?
i believe this the only guaranteed way by giving a proof te the creator that you hit the private key and let him transfer to you


Sadly... the moment a lucky person finds the private key to puzzle 66, and post the transaction using the private key found,
the transaction itself will reveal the public key that it contains.

Right now the public key is not known (only the hash is known), the only way to solve the puzzle is guessing every possible private key,
calculate the public key, sha256 hash, and the ripemd 160.

Then compare each value to the already known hash value of the public key. There is no way to use Big Step,
Little Step algorithm or to use Pollard's Kangaroo method without knowing the public key in advance.

When the public key is revealed, then the puzzle 66 could be solved in less than one second using a normal computer with BSLS.

If you precompute a big enough database, let´s say 2^41 public key coordinates, you will only need to calculate about 8 million more points (2^23),
and solve the puzzle.

A RTX 1650 can get about 300 million keys/second so the puzzle will be effectively 100% sure, as you say, snatched by the bots.

If you post the transaction, with a very big transaction fee (6btc), all the money will go to the mining pool instead.

How will it work if many bots spend from the same address, all with very high fees?
COBRAS
Member
**
Offline Offline

Activity: 850
Merit: 22

$$P2P BTC BRUTE.JOIN NOW ! https://uclck.me/SQPJk


View Profile
May 03, 2024, 10:02:32 PM
 #28

Some words from satoshi himself while undercover.  Grin

There's simply no feasible way to withdraw the funds on lower end puzzles like #66. It will be snatched up by bots. Not maybe, but it's 100% guaranteed. There will be hundreds of withdrawal transactions with varying fees all battling each other. You will simply be left in the dust.

It's a fundamental flaw in this puzzle that was originally aimed to bring the community together and try to solve the puzzle. The puzzle creator did not think much about the puzzle, and this is proof of it.

The only way the original solver will get the funds of puzzle #66 is if they can prove to be in possession of the private keys directly to the puzzle creator. The puzzle creator then withdraws the funds at a 6BTC fee (they can afford it) to your address.

no doubt on that!
the speed now is crazy imagine

how to reach the creator? his last appear here 2019?
i believe this the only guaranteed way by giving a proof te the creator that you hit the private key and let him transfer to you


Sadly... the moment a lucky person finds the private key to puzzle 66, and post the transaction using the private key found,
the transaction itself will reveal the public key that it contains.

Right now the public key is not known (only the hash is known), the only way to solve the puzzle is guessing every possible private key,
calculate the public key, sha256 hash, and the ripemd 160.

Then compare each value to the already known hash value of the public key. There is no way to use Big Step,
Little Step algorithm or to use Pollard's Kangaroo method without knowing the public key in advance.

When the public key is revealed, then the puzzle 66 could be solved in less than one second using a normal computer with BSLS.

If you precompute a big enough database, let´s say 2^41 public key coordinates, you will only need to calculate about 8 million more points (2^23),
and solve the puzzle.

A RTX 1650 can get about 300 million keys/second so the puzzle will be effectively 100% sure, as you say, snatched by the bots.

If you post the transaction, with a very big transaction fee (6btc), all the money will go to the mining pool instead.

How will it work if many bots spend from the same address, all with very high fees?



If you precompute a big enough database, let´s say 2^41 public key coordinates, you will only need to calculate about 8 million more points (2^23),
and solve the puzzle.


unfortunately no, you need additional 2^23 * 2**41 - 2^41 .

$$$ P2P NETWORK FOR BTC WALLET.DAT BRUTE F ORCE .JOIN NOW=GET MANY COINS NOW !!!
https://github.com/phrutis/LostWallet  https://t.me/+2niP9bQ8uu43MDg6
Veliquant
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
May 04, 2024, 02:08:38 AM
Last edit: May 04, 2024, 02:26:55 AM by Veliquant
 #29

unfortunately no, you need additional 2^23 * 2**41 - 2^41 .

Good afternoon, I´m positive about only needing to calculate 2^23 coordinates if you use the BSGS algorithm and pre compute 2^41 points.

The set I propose is like this:

You precompute points from k =1 to k=2^41 with a step of 1 (small step sequentially), store the last 64 bits of every x coordinate in a database.
Because of the symmetry of the secp256k1 curve over the x axis, you can set the big step to 2*2^41= 2^42. Every +k point is equivalent to -k.

If the target coordinate of the unknown K is near 2^66 (worst case), first you subtract the point (x,y) = 2^65, so now your range is from 0 to 2^65.

Then beginning from your unknown (x,y) you will subtract sequentially (x,y)= 2^42 * n times, checking each step x coordinate against the x coordinates on the database.

Because of symmetry, k = (x,y) and -k = (x, -y) have the same x coordinate, so computing the positive x's is equivalent to compute the negative x's.

If you jump 2^23 jumps *2^42 distance, you get 2^65 total distance, and at most 2^23 you have to land in the database in a deterministic way.

I was able to discard the first 2^65 Keys in puzze 130 , with my own implementation of the BSGS algorithm in python on CPU only, and a 2TB database.

I see it as a reverse BSGS because you go backwards from the unknown K to k = 0 in big jumps.

I understand Shank's algorithm is at most 2*sqrt(N) operations with no use of symmetry.

If you use symmetry, every point is like calculating 2, and now the total number of operations should be at most 2*sqrt(N/2) = sqrt(2)*sqrt(N) approx. 1.4 sqrt(N) operations.

Instead of calculating 2^32 for the database and 2^32 points, you trade more storage and more operations now, for less operations later.

My very slow implementation in 1 CPU and python manages to calculate 200.000 coordinates/sec, I have 12 cores, I make 2.4 million keys/second.

I believe I could solve it in less than 4 seconds, after the public key is made public, if I manage to store a 16 TB database.


Pages: « 1 [2]  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!