CN110365481A - 加速国密sm2算法的优化实现系统及方法 - Google Patents

加速国密sm2算法的优化实现系统及方法 Download PDF

Info

Publication number
CN110365481A
CN110365481A CN201910598068.7A CN201910598068A CN110365481A CN 110365481 A CN110365481 A CN 110365481A CN 201910598068 A CN201910598068 A CN 201910598068A CN 110365481 A CN110365481 A CN 110365481A
Authority
CN
China
Prior art keywords
point
signature
algorithm
generation unit
dot product
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910598068.7A
Other languages
English (en)
Inventor
谷大武
麦龙
王舒然
贾淞淋
李卷孺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201910598068.7A priority Critical patent/CN110365481A/zh
Publication of CN110365481A publication Critical patent/CN110365481A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Abstract

一种加速国密SM2算法的优化实现系统及方法,包括:由摘要信息生成单元、签名生成单元构成的签名模块和由验证点生成单元、签名验证单元构成的验签模块,其中:签名模块通过摘要信息生成单元生成摘要值并输出至签名生成单元,签名生成单元通过预制表及点加运算得到椭圆曲线基点G的k倍点[k]G的点乘结果并快速生成签名数据(r,s);验签模块中的验证点生成单元根据签名数据(r,s)得到中间参数并通过预计算表得到验证点坐标后输出至签名验证单元,签名验证单元根据验证点坐标得到验证信息用于核对签名数据实现验签。本发明通过对算法中的标量乘法以及底层实现进行优化,使得国密SM2算法的运算速度有大幅度的提升。

Description

