Skip to content

Latest commit

 

History

History
40 lines (24 loc) · 2.37 KB

consensusAlgorithm.md

File metadata and controls

40 lines (24 loc) · 2.37 KB

Table of Contents generated with DocToc

Consensus algorithm

基本概念

PoW(Proof-of-Work,工作量证明)

PoW 算法获取记账权的原理是:利用区块的 index、前一个区块的哈希值、交易的时间戳、区块数据和 nonce 值,通过 SHA256 哈希算法计算出一个哈希值,并判断前 k 个值是否都为 0。如果不是,则递增 nonce 值,重新按照上述方法计算; 如果是,则本次计算的哈希值为要解决的题目的正确答案。谁最先计算出正确答案,谁就获得这个区块的记账权。

PoS(Proof-of-Stake,权益证明)

PoS 算法中持币越多或持币越久,币龄就会越高,持币人就越容易挖到区块并得到激励,而持币少的人基本没有机会,这样整个系统的安全性实际上会被持币数量较大的一部分人掌握,容易出现垄断现象。

DPoS(Delegated Proof of Stake,委托权益证明)

DPoS 是在 PoW 和 PoS 的基础上进行改进的,相比于 PoS 算法,DPoS 引入了受托人,优点主要表现在:

  • 由投票选举出的若干信誉度更高的受托人记账,解决了所有节点均参与竞争导致消息量大、达成一致的周期长的问题。也就是说,DPoS 能耗更低,具有更快的交易速度。
  • 每隔一定周期会调整受托人,避免受托人造假和独权

参考