[发明专利]一种共识报文压缩方法有效
申请号: | 202210249746.0 | 申请日: | 2022-03-15 |
公开(公告)号: | CN114331732B | 公开(公告)日: | 2022-05-24 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 北京微芯感知科技有限公司 |
主分类号: | G06Q40/04 | 分类号: | G06Q40/04;G06Q20/38;H04L12/18;H04L69/04 |
代理公司: | 北京慕达星云知识产权代理事务所(特殊普通合伙) 11465 | 代理人: | 李冉 |
地址: | 100071 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 共识 报文 压缩 方法 | ||
本发明公开了一种共识报文压缩方法,基于交易预排序的新型出块方案,重新定义报文结构,主节点仅需广播交易序列偏移量,而不需重复广播所有交易;投票仅需广播各节点签名后的在读写集hash,能够压缩共识流程中的报文体积,减少通信开销和带宽占用,提升共识效率。基于对交易预排序,能够确保交易一致且有序,基于此可加速交易执行、验证及共识处理速度,提升出块效率和共识系统整体性能。
技术领域
本发明涉及共识算法技术领域,更具体的说是涉及一种共识报文压缩方法。
背景技术
目前,现有技术中提出的在共识广播区块信息时,采用全局区块压缩传输的方法,并且在区块中添加额外信息以便验证主体区块所包含的交易是否满足全局一致性,从而减少共识报文传播量,同时扩展全局区块包括的交易数量上限。采用上述全局区块压缩传输方式,受限于压缩算法效率,难以实现全量交易的块内交易数扩展,且解压缩本身需要消耗一定时间,同时为保证区块所包含的交易是否满足全局一致性,并且需要在区块中添加额外信息,增加了区块大小,且基于压缩算法的报文传递存在报文丢失的可能。
因此,如何压缩公式流程中的报文体积,提升共识效率是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种共识报文压缩方法,基于交易预排序的出块方案,重新定义报文结构,主节点仅需广播交易序列偏移量,而不需重复广播所有交易,各节点在共识投票阶段仅需广播各节点签名的读写集hash,从而能够实现压缩共识流程中报文体积,减少共识广播占用带宽,提升共识效率。
为了实现上述目的,本发明采用如下技术方案:
一种共识报文压缩方法,包括以下步骤:
步骤1:共识节点中的共识主节点从提供交易预排序服务的节点拉取预排序后的交易;所有共识节点均拥有相同一致的预排序后的交易序列;
步骤2:共识主节点在进行共识广播时,广播所述偏移量;而不需重复广播所有交易,从而避免了交易的全量广播,可减少共识流程通信开销、降低传输带宽占用,提高共识效率;
步骤3:共识从节点在接收所述偏移量后,根据接收的所述偏移量在节点本地拉取与共识主节点相同的一批交易;
步骤4:共识主节点和共识从节点对拉取的交易预执行后,各节点只广播节点签名后的读写集hash,并进行共识投票。
优选的,偏移量为预排序后的交易序列信息,用于选取一批交易的标量;所述共识主节点拉取预排序后的交易时交易选取方法为将上一区块偏移量与本区块偏移量之间的交易作为一个区块;所述共识主节点拉取偏移量时偏移量选取方法为可基于实际交易并发量需求、区块链系统的区块大小配置情况和出块时间配置情况等参数进行配置。
优选的,交易预排序通过区块出块流程获得,包括以下步骤:
步骤11:基于设定规则对交易进行预排序,获得预排序后交易序列;
步骤12:向各节点广播偏移量后均进行交易,各节点各自独立对预排序后交易进行预处理或执行,各节点获得各自候选区块信息;
步骤13:各节点广播各自候选区块信息;
步骤14:各节点对候选区块信息进行共识,若各节点对候选区块信息达成共识则各节点将各自的候选区块、区块中的交易和区块链的状态变更等写入存储介质,完成区块落库。
优选的,所述设定规则包括交易发生时间、接收交易顺序或发送者优先级中的一种或多种组合。
优选的,所述步骤12中进行预处理后,预处理结果中包含返回交易执行结果,所述交易执行结果包括读写集信息、交易执行顺序信息的DAG。读写集信息中包括读写集hash。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京微芯感知科技有限公司,未经北京微芯感知科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210249746.0/2.html,转载请声明来源钻瓜专利网。