分布式共识算法 (四) BTF算法(区块链使用)

系列目录

分布式共识算法 (一) 背景html

分布式共识算法 (二) Paxos算法算法

分布式共识算法 (三) Raft算法安全

分布式共识算法 (四) BTF算法网络

1、引子

前面介绍的算法,不管是 Paxos 仍是 Raft 都只能解决 非拜占庭将军容错的一致性问题CFT,Crash Fault Tolerance),不可以应对“故意的发送错误信息”问题。
本节咱们分析一下, BFT(Byzantine Fault Tolerance)伪造信息的拜占庭错误。常见的有工做量证实(PoW)、权益证实(PoS)、委托权益证实(DPoS),这些算法在区块链获得普遍应用。

2、常见BFT共识算法

2.1 POW算法

工做量证实(POW,Proof-of-Work)是一个用于阻止拒绝服务攻击的协议,它在 1993 年被 Cynthia Dwork 和 Moni Naor 提出,它可以帮助分布式系统达到拜占庭容错。分布式

1. 算法核心post

使用穷举法,不停的用哈希算法(好比SHA-256)去运算,直到使得运算出的哈希值前面若干位都是0,即小于某个值。掌握了全网51%的算力,就能够全部结果。区块链

 

SHA-256:是由256位二进制的数字(0和1)构成,转换后由64位16进制的数表示,好比:6b88c087247aa2f07ee1c5956b8e1a9f4c7f892a70e324f1bb3d161e05ca107b。url

这个工做量随着哈希值前面0的位数的增长而呈指数型的增长,可是检验这个哈希值只须要进行一次哈希运算就能够了。

 

2.特色spa

彻底去中心化,安全性高,每一个节点是公平的,被攻击成功的可能性小。须要耗费大量的算力,形成能源浪费,交易吞吐量有限。
3.应用
.net

比特币,莱特币.每秒个位数交易量。

2.2 POS算法

权益证实(POS,Proof-of-Stake)最先在2013年被提出,并在Peercoin系统中实现,相似股东机制,拥有股份越多的人越容易获取记帐权。

1.算法核心

经过保证金来对赌一个合法的块成为新的区块,收益为抵押资本的利息和交易服务费。保证金越多,得到记帐权几率越大。恶意参与者存在保证金被惩罚的风险。通常状况下,掌握超过全网1/3的资源,才可能左右最终的结果。

2.特色

POS不须要消耗大量的电力就可以保证区块链网络的安全性,也不须要在每一个区块中建立新的货币来激励矿工参与当前网络的运行,缩短了达成共识所须要的时间。

3.应用

Ethereum 每秒大概能处理 30 笔交易左右。

 

2.3 DPOS算法

委托权益证实(DPOS,Delegated Proof-of-Stake)可以让每个人选出能够表明本身利益的人参与到记帐权的争夺中,这样多个小股东就可以经过投票选出本身的代理人,保障本身的利益。整个网络中选举出的多个节点可以在 1s 中以内对 99.9% 的交易进行确认
1.算法核心:
在委托权益证实中,每个参与者都可以选举任意数量的节点生成下一个区块,得票最多的前 N 个节点会被选择成为区块的建立者组,下一个区块的建立者就会从这样一组当选者中随机选取,除此以外,N 的数量也是由整个网络投票决定的,因此能够尽量地保证网络的去中心化。
 
应用:使用委托权益证实的 EOS 可以每秒处理几十万笔交易。


 

========参考==========

https://www.jianshu.com/p/f73cee95821e

https://blog.csdn.net/yangwei256/article/details/83023649 

相关文章
相关标签/搜索