拜占庭容错(BFT)介绍

链客,专为开发者而生,有问必答!

此文章来自[链客区块链技术问答社区](https://www.liankexing.com),未经允许拒绝转载。

14844519-e3576634ff1cbc1a.png

拜占庭容错(BFT)介绍

自2008年比特币作为一种作为点对点的电子现金系统出现开端,许多加密钱银都被发明出来,每个加密钱银都有其特定的机制。但几乎全部的加密钱银都有一个一起点,那就是区块链是他们架构的中心。

14844519-05b7409e37aafcec.jpg

除了少数例外情况外,区块链都是被有意规划成去中心化的,由分布式核算机节点网络保护的数字账本。出于这个原因,区块链技术答应树立无信任的经济系统,在其间能够实行通明和可靠的金融交易而无需中间人。加密钱银正在被采用作为传统银行和付出系统的可行替代方案,这些系统严峻依托信任。

正如大多数分布式核算系统一样,加密钱银网络的参与者需求定时就区块链的当前状况到达一起,这就是我们所说的到达一起。可是,以安全和可信的方法就分布式网络到达一起绝非一项简略的使命。

那么,假定某些节点或许出现缺点或不诚实行为,分布式核算机节点网络怎样就抉择方案到达一起? 这就是所谓的拜占庭将军问题的根本问题,它产生了拜占庭容错的概念。

什么是拜占庭将军问题?

简略来说,拜占庭将军问题在1982年被认为是一个逻辑上的困境,它说清楚一群拜占庭将军在企图附和下一步行为时或许会遇到沟通问题。

困境假定每个将军都有自己的戎行,每支戎行都坐落他们方案侵犯的城市周围不同方位。 将军需求就侵犯或撤离到达一起。只需全部将军到达一起,即和谐后抉择一起实行,无论是侵犯仍是撤离都无关紧要。

因而,我们能够考虑以下目标:

· 每个将军有必要作出抉择:侵犯或撤离(是或否);

· 一旦做出抉择后无法改动;

· 全部将军都有必要就同一抉择到达一起,并以同步方法实行。

上述通讯问题触及这样一个事实,即一个将军只能通过信使发送的信息与另一个人进行通讯。因而,拜占庭将军问题的中心挑战是信息或许以某种方法被推延,破坏或丢掉。

此外,即使消息成功传递,一个或多个将军也能够选择(出于任何原因)恶意行为并发送欺诈性消息以混淆其他将军,导致行为的完全失利。

假定我们将这个困境对应到区块链上,则每个将军代表一个网络节点,而节点需求就系统的当前状况到达一起。换句话来说,分布式网络中的大多数参与者有必要附和并实行相同的操作以防止失利。

因而,在这些类型的分布式系统中到达一起的仅有方法是至少具有2/3以上的可靠和诚实的网络节点。这意味着假定大多数网络抉择采纳恶意行为,则系统简略遭到缺点和侵犯(例如51%侵犯)。

拜占庭容错(BFT)

简略来说,拜占庭容错(BFT)是能够抵抗拜占庭将军问题导致的一系列失利的系统特点。 这意味着即使某些节点出现缺点或恶意行为,拜占庭容错系统也能够继续运转。

拜占庭将军的问题有多种或许的解决方案,因而,有多种方法能够构建拜占庭容错系统。同样地,区块链有各种不同的方法来完成拜占庭容错,这就是我们说的一起算法。

区块链一起算法

我们能够将一起算法定义为区块链网络到达一起的机制。最常见的完成是工作量证明(PoW)和股权证明(PoS)。这儿我们以比特币为例。

尽管比特币协议规矩了系统的首要规矩,但工作量证明一起算法定义了怎样遵循这些规矩以到达一起(例如,在交易的验证和验证期间)。

尽管工作量证明的概念比加密钱银更早,但中本聪开发了一种批改版别的算法,能够将比特币创立为拜占庭容错系统。

请注意,拜占庭容错算法不能100%忍受拜占庭缺点,但由于本钱密集型的挖矿和底层加密技术,工作量证明已被证明是区块链网络最安全可靠的完成之一。从这个意义上说,由中本聪规划的工作量证明一起算法被许多人认为是拜占庭容错最天才的解决方案之一。

结论 

拜占庭将军的问题是一个风趣的困境,终究产生了拜占庭容错系统,这些系统正在各种场景中得到广泛应用。除区块链工作外,拜占庭容错系统的一些运用事例包含航空,航天和核电工作。

在加密钱银领域中,具有有效的网络通讯以及杰出的一起机制关于任何区块链生态系统都至关重要。保护这些系统需求继续的尽力,可是现有的一起算法没有克服一些约束(例如可扩展性)。尽管如此,工作量证明和权益证明作为拜占庭容错系统来说都是风趣的方法,其潜在的应用会激起更风趣的创新。

转载于:https://www.jianshu.com/p/deb8586c5557

猜你喜欢

转载自blog.csdn.net/weixin_33698823/article/details/91144917