CN107547201B - 一种提高椭圆曲线密码体制中的标量乘计算效率的方法 - Google Patents

一种提高椭圆曲线密码体制中的标量乘计算效率的方法 Download PDF

Info

Publication number
CN107547201B
CN107547201B CN201710894283.2A CN201710894283A CN107547201B CN 107547201 B CN107547201 B CN 107547201B CN 201710894283 A CN201710894283 A CN 201710894283A CN 107547201 B CN107547201 B CN 107547201B
Authority
CN
China
Prior art keywords
coordinate
scalar multiplication
elliptic curve
scalar
point
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
CN201710894283.2A
Other languages
English (en)
Other versions
CN107547201A (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.)
Harbin Engineering University
Original Assignee
Harbin Engineering 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 Harbin Engineering University filed Critical Harbin Engineering University
Priority to CN201710894283.2A priority Critical patent/CN107547201B/zh
Publication of CN107547201A publication Critical patent/CN107547201A/zh
Application granted granted Critical
Publication of CN107547201B publication Critical patent/CN107547201B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明提供的是一种提高椭圆曲线密码体制中的标量乘计算效率的方法。(1)随机产生用户私钥;(2)将椭圆曲线密码体制中的基点坐标从仿射坐标按坐标转换公式转换为雅可比坐标;(3)对用户随机产生的标量使用对称三进制方法进行计算得到标量的对称三进制表示;(4)对得到的对称三进制数串进行预处理;(5)预计算基点的二倍点运算结果并存储;(6)将预处理后得到的改进的对称三进制数串用于计算标量乘,具体采用从高位到低位的计算方式,根据相应位的数值判断是否调用点加运算,直到数串的最低位为止。本发明用于椭圆曲线密码体制中标量乘的计算问题,可以提高标量乘的计算速度,提升椭圆曲线密码体制的效率,具有较大的价值和实用性。

Description

