一种面向跨链的数字签名算法更新系统及方法技术方案

技术编号:37861615 阅读:10 留言:0更新日期:2023-06-15 20:51
本发明专利技术涉及一种面向跨链的数字签名算法更新系统及方法,涉及区块链领域,该系统包括:预处理模块用于将数字签名算法的更新信息转换为预设格式的数据块,将数据块写入交易单,将交易单形成的智能合约上传至区块链;线上存储模块用于存储每次根据数字签名算法的更新信息生成的智能合约;更新索引模块用于记录每次根据数字签名系统的更新信息生成的智能合约的合约地址,以及与合约地址对应的算法名称和算法版本号;数字签名系统用于根据数字签名算法申请信息通过更新索引模块从线上存储模块获取智能合约,并将获取的智能合约对应的数字签名算法的更新信息更新到数字签名库。本发明专利技术降低了跨链的数字签名算法更新难度。明降低了跨链的数字签名算法更新难度。明降低了跨链的数字签名算法更新难度。

【技术实现步骤摘要】
一种面向跨链的数字签名算法更新系统及方法


[0001]本专利技术涉及区块链
,特别是涉及一种面向跨链的数字签名算法更新系统及方法。

技术介绍

[0002]近年来区块链技术蓬勃发展,区块链上资产不断增加。用户对资产操作的需求不再局限于单链,更希望能在区块链之间进行资产的互操作。由于区块链系统采用数字签名技术保证资产安全,因此想要安全地在不同区块链之间操作资产,就需要验证不同区块链的数字签名。
[0003]对于验证其它链数字签名的需求,目前已有的解决方法是以将数字签名算法代码以合约形式发布,调用合约进行验证。这种方法不仅花费高昂,而且部署后的代码难以进行更新维护。在之前的研究中,设计并实现了面向跨链的数字签名系统与方法,包含多种跨链所需的数字签名算法,可以满足跨链数字签名需求,并且不会产生过高的费用消耗。但是该系统的更新属于区块链客户端软件的更新,每次更新算法库都需要将区块链客户端软件从源码重新编译,依然难以进行更新维护。
[0004]区块链是分布式系统,没有中心化的机构可以强制所有节点对区块链软件进行更新。更新方案可以由任意用户提出,然后进行投票,获得大部分用户的支持的方案会通过,最后大部分用户按照方案更新客户端软件,系统完成更新。然而总会有小部分用户因为各种各样的原因而拒绝升级,造成客户端软件的不一致,因此又被称为分叉。分叉的更新方式耗时较长,更新起来非常麻烦。

技术实现思路

