[发明专利]椭圆曲线密码快速实现方法及其装置有效
申请号: | 201710197758.2 | 申请日: | 2017-03-29 |
公开(公告)号: | CN106888088B | 公开(公告)日: | 2019-08-13 |
发明(设计)人: | 马传贵;豆允旗;魏福山;李延彬;葛爱军;张洁;徐艳艳;肖思煜;宋健;尹军 | 申请(专利权)人: | 中国人民解放军信息工程大学 |
主分类号: | H04L9/30 | 分类号: | H04L9/30 |
代理公司: | 郑州大通专利商标代理有限公司 41111 | 代理人: | 周艳巧 |
地址: | 450000 河*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 椭圆 曲线 密码 快速 实现 方法 及其 装置 | ||
1.一种椭圆曲线密码快速实现方法,其特征在于,包含如下内容:
步骤1、选取Koblitz曲线及其对应的有限域,确定椭圆曲线密码标量k、基点P及设备处理单元个数r;
步骤2、利用Frobenius自同态τ计算标量k的τ-adic NAF表示,并利用τs将标量k的τ-adic NAF表示划分为等长r段;
步骤3、通过多项式基表示有限域中的元素及López-Dahab坐标表示椭圆曲线上的点,对划分后的标量k进行多标量乘kP计算;
步骤4、对多标量乘kP的计算结果进行输出。
2.根据权利要求1所述的椭圆曲线密码快速实现方法,其特征在于,步骤1包含内容如下:选取Koblitz曲线Ea:y2+xy=x3+ax2+1,a∈{0,1}及其对应的有限域其中,m为素数;在区间[0,n]随机选取整数k作为标量,其中,为椭圆曲线Ea的阶,n为大素数且h为辅因子;选择点作为基点,其中,点P的阶为大素数。
3.根据权利要求2所述的椭圆曲线密码快速实现方法,其特征在于,步骤2包含内容如下:根据Euclid整环Z[τ]={a+bτ|a,b∈Z},及范数N(k)=k2,N(τ)=2,标量k的τ-adic NAF表示长度平均为2log2k;设δ=(τm-1)/(τ-1),令ρ≡kmodδ,对任意点有kP=ρP,其中,ρ的约减τ-adic NAF表示长度至多为m+a+3;根据关系式τ2-μτ+2=0,计算δ=(τm-1)/(τ-1);利用环Z[τ]中取整算法Round、环Z[τ]中的除法Division,计算标量k的τ-adic NAF表示;令利用τs将τ-adic NAF表示划分为等长r段,即:其中,若l/r不是整数,需在最高位补充若干个0。
4.根据权利要求3所述的椭圆曲线密码快速实现方法,其特征在于,步骤3包含内容如下:选择使用多项式基表示有限域中的元素,使用López-Dahab坐标来表示椭圆曲线上的点,标量乘kP表示为:
令
φ=τs,
则kP=k1P+k2φ(P)+…+krφ(r-1)(P);预计算i1P+i2φ(P)+…+irφr-1(P),其中i1,…,in∈{0,±1},将k写作k1||k2||…||kr,其中每个ki的比特长度为s,ki,j表示ki的第j比特;赋值i=s-1,通过迭代循环判断i是否大于等于零,如果是,则计算R←τR,R←R+(k1,iP+…+kr,iφr(P)),i←i-1,返回迭代循环,直至i小于零,执行步骤4。
5.根据权利要求3所述的椭圆曲线密码快速实现方法,其特征在于,步骤3中计算标量k的多标量乘kP,还包含内容如下:根据设备处理单元个数r,确定标量乘并行算法的维数,将多标量乘kP计算分为互不相关的r部分,每个设备处理单元并行执行相同标量乘计算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军信息工程大学,未经中国人民解放军信息工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710197758.2/1.html,转载请声明来源钻瓜专利网。