Bitcoin Forum
May 09, 2024, 05:15:35 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Bitcoin / Development & Technical Discussion / A Possible Solution To Re-Org Attacks That Isn't Inculudes Checkpoints on: November 29, 2018, 05:33:03 PM
As we know one of the greatest problem on PoW blockchains is Selfish Mining/Re-Org Attacks. Even it isn't a big problem on Bitcoin because of it's bigger hash power but most of PoW coins are in deep danger.

How is this problem accures?

As we all know, miners gets their information from nodes (nonminer nodes) and nodes are programmed to keep the longest chain with consensus. When selfish miners shares their (most likely reorganized) longer chain to network, nodes accept it and tell that "this chain is longer, so this is the real chain" to all network. So, when all miners start to mine blocks upon this chain because nodes tell them so, this makes the (possibly) reorganized chain as the real chain. We need to create a new rule to stop this from happening whilst keeping it decentralized manner and not remine old blocks again from the last checkpoint.

How can we protect nodes within decentralized manner?

In my opinion we need to build a wall that rejects changes after every recent 8th block (since we need last 7 blocks to changable due to sync reasons).

When a new block added to chain, the recent 8th block should be considered as "confirmed true" by nodes and all changes that are longer than 8 blocks should be automatically rejected. With this, the longer chain (reorganized) that shared by Selfish Mining Attacker will be rejected by default by nodes if their chain is longer than 8 blocks. Since the whole network will get information from nodes with protection, the whole network would consider the chain before attack as the real chain automatically even it's the shorter chain (so this is an active protection that rejects corrupted info, not a checkpoint for remine the whole chain if we need). The longer (reorged) chain that mined with selfish mining will be a (most likely unseccessful) hard fork from Bitcoin. Network and community can decide that if (reorged) chain is the real chain by changing their nodes manually to reorganized chain. With this we are just actively protecting the pure chain from corrupting by attackers with an automatic protection like a wall, the final decide is on network and community.

This protection is only works if attackers mined more than 8 blocks without sharing with network.

In summary, we need to change the "longest chain always wins" rule to "longest chain wins wihtin 8 blocks".

I call this "The Great Wall" because it makes attackers to stay out of our network. And the most famous wall in the world that kept attackers out is The Great Wall as we all know.


I'm not an expert when it comes to development, so there might be lots of problems with this possible solution. Even it might be very stupid idea. I just wanted to share my idea to community and get opinions from every person as possible.
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!