加速国密SM2算法的优化实现系统及方法
技术领域
本发明涉及的是一种信息安全领域的技术,具体是一种加速国密SM2算法的优化实现系统及方法。
背景技术
SM2椭圆曲线密码算法包括SM2加密/解密密码算法和SM2签名/验签密码算法,该算法目前所使用的椭圆曲线参数是国家密码局推荐的256位椭圆曲线参数,椭圆曲线上的标量乘法(包括固定点的点乘和不定点的点乘)是计算一个256位的标量k与一个椭圆曲线上的点P的乘积R=[k]P,而标量乘的快慢直接决定了国密SM2算法的快慢。
在目前已有的SM2实现方案中,算法的性能相对较低,因此,提高SM2算法的性能,不但可以减少签名和验签的时间,还可以节约大量的计算资源,特别是在服务器端需要进行大量的签名和验签运算的时候,节约计算资源就相当于节约能源。
发明内容
本发明针对现有技术存在的上述不足,提出一种加速国密SM2算法的优化实现系统及方法,通过对算法中的标量乘法(包括固定点的点乘算法和不定点的点乘算法)以及底层实现进行优化,使得国密SM2算法的运算速度有大幅度的提升。
本发明是通过以下技术方案实现的:
本发明涉及一种加速国密SM2算法的优化实现系统,包括:由摘要信息生成单元、签名生成单元构成的签名模块和由验证点生成单元、签名验证单元构成的验签模块,其中:签名模块通过摘要信息生成单元生成摘要值并输出至签名生成单元,签名生成单元通过预制表及点加运算得到椭圆曲线基点G的k倍点[k]G的点乘结果并快速生成签名数据(r,s);验签模块中的验证点生成单元根据签名数据(r,s)得到中间参数并通过预计算表得到验证点坐标后输出至签名验证单元,签名验证单元根据验证点坐标得到验证信息用于核对签名数据实现验签。
所述的摘要信息生成单元对待签名消息M、本次签名所使用的公钥P以及椭圆曲线参数a和b、椭圆曲线基点G以及SM2椭圆曲线默认使用的ID生成摘要值e。
所述的签名生成单元通过:随机数生成器得到的倍率参数k、私钥d、通过查表及点加得到的椭圆曲线基点G的k倍点[k]G的点乘结果以及摘要值e,计算得到签名数据(r,s)。
所述的验证点生成单元根据签名数据(r,s)得到中间参数t,然后再由一次固定点乘运算和一次不定点乘运算所得结果相加得到验证点坐标。
所述的签名验证单元根据验证点坐标和本地计算得到的摘要值e得到验证信息R用于核对签名数据r并实现验签。
本发明涉及一种加速国密SM2算法的优化实现方法,包括签名过程和验签过程,其中:
签名过程是指:根据输入信息生成摘要值,根据摘要值、随机数和私钥计算得到签名数据;
验签过程是指:根据输入信息重新生成摘要值,根据摘要值和签名数据得到验证信息,经与原签名数据比对实现验签。
技术效果
与现有技术相比,本发明通过使用本方法提出的固定点点乘方案,并结合算法底层的优化技术,可以大幅提升国密SM2算法的签名和验签性能,在相同的I7 6700处理器测试平台上可以使得国密SM2算法的签名速度达到94600次每秒,验签速度达到18528次每秒,签名性能相比于目前最快实现提升了约107.0%,验签性能相比于目前最快实现提升了约19.1%。
附图说明
图1为SM2椭圆曲线签名和验签的总体流程示意图;
图2为实施例消息摘要计算流程图;
图3为实施例签名数据生成流程图;
图4为实施例签名数据验证流程图。
具体实施方式
如图1所示,为SM2椭圆曲线签名和验签的总体流程。如图1(a)所示,为SM2的签名生成过程,具体为:根据待签名消息M、本次签名所使用的公钥P以及椭圆曲线参数a和b、椭圆曲线基点G以及SM2椭圆曲线默认使用的ID生成消息的摘要值e,并计算得到待签名消息M的签名数据(r,s)。
所述的摘要值e,具体通过以下方式得到:如图2所示,待签名消息M、公钥P、椭圆曲线系统参数(a、b、G、P)、ID和ID长度idlen,按顺序拼接idlen、id、a、b、G、P,并采用SM3哈希算法计算其哈希值ZA=H256(idlen||id|a|b||G|P),其中:||表示字节拼接符号,H256()为SM3哈希函数;按顺序拼接ZA和消息M,并计算其哈希值,即摘要值e=H256(ZA||M)。
所述的摘要值e中,默认使用的id是16字节的字符串“1234567812345678”,ID长度idlen为数值16,并以两个字节保存。
所述的签名数据(r,s),具体通过以下方式得到:如图3所示,根据摘要值e、私钥d以及通过随机数生成器生成的256位1到n-1之间的随机数k,此处的n为基点G的阶,由k与椭圆曲线上基点G点乘得到[k]G,即椭圆曲线上的另一个点(x1,y1);进而得到签名中的r=(e+x1)mod n,然后判断①r为零或②r+k等于n,当任一条件满足时则返回随机数生成过程,仅当两个条件均不满足时计算s=(1+d)^(-1)·(k-r·d)mod n,然后判断s为零时则返回随机数生成过程重新进行计算,仅当s不为零时输出签名结果(r,s)。
所述的基点G的k倍点[k]G,即椭圆曲线固定点的点乘算法在签名中占据重要的比重,在签名过程中,超过50%的计算量都落在固定点的点乘当中,因此,固定点的点乘快慢,直接决定了签名的快慢。本方法通过优化256位固定点的点乘方法,可以有效加速整个签名的运算过程,并且使得固定点的点乘复杂度降到最低,只需要31次的点加操作就能完成256位固定点的点乘过程。
所述的256位固定点的点乘方法是指:把256位的标量值k进行拆分,拆分的最小单位是字节,即:把256位的标量k拆分为32个小标量值,每一个小标量值是一个字节大小,最后使得基点G和256位的标量k的乘法变成32次的小标量乘法和32个点相加,而这32次标量乘法中的每一次乘法只涉及到某个椭圆曲线上的固定点和一个8位的标量相乘,在本方法中,把32个固定点的每一个固定点和8位标量乘的所有结果都预计算出来,保存到预制表中,使用到的时候直接查表即可,因此,基点G和标量k的乘法操作转换成32个点相加,而无需任何的倍点操作。
本方法中所提出的固定点的点乘方案,不仅适用于国密SM2密码算法,同样适用于其它的基于椭圆曲线的公钥密码算法,例如,ECDSA等。此外,该方案也不仅适用于基于256位的椭圆曲线算法,同样也适用于其它位数的其它椭圆曲线算法,例如,符合NIST标准的曲线、符合SEC标准的曲线和符合BrainPool标准的曲线等。
所述的256位固定点的点乘方法具体步骤包括:
步骤1)将256位的标量k拆分成4个64位的值,即:k=(k3,k2,k1,k0),其中:k3表示k的最高64位,k0表示k的最低64位,对于每个64位的值ki,其中:i=0,1,2,3,进一步拆分为8个8位的值:
步骤2)固定点的点乘:其中:Gi=2256*i·G。
特别地,由于SM2算法中的参数G为固定值,因此Gi也为固定值,可以预先计算并保存备用。
步骤3)对步骤2拆分为更细粒度的值:其中:
特别地,由于SM2算法中的参数G为固定值,因此也为固定值,可以预先计算并保存备用。
步骤4)预先计算每个的所有可能值,整个256位的固定点的点乘算法为其中:每个均为8位,每个均为预先计算得到的已知值且总共有4*8=32种,即每个与一个8位的的乘积。
所述的所有可能值,由于每个与一个8位的标量相乘时只可能会出现256种结果,即计算所有可能值并存储于预制表中,该预制表的大小为:4*8*256*sizeof(G)字节,sizeof(G)表示基点G的字节大小。
当曲线上的点使用仿射坐标表示,一个点需要占用64字节,则该预制表的大小即为4*8*256*64=512KB。
通过步骤4将整个固定点的点乘过程中去除倍点运算环节且替换为4*8-1=31次的点加运算(x个点相加只需要x-1次加法),然后再加上32次的查表运算,而查边运算的耗时几乎可以忽略不计,因此,该方法的复杂度相当于31次的点加运算,相比于之前的方法,性能将有大幅提升。
本方法适用于不同位数的不同曲线,下表列出了一些常用曲线位数所对应的固定点的点乘复杂度和存储消耗(存储消耗使用曲线点的数量来表示):
曲线位宽 固定点乘复杂度 存储消耗
160位 20-1=19次点加 20*256=5120个曲线点
192位 24-1=23次点加 24*256=6144个曲线点
224位 28-1=27次点加 28*256=7168个曲线点
256位 32-1=31次点加 32*256=8192个曲线点
384位 48-1=47次点加 48*256=12288个曲线点
512位 64-1=63次点加 64*256=16384个曲线点
如图1(b)所示,为SM2对签名的验证过程,具体为:判断签名数据(r,s)中签名数据r和s是否在1到n-1这个范围之内,当至少存在一者不在这个范围之内,则直接判定该签名为非法签名,并结束本次验签过程;当二者都在1到n-1这个范围之内,则采用与签名生成过程相同的方式生成消息的摘要值,并根据摘要值验证签名的合法性,具体步骤包括:
步骤i)如图4所示,根据签名数据(r,s)计算中间参数t=(r+s)mod n,仅当t不为0时计算出椭圆曲线上的验证点P2(x2,y2)=s·G+t·P,其中:s·G为签名数据s与固定点G的点乘,t·P是中间参数t和公钥P的不定点点乘,把二者乘出来的结果再进行相加,即可得到椭圆曲线上的验证点坐标(x2,y2)。
所述的固定点G的点乘采用与签名过程相同的方法以最大限度的节省固定点点乘的性能开销。
所述的不定点的点乘t·P,同样采用预计算的方式生成一张小规模预制表,但是这个表格会随着公钥P的不同而不同,因此,每次计算t·P的时候都需要重新计算该预制表后再将其用于不定点点乘的简化运算。
步骤ii)将本地计算得到的摘要值e’和x2进行加法运算得到验证信息R=(e’+x2)mod n,并判断当R与r相等时,签名(r,s)合法。
所述的本地计算是指:每次验签时按与签名生成过程相同的方式重新计算摘要值。
现有国密SM2算法的签名速度最快到达4.5万次每秒,验签速度最快到达1.5万次每秒,签名与验签的比率最高到达3倍左右。相比之下本方法在一台搭载i7 6700处理器的机器上能够使得国密SM2算法的签名速度超过9.4万次每秒,验签速度超过1.8万次每秒,签名速度与验签速度的比率超过5倍(这个比率在传统方案中,最高达到3倍左右)。而这里所采用的核心技术是所提出的一种快速固定点的点乘方案,对于256比特的国密SM2算法,固定点的点乘仅只需要消耗31次的点加运算就可以完成,因此,大幅提高了固定点的点乘速度,使得签名速度也有大幅度的提升。
上述具体实施可由本领域技术人员在不背离本发明原理和宗旨的前提下以不同的方式对其进行局部调整,本发明的保护范围以权利要求书为准且不由上述具体实施所限,在其范围内的各个实现方案均受本发明之约束。

