5 ms·
You wouldn’t have to roll back. It would become apparent to honest miners that there is an invalid block, and the chain would split with the dishonest blocks yo
by rattlesnakedave 5y ago
You wouldn’t have to roll back. It would become apparent to honest miners that there is an invalid block, and the chain would split with the dishonest blocks you mined in your version of the chain, and the honest blocks mined before the 51% attack started in another. It would be a hard fork, similar to the BTC / BCH split, where the nodes not following the protocol are on their own chain doing whatever they want, and the honest nodes carry on following the protocol as usual.
Edit(s): need more coffee.
- saurik 5y agoOk, so now I am a crypto exchange, which credited peoples' accounts based on expected safe finalization (which arguably doesn't exist: that's the core issue here... these kinds of services are arguably impossible); and your hard fork is effectively happening in the past which is unlike any normal hard fork (which is always scheduled in the future). The term "roll back" absolutely applies here. FWIW, I expect most exchanges to grind to a complete halt upon noticing this much chain reorganization (enough to break their finalization assumptions) and so the entire ecosystem would have to sit around and figure out what to do manually, with different participants having noticed at different moments and with different losses due to already-spent debts... it would be a complete mess to repair.
- viraptor 5y agoBut in the 51% attack (or at least in most cases of it) both blocks are completely valid. You're just racing your original spend with a pre-mined alternative and hope that the alternative will collect confirmations earlier. One of the blocks is dishonest only in outside world terms, not in data validity. I.e. an outside observer who doesn't know you doesn't know which spend is beneficial to you. Or am I missing something here?
- bottled_poe 5y agoSorry, but this is just plain wrong. We’re talking about the nature of 51% attacks. Who is to determine which are the valid transactions?
- Closi 5y agoIn practice wouldn’t any fork mean that any and all transactions carried out in the response time are lost? Or would you somehow rebuild those honest transactions? (I assume you can’t because of the chain). It’s pretty worrying if a 51% attack could happen, any transactions happening at the same time could be reverted, especially because there is no dispute resolution or guarantee that the person you traded with will resend the funds.