加密计算方法、加密系统和计算机程序技术方案

技术编号:2999944 阅读:174 留言:0更新日期:2012-04-11 18:40
实现超椭圆加密的安全、高速计算的装置和方法。通过执行包括1/2乘法的计算来增加超椭圆曲线加密的因数D的标量乘法的速度。例如,执行具有带有亏格为2和特征为2的参数h(x)=x↑[2]+x+h↓[0]和f↓[4]=0、或者参数h(x)=x↑[2]+h↓[1]x+h↓[0]和f↓[4]=0、或者参数h(x)=x的超椭圆加密曲线的因数D的1/2乘法的标量计算。根据固定因数D的[1/2↑[i]D]计算值,应用记录有k↓[1]、k↓[1]′、(k↓[0],k↓[0]′)中的哪个是正确的表并且减少倒数运算,从而减小计算量并且增加计算速度。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及加密计算方法、加密系统和计算机程序。更具体地说,本专利技术涉及在超椭圆曲线加密术(hyperelliptic curve cryptography)中实现较快的标量乘法的加密计算方法、加密系统和计算机程序。
技术介绍
随着在网络通信和电子商务交易方面的最新进步,确保通信的安全变得越来越重要。用于确保安全的一种方法是加密术。现在,通过使用各种加密技术来进行通信。例如,已经将这样的系统投入到实际使用中将加密模块嵌入在诸如IC卡之类的小型装置中,并且在IC卡和作为数据读/写装置的读/写器之间执行数据传送/接收,从而执行验证处理、或者对所传送/接收的数据进行加密/解密。例如,在诸如火车站或购物中心的入口门之类的各种门口广泛使用执行加密处理的IC,而且,对于更小尺寸和更快处理速度的需求正在变得越来越迫切。将加密方案大致分为公用密钥方案(common key scheme)和公开密钥方案(public key scheme)。也将公用密钥方案称为对称加密术。在公用密钥方案中,发送者和接收者都拥有共同密钥。公用密钥方案的典型应用是DES(数据加密标准)。DES算法的特征特点是可以使用基本上相同的算法来执行加密和解密。采用与上述公用密钥方案不同的、由发送者拥有的密钥与由接收者拥有的密钥不相同的配置的方案是公开密钥方案、或者非对称加密术。与将共同密钥用于加密和解密的共同密钥加密术不同,公共密钥加密术在密钥管理方面更加优越,这是因为只有一个特定的人需要拥有必须被秘密保存的秘密秘钥。然而,与共同密钥加密术相比较,公共密钥加密术具有较低的数据处理速度。因此,总体来说,经常将公共密钥加密术用于秘密密钥、数字签名等的分发,因为这样的应用具有较小的数据量。公共密钥加密术的公知例子包括RSA(Rivest-Shamir-Adleman)加密术和ECC(Elliptic Curve Cryptograph,椭圆曲线加密术)。椭圆曲线加密术使用素域上的椭圆曲线y2=x3+ax+b(其中4a3+27b2≠0)、两个扩展域上的椭圆曲线y2+xy=x3+ax2+b(其中b≠0)等。包括被加到这些曲线的每一个上的点上的无限点(O)的集合形成针对加法的有限群,而无限点O变为其单位元。在下面的描述中,由运算符+来表示在该有限群中的点的加法。将在有限群中的两个不同点P、Q的加法P+Q称为“点加法”,而将有限群中的两个点P的加法P+P=2P称为“点加倍(point doubling)”。将点P与其自己加法k次的运算,也就是,寻找点P+P+ +P=kP的运算,称为“点的标量乘法”。众所周知,可以用点加法和点加倍来计算点的标量乘法。在针对公共密钥加密术的IEEE p1363/D13标准规范中描述了在素域上在椭圆曲线上以及在两个扩展域上的椭圆曲线上、在仿射坐标(x,y)或者射影坐标(X,Y,Z)中的点的标量乘法。将椭圆曲线加密术进行推广的方案例子是Koblitz和Cantor所提议的HECC(超椭圆曲线加密术)系统。在非专利文献1和2中描述了超椭圆曲线加密术。在椭圆曲线加密术中,如果P代表在有限域Fq上所定义的椭圆曲线上的点,而Q代表点kP(k∈Z),也就是,作为点P的标量乘法的结果而获得的点,则可以作为离散对数问题来解从Q中求解k的问题。在另一方面,在超椭圆曲线加密术中,如果D1代表与点的形式和(formal sum)相等的除数而D2代表被定义为标量乘法kD1的除数,则作为公共密钥加密术问题,从D2中求解k的问题可以被当作在超椭圆曲线上在雅可比簇中的离散对数问题来处理。在超椭圆曲线的情况中,对该曲线定性的值是亏格(genus)g。让q等于pn(q=pn),其中p代表素数而n代表正整数。在这种情况下,由下面等式来定义作为亏格g的曲线在有限域Fq上定义的超椭圆曲线Cy2+h(x)y=f(x)其中h(x),f(x)∈Fq,f(x)是2g+1次的首一多项式。将超椭圆曲线C上与点P=(x,y)相对的点-P定义为-P=(x,y+h(x))。将P=-P的点称为分歧点(ramification point)。众所周知,假设与椭圆曲线加密术的安全性的等级相同,则可以将超椭圆加密术的定义域的处理规模(位数量)减少到椭圆曲线加密术的定义域的处理规模的1/g。从实施的角度来说,小处理规模是有利的,所以将此作为超椭圆加密术的一个优点。下面,将描述超椭圆加密术的基本原理。如上所述,在超椭圆加密术中,可以将从D2中求解k的问题作为超椭圆曲线上的雅可比簇中的离散对数问题处理,因此可以作为公共密钥加密术中的问题处理,其中D1是与点的形式和相等的除数,而D2是被定义为标量乘积kD1的除数。在这种情况下,除数等于点的形式和并且可以以下面形式表示D=ΣimiPi]]>进一步,可以以下面形式表示减半的除数D=ΣimiPi-(Σimi)P∞,mi≥0]]>然而,对于Pi=(xi,yi)和i≠j,关系Pi≠Pj为真。将上述等式中的∑mi称为除数D的权重。进一步,将具有不超过亏格g的权重的减半的除数称为减小的除数。使用多项式U和V∈Fq,可以将超椭圆曲线上在雅可比簇中的任何减半除数D表示为D=(U,V)。将该表达式称为Mumford表达式。在例如非专利文献3中描述了Mumford表达式。U=Π(x-xi)mi]]>V(xi)=yiV(x)2+V(x)h(x)-f(x)≡0 mod U(x),degV<degU通过使用Mumford表达式,可以有多项式集合来表示针对亏格为2的任何减小的除数D,所述每一个多项式具有在多项式系数中所设定的有限域上的元素并且具有不超过2的阶数。也就是,可以将减小的除数表示为(U,V)=(x2+u1x+u0,v1x+v0),或者(U,V)=(x+x0,y0)。进一步,将零元素表示为(U,V)=(1,0)=O下面,将描述在超椭圆曲线加密术中使用的除数的标量乘法。可以将除数的标量乘法执行为除数的加法的组合,将其称为加法算法,以及除数的加倍。将在下面描述主要的加法算法。第一个所提出的实际算法是Cantor算法。在例如非专利文献1和2中描述了Cantor算法。可以将该Cantor算法应用于在任何亏格的超椭圆曲线上的除数。然而,与椭圆曲线算法相比较,这种Cantor算法的缺点是该算法较复杂并且具有较高的复杂度。哈利(Harley)提出了一种算法,在其中通过将算法限制到亏格为2的超椭圆曲线,根据除数的权重来进行逐个情况的分化(differentiation),并且针对每个独立情况执行优化以实现复杂度的降低。从那时起,哈利算法已经成为关于HECC(超椭圆曲线加密术)中的计算算法的改进和扩展所进行的最近的广泛研究的主题。(a)根据哈利算法,将定义域用于素域,并且采用Mumford表达式作为在带有亏格为2的曲线上的除数的表达式。目标是减小这种算法的复杂度的研究的例子包括在非专利文献4、非专利文献5、非专利文献6等中所公开的那些。(b)此外,在非专利文献7和非专利文献8的每一个中都报导了关于两个扩展域来扩展定义域的处理的例子。本文档来自技高网...

【技术保护点】
一种用于基于超椭圆曲线加密术执行加密计算的加密计算方法,该方法包括:    关于在超椭圆曲线上除数D的标量乘法的计算中,执行包括二等分作为计算处理的计算运算的计算步骤。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:北村出坚木雅宣高木刚
申请(专利权)人:索尼株式会社
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1