Difference between revisions of "Talk:Proof of Stake"

From Bitcoin Wiki
Jump to: navigation, search
(Malicious forking)
(Adaptive Difficulty)
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Malicious forking =
+
== Adaptive Difficulty ==
 +
Deleted old discussion and am including link to page that summarizes Ian Stewart's ideas:[[Adaptive_difficulty|adaptive difficulty]]
  
Surely proof-of-stake is vulnerable to malicious forking of the blockchain, whether motivated by double spending or just sowing destructive confusion of multiple versions?
+
== New Discussion Here ==
 
 
Each version of the blockchain is a full, self-contained "version of reality". If you (the malicious party engineering a fork) burn through your "stake" - whether bitcoins owned, bitcoin days destroyed, or anything similar - on one version of the blockchain, that still doesn't stop you creating another version, starting from the same block-before-yours as you started from for your first effort, where your same "stake" still exists and hasn't been burned through. (And then another, and another... All forking from the blockchain-as-was (just before you started your malicious antics), which records your untouched stake.) So with trivial computational effort, you can create huge multiple forks; and there's no easy way for the network to pick a winner.
 
 
 
Proof-of-work doesn't suffer from this problem. A malicious party trying the above trick would have to perform fresh work for each fork, since the work done in finding a difficulty-satisfying hash on one fork has no transferable value to the task of finding one on the other fork(s).
 
 
 
Am I missing something? [[User:Ids|Iain Stewart]] 23:24, 24 March 2012 (GMT)
 
 
 
This is a good point, but perhaps what you are missing is the mixed proof-of-stake/proof-of-work concept. Your argument applies to pure proof-of-stake, but I don't believe that it applies to a mixed proof-of-stake/proof-of-wrok system, even one where work is a very small component. Please let me know if you think otherwise. Here are some thoughts:
 
 
 
1) The creation of multiple forks is only a problem if there is doubt about which chain is the correct one. This happens when multiple chains have equal cumulative difficulty (measured as the sum of all difficulties in the chain). In the case of a tie in cumulative difficulty, other miners can pick a chain to extend at random. One well-intentioned miner will get lucky and find the first block after the attacker. He will pick one of the attacker's chains, extend it, and broadcast this to the network. Even though they may have been working on other chains before, other miners will also extend this chain because it is now longer and thus more likely to survive. As usual, users awaiting txn confirmation just wait for a chain to become sufficiently long that there is no significant probaility that it will get overtaken. Once this happens, txns become extremely costly to reverse.
 
 
 
2) Perhaps you are worried that all other miners will extend every single competing chain. If so, all chains will grow at the same rate and it won't work to pick the winner at random. This is a problem in pure proof-of-stake. As you point out, in pure proof-of-stake extending multiple chains simultaneously has no resource cost. However, under a mixed-system, there is a non-trivial work component to any chain extension. Miners would not find it worthwhile to extend chains that have a low probability of becoming the dominant chain. I think even a pretty small computational cost would be sufficient to discourage this. It is even okay if some miners (say 10%) extend every single chain. It just is not okay if almost all miners do this.  [[User:Ids|Cunicula]] 27 March 2012
 

Latest revision as of 02:23, 23 November 2012

Adaptive Difficulty

Deleted old discussion and am including link to page that summarizes Ian Stewart's ideas:adaptive difficulty

New Discussion Here