一种提高椭圆曲线密码体制中的标量乘计算效率的方法
技术领域
本发明涉及的是信息安全技术领域,具体地说是一种椭圆曲线密码体制中的标量乘计算方法。
背景技术
在现实生活中,人们通过电子设备获取数据的方式主要分为无线和有线两种方式,而无论哪种方式中间都会有第三方的存在,因此如何保护数据传输的安全性显得尤为重要。通常,数据的安全性通过加密来实现,因此在满足安全性的同时如何提高加密算法的执行速度已成了当前的主要研究趋势。当前椭圆曲线密码体制能够满足数据传输所需要的安全性,但由于标量乘的存在,制约了椭圆曲线密码体制的执行效率。标量乘定义为用户私钥与基点坐标相乘求取用户公钥的过程。在椭圆曲线密码体制中用私钥求取公钥是整个密码体制中计算开销最大的处理步骤。为了提高系统的运行效率,简化标量乘的运算具有很大的实际意义。
目前国内外专家学者提出了很多关于标量乘的运算计算方法,如二进制法、多进制法、梳状法以及多基数链法。其中二进制法的效率较低,该方法在标量较大的情况下,其二进制位数较高,所以在求取过程中需要更多的内存空间来存储。多进制法:即将标量用多进制表示,该方法相对于二进制尽管在内存上更有优势,但计算效率并没有得到明显提升。微软公司在其专利申请文件“椭圆曲线点乘法”(公开号CN 101507176A,申请号200680031543.3,申请日2006.6.29)中提出了用梳状法计算标量乘,该方法使用预存储的方式提高计算效率,但该方法存在一定的局限性,即预存储的点数较多对系统的内存提出了更高的要求。目前主流的双基数链和多基数链标量乘算法由于在计算双基数链和多基数链表示法时需要用到贪婪算法进行寻优处理,对系统计算能力有较高的要求。
对称三进制相对于二进制其表示位数较短,在实际应用过程中所占内存较小,且标量的对称三进制表示易于获取。但对称三进制表示法也存在非零值权重较大的缺点,会导致标量乘过程中存在较多的点加运算。
发明内容
本发明的目的在于提供一种开销,效率高的提高椭圆曲线密码体制中的标量乘计算效率的方法。
本发明的目的是这样实现的:
(1)随机产生用户私钥K;
(2)将椭圆曲线密码体制中的基点坐标从仿射坐标按坐标转换公式转换为雅可比坐标;
(3)对用户随机产生的标量使用对称三进制方法进行计算得到标量的对称三进制表示;
(4)对得到的对称三进制数串进行预处理,降低对称三进制表示法的非零元素的权重;
(5)预计算基点的二倍点运算结果并存储;
(6)将预处理后得到的改进的对称三进制数串用于计算标量乘,具体采用从高位到低位的计算方式,根据相应位的数值判断是否调用点加运算,直到数串的最低位为止。
本发明还可以包括:
1、步骤(2)具体包括:对于椭圆曲线密码体制中的基点坐标进行处理,增加一个Z坐标,并对原始的X坐标的值乘Z坐标值的平方得到新的X坐标,对原始Y坐标的值乘Z坐标值的立方得到新的Y坐标。
2、步骤(4)具体包括:在原有的对称三进制数串的基础上,对数串中的相邻位为1-1和-11的情况进行预处理,通过向下借位的方式将高位变为零,低位变成2或-2。
3、步骤(6)具体包括:根据改进的对称三进制数串,从高位到低位计算标量乘运算,每递减一位进行一次三倍点运算,根据所在位数的元素的值看是否进行点加运算,直到到达数串的最低位为止。
本发明针对计算能力受限的设备,为提升标量乘的速度,在对称三进制的基础上提出了一种新的标量乘计算方法。该标量乘对系统的计算能力要求没有双基数链和多基数链那么苛刻,同时计算效率相对于传统的二进制和对称三进制算法有明显的提高。
本发明的核心技术内容在于首先将基点坐标由仿射坐标变换为雅可比坐标,然后对标量的对称三进制数串进行改进处理,降低非零值权重。预存储二倍点运算结果,在改进的对称三进制表示法的基础上计算标量乘。
本发明的坐标变换处理部分,其主要内容为:对于椭圆曲线密码体制中的基点坐标进行处理,增加一个Z坐标,并对原始的X坐标的值乘Z坐标值的平方得到新的X坐标,对原始Y坐标的值乘Z坐标值的立方得到新的Y坐标,由此,便将基点坐标由仿射坐标变换成雅可比坐标。
本发明的对称三进制数串的预处理部分,其主要内容为:在原有的对称三进制数串的基础上,对数串中的相邻位为1-1和-11的情况进行预处理,通过向下借位的方式将高位变为零,低位变成2或-2,通过这种方式,数串中的非零元素的权重得到了降低。
本发明的预计算存储部分,其主要内容为:预计算并存储基点的二倍点运算结果。
本发明包括的标量乘的计算部分,其主要内容为:根据改进的对称三进制数串,从高位到低位计算标量乘运算,每递减一位进行一次三倍点运算,根据所在位数的元素的值看是否进行点加运算,直到到达数串的最低位为止。
本发明提供了针对椭圆曲线密码体制中的标量乘计算方法。其优点在于只需要很少的预计算开销便可以获得标量的对称三进制表示,同时在该种表示法下,预存储基点的二倍点结果,该方式相对于传统的对称三进制标量乘,计算效率得到了明显提升。
附图说明
图1本发明中标量乘的处理框图。
图2获取标量的对称三进制表示处理流程。
图3降低非零值权重的对称三进制标量表示处理流程。
图4基于改进的对称三进制标量乘计算流程。
具体实施方式
下面举例对本发明做更详细的描述。
结合图1,本发明的提高椭圆曲线密码体制中的标量乘计算效率的方法主要包括如下步骤:
(1.1)随机产生用户私钥K。
(1.2)将椭圆曲线密码体制中的基点坐标从仿射坐标按坐标转换公式转换为雅可比坐标。
(1.3)对用户随机产生的标量使用对称三进制方法进行处理得到标量的对称三进制数串,根据对称三进制的表示规则,其数串的基本元素为-1,0,1。
(1.4)对得到的对称三进制数串进行预处理,降低对称三进制表示法的非零元素的权重。
(1.5)预计算基点的二倍点运算结果并存储,从而节省计算标量乘过程中的倍点计算量。
(1.6)将预处理后得到的改进的对称三进制数串用于计算标量乘,具体采用从高位到低位的计算方式,根据相应位的数值判断是否调用点加运算,直到数串的最低位为止,最终得到标量乘的运算结果。
椭圆曲线密码体制中标量乘的定义是将用户私钥和基点相乘求取用户公钥的过程,即:
Q=K*G (1)
式中K为用户私钥,是一个正整数,G为基点坐标,Q为用户公钥,其中G和Q均以雅可比坐标形式呈现。相应的乘法按椭圆曲线域内的运算规则进行计算。
通常情况下对于K值较大的情况,通过直接计算获取Q的值较为复杂。目前研究的直接计算K*G的运算中,K的最大值不超过19。对于较大情况下的K值,通常将其转变为低进制数串的形式进行处理,也就是通常所用的先倍点后点加的处理操作。
本方法首先将用户私钥用对称三进制表示,在对称三进制的基础上进行进一步的处理,将标量的对称三进制表示数串中连续的1-1和-11向下借位,降低数串中非零值的权重。利用上述所说的倍点-点加法则,根据相应的三倍点公式和点加公式在改进的对称三进制表示下从高位到低位计算用户公钥。由于从高位到低位计算标量乘的过程中存储了基点的二倍点运算结果,相对于从低位到高位的计算方式省去了所有的二倍点运算。因此在改进的对称三进制形式下计算标量乘能够降低计算量,提高椭圆曲线密码体制的工作效率。
本发明属于椭圆曲线密码体制中的标量乘计算方法。通常,椭圆曲线密码体制为了保证安全性,私钥的比特大小至少为160bit。具体的仿真过程中,本发明采用的相关参数是美国联邦政府推荐的192比特的素数域下的椭圆曲线相关参数,随机产生160比特的用户私钥K作为标量乘运算中的标量。在以后的标量乘过程中,椭圆曲线相关参数保持不变,仅改变私钥的值。
完整的实现过程如图1所示,其主要步骤为:
1.随机产生用户私钥K。
2.将仿射坐标形式的基点坐标转换成雅可比坐标,仿射坐标下,点的表示形式为(x,y),而在雅可比坐标下,点的表示形式为(X:Y:Z)。首先设置Z的初值,根据式(2)和式(3)的转换公式得到基点的雅可比坐标形式。
x=X/Z2 (2)
y=Y/Z3 (3)
3.按图2的处理流程对K进行处理,得到K的对称三进制表示。具体的处理流程是首先输入用户私钥K,并设置表示位的最小值为i=0,判断K对3取余的数值是否为0、1、2。如果是0,代表i=0处的表示元素为0,即ki=0,然后依次执行K=K/3,i=i+1;如果是1,代表i=0处的表示元素为1,即ki=1,然后依次执行K=(K-1)/3,i=i+1;如果是2,代表i=0处的表示元素为-1,即ki=-1,然后依次执行K=(K+1)/3;通过每次i值的递增,就可以由低位向高位存储相应的表示位数值,从而得到K的对称三进制表示(kiki-1···k0),其中ki,ki-1,···k0∈(-1,0,1),i为私钥K在对称三进制表示下的长度。
4.在对称三进制表示中,由于其基本元素为1、0和-1,每个基本元素出现的概率均等,也就意味着在标量的表示数串中,非零元素的权重占整个数串的2/3。针对这种情况,提出一种改进措施,具体的转化过程如图3所示,首先输入私钥K的对称三进制表示数串K=(kiki-1···k0),设置初始l的值为零,表示改进的表示法中最低位从零开始计位,从对称三进制表示数串的最低位开始,依次判断该位与相邻的高位元素的值,如果klkl+1=1-1,则进行借位处理,令kl+1=0,kl=2,然后执行l=l+1。如果klkl+1=-11,同样可以通过借位处理,令kl+1=0,kl=-2,然后执行l=l+1。如果连续两位均不是上述两种情况,则直接执行l=l+1,通过l的循环相加操作,便可以对整个对称三进制表示数串进行降低非零值权重处理,从而得到私钥K的改进对称三进制表示K=(klkl-1···k0),其中l表示改进的对称三进制数串的长度,klkl-1···k0∈(-2,-1,0,1,2)。
5.预计算基点G的二倍点运算P=2G并存储。
6.计算标量乘运算,得到用户公钥。主要思路是从高位向低位计算标量乘,假定K=(klkl-1···k0),初始公钥Q=∞,在雅可比坐标下,∞+G=G。从最高位i=l开始,如果ki=2,则Q=Q+2P,然后判断i是否处于最低位,如果不是则执行i=i-1,且Q=3Q,然后进行下一位的处理。如果ki=-2,则Q=Q-2P,然后判断i是否处于最低位,如果不是则执行i=i-1,且Q=3Q,接着进行下一位的处理。如果ki=1,则Q=Q+G,然后判断i是否处于最低位,如果不是则执行i=i-1,且Q=3Q,然后进行下一位的处理。如果ki=-1,则Q=Q-G,然后判断i是否处于最低位,如果不是则执行i=i-1,且Q=3Q,紧接着进行下一位的处理。如果ki的值不是上述四个,那么判断i是否处于最低位,如果不是则执行i=i-1,且Q=3Q,然后进行下一位的处理。通过i的循环自减操作,当i为零时,即可输出最终获取的公钥坐标Q,此时的公钥坐标是基于雅可比坐标下的,还需要按照公式(2)和公式(3)进行处理得到仿射坐标系下的公钥形式。
由于该方法标量乘的计算是基于雅可比坐标的,且计算过程中需要用到三倍点运算。因此这里给出雅可比坐标下三倍点运算公式。假定点的坐标为G=(Xg:Yg:Zg),所要求取的是公钥Q=3G=(X:Y:Z),为了方便区分,这里对G点坐标加了下角标g,则三倍点运算公式为:
Figure BDA0001421834920000051
Y=Yg(4(ME-T)(2T-ME)-E3) (5)
Z=ZgE (6)
其中
Figure BDA0001421834920000061
由于在数串中有2和-2的存在,因此需要进行预计算二倍点运算并存储运算结果,假定点的坐标为G=(Xg:Yg:Zg),要得到Q=2G=(X:Y:Z),所调用的二倍点公式为:
Figure BDA0001421834920000062
Figure BDA0001421834920000063
Z=2YgZg (9)
由于在标量乘的计算过程中点加运算是必不可少的一步,当标量乘从高位向低位计算时,在数串中遇到1、-1、2和-2都要进行点加操作,假定P=(X1:Y1:Z1),Q=(X2:Y2:Z2),求R=P+Q=(X3:Y3:Z3),坐标中分别加入了角标1,2,3来区分不同的点。雅可比坐标下点加操作的具体运算公式如下式所示:
X3=-H3-2U1H2+r2 (10)
Y3=-S1H3+r(U1H2-X3) (11)
Z3=Z1Z2H (12)
其中
Figure BDA0001421834920000064
H=U2-U1,r=S2-S1。在P=∞即P点的坐标为(1,1,0)的情况下,R=P+Q=∞+Q=Q。
通过已有的雅克比坐标下的三倍点、二倍点和点加公式,根据相应的运算规则,便可以计算标量乘。下面以美国联邦局推荐的192比特的素数域内的安全椭圆曲线相关参数为例计算标量乘,当素数域特征不等于2和3时,椭圆曲线方程为y2=x3+Ax+B。其中私钥K和参数A用十进制表示,其余椭圆曲线相关参数及输出公钥均用十六进制表示。仿真所用的大数库为libtommath。
有限域P为:fffffffffffffffffffffffffffffffeffffffffffffffff;
有限域的阶数r为:ffffffffffffffffffffffff99def836146bc9b1b4d22931;
曲线参数A为:-3;
曲线参数B为:64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1;
基点G的横坐标为:188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012;
基点G的纵坐标为:7192b95ffc8da78631011ed6b24cdd573f977a11e794811;
私钥K为741171869175811590882735236228179931611616059213;
上述参数下用本发明所述的标量乘计算方法可以得到用户公钥Q:
输出公钥Q的横坐标为:72B54F37DACC9A7D23CACEB0E668E65341D2FC7045103D4
输出公钥Q的纵坐标为:DF559EE1D9665477CA73171FFD4FF27D32AB7EAFB801F493
在以上参数的情况下按照改进的对称三进制标量乘处理流程,首先将基点的仿射坐标形式转换为雅可比坐标,即将雅可比坐标系下基点的Z坐标值设为1,则根据二倍点公式可知,雅可比坐标系下横纵坐标值与仿射坐标系下相同。
将私钥K用对称三进制表示:1110-11110111-1000-110-1-1-11-11-10-10-111-10-11001-11-1-11-1-11-1-111011-1-101-11001-101-1101101-111101-101-1-110111-101110-1-1001
通过将相邻的1-1和-11向下借位后所得到的新的表示法为:11100-211011020000-20-1-1-102020-100-20200-2000202-102-1020-210102-1010-20002010-2011010-2110020020-20110201110-1-10001
下面以改进的表示法的高十位为例计算高十位的标量乘,其剩余位的计算方法与高十位相同,根据从高位到低位的法则计算标量乘即:
3(3*3(3(3*3*3(3(3G+G)+G)-2G)+G)+G)+G (13)
具体的计算过程中首先设公钥初始坐标为(0,0,0),判断表示数串中最高位的值,本例中,最高位的值为1,则初始的公钥坐标与基点进行点加运算,运算结果进行三倍点运算。然后向下移位,根据第二位的数值,将三倍点运算的结果进行相应的点加运算,对计算结果进行三倍点运算,剩余位的计算方法类似。可以看出在具体的计算过程中,点加运算的对象有两个:基点G和基点的二倍点2G。如果在计算过程中不进行保存,那么每次运算都需要计算基点的二倍点运算,存在较多的冗余计算。因此本发明保存了基点的二倍点运算结果,省去了相应位数值为2时的二倍点运算量,相对于从低位向高位计算标量乘中无法预存储的计算方法,计算效率有了明显的提升。
为了评价本发明的有效性,将计算复杂度作为评价指标,通常标量乘的计算复杂度通过转化为模乘运算M来体现。在计算复杂度的分析过程中,按照当前通用的处理方式,将模平方的运算开销与模乘的运算开销的比值按0.8来计算,即S/M=0.8,通过将计算过程中的模平方运算转化为模乘运算得到算法最终的计算开销。假定标量的对称三进制长度为n,那么此时改进的标量乘算法对应的计算复杂度为n*T+n/2*A,其中T代表三倍点运算,A代表点加运算,在雅可比坐标下一次三倍点运算的开销为14.6M,一次点加运算的开销为15.2M。虽然本发明所使用的私钥在二进制表示下为160比特,但对于位数高于160比特的标量乘依然具有优化效果,下面本发明将在二进制表示比特长度为160、192、224和256,对应的对称三进制表示长度为101、122、142和162的情况下,对计算复杂度进行对比分析。
表1 S/M=0.8情况下算法复杂度分析
Figure BDA0001421834920000081
表1的计算复杂度分析可以看出,本发明中的标量乘方法能够提高标量乘的计算效率,因此本发明是非常有效和实用的。
最后应说明的是,以上实施例仅用以描述本发明的技术方案而不是对本技术方法进行限制,本发明在应用上可以延伸为其他的修改、变化、应用和实施例,并且因此认为所有这样的修改、变化、应用、实施例都在本发明的保护范围之内。

