【技术实现步骤摘要】
一种基于网格仲裁的联盟链共识方法
本专利技术属于区块链
,涉及一种基于网格仲裁的联盟链共识方法。
技术介绍
区块链最早可追溯于1991年,由Haber和Bayeret提出了在分布式系统里采用加密哈希函数和默克尔树,用时间戳高效、安全的记录数据,并将加密的数据区块连接链。直至2008年,中本聪发表了一篇《比特币:一种点对点的电子现金系统》,宣布了第一代区块链技术的诞生与大规模应用。此后的区块链技术则是将分布式数据存储、点对点传输、共识机制和加密算法等技术从比特币中提炼出来,配合自动化脚本代码所组成的智能合约进行编程和业务处理的一种分布式存储账本体系。共识算法(consensusalgorithm)是指在多方协同环境下使所有参与方对任务执行结果达成一致(共识)的算法。共识算法多应用于确保分布式数据一致,在区块链中引用共识算法最早是为了解决新交易块加入哈希链表中可能出现的“块冲突”问题,也就是同时多个块被不同的块创建者加入到哈希链表中而引起的链表分叉问题,他可能导致双重花费(doublespending)与交易无效的风险。目前,区块链常用的算法一般有工作量证明(PoW)、权益证明(PoS)和实用拜占庭算法(PBFT),而前两种类型算法,即PoW和PoS算法,常用于公有链中,其特征是系统吞吐量极低,可扩展性高。而拜占庭类型算法由于算法共识特点,常常需要O(n2)通信复杂度,但是随着节点数量n的增多导致可扩展性严重受到制约。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种基于网格 ...
【技术保护点】
1.一种基于网格仲裁的联盟链共识方法,其特征在于,该方法先使用随机抽签函数将仲裁领导团从节点中选举出来,再将剩余的节点划分给每个仲裁领导节点,构成网格拓扑结构;具体包括以下步骤:/nS1:初始时,各个未组网节点向证书授权中心获取密钥,并广播发送身份标识信息;各个节点运行抽签算法,根据随机种子值seed和期望仲裁领导团数t从未组网节点中抽取t个用户组成仲裁领导团;/nS2:仲裁领导团的各个节点向系统申请拓扑结构图编号,确定各自身份编号;未组网节点再运行可验证随机函数,抽取节点,轮询发送给每个仲裁领导团;仲裁领导节点接收未组网节点,并将其作为各自的仲裁团成员;最后,各个仲裁团成员之间相互通信,收集仲裁团内部的拓扑信息;/nS3:客户端向仲裁领导团成员发送交易信息,仲裁领导团成员在其内部的仲裁团进行共识;仲裁团内部采用拜占庭算法进行快速共识,将每个节点共识之后的哈希值传递给仲裁团归属的仲裁领导节点;/nS4:仲裁领导团成员收到其所属仲裁团内部共识达成的哈希值集合,通过拜占庭协议达成共识,大于2/3节点的交易将被仲裁领导团的成员集体接受;仲裁领导团将这一轮达成共识的交易进行全网广播,分散给其下 ...
【技术特征摘要】
1.一种基于网格仲裁的联盟链共识方法,其特征在于,该方法先使用随机抽签函数将仲裁领导团从节点中选举出来,再将剩余的节点划分给每个仲裁领导节点,构成网格拓扑结构;具体包括以下步骤:
S1:初始时,各个未组网节点向证书授权中心获取密钥,并广播发送身份标识信息;各个节点运行抽签算法,根据随机种子值seed和期望仲裁领导团数t从未组网节点中抽取t个用户组成仲裁领导团;
S2:仲裁领导团的各个节点向系统申请拓扑结构图编号,确定各自身份编号;未组网节点再运行可验证随机函数,抽取节点,轮询发送给每个仲裁领导团;仲裁领导节点接收未组网节点,并将其作为各自的仲裁团成员;最后,各个仲裁团成员之间相互通信,收集仲裁团内部的拓扑信息;
S3:客户端向仲裁领导团成员发送交易信息,仲裁领导团成员在其内部的仲裁团进行共识;仲裁团内部采用拜占庭算法进行快速共识,将每个节点共识之后的哈希值传递给仲裁团归属的仲裁领导节点;
S4:仲裁领导团成员收到其所属仲裁团内部共识达成的哈希值集合,通过拜占庭协议达成共识,大于2/3节点的交易将被仲裁领导团的成员集体接受;仲裁领导团将这一轮达成共识的交易进行全网广播,分散给其下属的各个节点;
S5:在本轮共识结束之前,超时的交易将被传递给多个仲裁团进行仲裁;在本轮共识结束之后,各个仲裁领导的仲裁团重组;系统将本轮所有交易的哈希值作为下一轮系统的随机种子seed进行全网广播。
2.根据权利要求1所述的一种基于网格仲裁的联盟链共识方法,其特征在于,所述步骤S1中,随机选举仲裁领导团节点的具体步骤为:
S11:初始时,系统给定一个公共随机值作为随机种子seed和阈值t,并进行全网广播;
S12:各个节点进行本地抽签;即未组网节点将收到的随机种子seed和自己的私钥Sk作为可验证随机函数的输入值,运算,产生一个随机值value和零知识证明proof;
S13:节点之间提交候选区块,即各个节点将各自产生的随机值value与阈值t进行比较,低于阈值t的节点作为仲裁领导团候补节点,并将自己节点的抽签结果、零知识证明proof和候选区块进行全网广播;
S14:节点之间验证候选区块,即各个节点将收到的抽签结果、零知识证明proof、随机种子seed和各个候补节点的公钥Pk作为输入,运行可验证随机函数来证明仲裁领导团节点的正确性;
S15:节点之间广播,即将提议的候补节点信息进行全网广播。
3.根据权利要求1所述的一种基于网格仲裁的联盟链共识方法,其特征在于,所述步骤S2中,仲裁领导团进行组网,生成仲裁团的具体步骤为:
S21:仲裁领导团内的各个节点向证书授权中心申请拓扑结构编号;
S22:未组网节点再运行可验证随机函数,随机抽取组内节点;
S23:被抽取出来的节点向证书授权中心申请拓扑结构编号;
S24:完成编号分配的节点将自身信息通知给所属仲裁领导团成员,加入该成员所在的仲裁团;
S25:重复步骤S21~S24,直至所有仲裁团组网成功。
4.根据权利要求1所述的一种基于网格仲裁的联盟链共识方法,其特征在于,所述步骤S3中,仲裁团内部采用拜占庭算法进行快速共识的具体步骤为:
S3...
【专利技术属性】
技术研发人员:杨鑫宇,付蔚,谢昊飞,魏雪风,
申请(专利权)人:重庆邮电大学,
类型:发明
国别省市:重庆;50
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。