CN110798305B - 一种故障分析防御方法、电子设备、可读存储介质 - Google Patents

一种故障分析防御方法、电子设备、可读存储介质 Download PDF

Info

Publication number
CN110798305B
CN110798305B CN201910903541.8A CN201910903541A CN110798305B CN 110798305 B CN110798305 B CN 110798305B CN 201910903541 A CN201910903541 A CN 201910903541A CN 110798305 B CN110798305 B CN 110798305B
Authority
CN
China
Prior art keywords
point
elliptic curve
theta
defense method
isomorphic
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.)
Active
Application number
CN201910903541.8A
Other languages
English (en)
Other versions
CN110798305A (zh
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.)
Beijing Digital Technology Shanghai Co ltd
Original Assignee
Wago Technology Co ltd
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 Wago Technology Co ltd filed Critical Wago Technology Co ltd
Priority to CN201910903541.8A priority Critical patent/CN110798305B/zh
Publication of CN110798305A publication Critical patent/CN110798305A/zh
Application granted granted Critical
Publication of CN110798305B publication Critical patent/CN110798305B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/004Countermeasures against attacks on cryptographic mechanisms for fault attacks
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Complex Calculations (AREA)
  • Detection And Correction Of Errors (AREA)
  • Testing Electric Properties And Detecting Electric Faults (AREA)

Abstract

本发明提供了一种故障分析防御方法、电子设备、可读存储介质,包括:在第一椭圆曲线E(Fp)上选择基点P,Fp为模p的有限域,p为素数;在集合Z中选取随机数d;随机选择一个整数r,生成集合Z/rZ中一个随机整数θ;通过计算同构映射γ(θ)=(1:1:θ),获得第二椭圆曲线E'(Z/rZ)上的一个点P'=γ(θ);根据所述第一椭圆曲线E和所述第二椭圆曲线E',利用中国剩余定理函数构建第三椭圆曲线E”;根据基点P和点P',利用中国剩余定理函数生成所述第三椭圆曲线E”上的点P”;通过计算点乘dP”,获得所述第三椭圆曲线E”上的点Q”=dP”;通过计算同构映射γ((d·θ)modr),获得所述第二椭圆曲线E'上的点Q'=γ((d·θ)modr);当点Q”模r的结果不等于点Q'时,输出错误提示,否则输出Q”模p。本发明可以提高算法1的计算效率,同时具备防御故障分析的能力。

Description

