链化未来共识黄皮书(3)

链化未来公众号将分三篇文章来阐述链化未来的共识协议的理论设计,后续还会推出一系列文章来详细说明链化未来共识协议的工程实现,本文为链化未来共识协议理论设计的第三篇(第5章)。

5、安全性证明

5.1 定理

Theorem 5.1 (FLP 不可能性) 异步系统下,即使只有一个节点崩溃或者作恶,不可能构造在确定有限时间内的共识算法。

Theorem 5.2 (容错上界) 对于部分同步网络,最多容忍1/3的恶意节点。异步网络,确定性共识算法不能容错。强同步网络可以达到100。

Theorem 5.3 (CAP 定理) 对于网络分区,无法同时保证一致性和可用性。

5.2 安全假设

Assumption 5.4 (网络连通性) 网络不会被超过1/3的恶意群体控制,任意两点的消息传播通过gossip协议,保证消息在确定时间范围内最终大概率到达。同时消息的源头不会被轻易识别出来,被攻击。

Assumption 5.5 (节点恶意行为) 网络上的节点可以发送任意恶意消息或者串谋、拒绝响应,只要总持币数不会被 1/3 的恶意节点控制,那么区块链系统的安全性和活性就能得到保证。

Assumption 5.6 (弱同步时钟) 各个节点依赖本地时钟和网络消息判断何时进入下一轮。不同节点的本地时钟可能存在差异,需要定时跟网络时钟服务(如微软)进行矫正。我们的每轮是固定时间宽度,考虑了消息在不同网络拓扑下的传播时间分布和节点处理消息的时间。

Assumption 5.7 (恶意节点数)假设网络上不可能有两个相同的集合,每个集合包含了相同的签名;即假设了足够的恶意节点持有的代币数。

5.3 推论

虽然拜占庭共识能保证全网系统的最终一致性,但是因为我们在公网上,情况比较特殊:
为了扩展性的要求,考虑的是通过委员会 + 阈值的方式,而不是传统的每个节点接收到其他全部节点的消息后做响应。

节点间的信息传输非点对点传输,而是通过公网 gossip 方式传播,恶意节点可能会将消息只广播到部分网络分区,能在超时范围内,影响该网络其他节点的接收消息的完整度。

恶意节点可能会有以下几种攻击的可能性:
Case1: 作为 Proposer,有意向一部分网络节点发送 PROPOSE 消息,向另外一部分节点延迟发送,或者根本不发送。

Case2:作为 Voter,有意向一部分网络节点发送 ECHO 消息,向另外一部分节点延迟发送,或者根本不发送。

Corollary 5.7.1 可验证延时函数能够解决不提交问题。

证明:对于随机数生成过程中,贡献者有可能拒绝提交的问题,假如能够让提交与否的结果变得不可预测,那么贡献者是否提交已经不是那么重要。考虑到延时函数的不可提前预测的特性,所以能解决上述问题。

Corollary 5.7.2 Case1不会影响区块链的一致性和活性。

证明:VRF保证了voter分布的不可预测性和随机性,所以假如PROPOSE消息没有大于 TH1的网络上传播,大部分节点将无法在足够的超时范围内收到足量ECHO消息,从而以空交易批的方式进入第二轮;对于少部分能在超时范围内接收到EC

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值