logo好方法网

数字签名生成方法、装置、设备及存储介质


技术摘要:
本发明涉及交易验证技术领域,提出一种数字签名生成方法方法、装置、计算机设备和存储介质,其中的方法包括:选择一条椭圆曲线Ep(a,b)和基点G,其中基点G的阶为N;获取n份私钥并按照第一签名算法计算公钥P,其中n为大于1的自然数,i∈{1,2,...,n};获取n个随机数ki,并  全部
背景技术:
区块链系统被广泛用于数字资产的登记,流转和管理,通过区块链独特的防止“双 花”的特性,保证了同一数字资产不会被多次消费,从而保证了整个生态环境的安全性。如 果要花费数字资产,必须要提供资产所有人的数字签名。目前国际通行的ECDSA签名过程 是:首先选择一条椭圆曲线Ep(a,b),和基点G;然后选择一个私有秘钥k(k技术实现要素:
本发明提供一种数字签名生成方法、装置及存储介质,其主要目的在于解决传统 数字签名生成过程中依赖于单一的私钥,而一旦私钥被盗取,容易泄露数字签名信息的问 题。 为实现上述目的,本发明提供一种数字签名生成方法,所述方法包括: 选择一条椭圆曲线Ep(a,b)和基点G,其中基点G的阶为N; 获取n份私钥 并按照第一签名算法计算公钥P,其中n为大于1的自然数,i∈ {1,2,...,n}; 获取n个随机数ki,并按照第二签名算法计算第一签名信息r; 根据所述n份私钥 n个随机数ki和第一签名信息r,并按照第三签名算法计算 第二签名信息s。 优选地,所述按照第一签名算法计算公钥P的公式为: 优选地,所述按照第二签名算法计算第一签名信息r的步骤包括: 根据所述n个随机数ki计算第一中间量Q,其中Q的计算公式为: 将所述第一中间量Q对N取余得到:(x1,y1)=Q  mod  N; 计算第一签名信息r,其中r的计算公式为:r=(e x1)mod  N,式中e为自然常数。 4 CN 111614469 A 说 明 书 2/8 页 优选地,在计算所述第一中间量Q前还需验证所述ki是否属于[1,N-1],如若ki不属 于[1,N-1],则重新获取ki,直至ki∈[1,N-1]。 优选地,若所述第一签名信息r=0,则重新获取ki,并重新计算第一签名信息r,直 至r的值不为零。 优选地,所述根据所述n份私钥 n个随机数ki和第一签名信息r,并按照第三签 名算法计算第二签名信息s的公式为: 式中e为自然常数。 优选地,在所述第二签名信息s计算结束后还需验证r和s的和是否等于N,若r s= N,则需重新获取随机数ki,并重新计算r和s,直至r s≠N。 为实现上述目的,本发明还提供一种数字签名生成装置,所述装置包括: 私钥获取单元,用于生成所需数量的私钥; 随机数获取单元,用于生成所需数量的随机数; 公钥计算单元,用于根据所述私钥获取单元生成的所述私钥并按照预定的计算方 法计算出公钥; 签名计算单元,用于根据所述私钥和随机数并按照预定的计算方法计算出签名信 息。 为实现上述目的,本发明还提供一种电子设备,该电子设备包括:存储器及处理 器,所述存储器中包括数字签名生成程序,所述数字签名生成程序被所述处理器执行时实 现如权利要求1至7中任一项所述的数字签名生成方法的步骤。 为实现上述目的,本发明还提供一种存储有计算机可读存储介质,所述计算机可 读存储介质中包括数字签名生成程序,所述数字签名生成程序被处理器执行时,实现如权 利要求1至7中任一项权利要求所述数字签名生成方法的步骤。 本发明提出的数字签名生成方法、装置、电子设备及计算机可读存储介质,通过随 机生成n份私钥和n个随机数来计算生成公钥以及数字签名信息,能够有效降低私钥被盗的 风险,保护私钥所有人的财产、信息安全。而且利用本数字签名生成方法所制作的数字签 名,在进行验签时可适用传统的ECDSA验签算法,提高了该数字签名生成方法的通用性。另 外,本发明的数字签名生成方法中数字签名信息计算生成的过程,相比于传统的ECDSA签名 过程进行了改进,即使私钥被不法分子盗取,也不易制作出相应的签名信息。 附图说明 图1为根据本发明数字签名生成方法具体实施例的应用环境示意图; 图2为图1中数字签名生成程序具体实施例的模块示意图; 图3为本发明数字签名生成方法具体实施例的流程图。 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
分享到:
收藏