Hi,

After studying several Proof of Stake implementations I think it's not only an 
eco-friendly (and more ethical) alternative to Proof of Work, but correctly 
implemented could be 100% secure against all 51% history rewrite attacks. Over 
a "standard" PoS protocol like PoS v3.0, only 2 extra improvements are required:


- Hardcoded checkpoints: each Bitcoin Core release (each few months) should 
include a hardcoded checkpoint with the hash of the current block height in 
that moment. This simple measure protects the blockchain up to the last 
checkpoint, and prevents any Long-Range attack.


- Moving checkpoints: the nodes only allow chain reorgs not deeper than N 
blocks. If N is 10 blocks, then the nodes ignore any hard fork starting at any 
block under nodeBlockHeight - N. This fully protects nodes that are online and 
updated. Nodes that are not fully updated need some extra rule to be protected 
between the last hardcoded checkpoint and the current blockchain height. This 
extra rule could be connecting to a block explorer to download the hash of the 
current block height, or ask some trusted source like a friend and enter the 
hash manually. After being fully updated, the user can always check that he is 
in the correct chain checking with a block explorer.


Someone could have 99% of the coins and still would be unable to use the coins 
to do any history rewrite attack. The attacker could only slow down the network 
not creating his blocks, or censor transactions in his blocks.


What do you think? :)


Regards

_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev

Reply via email to