Protocol update: Preconditions and prospects

Protocol update: Preconditions and prospects.

Just like PPCoin, NovaCoin uses ChainTrust score instead of ChainWork (used by BTC, LTC and another PoW-based systems).

We decided to implement the new chain trust score calculation algorithm. It will prevent pure PoS double-spend attacks even without broadcasted checkpoints. Now I’ll try to describe, how it works in comparison with an old algorithm.

Old chain trust score calculation algorithm basics:

1) PoW block always adds 1 to current chain trust score;
2) PoS block adds (CBigNum(1)<<256) / (bnTarget+1) to chain trust score.

Result: we have dictatorship, stakeholders are Gods here.

Benefits: It’s impossible to perform PoW-based double-spend or DoS attack.
Flaws:

  • Owner of enough stake weight (25% of total weight or more) able to perform PoS-based double-spend or DoS.
  • Double-spend could be prevented by broadcasted checkpointing.

New chain trust score calculation algorithm will be more complicated. Here is the concept (1/3 and 2/3 are parts of example, final ratio values can differ from this):

1) PoS block adds (CBigNum(1)<<256) / (bnTarget+1) to the total chain trust score only if it has PoW block as parent;
2) PoS block adds only 1/3 of “usual” PoS block trust score if it has PoS block as parent;
3) PoW block adds (CBigNum(1)<<256) / (bnPrevBlockTarget+1) to the total chain trust score, if it has PoS block as parent;
4) PoW block adds 2/3 of previous block trust score to the total chain trust score, if it has PoW block as parent.

Result: Hybrid chain always has higher trust score than pure PoW or pure PoS chain.

Benefits: It’s impossible to perform pure PoW or PoS-based double-spend. DoS-like attack scenario is also impossible in such cases. Attacker must combine enough PoW & PoS generation power to get success.

Flaws:

  • System will become slightly less energy efficient. But still more efficient than PoW-based system.
  • ???

According to release plan, new algorithm will be introduced in 0.4.3, but will be inactive on the main network until 20 Sep 2013.

Leave a Reply

Your email address will not be published. Required fields are marked *