工作量证明(Proof of Work,简称PoW)由
比特币引入,可(kě)以保证恶意节点不超过(guò)51%即(jí)可(kě)达成共识,是目(mù)前
区(qū)块链最经(jīng)典、也是最久经(jīng)考验的共识机制。其(qí)基本流(liú)程如(rú)下:
1)当节点进行数据(jù)传输时,传输(shū)的信息不会被各节点立即储存,而是被标记为“未(wèi)确认的”存入(rù)内存池。
2)区块链系(xì)统中每(měi)隔(gé)一段时(shí)间产生一个新的区块,不同的区块链协议(yì)产生的时间不同(例如比特币区块(kuài)链中是10分钟产生一个(gè)区块(kuài))。各(gè)节点在内存池将收集所有未确认(rèn)的信息(xī),打包在(zài)新的区块中,构造出(chū)候选区块。由于我们上述提(tí)到(dào)的问题,对于给定的信(xìn)息集合,各(gè)节点区块中打包的信息可能不一致(zhì)。
3)区块打包信(xìn)息后会设置一个“密码谜题”,即在信息后添加一个随(suí)机数,然后对整(zhěng)个信息列表(包括随机(jī)数(shù))使(shǐ)用(yòng)哈希(xī)函数转换成一个哈希值(zhí)。
4)各节点(diǎn)需(xū)要利用所得到的哈希值(zhí)计算出该随(suí)机数。根(gēn)据上文(wén)所提到的哈希(xī)函数的性质,逆向计算不可行,只能使用穷(qióng)举法,因此,要计算出这个特殊数字需要进行(háng)海(hǎi)量的计(jì)算,这个过(guò)程就叫做工作量(liàng)证(zhèng)明,可以(yǐ)简单理解为解“数学(xué)谜题(tí)”的过程。
5)当网络中某个节点率先找出(chū)随机数(shù)时(shí),该节点(diǎn)会向全网广(guǎng)播,其(qí)他节点进(jìn)行有效性进(jìn)行验(yàn)证,当51%的节点验证通过后,则区块会被自动链接到区块链(liàn)的后(hòu)面,无法(fǎ)通过验证(zhèng)的将重新进行计算。率(lǜ)先完成工作(zuò)量证(zhèng)明的可以获得一定的(de)奖(jiǎng)励,既能激励全(quán)网各节点进行(háng)主动存储(chǔ)信息,又能避免节(jiē)点存储(chǔ)错误(wù)信息(xī)——因为验证失败后的收益(yì)远远小于其成本。
例如在比特币区(qū)块链(liàn)中,区块(kuài)中包含一定量的币基,既率先找出(chū)随机数的节点(diǎn)通过验证后,即可获得区块中的新币奖励。由于这个过程(chéng)与(yǔ)挖(wā)金矿有相似之处,因此使用(yòng)PoW机制的
数字货币的产生过(guò)程被称形象地(dì)称为“挖矿(kuàng)”。
PoW的(de)意义在于(yú)增加了各节点(diǎn)广播信息的(de)成本,且该成本远大于发布虚假(jiǎ)信息的收益,各节点就不会有做“叛徒”的动机。因为(wéi)如果节点对信息有任(rèn)何(hé)的修改,就会完全改变哈希值(zhí),哈希(xī)函数(shù)虽(suī)不易逆解但容易验(yàn)证,当无法通过51%节(jiē)点的验(yàn)证时,该节点必须(xū)重做工作量(liàng)证明,既(jì)会花费(fèi)大量成本,又会(huì)降低(dī)率先(xiān)完成的概率从而降低获得奖励(lì)的概率。其次,由(yóu)于率先算出谜题的节点是随机的,所以我们无法得知下一个(gè)争得记录权的节点,各节(jiē)点(diǎn)也(yě)无法掌控(kòng)自(zì)己将获得哪个(gè)区块的(de)记(jì)录权。
以上(shàng)过程通(tōng)过PoW机(jī)制解决了单个区块内(nèi)信息(xī)储(chǔ)存的共识(shí)问(wèn)题,但不能(néng)保证系统(整(zhěng)个区(qū)块链(liàn))的最终一(yī)致性。因为两个不同节点同时挖出区块(解出谜底)的(de)情况也可能出(chū)现(由于网络通信问题,每个节(jiē)点的区块信息可(kě)能不一致),这(zhè)时区块链会出现(xiàn)分叉,网络各节点需要(yào)对哪条区块链(liàn)上的交易能够得(dé)到确认形成共(gòng)识。
整条区块链的共识(shí)遵循(xún)最长链原则,只有(yǒu)最长链上的交易能够得到确认,也就是包含的工作量最大的那条区(qū)块链(liàn)。“分(fèn)叉链”不可(kě)持续(xù),在下一次区块竞争时,每个节点会选择在某条分叉链上进行下一(yī)次记账(zhàng)权(quán)的竞(jìng)争,由于存(cún)在(zài)巨大的工作量证(zhèng)明,同一(yī)时(shí)间内两个节点同时挖出区(qū)块的概率将(jiāng)呈指数级下(xià)降,因此(cǐ),很快就会有“最长链(liàn)”出现,最(zuì)长链上的交易将获得确认(rèn),同时,较(jiào)短链(liàn)上的交易信息(xī)也会随(suí)之释放(fàng),重新标记为“未确认”,打包在下一个(gè)区块中。
但PoW机制并(bìng)非(fēi)完美,它有(yǒu)以下(xià)三个缺点:
1)51%攻击(jī):当攻击(jī)者掌握了全网51%的算力时,其攻击总能成功,因为他总(zǒng)可(kě)以让自己的链成为最长的链。因此,全网节点越多,抗攻击能力越强,安全性越好。
2)高延迟:区块(kuài)出现时间的间隔(gé)不能太短,出块时间过短意味着挖矿(kuàng)难(nán)度降低,会增(zēng)加多个节(jiē)点同时算出答案(àn)的概率,导致频繁分(fèn)叉(chā)。但出(chū)块慢意味着确认时间长、高(gāo)延(yán)迟。
3)资(zī)源浪费:计算机计算密码谜题(tí)需要大量(liàng)的算力,需要高性能的计算机设(shè)备、消耗大量(liàng)电力等资源(yuán)。根(gēn)据dig
iconomist的评估,比(bǐ)特币2018年度排放的(de)二(èr)氧(yǎng)化碳达34.73百万(wàn)吨,相当于丹麦的
碳排放量;耗电量达73.12兆千瓦时(shí),相当于奥地利的耗电量;产生电子废物9.8克拉,相当(dāng)于卢森堡(bǎo)产生的电子(zǐ)废物。
版权(quán)申明:本内(nèi)容(róng)来自于互联网,属第三方汇集推荐平台(tái)。本文的版权归原(yuán)作(zuò)者所有,文章(zhāng)言论不(bú)代表链门(mén)户(hù)的(de)观点,链门户不承担任何法律责任(rèn)。如有侵权请联系QQ:3341927519进行反馈。