你有自由走3星评价
2020-04-24 16:32:05
莫慌。在每一种伟大的电子货币的背后,都有一个伟大的共识算法来支撑。 没有一种共识算法是完美的,但是每一种都有他们自己的优缺点。 在加密的世界里,共识的存在就是为了解决双花的问题。 接下来,简单介绍一些迄今为止最为流行的共识算法,从Blockchains到DAG之间的区别。
工作量证明(PoW)- 元老级共识
广泛应于与: Bitcoin, Ethereum, Litecoin, Dogecoin(大多数其他加密货币)
优点: 我们知道他的工作量(译者:双关语,我们知道它运转正常)
缺点: 低吞吐量;正在杀死地球(译者:浪费资源)
工作量证明是首个用于区块链的共识算法。由中本聪(Satoshi Nakamoto)设计,并应用于比特币区块链,我们能使用PoW还是要感谢在世界各地所看到的大规模采矿作业和能源的消耗。我们知道它运转正常(我们可以说它比其他大多数的共识运行的更好),但是在这个游戏的这个阶段(译者:区块链技术萌芽阶段),它开始被认定是一个传统技术。甚至于以太坊也要从PoW迁移到更高效、更节能的PoS中。有了这么多新的方案,很难想象为什么一个新的区块链还会使用PoW。 在PoW中,矿工 解决困难的并且无意义的问题来创造区块。PoW运行在一个赢得最长链”的系统上。因此,假设大多数矿工工作在同一条链上,那么增长速度最快的将会是最长的也是最值得信赖的链。因此,只要比特币中长的链超过50%的矿工都是诚实的,它就是安全的。
权益证明(PoS)- 链中的新生儿
广泛应用于: Decred,Ethereum(即将),Peercoin
优点: 攻击成本更昂贵;更非中心化;高效节能
缺点: 无成本投票
在PoS中,块的产生不是由矿工工作产生的,而是由矿工们持有的他们的权益(token)来下注”哪一块是有效的。在分叉的情况下,矿工们花费他们的权益(token)来投票支持哪一个分叉。假设大部分人投票到正确的分支上,投票到错误分支的验证者将会在正确的分支上失去他们的权益”。 关于权益证明常见的反对观点是没有成本”的问题。值得注意的是,不同于PoW,验证者几乎不消耗计算能力去支持一条分叉,验证者可以投票到分叉的任何一条链上。PoS中的分叉也会比在PoW中更为常见,这也是人们担心会损害货币可信度的地方。
授权证明(DPoS)- 选择你的验证节点
广泛应用于: Steemit, EOS, BitShares
优点: 交易费用低;可扩展;高效节能
缺点: 局部中心化
DPoS是Daniel Larimer的智慧结晶,实际上与PoS完全不同。在DPoS中,token持有者不会对块本身的有效性进行投票,而是投票选举代表来代表他们自己去验证。在DPoS系统中,通常会有21-100个选出的代表。代表会定期洗牌,并且会将顺序记载到他们的块中。因为拥有较少的代表,他们可以高效的管理自己,并能每一位代表创建指定时间窗口来推送他们的块。如果代表不断的失误或者发布无效交易,股东会将他们投票出去,并找个更好代表代替他。
权威证明(PoA)- 相信知道的所有
广泛应用于: POA、Network, Ethereum Kovn testnet
优点: 高吞吐率;扩展性
缺点: 中心化系统
权威证明是一种交易由类似于系统管理员”的批准用户来验证块的共识算法。这些账户从其他节点提供的真相来证实的。PoA具有很高的吞吐量,并优化了私有网络。但由于过于集中,你不太可能在公链中看到这种共识。
权重证明(PoWeight)- 更大的就是更好的
广泛应用于: Algorand, Filecoin, Chia
优点: 可定制;可扩展
缺点: 激励模式是个挑战
权重证明是基于Algorand一致性模型的共识算法分类中的常用分类。总体思路是,在PoS中,网络中你拥有的价值(token)代表了你发现”下一个块的概率,在PoWeight系统中,使用了其他相对的加权值。具体的例子:Filecoin中的Proof-of-Spacetime会根绝你存储的IPFS数据进行加权。其他的系统可以包含的例如Proof-of-Reputation(声誉证明)之类的加权。
拜占庭算法(BFT) - 围攻区块链
广泛应用于: Hyperleder, Stellar, Dispatch, 和 Ripple
优点: 高吞吐率;低消耗;可扩展
缺点: 半数信任
这是个经典的分布式计算问题,通常用拜占庭将军来解释。问题描述了几个拜占庭将军以及他们的军队,和被围攻的城市的内容。他们必须一致决定是否进攻。如果将军们分别进攻,他们对城市的围困将会以失败告终。将军们按照距离分隔开,不得不用消息来进行沟通。一些加密货币协议使用了不同版本的BFT来达成共识,每种都有自己的优点和缺点。
实用的拜占庭容错算法(PBFT): 其中一种优先解决方案叫做实用拜占庭容错算法。Hyperledger Fabric目前正在实用,只设置很少(<20,之后可能会多一点)预先选定的将军执行PBFT,并表现出难以置信的高效。优点:高交易吞吐量;缺点:中心化/被许可。
联邦拜占庭协议(FBA): FBA是另外一种拜占庭将军的解决办法,已经应用在Stellar和Ripple两种货币中。总体思想(heh,译者注:作者原文heh,可能想表达双关,将军的想法),是每一个将军负责自己的链,按照接收到真相排列消息。在Ripple中,将军们(产出验证节点)是通过Ripple基金会预选出来的。在Stellar中,任何人都可以成为验证者,所以你可以选择你要相信的验证者。 由于难以置信的吞吐量,低交易成本和网络扩展性,我相信,FBA类的一致性算法是我们目前发现最好的分布式共识算法。
有向无环图(DAGs)- 又名区块链杀手
广泛应用于: Ioa, Hashgraph, Raiblocks/Nano
优点: 网络扩展性;低消耗
缺点: 依赖实施
DAGs现在比 Vitalik's Tinder profile 更火爆。DAGs是不使用区块链结构,并且绝大多数是异步处理事务的一种共识形式。即使DAGs能够非常专业在每秒处理无限次交易,但它还是其他共识一样具有优势和劣势。
Tangle: Tangle是由Iota使用的DAG共识实现。为了发送一条Iota交易,你需要验证你已经收到的以前的两条交易信息。合二为一,并传递下去的这种共识方式增强了交易的有效性,更多的交易被添加到Tangle中。因为共识是由交易确定的,理论上,如果有人能生成1/3的交易,那么他们就可以说服网络上其他人,他们的无效交易是有效的。直到有足够多的交易数量,使得再创造1/3的交易数据变得不可能。Iota是网络交易中双重检查”的一种形式,并运行在一个叫做The Coordinator”的中心节点上。Iota表示 The Coordinator像是系统的辅助轮一样,当Tangle足够大的时候就会被移除。
Hashgraph: Hashgraph是由Leemon Baird开发的一种gossip-protocol共识算法。节点随机地与其他节点共享已知的交易记录,因此最终交易记录都会同步到其他的所有节点中。Hashgraph速度非常的快(每秒250,000+笔交易),但无法抵挡Sybil攻击。所以,Hashgraph是成为私有网络的很好的选择,你一定不会看到它像Ethereum或Dispatch这样的公有网络中实现这种算法。
Block-lattice: Nano(以前被称为Raiblocks)运行在一条叫做Block-lattice的链上。Block-lattice是一种结构,这种结构是让每一个用户(地址)都拥有他们自己的链,并且只有他们可以写入内容,每个人都拥有所有链的副本。所有的交易都被分解,并同时分配到一个发送者的发送块和一个接受组织的接收块中。Block-lattice看起来简单到不能工作,但是它已经在外运行了一段时间了。独特的结构确实使得Block-lattice需要应对一些特殊的攻击,例如Penny-spend攻击,这种攻击是攻击者通过发送大量的、必须要追踪的、仅有少数价值的空钱包达到攻击手段。
SPECTRE: 序列化的工作量证明事件:通过递归选举进行交易确认,更广为人知的是SPECTRE,它是一个已经提出实用PoW和DAGs组合达成共识的比特币扩展方案。在SPECTRE中,区块被挖出后指向多个父区块,而不仅仅是一个,所以网络需要有能力每秒处理多个区块。即将被挖出来的块指向多个父区块,这些父区块能够证明其有效性。与PoW的"赢得最长链"相比,SPECTRE使用的更像是赢得最多子区块”。SPECTRE还没有对外进行battle-tested,可能会出现新的攻击方式,但是,它看起来确实是潜在的能够巧妙的修复比特币的方式。
岢饭捩蕞I3星评价
2020-04-24 16:32:46
共识算法是所有区块链/DAG技术的基础,他们也是区块链/DAG平台最重要的组成部分。没有它们(共识算法机制),我们就只会有个无法改变的数据库而已。下面是主要共识算法的列表,而且我们可以评估它们的好处和坏处。
1.工作量证明 (PoW)好处:自从2009年开始,就可以进行了测试,到如今仍然很稳定。
坏处:速度很慢。消耗大量的能源,并且对环境不好。容易受到规模经济的影响。
类型:竞争性共识算法。
解释:这是第一个共识算法机制(中本聪在他的文章中提出)来创建分布式无需信任的共识,并且解决双花问题。工作量证明不是一个新的想法,但是中本聪将这个和其他的概念- 加密签名,默克尔树以及P2P网络结合起来- 从而形成了分布式共识系统,其中数字货币是首个基础应用,这充满创新。
区块链中的参与者(矿工)必须要解决复杂但是无用的计算问题,从而将转账区块加入到区块链上。
基本上,这是来保证矿工花费成本/资源(矿机)来完成这项工作,从而表示他们不会欺骗区块链系统,并且对系统造成伤害,会导致他们损失自己的投资;因此伤害他们自己。
这个问题的难度会随着时间改变,这是为了保证恒定的区块生成时间。有时候会发生一种情况,其中有超过一个矿工在同时解决这个问题。在那种情况下,矿工会选择其中一个链,而且最长的链会是获胜者。所以假设大多数矿工在挖一个链,那么这条链就会发展最快,并且是最值得信任的。因此只要50%的矿工是诚实的,那么比特币就是安全的。
2.权益证明好处:能源利用效率高攻击成本更高不容易受到经济规模的影响
坏处:无利害关系攻击
类型:竞争性共识算法。
解释:权益证明是工作量证明的替代方案,为了解决其中的问题。和挖矿不同,你需要在系统中持有权益(代币)。所以,如果你只有10%的代币,那么你挖出下个区块的概率为10%。
挖矿需要很多的算力来解决不同的加密计算,从而解锁这些加密难题。算力意味着,工作量算法需要大量的电力需求。在2015年,1个比特币大约需要1.57个美国家庭每天的耗电量。所以,为了节省能源,权益证明算法诞生了。
在权益证明中,一美金是一美金。例如,假设有10,000个矿工,每个人花费1美金/分钟,就会比矿池花费10,000美金/分钟拥有更少的算力。但是在权益证明中,如果你不能一次使用完全。这里的一美金还是一美金。因此,这不会受到经济规模的影响。
并且,攻击权益证明系统比攻击工作量证明系统更加昂贵。对权益证明进行51%攻击的代价,是要让所有ASIC矿机全部倒下。
这意味着,每次你攻击权益证明系统,都会失去权益抵押,但是在工作量证明,如果你攻击系统,但是你不会失去挖矿设备或者代币;你只不过是让攻击很难实施。
但是权益证明会出现个问题,就是无利害关系攻击问题,其中区块生成者通过向多个区块链进行投票,就不会损失任何东西,从而防止达成共识。
不像工作量证明系统(你需要做大量计算来扩展一个链),同时为挖几个链也只有很少的成本。很多项目尝试通过不同方案来解决这个问题。例如,上面所说,其中一个解决方案就惩罚做坏事的矿工。
3.委托工作量证明(DPOW)好处:节能环保提高安全性可以通过非直接地给比特币(或者任何其他安全的链)提供安全性,这是通过为最贵
坏处:只有使用工作量证明或者权益证明在公证员激活模式下,不同节点的哈希算力必须要标定,不然哈希算力之间的区别会爆炸(以下会有更多的解释)
类型:合作型共识
解释:委托工作量证明是混合型共识方法,可以让一个区块链能够利用第二个区块链通过哈希算力提供的安全性。这是通过很多能够将数据从第一个区块链加到第二个区块链的节点来完成的,这通常会要求两个区块链进行进行妥协,从而削弱第一个区块链的安全性。
基于委托工作量证明算法的区块链可以使用工作量证明或者权益证明方法来实现功能;并且它能够将自身依附于任何工作量证明的区块链。但是,比特币的哈希力现在已经为通过委托工作量证明进行安全保护的区块链,提供了最高级别的安全保护。下面的图例,显示了主要区块链和它所依附的工作量证明区块链之间的关系:
在委托工作量证明系统中,有两类节点:公证人节点和普通节点。64个公证人节点是通过委托工作量证明的区块链权益持有者选出的,然后将确认的区块从委托工作量证明区块链添加到依附的工作量证明区块链。一旦区块完成,它的哈希就会通过33个公证人节点签名,然后添加到比特币转账,从而在比特币区块链上记录下委托工作量证明的区块哈希,这也是被网络中大多数公证人节点所公正的。
为了防止矿工在公证人节点之间,这会降低网络的效率,所以设计了一种以两种模式运行的轮换挖矿方法。“无公证人”模式可以让整个网络节点来进行挖矿,和普通的工作量证明类似;但是,在公证人活跃模式下,网络公证人就会在降低困难度的情况下进行挖矿。在这个框架中,每个公证人都可以目前的困难度去挖矿,但是其他公证人节点必须要按照10倍的难度去挖矿,而且所有的普通节点会按照100倍的困难度去挖矿。
但是这会造成些问题。这会导致公证人矿工和普通矿工哈希算力的巨大差别:
委托工作量证明系统的设计,是让区块链可以继续在没有公证人节点的情况下进行运作。在这种情况下,委托工作量证明区块链可以根据初始的共识方法运行,但是,它就不会拥有依附区块链的安全性。
委托工作量证明,会让任何使用这种共识的区块链获得更高的安全性以及更低的能源消耗。而且,委托工作量证明可以通过间接地为主流提供比特币的安全性,并且还需要支付比特币装置。最后,公证人节点和普通节点的功能,可以确保初始的共识机制继续在这类情况下运行,哪怕公证人节点失去作用。这个相互依靠性,为其他网络提供了激励,来支持比特币网络的维护,而且还不用让整个网络完全依附于直接的功能。
4.委托权益证明(DPOS)好处:能源效率高,节能。速度很快。
坏处:更加中心化拥有高代币权益的人,可以投票让他们自己成为验证者。
类型:合作型共识算法
解释:在DPoS算法中,权益持有者可以在系统中选择领导者(见证者),他们可以代替别人进行投票。这就会比一般的权益证明算法要更快。
例如,在EOS中,21个见证者会选举出来,然后一些节点(潜在的见证者)会作为候选人,然后如果某个见证者节点掉线或者有任何欺诈行为,那么就会被立刻替换。见证者生成区块,然后会获得回报。这些费用也是由权益持有者决定的。
通常,所有产生区块的节点是轮换的。这就会防止有节点来发布很多的区块,防止他发出双花攻击。如果见证者没有在时间限制内产生区块,那么这部分时间段就会跳过,然后下个见证者就会生产下个区块。如果有见证者连续错过区块或者发布无效转账,那么权益持有者就可以投票让他出局,然后找更好的见证者来替代他。
在DPoS中,矿工会合作来产生区块,而不是像工作量证明或者权益证明。通过部分中心化来创建区块,DPoS算法可以比其他共识算法的速度快几个数量级。
5.权威证明好处:节能省电速度快
坏处:比较中心化。可以在公链使用,但是通常在私有链和许可区块链使用。
类型:合作型共识
解释:在基于权威证明的网络中,转账和区块都是通过允许的账户来验证的,他们被称为验证者。验证者运行软件,可以让他们将转账放入区块中。这个过程是自动化的,而且不需要验证者去一直盯着电脑。但是,它需要维护计算机(权威的节点)不被攻击。
验证者必须要能够满足的三个主要条件是:1.身份必须是正式在链上认证,同时也可以在公开的域名中进行信息的交叉检测。2.这个资格很难获得,并且很难正确地去验证区块。(潜在的验证者需要获得公开认证)3.在检车过程中,必须要有完整的统一性,从而建立权威。
通过权威验证的个人,可以有权来成为验证者,所以对于验证者来说,系统会有激励。通过将名誉和身份连接,验证者就会被激励去处理转账流程,因为他们不希望获得负面的影响,因为这会失去很难获得的验证者身份。
6.权重证明好处:节能省电。很高的定制化和扩容性坏处:激励制度很困难
类型:竞争类共识
解释:权重证明的主要想法是。因为在权益证明系统中,你持有代币的比例代表你发现下个区块的概率,但是在权重证明系统中,其他相关的权重也会使用。有些应用是声望证明和空间证明。
7.声望证明
好处:
对于私有和限制性区块链网络很好坏处:只能在私有链和许可区块链系统中使用。
类型:合作类型共识
解释:声望证明算法模型取决于参与者的声望,来保持网络的安全。参与者(区块签署者)必须要有足够重要的声望,如果他们想要欺骗系统,就会获得非常严重的财务和品牌后果。这是个相对的概念,因为大多数企业如果在被抓到欺骗后,都会觉得很难过,但是更大的企业会失去更多,因此会比小公司更可能获选。
一旦公司证明了自己的声望,并且通过了验证,他们或许会通过网络的选举,成为合格的节点,就像权威证明中那样,只有认证过的节点才有资格去签署和验证区块。
8.消逝时间证明好处:参与者成本低。因此更多人可以很容易地参与,从而去中心化。对于参与者来说,很容易去验证领导者是合法选出的。控制领导者选举流程是和获得的利益成正比的。
坏处:尽管很便宜,你需要使用特定的硬件。因此不能大规模采用。不适合公链。
类型:竞争性共识
解释:消逝时间证明算法通常使用在许可区块链网络,从而可以决定挖矿权或者区块获胜者。许可区块链网络是需要特定参与者认证,才能加入的区块链。基于这种系统的原则,每单个节点就会成为胜者,消逝时间证明机制是基于在最大可能的网络参与者中,传播分享公平获胜的机会。
消逝时间证明算法的流程如下。网络中每个参与节点都要求等到随机的时间段,并且第一个完成指定等待时间的人就会赢得新区块。每个节点都会有随机的等待时间,然后进行休眠。第一个苏醒的,也就是有最短的等待时间,就可以产生新的区块,并且在整个网络中广播必要的信息。同样的过程会重复为发现下个区块。
消逝时间证明网络公示机制需要确保两个重要的因素。首先,参与的节点选择的时间是随机的,不会因为想赢,节点就可以选择更短的时间,其次是获胜者必须要完成等待时间。消逝时间证明的概念是在2016年早期由英特尔提出,我们都知道它是著名的芯片生产制造巨头。它提供了高科技工具来解决了计算问题“随机领导者选择。”
这个机制可以让参与者在受到保护的环境下,执行可信的代码,而且可以保证下面两个需求,对于所有参与节点来说,随机选择等待时间,获胜的参与者会完成等待时间。
在安全的环境下运行可信节点的机制,也会考虑到网络中很多其他的需求。它保证了可信代码确实是在可信的环境下运行,而且不会被任何外部人员修改。它也保证了,结果是可被外部参与者和个体所验证的,因此强调了网络共识的透明度。
消逝时间证明控制了共识过程的成本,并且保证灵活,从而在整个过程中,价值和成本成正比,这是数字货币经济能够持续下去的关键需求。
9.能力证明,即空间证明
好处:类似工作量证明,但是使用空间而不是算力。因此更加环保。可以删除恶意软件,通过决定是否处理器的L1内存是否是空的(例如,有足够的空间来评估,不会错过任何的内存)或者包含一个可以防止被驱逐。可以用作防止欺诈的手段,并且防止服务器攻击。
坏处:激励制度是个问题。
类型:合作共识
解释:空间证明,也被称为能力证明,是展示有人对于某个服务有合法的兴趣(例如发送邮件),这是通过部署一定量的记忆存储或者磁盘空间,来解决服务提供者给出的问题。
空间证明和工作量证明很类似,除了前者不是用算力,而是存储能力。空间证明和记忆容量和可恢复性证明相关,但是其中也有不同。
空间证明是证明者发给验证者的一部分数据,来证明这个验证者收到了部分空间。
空间证明看起来更加公平,由于存储的目标和更低的能源损耗,看起来是更好的解决方案。
10.历史证明解释:这个共识的想法是,和相信转账时间戳不同,你可以证明转账会在这个事件的前后某个时间发生。
当你在纽约时间记录下的时候,你可以给出证明你的照片是在这个报纸发布之后才记录,或者你有些方式来影响纽约时报发布信息。通过历史证明,你可以创建历史记录,从而证明这件事发生在每个特定的时刻。
历史证明会有高频的验证延迟功能。验证性延迟功能需要特定的步骤来评估,然后产品特别的输出,这个可以被有效和公开的验证。
这个特定的方式使用了连续的预图像抗性哈希,可以和之前的输出作为下个输入,然后连续运行。周期性地,计数和目前的输出是被记录的。
对于SHA256哈希的功能,这个过程是不可能和使用2强制攻击同时进行的。
然后我们可以确认,在生成过程中,真正的时间已经流失了。并且这个记录顺序和真实时间相同。
11.权益流通证明解释:权益流通证明可以作为工作量证明和权益证明的替代解决方案,来让P2P网络得到安全保证。权益流通证明的设计是用来鼓励拥有权和行为。
12. 重要性证明好处:在评估权益的时候,比权益证明好
解释:这个共识算法不只取决于代币的数量,还有生产系统行为应得到报酬的可能性。抵押区块的机会是由多个因素组成的,包括恶名(由不同的框架来控制),余额,还有转账数量。这个被称为重要性计算。这提供了一个更全面的“有用”系统成员的图像。
13.燃烧证明解释:通过燃烧证明,而不是将钱投入昂贵的计算设备,你可以通过将代币发入不可逆的地址,从而燃烧它们。通过将代币发送到从未出现过的土地,你可以在一个基于随机选择过程的系统上获得终身的特权。
取决于燃烧证明如何实施,矿工也许会然后原生代币或者替代链的代币,例如比特币。你燃烧的代币越多,那么你就有更高的可能性,去挖出下个区块。随着时间的发展,你在系统中的权益就会延迟,所以最终你会想要燃烧更多代币去增加你中奖的概念。(这里是指比特币挖矿的过程,你必须要连续地去投入设备来维持哈希力。)
虽然燃烧证明是个很有趣的解决方案,但是这个协议仍然浪费了很多资源。还有个问题就是,挖矿算力会很容易地偏向于那些想要燃烧更多代币的人。
14.身份证明
解释:身份证明(PoI)是一个加密证据(一部分数据),它会说明任何知道私钥的用户,就会和一个认证的身份相比较,然后和特定的转账连接。同个群体的每个人可以创建PoF(只有一个区块的数据),然后将它展示给任何人,例如处理节点。
15.行动证明解释:为了避免恶性通货膨胀,比特币只有2100个。这也就意味着,在某些时刻,比特币区块奖励会结束,而且比特币矿工只会收到转账费。
有人会说,这可能会因为公地悲剧导致安全问题,人们会总是按照自己的兴趣来做事,从而孤立了整个系统。所以,行动证明创建了可以代替比特币的另一个激励方案。行动证明是一个混合解决方案,这是由工作量证明和权益证明结合起来的。
在行动证明中,挖矿会按照工作量证明的形式开始,同时矿工也在赛跑去解决难题。取决于实施情况,区块挖矿不会包含任何转账,所以获胜的区块只会包含区块头部,并且矿工的奖励地址。
在这个时候,系统会转移到权益证明。基于区块头部的信息,随机的验证者会签名新的区块。拥有更多的代币,他就能被选择为区块生成者。一旦所有验证者签名,模板就成为一个完整的块。
如果选择的验证者不能去完成区块,那么下个获胜的区块就会被选择,新的验证者会被选择,以此类推,直到区块获得了正确数量的签名。费用会在矿工和签署区块的验证者之间分离。
行动证明的关键是和工作量证明(挖区块需要很多的能源)和权益证明(没有什么可以阻止验证者进行双重签名一样的。
16.存在证明解释:存在证明是在线服务,能够通过比特币时间戳转账,从而验证计算机文件的存在。
案例:不用揭露真实内容,就可以获得数字签名协议。不用揭露真实数据,就可以展示数据所有权文件时间戳证明所有权检测文件的完整性
17.可回收证明解释:可回收证明(POR)是一个通过文件系统到客户端的证明形式,目标文件F是完整的,在这种情况下,客户端能够完全覆盖它。因为可回收证明(POR)会比F本身的传输更加低的通信难度,对于高信任的远程存储系统,他们是更具吸引的创建区块。它可以真正作为共识算法,为云计算系统有用。
18. 拜占庭容错算法
好处:快速,扩容性好
坏处:通常是为私有链,以及许可类区块链使用
解释:拜占庭将军问题是现在分布式计算,都面临的问题。这个问题是几个拜占庭将军,他们在包围一个城市,但是他们必须决定是否要攻击城市。如果有的将军在没有和别人一起进攻,那么他们的策略就是失败。这些将军通常是各自分开的,并且需要传递信息来进行沟通。
实用型拜占庭容错(PBFT):这个问题的首个解决方案,就是实用型拜占庭容错(PBFT)。目前被用在超级账本,会有小于20个提取选择的PBFT有效运行。好处:很高的吞吐量。坏处:中心化
联邦拜占庭协议:FBA是拜占庭将军的另一种经典的解决方案。主要的方法,是让每个拜占庭将近都负责他们自己的链,从而完成信任。它有难以置信的吞吐量,很低的转账费用以及网络稳定性。
19.委托拜占庭协议(dBFT)好处:快速且扩容性好。坏处:每个人都在为成为根链而竞争。可以会有几个根链出现。
解释:dBFT被称为委托拜占庭协议,这种拜占庭容错的共识机制能够让通过代理投票来让大规模的人参与到共识。持有代币的人可以通过投票,选择他们想支持的人。这个选择的群体会通过拜占庭算法,达成共识并且挖出新的区块。
委托拜占庭协议(dBFT)提供拜占庭容错f = [(n-1) / 3],这个系统由n个共识节点组成。委托拜占庭协议(dBFT)有很好的最终结果,意味着一旦确认了,区块就不能分叉,并且转账也不可以回滚。
20. DAG(有向无环图)好处:由于非线性结构,所以有高度扩容性快速节能省电即时获得最终结果
坏处:智能合约的部署只可以通过预言机获得
解释:DAG或者叫有向无环图,是区块链更加宽泛的形式。他们由于特殊的造型,从而获得很高的扩容性而出名。
基本上来说,任何的区块链系统中,都是线性结构,一个个区块组成了链。这会让区块链速度很慢,因为区块们不能和链平行添加。但是在DAG区块/转账的案例中,这些是可以平行添加的,每个区块/转账都会确认之前区块的数量。这就让DAG可以无限地扩容。