共识算法

1、定义

共识算法解决的是对某个提案大家达成一致意见的过程。(提案的含义在分布式系统中十分宽泛,如多个事件发生的顺序、某个键对应的值、谁是领导……等等。可以认为任何可以达成一致的信息都是一个提案。)对于分布式系统来讲,各个节点通常都是相同的确定性状态机模型,从相同初始状态开始接收相同顺序的指令,则可以保证相同的结果状态。因此,系统中多个节点最关键的是对多个事件的顺序进行共识,即排序。共识算法保证了区块链系统中每一个节点之间事务记录的一致性,同时起到防范系统遭受诸多种类的安全攻击,包括拜占庭攻击、女巫攻击、51%攻击等。

实际上,如果分布式系统中各个单节点都能保证以十分“理想”的性能(瞬间响应、超高吞吐)无故障地运行,节点之间通信瞬时送达,则实现共识过程并不十分复杂,简单地通过广播进行瞬时投票和应答即可。

可惜的是,现实中这样的“理想”系统并不存在。不同节点之间通信存在延迟(光速物理限制,通信处理延迟),并且任意环节都可能存在故障(系统规模越大,发生故障可能性越高) 。如通信网络会发生中断、节点会发生故障、甚至存在恶意节点故意要伪造消息,破坏系统的正常工作流程。

2、BFT & CFT

一般地,把出现故障

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值