哈喽大家好,我是小K君。今天我们要讲的内容是:“什么是PoS共识机制”?
所谓PoS机制,全称是Proof of Stake,也就是权益证明。它是除PoW机制外的另一类主流共识机制。
我们都知道,PoW机制有一些缺点,比如挖矿时会浪费大量的资源、整个网络处理效率较低等等。为了解决这些问题,有人就在2011年提出:“可不可以在PoW的基础上,重新设计一个机制?既能保留PoW的优势,又能解决它的问题”。于是PoS共识机制就应运而生,所以,PoS在共识层面上借鉴很多PoW的设计,如区块设计,矿工选择,分叉处理,交易验证等。
PoS机制主要是通过权益记账的方式,来解决网络的效率低下、资源浪费和各节点的一致性问题,简单来说,就是谁拥有的权益多谁说了算。它的原理是这样的:
PoW之所以有种种问题,主要是因为人人都可以自由地成为节点,而每个节点又通过竞争的方式参与数据处理。一笔数据要经过这么多人的处理,肯定会造成资源浪费和效率低下。
PoS之所以能解决这个问题,是因为PoS提高了节点处理数据的门槛,它规定:虽然每个人都可以自由地加入进来成为节点,但只有满足一定条件的节点,比如抵押一定数量的代币,才有资格成为验证节点,也就是候选人。
成为候选人后,系统会通过算法,选择一部分人作为出块节点,每隔一段时间,会重新选择,选取过程中,算法会保证选取的结果不能被操纵,也不能被预测,从而避免网络被某一节点所控制。只有成为出块节点,也就是矿工,才能参与数据的处理、争夺记账的权利。
所以说PoW是人人都可以成为矿工,而PoS则是通过一系列筛选,才能成为矿工。
PoS具体的竞争方式是,谁持有的代币多,谁就越容易获得出块的权利。然后通过全网广播,他打包的区块经其他矿工验证,确认没问题后,这个区块就会连接到链上,并同步在全网其他节点的小账本中,同时他获得相应的代币奖励。
整个流程简单总结起来就是:持币人将代币抵押,获得出块的机会,然后PoS共识中会通过选举算法,按照持币量比例,从中选出出块矿工。矿工在指定高度完成打包交易,生成新区块,并广播区块,广播的区块经过验证人验证交易,通过验证后,区块得到确认。这样一轮PoS的共识过程就完成了。
PoS机制的优势在于,它解决了PoW中的资源浪费、效率低下等问题。但它同样也有一些缺点。比如,PoS机制中初始的代币分发比较模糊,如果初始代币分发不下去,就很难形成之后的股权证明。再比如,选举算法存在被攻击的可能,一旦攻击成功,整个系统就会被操控。
但是PoS机制最大的问题,还是容易造成强者恒强的局面,谁的代币越多,谁就越容易获得更多的代币,理论上谁能掌握51%的代币,谁就能掌控整个网络,所以,它的去中心化程度要弱一些。
总的来说,PoW与PoS都是目前主流的共识机制,共同引领着区块链技术的落地与进步,但他们或多或少,都存在一些不可避免的问题,希望未来的某一天,它们能克服自身问题,真正使区块链大规模商业化,而我们也能迎来一个更好的去中心化互联网。