Claims (3)

1.一种提高椭圆曲线密码体制中的标量乘计算效率的方法,其特征是:
(1)随机产生用户私钥K;
(2)将椭圆曲线密码体制中的基点坐标从仿射坐标按坐标转换公式转换为雅可比坐标;
(3)对用户随机产生的用户私钥K使用对称三进制方法进行计算得到标量的对称三进制表示;
(4)对得到的对称三进制数串进行预处理,降低对称三进制表示法的非零元素的权重;具体包括:
在原有的对称三进制数串的基础上,对数串中的相邻位为1-1和-11的情况进行预处理,通过向下借位的方式将高位变为零,低位变成2或-2;
(5)预计算基点的二倍点运算结果并存储;
(6)将预处理后得到的改进的对称三进制数串用于计算标量乘,具体采用从高位到低位的计算方式,根据相应位的数值判断是否调用点加运算,直到数串的最低位为止。
2.根据权利要求1所述的提高椭圆曲线密码体制中的标量乘计算效率的方法,其特征是步骤(2)具体包括:对于椭圆曲线密码体制中的基点坐标进行处理,增加一个Z坐标,并对原始的X坐标的值乘Z坐标值的平方得到新的X坐标,对原始Y坐标的值乘Z坐标值的立方得到新的Y坐标。
3.根据权利要求1所述的提高椭圆曲线密码体制中的标量乘计算效率的方法,其特征是步骤(6)具体包括:根据改进的对称三进制数串,从高位到低位计算标量乘运算,每递减一位进行一次三倍点运算,根据所在位数的元素的值看是否进行点加运算,直到到达数串的最低位为止。
CN201710894283.2A 2017-09-28 2017-09-28 一种提高椭圆曲线密码体制中的标量乘计算效率的方法 Active CN107547201B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710894283.2A CN107547201B (zh) 2017-09-28 2017-09-28 一种提高椭圆曲线密码体制中的标量乘计算效率的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710894283.2A CN107547201B (zh) 2017-09-28 2017-09-28 一种提高椭圆曲线密码体制中的标量乘计算效率的方法

