什么是共识机制?PoW 和PoS 有什么不同?
今天我们要介绍的是「共识机制」,也就是大家常听到的PoW 和PoS,也会说明为什么区块链需要共识机制。
这个主题将分为以下部分:
为什么区块链需要共识机制 工作量证明(Proof of Work) 权益证明(Proof of Stake)
为什么区块链需要共识机制
区块链是一个分散式的帐本,由世界各地的矿工共同维护。这个帐本是去中心化的,也就是说没有一个管理者、或层级最高的人来做决策,而是需要所有的矿工共同决定。没有单一个体能决定什么是正确、什么是错误的,而是所有的矿工需要对帐本的状态达成「共识」。
这边我们可以介绍一个有趣的问题— 「拜占庭将军问题」。这是一个虚拟的问题,内容是说拜占庭在经历一场战争,但将军们带领的军队散落在城内各处,只能以写信沟通,必须在短时间内决定进攻还是撤退。必须要所有的军队同时进攻才能攻下这个城,所以不论进攻或撤退,都必须将军们一致同意。将军们会以写信的方式向其他将军表达意愿,进行投票来决定大家要一起进攻或撤退。
听起来很简单,但是中间可能有叛徒,他如果跟一些将军说自己要撤退,跟另一些将军说自己要进攻,可能会导致最后大家接受到的讯息不同,所以没有一起进攻或撤退。也可能出现假冒将军的信件,士兵可能故意想扰乱将军,导致其他将军无法分别哪封是真正的将军所写的、哪封是士兵写来扰乱的。这个问题就是在解决如何依靠分散的个体(将军们)做出共同的决定(进攻还是撤退),并确保讯息(表达意愿的信)的正确性(是将军写的)和一致性(写给所有将军的讯息是一样的)。
这和区块链会遇到的问题很相似,矿工们也是分散的个体且需要对帐本的状态达成共识,而这些共识机制都是以不同的方法提高叛徒的成本,并确保信息是正确且一致的。
拜占庭将军问题示意图。
工作量证明(Proof of Work, PoW)
PoW 的做法是所有的矿工会同时运用电脑的算力和电力去解一道题目,第一个解出来的矿工就能得到出块权,并得到出块奖励和区块内交易的手续费。只要矿工的算力愈高,就愈容易得到出块权。但所有的矿工在同时解题时会消耗大量的能源,导致这个机制较不环保。工作量证明是区块链最早的共识机制,目前使用的链有比特币、以太坊、莱特币。
权益证明(Proof of Stake, PoS)
PoS 则不需要比谁先算出题目,而是随机选择区块的验证人,只有被选中的验证人需要消耗能源去验证区块内的交易,因此不像PoW 消耗大量电力。所有的验证人都需要抵押原生代币,抵押愈多代币、愈久的验证人被选中的机率就愈高。这个抵押的动作我们称为「质押」,而验证人也会因为帮忙验证区块会拿到奖励,因此这个奖励也会被称为「质押奖励」。如果验证人恶意验证,抵押品就会被没收,而通常抵押品的价值会比恶意验证赚到的价值还高,导致验证人不会有动机去恶意验证。如果以拜占庭将军问题来看,抵押品会被没收就是在提高叛徒的成本,减低叛徒的动机。较新的公链大都使用权益证明,例如:以太坊2.0、Polygon、币安链、Avalanche,Fantom。
不同链的质押奖励不同。
以上就是我们这次主题的内容,希望有帮助大家了解到区块链的共识机制。
声明:本站所提供的资讯信息不代表任何投资暗示, 本站所发布文章仅代表个人观点,仅供参考。