Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: mustyoshi on July 03, 2013, 12:14:16 AM



Title: In the event of a 51% attack, how would it be resolved?
Post by: mustyoshi on July 03, 2013, 12:14:16 AM
This issue was brought up in a reddit thread. And now I'm genuinely curious, the person I was talking to about it seems to feel that the major mining players could collude to exclude the attacker, and that would be an acceptable course of action.

I on the other hand feel that any action that shows how easily it is for the network to censor blocks would actually be more detrimental to the network than the attacker is (the attacker would only hold the majority power for a short span of time as ASIC hardware producers would most likely use their production capabilities to roll out more "legitimate" hash power) I believe that a 51% attack can only be resolved by increasing the legitimate network hashrate, not by excluding blocks.

Thoughts?


Title: Re: In the event of a 51% attack, how would it be resolved?
Post by: Stephen Gornick on July 03, 2013, 12:40:51 AM
This issue was brought up in a reddit thread. And now I'm genuinely curious, the person I was talking to about it seems to feel that the major mining players could collude to exclude the attacker, and that would be an acceptable course of action.

So less than 50% of hashing capacity will ignore the longest chain?

There's a slight chance this would work if the attacker's capacity cannot be sustained.  For instance, if the attacker is a pool that miners will abandon once they determine that the pool is attacking.   It might be possible then for the "honest" side to attract enough hashing to have a decent chance of eventually becoming the longest chain.  

But with "longest chain wins", every second that passes makes it more risky for the "honest" miners to even try such a tactic.


Title: Re: In the event of a 51% attack, how would it be resolved?
Post by: mustyoshi on July 03, 2013, 12:43:32 AM
This issue was brought up in a reddit thread. And now I'm genuinely curious, the person I was talking to about it seems to feel that the major mining players could collude to exclude the attacker, and that would be an acceptable course of action.

So less than 50% of hashing capacity will ignore the longest chain?

There's a slight chance this would work if the attacker's capacity cannot be sustained.  For instance, if the attacker is a pool that miners will abandon once it they determine that the pool is attacking.    

But with "longest chain wins", every second that passes makes it more risky for the remaining miners to even try such a tactic.
Well, I wrote "the majority mining players" but I think he also meant that the client would be changed to exclude this attack chain.


Title: Re: In the event of a 51% attack, how would it be resolved?
Post by: Qoheleth on July 03, 2013, 03:25:16 AM
There was a proposal at this year's conference, which essentially amounted to "chain inertia". Basically, the argument was that you can sometimes execute a 51% attack with only, say, 25% of the hashpower - it's all probability, after all. But if miners and clients respond to a reorg by ignoring the new chain unless it can get a 2-3 block lead on the old one, this risk is greatly reduced, because honest nodes have a chance to "catch up".

This doesn't address a situation where a single attacker really does have, say, 60% of the votes. But, well, Bitcoin was never designed to be resilient against that sort of attacker.