Claims (10)

1.一种加速国密SM2算法的优化实现系统,其特征在于,包括:由摘要信息生成单元、签名生成单元构成的签名模块和由验证点生成单元、签名验证单元构成的验签模块,其中:签名模块通过摘要信息生成单元生成摘要值并输出至签名生成单元,签名生成单元通过预制表及点加运算得到椭圆曲线基点G的k倍点[k]G的点乘结果并快速生成签名数据(r,s);验签模块中的验证点生成单元根据签名数据(r,s)得到中间参数并通过预计算表得到验证点坐标后输出至签名验证单元,签名验证单元根据验证点坐标得到验证信息用于核对签名数据实现验签。
2.根据权利要求1所述的加速国密SM2算法的优化实现系统,其特征是,所述的摘要信息生成单元对待签名消息M、本次签名所使用的公钥P以及椭圆曲线参数a和b、椭圆曲线基点G以及SM2椭圆曲线默认使用的ID生成摘要值e。
3.根据权利要求1所述的加速国密SM2算法的优化实现系统,其特征是,所述的签名生成单元通过:随机数生成器得到的倍率参数k、私钥d、通过查表及点加得到的椭圆曲线基点G的k倍点[k]G的点乘结果以及摘要值e,计算得到签名数据(r,s)。
4.根据权利要求1所述的加速国密SM2算法的优化实现系统,其特征是,所述的验证点生成单元根据签名数据(r,s)得到中间参数t,然后再由一次固定点乘运算和一次不定点乘运算所得结果相加得到验证点坐标。
5.根据权利要求1所述的加速国密SM2算法的优化实现系统,其特征是,所述的签名验证单元根据验证点坐标和本地计算得到的摘要值e得到验证信息R用于核对签名数据r并实现验签。
6.一种加速国密SM2算法的优化实现方法,包括签名过程和验签过程,其特征在于,签名过程是指:根据输入信息生成摘要值,根据摘要值、随机数和私钥计算得到签名数据;验签过程是指:根据输入信息重新生成摘要值,根据摘要值和签名数据得到验证信息,经与原签名数据比对实现验签;
所述的签名数据(r,s),根据摘要值e、私钥d以及通过随机数生成器生成的256位1到n-1之间的随机数k,此处的n为基点G的阶,由k与椭圆曲线上基点G点乘得到[k]G,即椭圆曲线上的另一个点(x1,y1);进而得到签名中的r=(e+x1)mod n,然后判断①r为零或②r+k等于n,当任一条件满足时则返回随机数生成过程,仅当两个条件均不满足时计算s=(1+d)^(-1)·(k-r·d)mod n,然后判断s为零时则返回随机数生成过程重新进行计算,仅当s不为零时输出签名结果(r,s)。
7.根据权利要求6所述的加速国密SM2算法的优化实现方法,其特征是,所述的固定点点乘是指:将k拆分为若干32个小标量值,使得基点G和k的乘法变成32次小标量乘法和32个点相加,进一步将32个固定点的每一个固定点和8位标量乘的所有结果预存于预制表中备用,从而将基点G和k的点乘转换成32个点相加。
8.根据权利要求6或7所述的加速国密SM2算法的优化实现方法,其特征是,所述的固定点点乘具体步骤包括:
步骤1)将256位的标量k拆分成4个64位的值,即:k=(k3,k2,k1,k0),其中:k3表示k的最高64位,k0表示k的最低64位,对于每个64位的值ki,其中:i=0,1,2,3,进一步拆分为8个8位的值:
步骤2)固定点的点乘:其中:Gi=2256*i·G;
步骤3)对步骤2拆分为更细粒度的值:其中:
步骤4)预先计算每个的所有可能值,整个256位的固定点的点乘算法为其中:每个均为8位,每个均为预先计算得到的已知值且总共有4*8=32种,即每个与一个8位的的乘积。
9.根据权利要求6所述的加速国密SM2算法的优化实现方法,其特征是,所述的验证信息,通过签名数据(r,s)计算中间参数t=(r+s)mod n,仅当t不为0时计算出椭圆曲线上的验证点P2(x2,y2)=s·G+t·P,其中:s·G为签名数据s与固定点G的点乘,t·P是中间参数t和公钥P的不定点点乘,把二者乘出来的结果再进行相加,即可得到椭圆曲线上的验证点坐标(x2,y2);再将本地计算得到的摘要值e’和x2进行加法运算得到验证信息R=(e’+x2)mod n。
10.根据权利要求9所述的加速国密SM2算法的优化实现方法,其特征是,所述的不定点的点乘t·P,采用预计算的方式生成一张小规模预制表,并在每次计算t·P时重新计算该预制表后再进行不定点点乘的简化运算。
CN201910598068.7A 2019-07-04 2019-07-04 加速国密sm2算法的优化实现系统及方法 Pending CN110365481A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910598068.7A CN110365481A (zh) 2019-07-04 2019-07-04 加速国密sm2算法的优化实现系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910598068.7A CN110365481A (zh) 2019-07-04 2019-07-04 加速国密sm2算法的优化实现系统及方法

