摘要
针对Raft算法中的拜占庭容错问题,提出结合BLS签名的拜占庭容错(Raft Byzantine fault tolerance, RBFT)算法.首先,利用BLS签名实现阈值签名,将投票过程转化为阈值签名过程,并将该过程与Raft算法的AppendEntries消息和RequestVote消息结合,尽可能地减弱容错过程对共识效率的影响;其次,通过增量哈希引入安全状态,保证了日志的不可篡改性;接着引入客户端对Leader节点的动态监控,以避免拜占庭Leader节点消极反馈的发生,进一步保证了算法的活性;最后,由本地多节点仿真实验表明:RBFT算法有效提升了数据吞吐量和可拓展性,并降低了交易延迟.
Aiming at the problem of Byzantine fault tolerance(BFT) in the Raft algorithm, a Raft Byzantine fault tolerance(RBFT) algorithm combined with BLS signature is proposed. First, it uses BLS signatures to implement threshold signatures, converts the voting process into a threshold signature process, and combines this process with the Raft algorithm’s AppendEntries message and RequestVote message to minimize the impact of the fault-tolerant process on consensus efficiency. Second, it introduces a safe status through the incremental Hash value to ensure the log’s tamper-resistibility. Then it provides dynamical monitoring on the leader node so as to avoid the possible negative feedback of Byzantine leader and ensure the liveness of the algorithm. Finally, local multi-node simulation experiments show that the RBFT algorithm could improve the throughput and scalability, and reduce the latency of transactions effectively.
作者
王日宏
张立锋
周航
徐泉清
WANG Rihong;ZHANG Lifeng;ZHOU Hang;XU Quanqing(School of Information and Control Engineering,Qingdao University of Technology,Qingdao 266520,Shandong Province,China;Ant Financial Services Group,Hangzhou 310012,China)
出处
《应用科学学报》
CAS
CSCD
北大核心
2020年第1期93-104,共12页
Journal of Applied Sciences
基金
山东省研究生教育创新计划项目基金(No.SDYY16023)资助
关键词
Raft算法
BLS签名
拜占庭容错方法
安全状态
Raft algorithm
BLS signature
Byzantine fault tolerance(BFT) algorithm
safe status