与区块链系统两个相关定理(CAP、FLP)
CAP定理:对于
区块链系(xì)统有三个(gè)基本指标,构成了一个不(bú)可(kě)能三角
C : Consistency 一致性:在p2p对等网络系统,它的(de)数据存储在很多个节点(diǎn)上,在很(hěn)多节(jiē)点上的数(shù)据能(néng)否保持一致。
A : Availability 可用性:系统性(xìng)能(néng)各(gè)方面是否是一个可用的系统,如果一(yī)个系统的(de)性能过低,它就不是一个可(kě)用的系(xì)统。
P : Partition Tolerance 分区容错性:在网络中,一旦发生(shēng)故障,这个系统是否具(jù)备良好的容错性继续运(yùn)行。
为什么叫不可能三角:在「异步网络」中(zhōng),互(hù)联网(wǎng)就是一个(gè)典型的异步网络,而家庭(tíng)网络和企业网络不能算是异(yì)步网络,它们(men)是一个理想(xiǎng)的(de)网络状态。在网路情况比较复杂的(de)情(qíng)况(kuàng)之下,我们(men)很难同(tóng)时完成这三个指标,以
比特(tè)币为例:它要保证一个(gè)数据的分区容(róng)错性,一旦(dàn)节点之间的通信发生故障,它还能继续的运行下去,那它就要牺牲一(yī)定(dìng)的可用性(xìng)。一个可用性很强的(de)系统如云(yún)服务系统是(shì)集(jí)中式的,而比(bǐ)特币并不想做成一个集中(zhōng)式的系统(tǒng),否(fǒu)则就(jiù)失去区块链的意义了。当要保持一个分区容错性的时候,就不(bú)得不在可用性上做出一些牺牲,它所牺(xī)牲的(de)就是一些性能,它是每(měi)十分钟经过一(yī)个区(qū)块, 每10分钟有足够的时间把产生的区块在全网中(zhōng)广播,这(zhè)就付出了一个性能的代价,只(zhī)为了(le)让节点保持一(yī)个一致(zhì)性(xìng)。换言之,如果我们设计(jì)了一个区块(kuài)链系统,它(tā)的可用性很强,那必然整个网络就一(yī)定带有(yǒu)中心化的特征的(de)。举(jǔ)个例子:EOS,它采(cǎi)用21个超级节点来进行区块的产出,整(zhěng)个网络中所有(yǒu)的区块,都是(shì)在这21个超(chāo)级节点中轮换的(de)来生产的,它(tā)提升了性(xìng)能。它不像比特币,在整个网络中通(tōng)过一个工作(zuò)量的证明,去随(suí)机的选择一个节点来产生区块(kuài)。EOS采用相对中心化的方式来产生的(de)区块,牺牲了一定的(de)容错性,但增(zēng)强了可用(yòng)性和(hé)一致(zhì)性。为(wéi)什么牺牲了容错性(xìng)呢?因为所有的区(qū)块都是在这指定的(de)节(jiē)点中产(chǎn)生,那指(zhǐ)定的节点如果发生了任何问题,比如一(yī)旦受到攻(gōng)击,更(gèng)容(róng)易(yì)产生数据错(cuò)误,这个就(jiù)叫CAP不可能三角。另外(wài),在很多学科里都有不可(kě)能三角定理。
FLP定(dìng)理:在网络可靠(kào),同时又允(yǔn)许(xǔ)存在(zài)节点失效的最小化异步(bù)模型系统中,不存在一个可以(yǐ)解决(jué)一致性问题(tí)的确(què)定(dìng)性算法。
区块(kuài)链网络中的数(shù)据是最终一致性的,也就(jiù)是主链确认。
节点必须是(shì)独立验证的,应(yīng)该是(shì)弱交(jiāo)互或无交互验证。
每个节(jiē)点都(dōu)要保存独立完整的账本数据才(cái)最安(ān)全。

版权(quán)申(shēn)明:本内容来自于(yú)互联网,属第三方汇集推荐平台(tái)。本文的(de)版权归(guī)原作(zuò)者所有,文(wén)章言论不(bú)代表链门户的观点,链门户不承担任何法律责任。如(rú)有侵权请联系(xì)QQ:3341927519进行反馈。