How to scale blockchains: A "sharding" proposal
Scaling blockchains
Why its hard
ALL known systems are attackable
How to attack PoW
A proposed solution
I propose the following:
51% attacks, as discussed at length by others, and as referenced above, involve a significant investment to create a sequence of blocks which create a double spend scenario. Got it.
How do you defend this? Purist will say you don't, you can't, and that proof of work is all that matters. That is to say that the most money spent on creating a sequence of blocks is the winner, and let's not fuss about how nodes within the network have discovered these 'nefarious' blocks. I have to personally agree with this fundamental principle being important in proof of work.
That being said, things become interesting when looking at thing from the least favoured position, and making counter argument.
What is a proof of work block chain again? It's a really just a consensus rule that who ever has mined the most blocks has created the most proof of work, and thus the transactions contained within such blocks must is secured by the value required to mine them. So what's to say that the blocks mined by a 51% attacker are less valuable than the sequence of blocks mined by the rest of the network? It's a relatively more secure set of transactions than the other 49% of the network was willing to provide, and therefor must be better.
But what if the proof of work that has elapsed on the 'main chain' is significant beyond the point of coincidence? There HAS to be a theoretical point at which no natural occurrences can account for a perfectly pairwise disjoint network lasting beyond n
blocks. It therefore must be malicious.
Does that matter though? Let's for shits and giggles we say 5k blocks on ETC. After 5k blocks, if you submit PoW that creates an reorg of greater than 5k blocks, we hit a "hard cap" for the number of blocks we are willing to accept as a fault of geographical/network problems, and say its without a doubt an attack.
5k blocks requires a very significant investment to mine. With that creates an opportunity. It creates choice for the miners, which chain will you mine. It creates choice for the developers and user of the blockchain, who can decide which chain to transact upon.
Now this sounds crazy sure sure. but how about this.
How about a completely arbitrary sidechainId selection event if a miner is willing to create a fork longer than 5k blocks? Let's say we take the first of the chains where we sort each incrementally by the sum of a blocks transactions nonces. We assume the rule of "the smallest sum gets to stay the same chain ID, the larger becomes the chainID+1".
Congratulations @veerprit! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Vote for @Steemitboard as a witness to get one more award and increased upvotes!