Hacker News new | past | comments | ask | show | jobs | submit login

You can't double-spend the outputs unless you get rid of the blocks they were originally spent in, i.e. rewinding and re-mining all of them.



Why is this?

My understanding of the way the network operates is that a group with 51% of hashing power can essentially arbitrarily manipulate the blockchain going forward. Nothing could stop them from confirming otherwise invalid transactions (re-spending the original outputs) and mining those new transactions. After which, clients, only looking backwards to the first block a transaction resides in, wouldn't notice that the funds were originally double-spent.


Only if they completely change how the protocol and the blockchain works so that you can somehow invalidate previously confirmed transactions. Then they need to make everyone upgrade all clients or suffer a hard fork. In the end, this would have to invalidate all the transactions that are dependent on the "evil" ones, reversing a boatload of transactions pretty much arbitrarily throughout the blockchain.

This means that if the purported thieves have transferred their coins to e.g. an exchange, potentially any of the transactions the exchange has made since then could be reversed, cascading from there.


I don't think I'm understanding your point. Why would they need to invalidate previously confirmed transaction?


How else do you plan to get rid of the transactions?




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: