【技术实现步骤摘要】
基于国密SM2算法的批量签名验证方法、装置、设备及介质
本专利技术涉及信息
,尤其涉及一种基于国密SM2算法的批量签名验证方法、装置、设备及介质。
技术介绍
作为区块链的根基技术之一,数字签名可以保证信息的完整性,同时还具有不可否认性。具体地,签名者使用私钥和待签名的消息摘要来生成签名数据,此后任何签名数据的接收方可根据公开的验签算法和公钥来计算出消息摘要,若计算出来的消息摘要与待签名的消息摘要一致时,则可判断私钥所有者已授权该消息,同时该消息在被签名后无法被否认和修改。批量验签技术用于一次验证多个数字签名,优异的批量验签算法需同时具有高安全性和比多次验签更快的计算速度。1998年Naccache等人提出了基于DSA算法的批量验签算法,主要思路是加入一组较小的随机数来验证多次验签运算叠加后的等式是否成立。这一算法思路随后也被应用于ECDSA算法中。SM2椭圆曲线公钥密码算法为国内自主定义的商用密码算法,与ECDSA算法相同,它们的安全性都是基于对椭圆曲线离散对数问题的求解。在SM2算法中需要对待签名消息 ...
【技术保护点】
1.一种基于国密SM2算法的批量签名验证方法,其特征在于,包括:/n通过hash队列获取待验签名,对所述待验签名进行预处理,得到基于国密SM2算法的待验签名;/n将基于国密SM2算法的待验签名添加至批量验签通道中的前段队列;/n通过所述前段队列以队列中的若干个待验签名作为一个验签批次,计算所述验签批次对应的批量验签等式的第一数值或者计算所述验签批次对应的批量验签等式的第一数值和第二数值;/n将所述验签批次及其第一数值作为一个验签任务或者将所述验签批次及其第一数值、第二数值作为一个验签任务,将所述验签任务添加至后段队列;/n通过所述后段队列按照所述验签任务中的第一数值或第一数 ...
【技术特征摘要】 【专利技术属性】
1.一种基于国密SM2算法的批量签名验证方法,其特征在于,包括:
通过hash队列获取待验签名,对所述待验签名进行预处理,得到基于国密SM2算法的待验签名;
将基于国密SM2算法的待验签名添加至批量验签通道中的前段队列;
通过所述前段队列以队列中的若干个待验签名作为一个验签批次,计算所述验签批次对应的批量验签等式的第一数值或者计算所述验签批次对应的批量验签等式的第一数值和第二数值;
将所述验签批次及其第一数值作为一个验签任务或者将所述验签批次及其第一数值、第二数值作为一个验签任务,将所述验签任务添加至后段队列;
通过所述后段队列按照所述验签任务中的第一数值或第一数值和第二数值执行验签操作,输出所述验签批次的验签结果;
其中,对于同一验签批次,所述hash队列、前段队列和后段队列以顺行方式工作,对于不同验签批次,所述hash队列、前段队列和后段队列以并行方式工作。
2.如权利要求1所述的基于国密SM2算法的批量签名验证方法,其特征在于,所述通过hash队列获取待验签名,对所述待验签名进行预处理,得到基于国密SM2算法的待验签名包括:
获取待验签名,所述待验签名包括待验消息;
对所述待验消息进行规范性校验,当所述待验消息符合预设规范时,根据签名类型获取消息摘要;
对所述消息摘要进行基于国密SM2算法的标准性校验;
当所述消息摘要符合基于国密SM2算法的标准时,判断所述消息摘要中是否存在预设标志位;
若所述消息摘要中存在预设标志位时,将所述待验签名添加至批量验证通道;
若所述消息摘要中不存在预设标志位时,将所述待验签名添加至单验签通道。
3.如权利要求2所述的基于国密SM2算法的批量签名验证方法,其特征在于,所述批量验签通道中包括多个前段队列,所述将基于国密SM2算法的待验签名添加至批量验签通道中的前段队列包括:
对所述批量验签通道中的一个前段队列,判断所述前段队列中的待验签名个数是否小于预设的最小批量数;
当所述前段队列中的待验签名个数小于所述最小批量数时,将基于国密SM2算法的待验签名添加至所述前段队列的末尾,否则对所述批量验签通道中的下一个前段队列中的待验签名个数进行校验;
若所述批量验签通道中的所有前段队列的待验签名个数均大于或等于所述最小批量数时,获取待验签名个数最少的前段队列,将基于国密SM2算法的待验签名添加至所述待验签名个数最少的前段队列。
4.如权利要求3所述的基于国密SM2算法的批量签名验证方法,其特征在于,所述通过所述前段队列以队列中的若干个待验签名作为一个验签批次,计算所述验签批次对应的批量验签等式的第一数值包括:
当所述前段队列中的待验签名个数达到预设的批量验签数目时,以所述批量验签数目的待验签名作为一个验签批次,对所述验签批次的每一待验签名进行预处理,得到每一待验签名对应的随机数、公钥、批量验签等式的第一系数和第二系数、椭圆曲线点;
根据每一待验签名对应的随机数、公钥以及批量验签等式的第一系数和第二系数,计算所述验签批次对应的批量验签等式的第一数值;或者
所述通过所述前段队列以队列中的若干个待验签名作为一个验签批次,计算所述验签批次对应的批量验签等式的第一数值和第二数值包括:
当所述前段队列中的待验签名个数达到预设的批量验签数目时,以所述批量验签数目的待验签名作为一个验签批次,对所述验签批次的每一待验签名进行预处理,得到每一待验签名对应的随机数、公钥、批量验签等式的第一系数和第二系数、椭圆曲线点;
技术研发人员:邱炜伟,李伟,黄方蕾,张珂杰,胡麦芳,
申请(专利权)人:杭州趣链科技有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。