Publications (2)

Publication Number Publication Date
CN107547201A CN107547201A (zh) 2018-01-05
CN107547201B true CN107547201B (zh) 2020-06-16

Family

ID=60963617

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710894283.2A Active CN107547201B (zh) 2017-09-28 2017-09-28 一种提高椭圆曲线密码体制中的标量乘计算效率的方法

Country Status (1)

Country Link
CN (1) CN107547201B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109117677A (zh) * 2018-09-21 2019-01-01 阿里巴巴集团控股有限公司 一种用于椭圆曲线多倍点运算的电路
CN112134704B (zh) * 2020-09-21 2022-04-01 中国电子科技网络信息安全有限公司 一种sm2性能优化实现方法
CN113010142B (zh) * 2021-03-23 2023-07-28 广州万协通信息技术有限公司 一种新型脉动结点式标量点乘的双域实现系统及方法
CN116527274B (zh) * 2023-05-10 2024-02-06 山东省计算中心(国家超级计算济南中心) 基于多标量乘快速计算的椭圆曲线验签方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008069387A1 (en) * 2006-12-06 2008-06-12 Electronics And Telecommunications Research Institute Spa-resistant left-to-right recoding and unified scalar multiplication methods
CN101330385A (zh) * 2007-06-19 2008-12-24 航天信息股份有限公司 一种提高椭圆曲线密码体制上数字签名验证速度的方法
CN106888088A (zh) * 2017-03-29 2017-06-23 中国人民解放军信息工程大学 椭圆曲线密码快速实现方法及其装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008069387A1 (en) * 2006-12-06 2008-06-12 Electronics And Telecommunications Research Institute Spa-resistant left-to-right recoding and unified scalar multiplication methods
CN101330385A (zh) * 2007-06-19 2008-12-24 航天信息股份有限公司 一种提高椭圆曲线密码体制上数字签名验证速度的方法
CN106888088A (zh) * 2017-03-29 2017-06-23 中国人民解放军信息工程大学 椭圆曲线密码快速实现方法及其装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
《Optimization of Elliptic Curve Cryptography Resisting Power Attack Scalar Multiplication Algorithm in Security System on Chip》;Xiang Wang;《2015 IEEE 12th Intl Conf on Ubiquitous Intelligence and Computing and 2015 IEEE 12th Intl Conf on Autonomic and Trusted Computing and 2015 IEEE 15th Intl Conf on Scalable Computing and Communications and Its Associated Workshops》;20160721;第4节 *
《Symmetric Ternary Functions and their Application in Orthogonal Transforms》;Artem Izmailov;《2017 IEEE First Ukraine Conference on Electriccal and Computer Engineering》;20170602;全文 *
《一种高效安全的椭圆曲线标量乘算法》;陈熹;《计算机工程》;20120920;摘要,第6节 *
《对称三进制在椭圆曲线标量乘法中的应用》;邓维勇;《计算机工程》;20120305;第1、4节 *

