0

I know that SHA256d is strong enough and it's not likely that will be broken soon but let's say someone knows how to find pre-image. The adversary chooses random hash starting with n zeroes (less than target) and finds pre-image (valid block header), let's say 100 times faster (I know it is possible only in theory) than he would need to do this by mining in classic way. What are the benefits that he gets? I think that he can mine faster, so it is easier for him to acquire over 50% of the network hashrate. He can also modify last n existing blocks to remove his transactions (double spending) and create longer blockchain that will be accepted widely in the network. Am I right?

Second but related question. Let's assume we use 8 bit hash function. Is it easier to find pre-image for hash that has to start with 4 zeroes than excatly the same hash? I mean, is finding pre-image for hash 0000xxxx easier than for example 01010101? In the first example there are exactly 16 hashes that can be accepted.

1

If a miner normally has X hashrate so it takes Y time to find a block, and that miner is able to find a preimage attack that results in him finding block in Y/100 time, then it would be as if he had 100X hashrate. So the attacker would be able to do whatever anyone else with 100X hashrate can do. If this is more than 51%, then the attacker can modify the blockchain history and everything else that can be done with >51% of the hashrate.

Is it easier to find pre-image for hash that has to start with 4 zeroes than excatly the same hash?

In terms of a preimage attack, it depends on the hash algorithm.

Via brute force, it is easier because there are more possible values that you can get a preimage for rather than just one specific value.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.