一种故障分析防御方法、电子设备、可读存储介质
技术领域
本发明涉及信息安全技术领域,尤指一种故障分析防御方法、电子设备、可读存储介质。
背景技术
故障分析是一种基于实现的分析方法,当密码设备运行过程中受到意外或恶意干扰而偏离其正常流程时,分析人员可以根据故障信息获取设备内部的秘密信息。
为了防御故障分析,需要在密码算法的实现中采取一些措施。通常,为了检测椭圆曲线密码运算过程中是否被注入故障,需要计算两次点乘,这两次点乘占据了椭圆曲线密码运算的主要耗时。
2019年,比利时密码学家Joye提出了如下防御措施:
Figure BDA0002212579770000011
其中,Fp为模p的有限域,p为素数。E(Fp)为域Fp上椭圆曲线E上所有点的集合。
第4步利用了同构运算,把其中一次点乘映射到了有限域加法群中的运算,从而提高了计算效率。对于Weierstrass曲线,Joye在标准射影坐标下,构造了同构映射γ2(θ)=(θ:1:θ3)。
由于同构映射γ2(θ)=(θ:1:θ3)是基于标准射影坐标构造,算法1中步骤3的椭圆曲线点乘也必须在标准射影坐标中计算,但Jacobian射影坐标下计算点乘的效率更高。所以Joye的方法有待进一步改进。
发明内容
本发明的目的是提供一种故障分析防御方法、电子设备、可读存储介质,解决防御故障分析的算法1的计算效率不高的问题,进一步提高密码运算模块的效率。
本发明提供的技术方案如下:
一种用于椭圆曲线密码的故障分析防御方法,包括:
在第一椭圆曲线E(Fp)上选择基点P,Fp为模p的有限域,p为素数;
在集合Z中选取随机数d;
随机选择一个整数r,生成集合Z/rZ中一个随机整数θ;
通过计算同构映射γ(θ)=(1:1:θ),获得第二椭圆曲线E'(Z/rZ)上的一个点P'=γ(θ);
根据所述第一椭圆曲线E和所述第二椭圆曲线E',利用中国剩余定理函数构建第三椭圆曲线E”;
根据基点P和点P',利用中国剩余定理函数生成所述第三椭圆曲线E”上的点P”;
通过计算点乘dP”,获得所述第三椭圆曲线E”上的点Q”=dP”;
通过计算同构映射γ((d·θ)modr)=(1:1:(d·θ)modr),获得所述第二椭圆曲线E'上的点Q'=γ((d·θ)modr);
当点Q”模r的结果不等于点Q'时,输出错误提示。
进一步,所述获得所述第二椭圆曲线E'上的点Q',之后还包括:
当点Q”模r的结果等于点Q'时,输出点Q”模p的结果,将其作为随机数d对应点乘dP的值。
进一步,所述所述同构映射γ(θ)=(1:1:θ),适用于Jacobian射影坐标。
进一步,所述同构映射γ(θ)=(1:1:θ),适用于Jacobian-仿射混合坐标。
进一步,所述同构映射γ(θ)=(1:1:θ),适用于修改后的Jacobian射影坐标。
进一步,所述同构映射γ(θ)=(1:1:θ),适用于Weierstrass曲线。
进一步,所述Weierstrass曲线包括中国密码管理局颁布的SM2曲线、ANSI X9.62标准推荐的素数域上曲线、SEC2标准推荐的素数域上曲线。
进一步,所述同构映射γ(θ)=(1:1:θ),适用于与Weierstrass曲线同构的椭圆曲线。
本发明还提供一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于运行所述计算机程序时实现前述任一项所述的用于椭圆曲线密码的故障分析防御方法。
本发明还提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述任一项所述的用于椭圆曲线密码的故障分析防御方法。
通过本发明提供的一种故障分析防御方法、电子设备、可读存储介质,能够带来以下有益效果:
1、通过基于Jacobian射影坐标构造同构映射γ(θ)=(1:1:θ)并使用、以及在Jacobian射影坐标下实现算法1中的椭圆曲线点乘,可以使得防御故障分析的算法1效率更高。
2、通过基于Jacobian-仿射混合坐标构造同构映射γ(θ)=(1:1:θ)并使用、以及在Jacobian-仿射混合坐标下实现算法1中的椭圆曲线点乘,可以使得防御故障分析的算法1效率更高。
3、通过基于修改后的Jacobian射影坐标构造同构映射γ(θ)=(1:1:θ)并使用、以及在修改后的Jacob i an射影坐标下实现算法1中的椭圆曲线点乘,可以使得防御故障分析的算法1效率更高。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对一种故障分析防御方法、电子设备、可读存储介质的上述特性、技术特征、优点及其实现方式予以进一步说明。
图1是本发明的一种用于椭圆曲线密码的故障分析防御方法的一个实施例的流程图;
图2是本发明的一种用于椭圆曲线密码的故障分析防御方法的另一个实施例的流程图;
图3是本发明的一种电子设备的一个实施例的结构示意图。
附图标号说明:
400.电子设备,410.存储器,420.处理器,430.计算机程序。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
在本发明的一个实施例中,如图1所示,一种用于椭圆曲线密码的故障分析防御方法,包括:
步骤S100在第一椭圆曲线E(Fp)上选择基点P,在集合Z中选取随机数d。
步骤S200随机选择一个整数r,生成集合Z/rZ中一个随机整数θ。
步骤S300计算同构映射γ(θ)=(1:1:θ),并记P'=γ(θ),P'为第二椭圆曲线E'(Z/rZ)上的一个点。
步骤S400根据第一椭圆曲线E和第二椭圆曲线E',利用中国剩余定理函数构建第三椭圆曲线E”:E”←CRT(E,E')。
步骤S500根据基点P和点P',利用中国剩余定理函数生成点P”:P”←CRT(P,P'),P”∈E”(Z/prZ)。
步骤S600计算点乘dP”,并记Q”=dP”,Q”∈E”(Z/prZ)。
步骤S700计算同构映射γ((d·θ)modr)=(1:1:(d·θ)modr),并记点Q'=γ((d·θ)modr),Q'∈E'(Z/rZ)。
步骤S800判断点Q”模r的结果是否等于点Q';
步骤S810当点Q”模r的结果不等于点Q'时,输出错误提示;
步骤S820当点Q”模r的结果等于点Q'时,输出点Q”模p的结果,将其作为随机数d对应点乘dP的值。
具体地,Fp为模p的有限域,包含p个元素,p为素数。E(Fp)为域Fp上第一椭圆曲线E上所有点的集合。基点P为第一椭圆曲线E上的一个非零点。在整数集合Z上选择一个随机数d。
随机选择一个整数r,在集合Z/rZ上选择一个随机整数θ(即θ∈Z/rZ)。集合Z/rZ是整数除以r后的余数构成的集合。
E'(Z/rZ)为域Z/rZ上第二椭圆曲线E'所有点的集合。
在Jacobian射影坐标下构建同构映射γ(x)=(1:1:x),并计算γ(θ),将γ(θ)赋予点P',从而得到第二椭圆曲线E'的点P'。
CRT为中国剩余定理函数,根据CRT(E,E'),得到第三椭圆曲线E”。
在Jacobian射影坐标下,根据CRT(P,P'),得到点P”,点P”为第三椭圆曲线E”上的一个点。
在Jacobian射影坐标下计算点乘dP”,得到点Q”,点Q”为第三椭圆曲线E”上的另一个点。
在Jacobian射影坐标下,计算同构映射γ((d·θ)modr),得到点Q',点Q'为第二椭圆曲线E'上的另一个点。
点Q”模r,即Q”modr,是指点Q”的每维坐标分别模r。
判断点Q”模r的结果是否等于点Q'。当点Q”模r的结果不等于点Q',说明存在故障注入或遭到攻击,所以输出错误提示,不输出随机数d对应的点乘dP的值(即随机数d与基点P的点乘结果),以避免该点乘结果泄露导致随机数d被推导出(如果将随机数d作为私钥,则d与基点P的点乘结果为对应的公钥)。
当点Q”模r的结果等于点Q',说明不存在故障注入,所以输出随机数d对应点乘dP的值,即点Q”模p的结果。
作为本实施例的变形,同构映射γ(θ)=(1:1:θ)、点乘、及上述过程中的运算也可应用于Jacobian-仿射混合坐标、修改后的Jacobian射影坐标(修改后的Jacobian射影坐标可能有5维、6维或更多,但前3维必须与Jacobian射影坐标一致。)。同构映射γ(θ)=(1:1:θ)除了用于Weierstrass椭圆曲线,还可用到与Weierstrass曲线同构的椭圆曲线。Weierstrass曲线包括中国密码管理局颁布的SM2曲线、ANSIX9.62标准推荐的素数域上曲线、SEC2标准推荐的素数域上曲线。
本实施例在Jacobian射影坐标下,构造了同构映射γ(θ)=(1:1:θ),其中θ∈Z/rZ。接下来证明
Figure BDA0002212579770000061
是一个同构映射,这里E0,0(Z/rZ)[r]={γ(θ)=(1:1:θ)|θ∈Z/rZ}。
在Jacobian射影坐标系下,椭圆曲线Ea,b(Fp)可以表示为:Y2=X3+aXZ4+bZ6。E上的无穷远点为(1:1:0),于是γ(0)=(1:1:0)就是无穷远点。任意θ1、θ2,当θ1≠θ2时,γ(θ1)≠γ(θ2),所以γ是一个单射。而椭圆曲线群E0,0(Z/rZ)[r]的元素个数是r,同时集合Z/rZ的元素个数也是r。群E0,0(Z/rZ)[r]中任意点(1:1:θ),存在θ∈Z/rZ,满足γ(θ)=(1:1:θ),所以γ是一个满射。
对于任意θ1、θ2,当θ1≠θ2时,γ(θ1)+γ(θ2)=(1:1:θ1)+(1:1:θ2),根据点加公式:任意点P=(X1:Y1:Z1)、Q=(X2:Y2:Z2)∈Ea,b(Fp),且P≠Q,则P+Q=(X3:Y3:Z3),满足X3=-E3-2AE2+F2,Y3=-CE3+F(AE2-X3),Z3=Z1 Z2E,这里,
Figure BDA0002212579770000071
E=B-A,F=D-C,可得/>
Figure BDA0002212579770000072
Figure BDA0002212579770000073
Z3=θ1θ212)(θ12)。
又因为Jacobian射影坐标(X:Y:Z)和仿射坐标(x:y)满足x=X/Z2,y=Y/Z3,所以(X3:Y3:Z3)=(1:1:θ12)=γ(θ12),即γ(θ1)+γ(θ2)=γ(θ12)。
对于任意θ1、θ2,当θ1=θ2时,γ(θ1)+γ(θ2)=2γ(θ1),根据倍点公式:任意点P=(X1:Y1:Z1),有2P=(X3:Y3:Z3),满足X3=-2A+B2,Y3=-8Y1 4+B(A-X3),Z3=2Y1 Z1,这里A=4X1Y1 2
Figure BDA0002212579770000074
可得A=4,B=3,X3=1,Y3=1,Z3=2θ1,2γ(θ1)=(1:1:2θ1)=γ(2θ1)。
综上所述,对于任意θ1、θ2,γ(θ1)+γ(θ2)=γ(θ12),也就是映射γ对加法运算保持同态,而且即是单射又是满射,根据定义可知γ是一个同构映射。
由于Jacobian射影坐标计算点乘需要16次素数域乘法和10次素数域平方,而使用标准射影坐标计算点乘需要19次素数域乘法和11次素数域平方。使用Jacobian-仿射混合坐标计算点乘需要12次素数域乘法和9次素数域平方,而使用标准射影-仿射混合坐标计算点乘需要16次素数域乘法和7次素数域平方。所以Jacobian射影坐标比标准射影坐标计算点乘的效率更高。
另外,本实施例构造的同构映射γ(θ)=(1:1:θ)也比同构映射γ2(θ)=(θ:1:θ3)计算更简单(θ3涉及3次方运算)。
所以,本实施例,通过构造同构映射γ(θ)=(1:1:θ),θ∈Z/rZ,用γ(θ)替换算法1中的γ2(θ)(即Joye提出的防御故障分析的算法),在Jacobian射影坐标下、或Jacobian-仿射混合坐标、或修改后的Jacobian射影坐标实现算法1,可以使得算法1的计算效率更高。
在本发明的另一个实施例中,如图2所示,一种用于椭圆曲线密码的故障分析防御方法,包括:
选取曲线参数为SM2曲线E(GF(p)):Y2=X3+aXZ4+bZ6,其中,
p=0xFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF;
a=0xFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFC;
b=0x28E9FA9E9D9F5E344D5A9E4BCF6509A7F39789F515AB8F92DDBCBD414D940E93;
选基点P,其Jacobian射影坐标为(PX:PY:PZ),其中,
PX=0x32C4AE2C1F1981195F9904466A39C9948FE30BBFF2660BE1715A4589334C74C7;
PY=0xBC3736A2F4F6779C59BDCEE36B692153D0A9877CC62A474002DF32E52139F0A0;
PZ=0x1;
P点的阶为
n=0xFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF7203DF6B21C6052B53BBF40939D54123;
设随机数d,d∈Z,为
d=0x9F082F0138E890AC5A7711B3A80427ECAF8F224C68EEC6E3AF136C3C4B56F988。
随机选择一个小的整数r=0x5B232F77;
在集合Z/rZ中生成随机数θ=0x34E2B6B8;
在Jacobian射影坐标下,构建同构映射γ(θ)=(1:1:θ),得到点P'=γ(θ)=(0x1:0x1:0x34E2B6B8),P'∈E'(Z/rZ),其中E'(Z/rZ):Y2=X3
构建曲线E”←CRT(E,E'):Y2=X3+aaXZ4+bbZ6,其中
aa=0x21018A37DEFE75C7FFFFFFFFFFFFFFFFFFFFFFFFDEFE75C821018A37FFFFFFFFDEFE75C5;
bb=
0xE31474D1AB8B3519D9F5E344D5A9E4BCF6509A7E56642A823DCD6DFDDBCBD413F62C746;
生成点P”←CRT(P,P'),其Jacobian射影坐标=
(0x35FAF5C1FCC9B86A1F1981195F9904466A39C99459E815FE286101A3715A4588FD517F05:
0x198A7F8CA2ACB716F4F6779C59BDCEE36B692153B71F07F0DFB4C6CC02DF32E507AF7114:
0x54BE8ADAAB417524FFFFFFFFFFFFFFFFFFFFFFFFAB41752554BE8ADAFFFFFFFFAB417526);
计算Q”←[d]P”=
(0x575D8413140B1ED8FE3523AE483BF520FCE647E9E3F5A086655FDB9A20B67BD6C3BDA4B8:
0x56411DC6853BA25B780367D2F18DC240FD73259759DA8CB43B5E79BB7581F5E22765965:
0x18F211D8DC1E2BFD1108649D3575062BACA51E044709EC0C1A255DAC41056D435564A4F5);
采用Jacobian射影坐标下的点乘(即点乘),相对标准射影坐标下的点乘,可以提高计算效率。
计算点Q'←γ((d·θ)modr)=(0x1:0x1:0xAB0A867E),将其转换成仿射坐标为(0x59239D6F,0xFC632DF);
计算Q”modr=(0xB8F9F82:0x238492CB:0x43C67B66),将其转换成仿射坐标为(0x59239D6F,0xFC632DF);
所以(Q”modr)=Q',返回Q”modp=
(0x6B68A2EBFE3523AE483BF520FCE647EA3B5324990E02578720B67BD71B1B28CB:
0x6DB7CC01B780367D2F18DC240FD732597B01BAA73E51D5BFB7581F5E27DA6B41:
0xF5103DD51108649D3575062BACA51E045FFBFDE401334BD441056D436E56B6CD)。
Q”modp的结果为随机数d对应点乘dP的值。
另一种方法,直接根据Jacobian射影坐标,判断(Q”modr)与Q'是否相等,具体:
假设两个点的Jacobian射影坐标分别为(X1:Y1:Z1)、(X2:Y2:Z2),当
Figure BDA0002212579770000091
Figure BDA0002212579770000092
且/>
Figure BDA0002212579770000093
时,表明这两个点相等。
(0x1:0x1:0xAB0A867E)、(0xB8F9F82:0x238492CB:0x43C67B66)满足
Figure BDA0002212579770000094
且/>
Figure BDA0002212579770000095
所以(Q”modr)=Q'。
以上为正常情况(即系统未注入故障)时的处理流程。如果系统被注入故障,比如,Q”、或Q'与上述值不一样,导致(Q”modr)!=Q',则输出错误提示。
在本发明的一个实施例中,如图3所示,一种电子设备400,包括存储器410及处理器420。所述存储器410用于存储计算机程序430。所述处理器运行所述计算机程序时实现如前述记载的用于椭圆曲线密码的故障分析防御方法。
作为一个示例,处理器420执行计算机程序时实现根据前述记载的步骤S100至S820。
所述处理器用于通过执行所述计算机程序从而实现椭圆曲线密码的故障分析防御。根据需要,所述处理器可以是中央处理单元(CPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、通用处理器或其他逻辑器件等。
所述存储器可以为任意能够实现数据、程序存储的内部存储单元和/或外部存储设备。譬如,所述存储器可以为插接式硬盘、智能存储卡(SMC)、安全数字(SD)卡或闪存卡等。所述存储器用于存储计算机程序及数据。
所述电子设备400可以为密码芯片、密码机、金融IC卡、计算机设备等。根据需要,所述电子设备400还可以是单片机,或集成了中央处理单元(CPU)的计算设备。
在本发明的一个实施例中,一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时可实现如前述实施例记载的用于椭圆曲线密码的故障分析防御方法。也即是,当前述本发明实施例对现有技术做出贡献的技术方案的部分或全部通过计算机软件产品的方式得以体现时,前述计算机软件产品存储在一个计算机可读存储介质中。所述计算机可读存储介质可以为任意可携带计算机程序代码实体装置或设备。譬如,所述计算机可读存储介质可以是U盘、移动磁盘、磁碟、光盘、计算机存储器、只读存储器、随机存取存储器等。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种用于椭圆曲线密码的故障分析防御方法,其特征在于,包括:
在以模p为有限域的第一椭圆曲线E上选择基点P,p为素数;
在集合Z选取随机数d;
随机选择一个整数r,生成集合Z/rZ中一个随机整数θ;
通过计算同构映射γ(θ)=(1:1:θ),获得第二椭圆曲线E'(Z/rZ)上的一个点P'=γ(θ);
根据所述第一椭圆曲线E和所述第二椭圆曲线E',利用中国剩余定理函数构建第三椭圆曲线E”;
根据基点P和点P',利用中国剩余定理函数生成所述第三椭圆曲线E”上的点P”;
通过计算点乘dP”,获得所述第三椭圆曲线E”上的点Q”=dP”;
通过计算同构映射γ((d·θ)mod r)=(1:1:(d·θ)mod r),获得所述第二椭圆曲线E'上的点Q'=γ((d·θ)mod r);
当点Q”模r的结果不等于点Q'时,输出错误提示。
2.根据权利要求1所述的用于椭圆曲线密码的故障分析防御方法,其特征在于,所述获得所述第二椭圆曲线E'上的点Q',之后还包括:
当点Q”模r的结果等于点Q'时,输出点Q”模p的结果,将其作为随机数d对应点乘dP的值。
3.根据权利要求1或2所述的用于椭圆曲线密码的故障分析防御方法,其特征在于:
所述同构映射γ(θ)=(1:1:θ),适用于Jacobian射影坐标。
4.根据权利要求1或2所述的用于椭圆曲线密码的故障分析防御方法,其特征在于:
所述同构映射γ(θ)=(1:1:θ),适用于Jacobian-仿射混合坐标。
5.根据权利要求1或2所述的用于椭圆曲线密码的故障分析防御方法,其特征在于:
所述同构映射γ(θ)=(1:1:θ),适用于修改后的Jacobian射影坐标。
6.根据权利要求1或2所述的用于椭圆曲线密码的故障分析防御方法,其特征在于:
所述同构映射γ(θ)=(1:1:θ),适用于Weierstrass曲线。
7.根据权利要求6所述的用于椭圆曲线密码的故障分析防御方法,其特征在于:
所述Weierstrass曲线包括中国密码管理局颁布的SM2曲线、ANSI X9.62标准推荐的素数域上曲线、SEC2标准推荐的素数域上曲线。
8.根据权利要求1或2所述的用于椭圆曲线密码的故障分析防御方法,其特征在于:
所述同构映射γ(θ)=(1:1:θ),适用于与Weierstrass曲线同构的椭圆曲线。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于运行所述计算机程序时实现根据权利要求1至8中任一项所述的用于椭圆曲线密码的故障分析防御方法。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于:
所述计算机程序被处理器执行时实现根据权利要求1至8中任一项所述的用于椭圆曲线密码的故障分析防御方法。
CN201910903541.8A 2019-09-24 2019-09-24 一种故障分析防御方法、电子设备、可读存储介质 Active CN110798305B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910903541.8A CN110798305B (zh) 2019-09-24 2019-09-24 一种故障分析防御方法、电子设备、可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910903541.8A CN110798305B (zh) 2019-09-24 2019-09-24 一种故障分析防御方法、电子设备、可读存储介质

Publications (2)

Publication Number Publication Date
CN110798305A CN110798305A (zh) 2020-02-14
CN110798305B true CN110798305B (zh) 2023-05-30

Family

ID=69438681

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910903541.8A Active CN110798305B (zh) 2019-09-24 2019-09-24 一种故障分析防御方法、电子设备、可读存储介质

Country Status (1)

Country Link
CN (1) CN110798305B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101840325A (zh) * 2009-03-13 2010-09-22 汤姆森许可贸易公司 椭圆曲线上的抗故障计算
CN102546160A (zh) * 2010-12-08 2012-07-04 上海华虹集成电路有限责任公司 用于椭圆曲线密码防御差分功耗攻击的方法
CN103997402A (zh) * 2014-05-30 2014-08-20 中国科学院深圳先进技术研究院 一种加密芯片安全性能测试方法和装置
CN106712968A (zh) * 2017-02-22 2017-05-24 北京智慧云测科技有限公司 密钥获取方法、数字签名方法和装置
CN108964914A (zh) * 2017-05-17 2018-12-07 中国科学技术大学 抗侧信道攻击的sm2点乘架构

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101527867B1 (ko) * 2007-07-11 2015-06-10 삼성전자주식회사 타원 곡선 암호 시스템에 대한 부채널 공격에 대응하는방법
KR20140046568A (ko) * 2012-10-05 2014-04-21 한국전자통신연구원 단순 전력 파형 분석 및 오류 주입 분석을 방지하는 타원곡선 암호화 방법 및 그 시스템
US10601578B2 (en) * 2017-10-26 2020-03-24 Nxp B.V. Protecting ECC against fault attacks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101840325A (zh) * 2009-03-13 2010-09-22 汤姆森许可贸易公司 椭圆曲线上的抗故障计算
CN102546160A (zh) * 2010-12-08 2012-07-04 上海华虹集成电路有限责任公司 用于椭圆曲线密码防御差分功耗攻击的方法
CN103997402A (zh) * 2014-05-30 2014-08-20 中国科学院深圳先进技术研究院 一种加密芯片安全性能测试方法和装置
CN106712968A (zh) * 2017-02-22 2017-05-24 北京智慧云测科技有限公司 密钥获取方法、数字签名方法和装置
CN108964914A (zh) * 2017-05-17 2018-12-07 中国科学技术大学 抗侧信道攻击的sm2点乘架构

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
平稳与平衡――椭圆曲线密码体制抗旁信道攻击的策略与手段;刘铎;《计算机研究与发展》;第42卷(第10期);全文 *
针对椭圆曲线密码的差分错误攻击研究综述;刘双根;《现代电子技术》;第39卷(第19期);全文 *

Also Published As

Publication number Publication date
CN110798305A (zh) 2020-02-14

Similar Documents

Publication Publication Date Title
US8782400B2 (en) Trapdoor one-way functions on elliptic curves and their application to shorter signatures and asymmetric encryption
US8369517B2 (en) Fast scalar multiplication for elliptic curve cryptosystems over prime fields
CA2316227C (en) Leak-resistant cryptographic method and apparatus
US8345863B2 (en) Method of countering side-channel attacks on elliptic curve cryptosystem
TWI462010B (zh) 使用橢圓曲線上一點之表現法改變之編譯方法及系統
EP3930252A1 (en) Countermeasures for side-channel attacks on protected sign and key exchange operations
US11824986B2 (en) Device and method for protecting execution of a cryptographic operation
JP2011530093A (ja) 累乗法による暗号化を保護する解決策
JP2006145945A (ja) 暗号処理演算方法、および暗号処理装置、並びにコンピュータ・プログラム
JP2011075720A (ja) 楕円曲線暗号演算装置及び方法
TW200939114A (en) Modular reduction using a special form of the modulus
CN110798305B (zh) 一种故障分析防御方法、电子设备、可读存储介质
US20180191498A1 (en) X-only generic mapping function for pace protocol
CN109074759A (zh) 用于Cheon抗性的静态DIFFIE-HELLMAN安全性的方法和系统
US11943353B2 (en) Randomization methods in isogeny-based cryptosystems
EP1691501A1 (en) Leak-resistant cryptography method an apparatus
WO2022221926A1 (en) Summation validation method and system
EP4342126A1 (en) A system and a method for performing operations
WO2021050856A1 (en) Multi-message multi-user signature aggregation
Medoš Fault Attacks and Countermeasures for Elliptic Curve Cryptosystems
KR20110109467A (ko) 오류주입 공격에 안전한 피아트 샤미르 개인 식별 장치, 방법 및 그 기록 매체

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240528

Address after: 200120, Room 207, No. 1348 Xinjinqiao Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee after: Beijing Digital Technology (Shanghai) Co.,Ltd.

Country or region after: China

Address before: 201203 5th floor, No.1 Lane 999, Dangui Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee before: Wago Technology Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right