Publications (1)

Publication Number Publication Date
CN110365481A true CN110365481A (zh) 2019-10-22

Family

ID=68218094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910598068.7A Pending CN110365481A (zh) 2019-07-04 2019-07-04 加速国密sm2算法的优化实现系统及方法

Country Status (1)

Country Link
CN (1) CN110365481A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111147250A (zh) * 2019-12-18 2020-05-12 北京江南天安科技有限公司 一种数字签名方法、装置、发送端、接收端及系统
CN111538480A (zh) * 2020-03-26 2020-08-14 郑州信大捷安信息技术股份有限公司 一种用于椭圆曲线密码的倍点运算方法及系统
CN112636915A (zh) * 2020-11-27 2021-04-09 杭州趣链科技有限公司 基于国密sm2算法的批量签名验证方法、装置、设备及介质
CN112968778A (zh) * 2021-02-04 2021-06-15 西安电子科技大学 区块链国密算法的转换方法、系统、计算机设备及应用
CN113221193A (zh) * 2021-06-02 2021-08-06 上海交通大学 基于gpu的sm2数字签名与验签快速实现方法及系统
CN113783702A (zh) * 2021-09-28 2021-12-10 南京宁麒智能计算芯片研究院有限公司 一种椭圆曲线数字签名与验签的硬件实现方法和系统
CN114205085A (zh) * 2021-12-03 2022-03-18 东北大学 一种国密SM2的优化处理方法及超级账本fabric平台的改造方法
CN115333741A (zh) * 2022-10-14 2022-11-11 飞腾信息技术有限公司 数据处理方法、片上系统和计算设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103761068A (zh) * 2014-01-26 2014-04-30 上海交通大学 优化的蒙哥马利模乘方法、模平方方法和模乘硬件
CN103942028A (zh) * 2014-04-15 2014-07-23 中国科学院数据与通信保护研究教育中心 应用在密码技术中的大整数乘法运算方法及装置
US8971528B2 (en) * 2013-01-29 2015-03-03 Certicom Corp. Modified elliptic curve signature algorithm for message recovery
CN107003832A (zh) * 2014-12-23 2017-08-01 英特尔公司 用于执行大整数算术操作的方法和装置
CN108667623A (zh) * 2018-05-28 2018-10-16 广东工业大学 一种sm2椭圆曲线签名验证算法
CN109214213A (zh) * 2017-06-29 2019-01-15 中国科学院数据与通信保护研究教育中心 一种大整数模乘加算法的实现电路及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8971528B2 (en) * 2013-01-29 2015-03-03 Certicom Corp. Modified elliptic curve signature algorithm for message recovery
CN103761068A (zh) * 2014-01-26 2014-04-30 上海交通大学 优化的蒙哥马利模乘方法、模平方方法和模乘硬件
CN103942028A (zh) * 2014-04-15 2014-07-23 中国科学院数据与通信保护研究教育中心 应用在密码技术中的大整数乘法运算方法及装置
CN107003832A (zh) * 2014-12-23 2017-08-01 英特尔公司 用于执行大整数算术操作的方法和装置
CN109214213A (zh) * 2017-06-29 2019-01-15 中国科学院数据与通信保护研究教育中心 一种大整数模乘加算法的实现电路及方法
CN108667623A (zh) * 2018-05-28 2018-10-16 广东工业大学 一种sm2椭圆曲线签名验证算法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111147250A (zh) * 2019-12-18 2020-05-12 北京江南天安科技有限公司 一种数字签名方法、装置、发送端、接收端及系统
CN111538480A (zh) * 2020-03-26 2020-08-14 郑州信大捷安信息技术股份有限公司 一种用于椭圆曲线密码的倍点运算方法及系统
CN111538480B (zh) * 2020-03-26 2022-02-11 郑州信大捷安信息技术股份有限公司 一种用于椭圆曲线密码的倍点运算方法及系统
CN112636915A (zh) * 2020-11-27 2021-04-09 杭州趣链科技有限公司 基于国密sm2算法的批量签名验证方法、装置、设备及介质
CN112636915B (zh) * 2020-11-27 2024-03-22 杭州趣链科技有限公司 基于国密sm2算法的批量签名验证方法、装置、设备及介质
CN112968778A (zh) * 2021-02-04 2021-06-15 西安电子科技大学 区块链国密算法的转换方法、系统、计算机设备及应用
CN113221193A (zh) * 2021-06-02 2021-08-06 上海交通大学 基于gpu的sm2数字签名与验签快速实现方法及系统
CN113221193B (zh) * 2021-06-02 2022-07-29 上海交通大学 基于gpu的sm2数字签名与验签快速实现方法及系统
CN113783702A (zh) * 2021-09-28 2021-12-10 南京宁麒智能计算芯片研究院有限公司 一种椭圆曲线数字签名与验签的硬件实现方法和系统
CN114205085A (zh) * 2021-12-03 2022-03-18 东北大学 一种国密SM2的优化处理方法及超级账本fabric平台的改造方法
CN115333741A (zh) * 2022-10-14 2022-11-11 飞腾信息技术有限公司 数据处理方法、片上系统和计算设备

