区块链入门小结二

上一篇对区块链的基本工作流程进行了小结,其中执行共识算法的环节中以PoW机制为例进行了说明,PoW为最初的区块链比特币采用的共识机制,该机制要求挖矿取得新区块的记账权,而挖矿会消耗电力资源和计算资源,当区块链上的节点规模增大以后,这样消耗的电力资源和计算资源非常巨大,这是其最大的缺点。于是后续的区块链对共识算法做了各种各样的改进。其中PoS为最重要的,其他的DPoS,PoW+PoS都是对PoS的改进或者将PoS与PoW结合。

1.PoS

在PoW当中,是要找到一个随机数nonce,使得公式成立:

Hash (block_header ) < Target

block_header = X0+content+X

从公式中我们可以看到,PoW 下所有矿工的目标值是一样的,只要计算结果哈希小于目标值即可,简化来看就是前导 0 的个数。

而在 PoS 系统中,这个公式变更为:

Hash (block_header) < Target * CoinAge

我们可以看出多引入了一个变量叫做 CoinAge,也就是币龄或者币天。

这个变量为会造成每个矿工看到的目标值不一样,如果你的币龄越大,也就意味着你的获得答案越容易。这里的 Target 与 PoW 一致,与全网难度成反比,用来控制出块速度的。

对于币天越大的节点来说,其目标值越大,因而计算出满足条件的随机数的概率就越大。这样就会导致币天越大的节点约有机会取得区块的记账权。

PoW和PoS各自有各自的优缺点

DPoS是PoS的改进算法,其要解决的是PoS中如何及时高效的达成共识。其采用的方式是从所有节点中选择部分节点作为代表来竞争记账权,而不是在所有节点中竞争记账权,这样可以用更短的时间来达成共识,提高交易的速度。

PoS+PoW混合的共识机制还有待补充。

参考资料:

https://blog.csdn.net/yjjnls/article/details/81380786

猜你喜欢

转载自blog.csdn.net/w450093854/article/details/81840962