基于拜占庭容错的区块链共识算法研究
发布时间:2023-04-12 05:42
在区块链系统中,没有中心机构以及第三方,因此如何让系统中每个节点的数据保持一致,是区块链需要解决的关键问题之一。区块链系统中的共识算法决定了如何保持一致,并决定了系统中的举措如何达成共识,进而使所有节点都按照该算法来共同维护一份分布式账本。区块链系统与传统的分布式系统并不完全相同,除了数据一致性,还需考虑系统中是否存在恶意节点,因此其使用的共识算法主要为拜占庭容错(Byzantine Fault Tolerance,BFT)类共识算法。首先研究区块链系统中主流的四种拜占庭容错类共识算法,其次重点分析实用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT),同时针对其存在的问题和不足对PBFT算法进行改进,具体工作如下:针对PBFT算法容错率低、通信资源耗费高的问题,提出了基于信任机制的实用拜占庭容错算法(Trust Mechanism Practical Byzantine Fault Tolerance,TM-PBFT)。首先,该算法支持在共识阶段开始之前,加入投票阶段,即通过投票选出信任节点并组成信任节点列表,每个节点仅有一票;其次,为...
【文章页数】:64 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第1章 绪论
1.1 研究背景和意义
1.2 国内外研究现状
1.2.1 区块链研究现状
1.2.2 共识算法研究现状
1.3 本文工作
1.4 论文结构
第2章 相关技术
2.1 简要介绍
2.1.1 区块链数据结构
2.1.2 区块链层次模型
2.2 密码学
2.2.1 哈希算法
2.2.2 Merkle树
2.2.3 椭圆曲线密码学
2.3 智能合约
2.4 故障容错类共识算法
2.4.1 Paxos算法
2.4.2 Raft算法
2.5 拜占庭容错类共识算法
2.5.1 工作量证明(Proof of Work,PoW)
2.5.2 股份证明(Proof of Stake,PoS)
2.5.3 授权股份证明(Delegated Proof of Stake,DPoS)
2.5.4 实用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT)
2.6 本章小结
第3章 基于信任机制的实用拜占庭容错算法
3.1 信任节点列表的建立
3.2 节点信任度评价模型
3.3 奖惩方案设计
3.4 TM-PBFT算法流程
3.4.1 TM-PBFT算法流程
3.4.2 TM-PBFT算法执行流程
3.5 实验与分析
3.5.1 算法合理性分析
3.5.2 算法安全性分析
3.5.3 与其它共识算法比较
3.5.4 吞吐量分析对比
3.5.5 通信量分析对比
3.6 本章小结
第4章 基于动态分组的实用拜占庭容错算法
4.1 动态分组与副本节点选举
4.1.1 动态分组流程
4.1.2 副本节点选举策略
4.2 分组广播
4.2.1 投票阶段分组广播
4.2.2 共识阶段分组广播
4.3 主节点更换协议
4.4 DG-PBFT算法实现
4.4.1 DG-PBFT算法流程图
4.4.2 动态分组实现
4.4.3 副本节点选举实现
4.4.4 执行过程实现
4.4.5 主节点更换协议实现
4.5 算法实验与分析
4.5.1 算法合理性分析
4.5.2 算法安全性分析
4.5.3 与其它共识算法比较
4.5.4 吞吐量分析对比
4.5.5 通信量分析对比
4.6 本章小结
第5章 总结与展望
5.1 工作总结
5.2 不足与展望
参考文献
攻读硕士期间所发表的学术成果
致谢
本文编号:3790549
【文章页数】:64 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第1章 绪论
1.1 研究背景和意义
1.2 国内外研究现状
1.2.1 区块链研究现状
1.2.2 共识算法研究现状
1.3 本文工作
1.4 论文结构
第2章 相关技术
2.1 简要介绍
2.1.1 区块链数据结构
2.1.2 区块链层次模型
2.2 密码学
2.2.1 哈希算法
2.2.2 Merkle树
2.2.3 椭圆曲线密码学
2.3 智能合约
2.4 故障容错类共识算法
2.4.1 Paxos算法
2.4.2 Raft算法
2.5 拜占庭容错类共识算法
2.5.1 工作量证明(Proof of Work,PoW)
2.5.2 股份证明(Proof of Stake,PoS)
2.5.3 授权股份证明(Delegated Proof of Stake,DPoS)
2.5.4 实用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT)
2.6 本章小结
第3章 基于信任机制的实用拜占庭容错算法
3.1 信任节点列表的建立
3.2 节点信任度评价模型
3.3 奖惩方案设计
3.4 TM-PBFT算法流程
3.4.1 TM-PBFT算法流程
3.4.2 TM-PBFT算法执行流程
3.5 实验与分析
3.5.1 算法合理性分析
3.5.2 算法安全性分析
3.5.3 与其它共识算法比较
3.5.4 吞吐量分析对比
3.5.5 通信量分析对比
3.6 本章小结
第4章 基于动态分组的实用拜占庭容错算法
4.1 动态分组与副本节点选举
4.1.1 动态分组流程
4.1.2 副本节点选举策略
4.2 分组广播
4.2.1 投票阶段分组广播
4.2.2 共识阶段分组广播
4.3 主节点更换协议
4.4 DG-PBFT算法实现
4.4.1 DG-PBFT算法流程图
4.4.2 动态分组实现
4.4.3 副本节点选举实现
4.4.4 执行过程实现
4.4.5 主节点更换协议实现
4.5 算法实验与分析
4.5.1 算法合理性分析
4.5.2 算法安全性分析
4.5.3 与其它共识算法比较
4.5.4 吞吐量分析对比
4.5.5 通信量分析对比
4.6 本章小结
第5章 总结与展望
5.1 工作总结
5.2 不足与展望
参考文献
攻读硕士期间所发表的学术成果
致谢
本文编号:3790549
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3790549.html