IEEEJAS的个人博客分享 http://blog.sciencenet.cn/u/IEEEJAS

博文

基于门限和环签名的抗自适应攻击拜占庭容错共识算法

已有 1203 次阅读 2023-8-6 15:32 |系统分类:博客资讯

引用本文

 

孙海锋, 张文芳, 王小敏, 马征, 黄路非, 李暄. 基于门限和环签名的抗自适应攻击拜占庭容错共识算法. 自动化学报, 2023, 49(7): 14711482 doi: 10.16383/j.aas.c200694

Sun Hai-Feng, Zhang Wen-Fang, Wang Xiao-Min, Ma Zheng, Huang Lu-Fei, Li Xuan. A robust Byzantine fault-tolerant consensus algorithm against adaptive attack based on ring signature and threshold signature. Acta Automatica Sinica, 2023, 49(7): 14711482 doi: 10.16383/j.aas.c200694

http://www.aas.net.cn/cn/article/doi/10.16383/j.aas.c200694

 

关键词

 

区块链,拜占庭容错,共识算法,自适应攻击,环签名,门限签名 

 

摘要

 

共识算法作为区块链底层关键技术, 可解决决策权分散的分布式系统中的一致性难题. 良好的共识算法可提升系统健壮性, 但大多数方案在网络故障或主动攻击下存在鲁棒性不可控、活性表现差、可扩展性不足等问题. 针对上述问题, 提出一种抗自适应攻击的健壮拜占庭容错共识算法(Robust Byzantine fault tolerance, RBFT). 该算法利用环签名的无条件强匿名性构造排序选主算法, 隐匿选举每一轮共识中的提案者, 进而达到模糊敌手攻击对象、有效抵抗自适应攻击的目的. 同时, 通过在多轮投票中合成代表法定人数投票意愿的门限签名, 将网络划分为众多最小连通性网络, 以保证在最小连通性网络环境中实现低延迟、高鲁棒性的拜占庭容错共识算法. 分析表明, 系统在提升可扩展性、减少视图更换、降低签名验证开销的同时, 能够有效保证系统活性.

 

文章导读

 

区块链是一种去信任化的分布式计算范式[1], 其概念源于2008年中本聪在密码学邮件组发表的《比特币: 一种点对点电子现金系统》[2]一文, 阐述了一种基于非对称加密、共识算法、P2P (Peer-to-Peer)协议等多种技术融合构建的去中心化基础架构. 共识算法作为区块链的核心技术, 能够在缺乏中央控制的网络中, 实现数据的分布式一致性, 对维护系统的稳定运行和节点相互信任起着重要作用, 因此逐渐成为区块链的研究热点.

 

根据系统开放程度不同, 区块链可以分为公有链、联盟链和私有链. 公有链起源于比特币, 具有完全去中心化特性, 任何节点均可参与链上数据的维护、读写以及共识过程. 公有链大多采用“Proof of X”[3]类共识算法, 核心思想是通过竞争的方式解决某项难题来获得记账权, 典型代表有工作量证明[4] (Proof of work, PoW)、权益证明[5] (Proof of stake, PoS)和股份授权证明[6] (Delegate proof of stack, DPoS). PoW依赖机器进行数学运算来获取记账权, 通过激励机制引入分布式节点的算力竞争来保证数据一致性和安全性, 但挖矿造成大量的资源浪费, 备受世人诟病, 而且交易吞吐量低下、交易延迟过高, 无法满足商业应用需求. PoS以权益证明代替工作量证明, 由具有最高权益的节点获得区块的记账权, 解决了PoW资源浪费问题, 并在一定程度上缩短达成共识的时间, 但易造成富者越富、富者支配记账权的问题. DPoSPoS的基础上, 将记账人的角色专业化, 通过货币持有者投票选举董事会成员, “董事会内部按照既定规则验证交易和记账, 因此大幅缩小参与验证和记账节点的数量, 实现秒级的共识验证, 但也导致去中心化程度降低.

 

由于公有链具有高度开放性, 用户的隐私和监管都存在不足, 并且采用“Proof of X”类吞吐量低下的共识算法, 无法满足商业应用的需求. 因此R3CEVIBM等公司纷纷推出面向行业应用的联盟链. 联盟链是一种在融合了传统分布式系统和当前去中心化理念的基础上进行多中心化改造的区块链, 提供成员管理、认证、授权、监控、审计等安全管理功能, 参与者通过授权加入网络, 组成利益相关的联盟, 联盟成员之间共同维护区块链. 相比公有链, 联盟链更适用于企业之间的交易、结算或清算等多方协作场景; 相比传统分布式网络, 联盟链属于半封闭生态的交易网络, 存在不对等信任的节点. 因此, 考虑到商业应用对安全、性能等方面的需求, 联盟链一般采用拜占庭容错算法来进行全网共识.

 