[0005]本专利技术的目的是提供一种面向跨链的数字签名算法更新系统及方法,降低了跨链的数字签名算法更新难度,便于区块链中数字签名算法的维护。
[0006]为实现上述目的,本专利技术提供了如下方案:
[0007]一种面向跨链的数字签名算法更新系统,包括依次连接的预处理模块、线上存储模块、更新索引模块和数字签名系统;
[0008]所述预处理模块用于将数字签名算法的更新信息转换为预设格式的数据块,将所述数据块写入交易单,将所述交易单形成的智能合约上传至区块链;所述更新信息包括更新指令和与更新内容;
[0009]所述线上存储模块用于存储每次根据所述数字签名算法的更新信息生成的所述智能合约;
[0010]所述更新索引模块用于记录每次根据所述数字签名系统的更新信息生成的所述智能合约的合约地址,以及与所述合约地址对应的算法名称和算法版本号;
[0011]所述数字签名系统位于各区块链的客户端中,所述数字签名系统用于根据数字签名算法申请信息通过所述更新索引模块从所述线上存储模块获取所述智能合约,并将获取
的所述智能合约对应的数字签名算法的更新信息更新到数字签名库;所述数字签名算法申请信息包括所述算法名称、所述算法版本号和所述合约地址;所述数字签名库用于存储各种数字签名算法。
[0012]可选地,所述数字签名系统通过所述更新索引模块从所述线上存储模块获取所述智能合约的过程包括:
[0013]所述数字签名系统向所述更新索引模块发送数字签名算法申请信息;
[0014]所述更新索引模块根据所述数字签名算法申请信息分别对算法名称和算法版本号进行匹配,若所述更新索引模块中存在所述数字签名算法申请信息中的算法名称和算法版本号,则所述更新索引模块根据与所述数字签名算法申请信息中的算法名称和算法版本号对应的合约地址从所述线上存储模块获取所述智能合约,并将所述智能合约发送到所述数字签名系统。
[0015]可选地,所述更新指令包括增加、修改和删除,所述更新内容包括所述更新指令对应的代码和算法名称。
[0016]可选地,当数字签名算法的更新信息中更新指令为添加时,所述数字签名算法的更新信息生成智能合约存入所述线上存储模块的过程包括:
[0017]所述预处理模块调用内置的多重签名验证算法检测所述更新内容对应的数字签名算法是否有效;
[0018]若所述更新内容对应的数字签名算法有效,则所述更新索引模块检索所述更新内容对应的算法名称是否在所述更新索引模块中已经存在;
[0019]若所述更新内容对应的算法名称不存在,则所述预处理模块将数字签名算法的更新信息转换为预设格式的数据块,将所述数据块写入交易单,将所述交易单形成的智能合约上传至区块链。
[0020]可选地,当数字签名算法的更新信息中更新指令为修改时,所述数字签名算法的更新信息生成智能合约存入所述线上存储模块的过程包括:
[0021]所述预处理模块调用内置的多重签名验证算法检测所述更新内容对应的数字签名算法是否有效;
[0022]若所述更新内容对应的数字签名算法有效,则所述更新索引模块检索所述更新内容对应的算法名称是否在所述更新索引模块中已经存在;
[0023]若所述更新内容对应的算法名称存在,则所述预处理模块将数字签名算法的更新信息转换为预设格式的数据块,将所述数据块写入交易单,将所述交易单形成的智能合约上传至区块链。
[0024]可选地,当数字签名算法的更新信息中更新指令为删除时,所述数字签名算法的更新信息生成智能合约存入所述线上存储模块的过程包括:
[0025]所述预处理模块调用内置的多重签名验证算法检测所述更新内容对应的数字签名算法是否有效;
[0026]若所述更新内容对应的数字签名算法有效,则所述更新索引模块检索所述更新内容对应的算法名称是否在所述更新索引模块中已经存在;
[0027]若所述更新内容对应的算法名称存在,则所述预处理模块将数字签名算法的更新信息转换为预设格式的数据块,将所述数据块写入交易单,将所述交易单形成的智能合约
上传至区块链。
[0028]可选地,所述预处理模块包括编码单元和智能合约生成单元;
[0029]所述编码单元用于将数字签名算法的更新信息进行base64编码生成所述数据块;
[0030]所述智能合约生成单元用于将所述数据块写入交易单,将所述交易单形成的智能合约上传至区块链。
[0031]本专利技术还公开了一种面向跨链的数字签名算法更新方法,包括:
[0032]通过预处理模块将数字签名算法的更新信息转换为预设格式的数据块,将所述数据块写入交易单,将所述交易单形成的智能合约上传至区块链;所述更新信息包括更新指令和与更新内容;
[0033]通过线上存储模块存储每次根据所述数字签名算法的更新信息生成的所述智能合约;
[0034]通过更新索引模块记录每次根据所述数字签名系统的更新信息生成的所述智能合约的合约地址,以及与所述合约地址对应的算法名称和算法版本号;
[0035]根据数字签名系统发出的数字签名算法申请信息,通过所述更新索引模块从所述线上存储模块获取所述智能合约,并将获取的所述智能合约对应的数字签名算法的更新信息更新到数字签名库;所述数字签名算法申请信息包括所述算法名称、所述算法版本号和所述合约地址;所述数字签名库位于所述数字签名系统中,所述数字签名库用于存储各种数字签名算法,所述数字签名系统位于各区块链的客户端中。
[0036]根据本专利技术提供的具体实施本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种面向跨链的数字签名算法更新系统,其特征在于,包括依次连接的预处理模块、线上存储模块、更新索引模块和数字签名系统;所述预处理模块用于将数字签名算法的更新信息转换为预设格式的数据块,将所述数据块写入交易单,将所述交易单形成的智能合约上传至区块链;所述更新信息包括更新指令和与更新内容;所述线上存储模块用于存储每次根据所述数字签名算法的更新信息生成的所述智能合约;所述更新索引模块用于记录每次根据所述数字签名系统的更新信息生成的所述智能合约的合约地址,以及与所述合约地址对应的算法名称和算法版本号;所述数字签名系统位于各区块链的客户端中,所述数字签名系统用于根据数字签名算法申请信息通过所述更新索引模块从所述线上存储模块获取所述智能合约,并将获取的所述智能合约对应的数字签名算法的更新信息更新到数字签名库;所述数字签名算法申请信息包括所述算法名称、所述算法版本号和所述合约地址;所述数字签名库用于存储各种数字签名算法。2.根据权利要求1所述的面向跨链的数字签名算法更新系统,其特征在于,所述数字签名系统通过所述更新索引模块从所述线上存储模块获取所述智能合约的过程包括:所述数字签名系统向所述更新索引模块发送数字签名算法申请信息;所述更新索引模块根据所述数字签名算法申请信息分别对算法名称和算法版本号进行匹配,若所述更新索引模块中存在所述数字签名算法申请信息中的算法名称和算法版本号,则所述更新索引模块根据与所述数字签名算法申请信息中的算法名称和算法版本号对应的合约地址从所述线上存储模块获取所述智能合约,并将所述智能合约发送到所述数字签名系统。3.根据权利要求1所述的面向跨链的数字签名算法更新系统,其特征在于,所述更新指令包括增加、修改和删除,所述更新内容包括所述更新指令对应的代码和算法名称。4.根据权利要求3所述的面向跨链的数字签名算法更新系统,其特征在于,当数字签名算法的更新信息中更新指令为添加时,所述数字签名算法的更新信息生成智能合约存入所述线上存储模块的过程包括:所述预处理模块调用内置的多重签名验证算法检测所述更新内容对应的数字签名算法是否有效;若所述更新内容对应的数字签名算法有效,则所述更新索引模块检索所述更新内容对应的算法名称是否在所述更新索引模块中已经存在;若所述更新内容对应的算法名称不存在,则所述预处理模块将数字签名算法的更新信息转换为预设格式的数据块,将所述数据块写入交易单,将所述交易单形成的智能合约上传至区块链。5.根据权利要求3所述的面向跨链的数字签名算法更新系统,其特征在于,...

【专利技术属性】
技术研发人员:伍前红张天逸朱焱丁振洋高启元
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1