3 ms·
SHA256 underpins Bitcoin. Break SHA256, and you win.
by ISL 14y ago
SHA256 underpins Bitcoin. Break SHA256, and you win.
- nadaviv 14y agoBreak SHA256, and you can cause hash collisions that allows you to easily mine blocks until 51% of the network switches to a better hashing algorithm (which should happen pretty quick, because it'll be obvious that someone broke it). To steal users money, you'd have to break ECDSA. Edit: I wasn't 100% exact. It gives you more [1] than easily mining blocks, but still not that much power so that I would call it "Winning". [1] https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_computing_power https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_...
- tptacek 14y agoAnd you're more confident in ECDSA why?
- betterunix 14y agoCompute hashes faster than the rest of the network and you win. The "51% attack" is a polynomial time attack, which is not an acceptable security margin in cryptography.
- reedlaw 14y agoIt seems the "51% attack" can be mitigated simply by waiting for 6 or more confirmations before sending off merchandise or in the case of an exchange, allowing withdrawal of funds. Those who can't wait that long can rely on 3rd parties who attempt to take on fraud in exchange for transaction fees, similar to the current credit card system.
- betterunix 14y agoThat is not true. The attack works regardless of how many confirmations you wait for.
- reedlaw 14y agoHow so? Isn't a double spend only possible if the attacker's blockchain fork endures for the customary 6 blocks it takes to confirm a transaction? A single block fork would be ignored by the majority chain and thus the attacker's chain transactions would be useless.
- doublec 14y agoIt doesn't matter how many confirmations you wait for if the attacker has >=51%. The attack looks like this: 1) Attacker starts mining a fork offline (ie. doesn't publish blocks) 2) Attacker sends payment to merchant but does not include payment in fork in (1) 3) Attacker waits 6 confirmations then receives goods. 4) Attacker double spends the money in the fork (1). 5) Attacker releases fork when it is longer than the main chain. If they have greater than 51% they will always be able to do (5) because at some point they'll be longer than the main chain. It doesn't matter how many confirmations the merchant waits for.
- Nursie 14y agoI'm not sure why people think that the only possible compromise is breaking SHA256 or other algirithm. It's perfectly possible to create trivially breakable cryptosystems using these algorithms. Not saying that the bitcoin blockchain or protocol suffers from this, but implementation and protocol flaws are often a far more fruitful source of compromises. If BTC has none of those then colour me impressed because at some point or other most of the big name systems (OpenSSH and OpenSSL spring to mind) have had revisions for various exploit-related reasons. We won't know for some years of course.
- venomsnake 14y agoIt was already broken ... on debian. When the random was limited to 0-65535.