拜占庭容错算法[7]最早由Lamport等提出, 是分布式系统应用复制技术解决拜占庭错误的通用方案. 其中, 拜占庭错误是指系统中存在恶意节点故意伪造消息导致的软件恶意行为, 对应的节点为拜占庭节点. 1999, Castro[8]提出首个实用拜占庭容错算法(Practical Byzantine fault tolerance, PBFT), 采用三阶段协议在副本之间进行状态复制, 并以两两交互的方式保证各副本状态达成一致, 从而将拜占庭容错算法复杂度从指数级降到多项式级, 目前在联盟链中得到广泛应用; 然而两两交互导致拜占庭容错算法通信复杂度高达O(n2), 易造成网络拥塞, 可扩展性差. 随后, 一系列拜占庭容错方案[9-19]相继得以提出. 2007, Zyzzyva[9]采取投机技术(Speculation)避免执行高昂的三阶段提交, 由客户端和副本直接交互, 但投机行为导致错误恢复成本较高. 文献[10]Castro等提出的PBFT算法基础上设计了动态拜占庭容错算法(Dynamic PBFT), 允许节点动态出入共识网络. 文献[11-12]通过引入可信计算平台(Trusted computing platform, TCP)限制节点进行欺骗的能力, 将拜占庭容错系统所需的服务器数量减少到2f+1,f为拜占庭节点数量, 从而降低系统开销. 文献[14-15]通过引入门限签名将系统通信复杂度降至O(n), 但上述方案中门限签名的合成与转发均依赖于主节点的可靠性, 鲁棒性不强, 一旦主节点被敌手控制或成为一个拜占庭节点, 将危害系统安全性, 并且主节点身份是暴露的, 不能抵抗自适应攻击. 此外, 一些学者利用PBFT运行效率高、非概率性共识的优点, PBFT与公有链共识算法相结合, 构造出高效的混合共识算法(Hybrid consensus)[16-19], Tendermint[16]ByzCoin[18], 核心思想是先通过PoWPoS等算法选举一定数量的节点作为委员会, 委员会内部再依托高效的PBFT算法生产区块, 从而大幅提升交易规模.

 

综合当前研究现状, 目前拜占庭容错算法主要研究方向是进一步降低系统开销, 提高吞吐量, 然而大部分方案存在以下不足. 首先, 大部分方案在提案之前便揭晓主节点身份, 极容易遭受敌手自适应选择主节点发起的分布式拒绝服务攻击(Distributed denial of service, DDoS), 导致主节点提案进程被中断, 严重影响系统活性, 文献[20]将这种攻击称之为自适应攻击. 为了抵抗自适应攻击, Algorand[21]给出一种解决思路, 利用加密抽签技术隐秘选择共识过程的验证者和提案者, 使得敌手无法事先猜测提案者身份, 进而能够抵抗自适应攻击. 然而, 此方案中加密抽签函数无意识地选择多提案者增加了系统对多提案处理的负担. 其次, 大部分拜占庭容错方案需要进行两两交互来保证各副本状态达成一致, 每次交互均需2f+1个副本收到2f+1个相同的投票才能满足系统一致性要求, 称为2f+1”条件. 一旦发生消息丢失或网络拥塞、延迟等问题, 将导致2f+1”条件不满足, 使得系统在当前视图无法达成一致, 必须更换视图, 因此造成系统资源极大浪费.

 

本文针对大部分拜占庭容错算法难以抵抗自适应攻击, 并且存在可扩展性不足、鲁棒性较差等问题, 提出一种契合联盟链场景的健壮拜占庭容错共识算法(Robust Byzantine fault tolerance, RBFT). 首先, 该算法利用环签名构造无条件匿名的公开承诺, 每个副本在不泄露各自承诺内容的前提下得到各自承诺在所有公开承诺中的排序位置, 并根据排序位置被依次选为提案者进行提案, 从而达到隐匿提案者身份、保障系统活性的目的. 其次, 通过在多轮投票中合成代表大多数投票者意愿的门限签名, 弱化2f+1”条件, 以保证在最小连通性的网络环境中实现低延迟、高鲁棒性的拜占庭容错共识算法, 从而减少视图更换、签名验证等开销. 分析表明, 系统在减少系统开销、提升可扩展性的同时, 具有较高的安全性, 在提案前和提案后均能保证系统活性, 为高可用拜占庭系统提供支持.

 1  联盟链应用场景

 2  RBFT算法示意图

 3  有序承诺序列

 

本文针对大多数拜占庭容错算法难以抵抗自适应攻击, 并且存在可扩展性不足、鲁棒性较差等问题, 利用环签名的无条件强匿名性以及门限签名分散签名权的特性, 设计了一种契合联盟链应用场景的高效健壮拜占庭容错共识算法RBFT. 该算法能够在提案前匿名选取提案主节点, 达到模糊敌手攻击对象、抵抗自适应攻击的目的; 同时, 利用门限签名可实现对不同网络状况的自适应能力, 以保证在最小连通性网络环境中的拜占庭容错共识. 分析表明, 该方案在减少系统开销、提升可扩展性的同时, 具有较高的安全性, 在提案之前、提案之后均能有效地保证系统活性, 为高可用拜占庭系统提供支持.

 

作者简介

 

孙海锋

西南交通大学信息科学与技术学院硕士研究生. 主要研究方向为区块链信息安全及共识机制. E-mail: alvislly@163.com

 

张文芳

西南交通大学信息科学与技术学院副教授. 主要研究方向为云计算和分布式系统信息安全, 区块链安全及共识, 轨道交通信息安全. 本文通信作者.E-mail: wfzhang@swjtu.edu.cn

 

王小敏

西南交通大学信息科学与技术学院教授. 主要研究方向为信息安全和轨道交通安全工程. E-mail: xmwang@swjtu.edu.cn

 

马征

西南交通大学信息科学与技术学院教授. 主要研究方向为信息和通信工程. E-mail: zma@swjtu.edu.cn

 

黄路非

成都市第三人民医院高级工程师. 主要研究方向为医疗信息工程. E-mail: lhuang78@163.com

 

李暄

成都市第三人民医院高级工程师. 主要研究方向为医疗信息工程. E-mail: ally.xuan@hotmail.com



https://blog.sciencenet.cn/blog-3291369-1398059.html

上一篇:基于种群个体数自适应的多尺度量子谐振子优化算法
下一篇:基于事件触发的三阶离散多智能体系统一致性分析
收藏 IP: 222.131.242.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-7-22 20:26

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部