Similar Documents

Publication Publication Date Title
CN110365481A (zh) 加速国密sm2算法的优化实现系统及方法
US8433897B2 (en) Group signature system, apparatus and storage medium
Goldreich Two remarks concerning the Goldwasser-Micali-Rivest signature scheme
JP2023052834A (ja) 変更から検証鍵を保護し、正当性のプルーフの有効性を確かめるためのシステム
US7912216B2 (en) Elliptic curve cryptosystem optimization using two phase key generation
EP2372948A1 (en) Method, device, and system for an identity-based forward-secure digital signature
US9219602B2 (en) Method and system for securely computing a base point in direct anonymous attestation
US7000110B1 (en) One-way function generation method, one-way function value generation device, proving device, authentication method, and authentication device
CN109274487B (zh) 基于国密sm9密码算法的群签名标识签发方法
CN110505061B (zh) 一种数字签名算法及系统
CN106712968A (zh) 密钥获取方法、数字签名方法和装置
WO2020186750A1 (zh) 一种基于多重证据纠错的格基数字签名方法
CA3161664A1 (en) Method and system for digital signatures utilizing multiplicative semigroups
JP3102692B2 (ja) カードの真性を証明する方法
CN113268762B (zh) 一种基于lfsr哈希的无条件安全认证方法
Barenghi et al. A novel fault attack against ECDSA
CN109274504B (zh) 一种基于云平台的多用户大数据存储分享方法及系统
CN112800482B (zh) 基于身份的在线/离线安全云存储审计方法
CN109412813A (zh) 椭圆曲线的签名方法、验签方法和装置
CN112491560A (zh) 一种支持批验证的sm2数字签名方法及介质
US8223963B2 (en) Method and apparatus for generating a signature for a message and method and apparatus for verifying such a signature
CN114070561A (zh) 一种基于sm2算法的零知识证明方法和系统
Eisenbarth et al. A performance boost for hash-based signatures
Meng et al. An enhanced long-term blockchain scheme against compromise of cryptography
Kara-Ivaniov et al. Attacks on authentication and signature schemes involving corruption of public key (modulus)

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20191022

RJ01 Rejection of invention patent application after publication