Also Published As

Publication number Publication date
CN107547201A (zh) 2018-01-05

Similar Documents

Publication Publication Date Title
CN107547201B (zh) 一种提高椭圆曲线密码体制中的标量乘计算效率的方法
WO2023040365A1 (zh) 基于多尺度压缩感知和马尔科夫模型的图像加密方法
CN103761068B (zh) 优化的蒙哥马利模乘硬件
CN107154851B (zh) 一种数据加密和解密的方法及装置
CN105846814B (zh) 针对加密技术领域乘法运算的量子逻辑电路的构造方法
CN103942031A (zh) 椭圆域曲线运算方法和椭圆域曲线运算器
JPH02202267A (ja) 符号化装置及び符号化方法
CN101938349A (zh) 一种适用于硬件实现的s盒及其电路实现方法
WO2017049790A1 (zh) 一种基于多变量密码技术的在线离线签名系统及方法
CN113010142B (zh) 一种新型脉动结点式标量点乘的双域实现系统及方法
CN109165006B (zh) Softmax函数的设计优化及硬件实现方法及系统
CN110059129A (zh) 数据存储方法、装置及电子设备
CN104917608A (zh) 一种密钥抗功耗攻击的方法
WO2023202149A1 (zh) 有限状态熵编码的状态选择方法、系统、存储介质及设备
CN109933304A (zh) 适用于国密sm2p256v1算法的快速蒙哥马利模乘器运算优化方法
CN106682258A (zh) 一种高层次综合工具中的多操作数加法优化方法及系统
CN113076319B (zh) 基于离群值检测技术和位图索引的动态数据库填充方法
US9613229B2 (en) Method for generating coordinate point in embedded system
CN115526131A (zh) 多级编码近似计算Tanh函数的方法及装置
CN116225369A (zh) Sm2算法标量乘运算优化方法及系统
CN104683806B (zh) 基于深度流水的mq算术编码器高速fpga实现方法
CN114527956A (zh) 抗spa攻击的国密sm2算法中非定点标量乘法的计算方法
CN112631546A (zh) 基于ko-8算法的高性能模乘器
CN102545910B (zh) 一种jpeg霍夫曼解码电路及其解码方法
CN108075889A (zh) 一种降低加解密运算时间复杂度的数据传输方法及系统

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