分布式共识包括两个关键点:获得记账权和所有节点或服务器达成一致。
挖坑:所有服务器帮助记录交易并达成一致的过程,就是区块链中的“挖坑”
PoW(Proof-of-Work 工作量证明):是以每个节点或服务器的计算能力(即“算力”)来竞争记账权的机制。
原理:利用区块的 index,前一个区块的哈希值、交易的时间戳、区块数据和nonce值,通过SHA256哈希算法计算出一个哈希值,并判断前k个值是否都为0,如果不是,则递增nonce值,如果是,则本次计算的哈希值则为要解决的题目的正确答案。谁先计算出正确答案,谁就能获得这个区块的记账权。
nonce值是用来找到一个满足哈希值的数字。k为哈希值
PoS(Proof-of-Stake 权益证明):
PoS 是根据节点拥有的股权或权益进行计算的。
通过 PoS 算法决定区块记账权的流程和 PoW 算法类似,唯一不同的就是,每个节点在计算自己记账权的时候,通过计算自己的股权或权益来评估,如果发现自己权益最大,则将自己的区块广播给其他节点,当然必须保证该区块的有效性。
DPoS(Delegated Proof of Stake 委托权益证明):
DPoS 是由被社区选举的可信帐户(受托人,比如得票数排行前 101 位)来拥有记账权。