【技术实现步骤摘要】
基于多标量乘快速计算的椭圆曲线验签方法及系统
[0001]本专利技术涉及数字签名
,特别是涉及基于多标量乘快速计算的椭圆曲线验签方法及系统。
技术介绍
[0002]本部分的陈述仅仅是提到了与本专利技术相关的
技术介绍
,并不必然构成现有技术。
[0003]椭圆曲线密码(ECC)是一种公钥密码学算法,是近年来发展迅速的密码学分支,它基于数论中的椭圆曲线理论,能够在比基于离散对数问题的密码系统(如ElGamal密码系统或DSA、RSA密码系统)的更小的有限域上构建椭圆曲线密码系统。在保持相同安全强度的情况下,ECC所需的密钥长度远小于基于离散对数问题的密码系统。因此,ECC相比于其他密码系统可以大大减少所需计算量、储存空间和数据流量等方面的开销。椭圆曲线算法是身份认证、密钥协商、区块链等应用的核心基础算法。
[0004]近年来,优化ECC中的标量乘法运算是许多学者研究的重要方向之一。目前有许多主流算法,例如倍点
‑
点加二进制方法、非邻接表示形、带窗口的非邻接表示形等。这些算法的核心思想都是通过 ...
【技术保护点】
【技术特征摘要】
1.基于多标量乘快速计算的椭圆曲线验签方法,其特征是,包括:椭圆曲线数字签名步骤和椭圆曲线签名验签步骤;所述椭圆曲线数字签名步骤和椭圆曲线签名验签步骤中的多标量乘计算过程包括:获取椭圆曲线上基点P、点Q以及基点P的三倍点仿射坐标3P,对获取的数据进行预计算处理,得到参数表;获取标量系数K和标量系数L;对标量系数K和标量系数L进行处理得到系数表;对参数表和系数表进行逐位计算,对逐位计算结果进行坐标还原处理得到多标量乘结果。2.如权利要求1所述的基于多标量乘快速计算的椭圆曲线验签方法,其特征是,获取椭圆曲线上基点P、点Q以及基点P的三倍点仿射坐标3P,对获取的数据进行预计算处理,得到参数表,具体包括:设定坐标索引;基于坐标索引,计算基点P和点Q的倍点和点加坐标;基于基点P和点Q的倍点和点加坐标,进行模逆运算;基于模逆运算结果,将各点坐标恢复到仿射坐标系。3.如权利要求2所述的基于多标量乘快速计算的椭圆曲线验签方法,其特征是,所述设定坐标索引,是根据五元联合稀疏表示算法JSF
‑
5,设定若干个不重复的常数,用于定位和辅助运算;若干个不重复的常数,包括:P坐标索引_p_P、Q坐标索引_p_Q、3P坐标索引_p_3P、3Q坐标索引_p_3Q、Q+P坐标索引_p_QaP、Q
‑
P坐标索引_p_QmP、Q+3P坐标索引_p_Qa3P、Q
‑
3P坐标索引_p_Qm3P、3Q+P坐标索引_p_3QaP、3Q
‑
P坐标索引_p_3QmP、3Q+3P坐标索引_p_3Qa3P和3Q
‑
3P坐标索引_p_3Qm3P。4.如权利要求2所述的基于多标量乘快速计算的椭圆曲线验签方法,其特征是,所述基于坐标索引,计算基点P和点Q的倍点和点加坐标,包括:将P坐标中的512比特复制到Pix数组中_p_P所在的位置Pix[_p_P];将Q坐标保存到Pix[_p_Q]开始的8个64比特无符号整形数,Pix[_p_Q]表示Pix数组中_p_Q对应的位置;将3P坐标保存到Pix[_p_3P]开始的8个64比特无符号整形数,Pix[_p_3P]表示Pix数组中_p_3P对应的位置;通过共Z坐标Co
‑
Z算法,计算3Q得到一个雅可比Jacobian加重射影坐标系坐标((3Q)x,(3Q)y,(3Q)z);利用共Z坐标Co
‑
Z算法,同步计算Q+P和Q
‑
P得到2个雅可比Jacobian加重射影坐标系坐标((Q+P)x,(Q+P)y,(Q+P)z)和((Q
‑
P)x,(Q
‑
P)y,(Q+P)z);利用共Z坐标Co
‑
Z算法,同步计算Q+3P和Q
‑
3P得到2个雅可比Jacobian加重射影坐标系坐标((Q+3P)x,(Q+3P)y,(Q+3P)z)和((Q
‑
3P)x,(Q
‑
3P)y,(Q+3P)z);利用共Z坐标Co
‑
Z算法,,同步计算3Q+P和3Q
‑
P得到2个Jacobian加重射影坐标系坐标((3Q+P)x,(3Q+P)y,(3Q+P)z)和((3Q
‑
P)x,(3Q
‑
P)y,(3Q+P)z);利用共Z坐标Co
‑
Z算法,同步计算3Q+3P和3Q+3P得到2个Jacobian加重射影坐标系坐标((3Q+3P)x,(3Q+3P)y,3Q+3P)z)和((3Q
‑
3P)x,(3Q
‑
3P)y,(3Q+3P)z)。
5.如权利要求2所述的基于多标量乘快速计算的椭圆曲线验签方法,其特征是,所述基于基点P和点Q的倍点和点加坐标,进行模逆运算,具体包括:设定6个256比特数T、T0、T1、T2、T3和T4用于存储中间变量;T0=Z2.Z1;T1=Z3.Z4;T2=T0.T1;其中,“.”表示2个256比特数在椭圆曲线域上的模乘运算,结果为256比特数;使用快速模逆算法safegcd,计算T2模逆:InvZ=ModInv(T2);其中,InvZ表示T2的模逆,ModInv表示模逆运算。6.如权利要求2所述的基于多标量乘快速计算的椭圆曲线验签方法,其特征是,所述基于模逆运算结果,将各点坐标恢复到仿射坐标系,包括:T1=T2.T1;T4=T1.Z2;T3=T1.Z1;T0=T2.T0;T1=Z4.T0;T2=Z3.T0;Z1=T4.T4;Z2=Z1.T4;其中,“.”表示2个256比特数在椭圆曲线域上的模乘运算,结果为256比特数;将Pix数组中_p_QaP对应的位置Pix[_p_QaP]开始的4个64比特无符号整形数复制到T,T=T.Z1,将T保存到Pix[_p_QaP]开始的4个64比特无符号整形数;将Pix数组中_p_QaP+4对应的位置Pix[_p_Qa...
【专利技术属性】
技术研发人员:付勇,陈鑫泽,王坤,高绍锋,陈丽娟,杨光,王继志,赵大伟,吴晓明,杨美红,王英龙,
申请(专利权)人:齐鲁工业大学山东省科学院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。