当前位置: 首页 > 科技观察

区块链主流共识算法全面

时间:2023-03-17 10:50:43 科技观察

每一个伟大的加密货币背后,都有一个伟大的共识算法。没有一种共识算法是完美的,但它们都有自己的长处。在加密世界中,需要共识算法来防止双重支付。以下是迄今为止一些最流行的共识算法的概要,从区块链到DAG以及介于两者之间的一切。1.工作量证明:POW(Proof-of-Work)代表项目:BTC.ETH.BCH.LTC.Doge优点:目前最安全的共识算法缺点:需要成长期,吞吐量慢Proof-of-Work是第一个区块链共识算法。由SatoshiNakamoto为比特币区块链设计,我们可以感谢PoW在全球范围内看到的大规模采矿作业和电力消耗。但在这个行业发展的这个阶段,它开始被认为是一种过时的技术。甚至以太坊也从PoW迁移到更节能、更具成本效益的PoS。有这么多新的替代方案,很难理解为什么新的区块链会使用PoW。在PoW中,矿工解决无用的难题,从而创建区块。PoW在“最长链获胜”系统上运行。因此,假设大多数矿工在同一条链上工作,那么增长最快的将是最长和最值得信赖的。因此,只要矿工投入的工作有50%以上是诚实的,区块链就是安全的。2、权益证明:POS(Proof-of-Stake)代表项目:ETH2.0.Peercoin优点:攻击成本较高,节能,可扩展缺点:区块链在PoS中一次完全攻击后很容易完全失去价值,该块不是由矿工工作创建的,而是由矿工将他们的代币放在有效块上的“股份”中。对于分叉,铸造者花费他们的代币来投票支持哪个分叉。假设大多数人投票给了正确的分叉,投票给错误分叉的验证者将“失去他们的股份”。反对权益证明的一个常见论据是“没有任何东西是拥有的”问题。令人担忧的是,验证者可以对发生的每个分叉的两端进行投票,因为验证者不像PoW那样几乎不花费他们的计算能力。因此,此时PoS中的分叉可能比PoW中更常见,一些人担心这会损害货币的可信度。3、委托权益证明:DPoS(Delegated-Proof-of-Stake)流行实现:Steemit.EOS.BitShares优点:交易便宜;可扩展、节能缺点:弱中心化、不稳定、容易被攻击DPoS是DanielLarimer的想法,其实与PoS有很大的不同。在DPoS中,代币持有者自己不对区块的有效性进行投票,而是对代表他们进行验证的代表进行投票。InaDPoSsystem,thereareusually21-100electedrepresentatives.代表定期洗牌并发布命令以交付他们的区块。代表很少可以让他们有效地组织自己,并为每个代表创建指定的时间来张贴他们的瓷砖。如果受托人不断错过他们的区块或发布无效交易,则人群将他们投票出去并用更好的受托人取而代之。在DPoS中,矿工可以合作生产区块,而不是像在PoW和PoS中那样竞争。通过部分集中创建区块,DPoS的计算速度比大多数其他共识算法快几个数量级。EOS设置出块时间小于1秒,出块时间为0.5秒左右。4.授权证明PoA(Proof-of-authority)代表项目:POA.Network,以太坊Kovan测试网优点:高吞吐量;可扩展性缺点:企业中心化系统权威证明是一种共识算法,其中交易通过批准的帐户被验证并充当系统的“管理员”。这些账户是其他节点从中接收真相的权威。PoA具有高吞吐量,并针对专用网络进行了优化。由于其中心化的特性,你不太可能看到PoA在公共链上运行。5.权重证明POWeight(Proof-of-Weight)代表项目:Algorand、Filecoin、ChiaPros:Customizable;可扩展的缺点:激励可能是一个问题权重证明是基于Algorand共识模型的共识算法的广泛分类。总体思路是,虽然在PoS中,你在网络中拥有的硬币百分比代表你“发现”下一个区块的可能性,但在PoWeight系统中,使用其他相对加权的值。例如,Filecoin的时空证明是根据你要存储的IPFS数据量来加权的,其他系统可能包括信誉证明等权重。6、拜占庭容错BFT代表项目:Hyperledger、Stellar、Dispatch和Ripple优势:高吞吐量;低成本;可扩展缺点:可信度低分布式计算有一个经典的问题,通常由拜占庭将军解释。问题是几个拜占庭将军和他们各自的拜占庭军队包围了一座城市。他们必须一致决定是否进攻。如果一些将军独自进攻,他们的围攻将以悲剧收场。将军往往相距遥远,必须通过消息进行交流。一些加密货币协议使用某些版本的BFT来达成共识,每个协议都有自己的优缺点。实用拜占庭容错(PBFT):这个问题的第一个解决方案是“实用拜占庭容错”。HyperledgerFabric目前使用的很少(少于20个)预选将军PBFT有效运行。优点:高交易吞吐量缺点:中心化/允许联合拜占庭协议(FBA):FBA是Stellar和Ripple等货币使用的拜占庭将军问题的另一种解决方案。一般的想法是,一般来说,每个拜占庭链都对自己的链负责,因为它们进来是为了构建按真相排序的消息。在Ripple中,将军(验证者)将由Ripple基金会预先选择。在Stellar中,任何人都可以成为验证者,因此您可以选择信任哪些验证者。由于其令人难以置信的吞吐量、低交易成本和网络可扩展性,我相信类FBA共识算法是我们发现的最好的分布式共识算法。7、有向无环图DAG代表项目:Iota、Hashgraph、Raiblocks/Nano优点:网络可扩展性;低成本缺点:取决于实施DAG现在比Vitalik的Tinder配置文件更热门。DAG是一种不使用区块链数据结构的共识形式,主要异步处理交易。理论上最大的优势是每秒无限次交易,但DAG与其他共识一样有优缺点。Tangle是Iota使用的DAG共识算法。为了发送Iota交易,您需要验证之前收到的两笔交易。添加到“缠结”中的交易越多,二对一、支付对支付的共识增加了交易的有效性。由于共识是由交易建立的,理论上,如果有人能产生1/3的交易,他们就可以说服网络的其余部分,他们的无效交易是有效的。在交易量不足以创建交易量的1/3之前,Iota在称为“协调器”的集中节点上“双重检查”网络上的所有交易。Iota说协调器就像系统的训练轮一样工作,一旦Tangle足够大就会被移除。