用于求解有限域上方程系统的设备和用于逆运算外延域元素的设备技术方案

技术编号:3000249 阅读:212 留言:0更新日期:2012-04-11 18:40
一个方程转变单元三角变换矩阵M和向量v以产生用于有n个未知数的线性方程系统M′x=v′的矩阵M′和向量v′,该线性方程系统等价于有n个未知数的线性方程系统Mx=v,三角变换在转变矩阵M为上三角矩阵的同时不改变矩阵M的对角线元素为1。逆运算单元计算矩阵M′的对角线元素的逆运算。方程计算单元发现使用矩阵M′、向量v′的线性方程系统M′x=v′的解,并算出对角线元素的逆。逆计算单元计算在有限域GF(p)的外延域GF(q)中元素的逆I。(*该技术在2020年保护过期,可自由使用*)

【技术实现步骤摘要】
本申请基于在日本提出的11-203055和2000-140886号申请,在这里一并参考了其内容。本专利技术涉及用于信息安全的加密和纠错技术,特别涉及用于外延域和方程系统的计算技术。最近几年在数据通讯中加密通讯或数字签名技术已经越来越多的得到使用。加密通讯技术允许执行通讯并不暴露通讯内容给第三方。其间,数字签名技术能让接受者鉴别通信内容是否有效或信息是否来自一定的发送者。这样的加密通讯或数字签名技术使用一种称做公共钥匙加密的加密系统。公共钥匙密码法提供了一个方便的方法来管理多个用户各自的密匙,这因而成为执行大量用户通讯的基本技术。在公共钥匙加密法中,使用不同的钥匙来加密和解密,其中解密钥匙是秘密的,加密钥匙是公开的。这里,对于公共钥匙加密法的基本原理之一是所谓的离散对数问题。离散对数问题的代表性例子是基于有限域的问题和基于椭圆曲线的问题。这样的问题在Neal Koblitz(1987)“数论和密码学课程(A Course in Numberr Theory andCryptography),Springer-Verlag”中进行了详细的描述。(椭圆曲线离散对数问题)椭圆曲线离散对数问题如下。令E是一个在有限域GF(q)(q=pn,p是素数,n是正整数)中定义的椭圆曲线,假定E的阶数能被一个大素数整除时,在椭圆曲线E上的点G被作为基点。这就是说,问题是发现整数x使得Y=x*G其中Y是在E上的给定点,如果这样的整数x存在的话。在这个定义中,操作符*代表对椭圆曲线求幂,使得x*G意思是在E上把G自己加了x倍。GF(q)是一个有限域GF(P)的外延域。对于外延域的细节,看T.Okamoto & H.Yamaoto(1997)所著“现代加密,信息科学系列的数学(Modern Encryption,Mathematics ofInformation Sciences Series),Sangyo,Tosho”26~28页。(先前技术1使用椭圆曲线离散对数问题的ElGamal签名方案)使用椭圆曲线离散对数问题的ElGamal签名方案在下面参考图9描述。在图中,一个由用户A使用的器件310(后面称为“用户A310”),一个管理中心320,和一个由用户B使用的器件330(后面称为“用户B330”)通过网络进行连接。令p是一个素数,q=pn,n是一个正整数,E是一个在有限域GF(q)上的椭圆曲线,其中G是E的一个基点,r是G的阶数。象上面说的,r是最小正整数并满足r*G=0其中0是在椭圆曲线E上在附加组中的零元素。(1)由管理中心320进行的公共钥匙的产生第一,管理中心320产生一个使用了预先知到的密匙XA的用户A310的公共钥匙YA,根据方程YA=xA*G(S1,S2)。管理中心320作为系统参数通知了有限域GF(q)、椭圆曲线E和基点G,并公开用户A310的公共钥匙YA给用户B330(S3,S4)。(2)由用户A310进行的签名发生用户A310产生一个随机数k(S5),计算R1=(rx,ry)=k*G(S6),并发现s满足s×k=m+rx×xAmodr (S7)其中m是从用户A310到用户B330传送的信息。用户A310传送信息m和信号(R1,s)到用户B330(S8)。(3)由用户B330进行的签名校验用户B330校验用户A310的真实性,通过判断是否s*R1=m*G+rx*YA为真(S9)来进行。该方程从下面推出s*R1=*G=(m+rx×xA)*G=m*G+(rx×rA)*G=m*G+rx×YA在这个使用了椭圆曲线离散对数问题的ElGamal数字签名方案中,椭圆曲线的求幂被重复执行以产生公共钥匙和签名并鉴别签名。对于在椭圆曲线求幂上的细节,看在Miyaji,Ono & Cohen(1997),Advances in Cryptology-Proceedings of ICICS’97,LectureNotes in Comptuer Science,Springer-Verlag中82~290页上的文章“Emcient Elliptic Curve Exponentiation”(后面称为“文件1”)。令一个椭圆曲线由方程形式定义y2=x3+a×x+b在椭圆曲线上的某些点P由称做仿射坐标的的2元坐标表示。在2元坐标上的椭圆曲线的求幂已知包括在有限域GF(q)上的逆运算操作。文件1作了所谓投射坐标的3元坐标的简要提示。2元坐标能被转变成对应的3元坐标如下所示(x1,y1)→(x1,y1,1)在3元坐标中的椭圆曲线的求幂包括在有限域GF(q)上的非逆运算操作。因为逆运算有限域元素通常花费大量的计算时间,3元坐标经常用在椭圆曲线求幂中。然而,当转变3-元坐标成相应的2-元坐标时,如下所示(X,Y,Z)→(X/Z,Y/Z)在有限域(q)上逆运算是必要的。例如,在图9中步骤S6中,在2-元坐标被转变成3-元坐标后,椭圆曲线求幂在3-元坐标上执行,结果3-元坐标被转变成2-元坐标。(先前技术2在外延域中的转变)在外延域GF(q)(q=pn,p是素数,n是正整数)上常规的逆运算操作按照下面的方式进行。出于简单的目的,外延域GF(q)的生成程序多项式被设成f(g)=gn-β,它的根是α,在生成程序多项式中输入的GF(q)元素被设成x=x0+x1×α+…+xn+1×αn-1(1) 步骤1基于GF(q)的元素x,一个对于Yi(i=0,1,…,n-1)的方程系统被形成。x0Y0+βxn-1Y1+βxn-2Y2+…+βx1Yn-1=1x1Y0+βx0Y1+βxn-1Y2+…+βx2Yn-1=0x2Y0+βx1Y1+βx0Y2+…+βx3Yn-1=0xn-2Y0+βxn-3Y1+βxn-4Y2+…+βxn-1Yn-1=0xn-1Y0+βxn-2Y1+βxn-3Y2+…+βx0Yn-1=0(2) 步骤2寻找方程系统的解Yk(k=(0,1,…,n-1))。(3) 步骤3从结果Yk(k=(0,1,…,n-1)),逆运算I=Y0+Y1α+…+Yn-1αn-1因而获得在外延域GF(q)中的元素x的逆。逆运算操作的有效性在下面示出。如果逆运算I和元素x满足关系xI=1modf(g)然后xI=x0(y0+y1α+…+yn-1αn-1)+x1α(y0+y1α+…+yn-1αn-1)+x1α2(y0+y1α+…+yn-1αn-1)_+xn-1αn-1(y0+y1α+…+yn-1αn-1)然后αn=βmodf(g)对应地,xI=x0(y0+y1α+…+yn-1αn-1)+x1(y0α+y1α2+…+yn-1β)+x2(y0α2+y1α3+…+yn-1αβ)+xn-1(y0(αn-1+y1β+…+yn-1αn-2β)其也可以α的升幂排列如下从这个方程和关系式xI=1,在步骤1中推出了方程系统。因此,在外延域GF(q)中计算逆运算等价于在基本域GF(p)上求解方程系统。虽然前面的例子出于简化的目的使用形式为gn-β的生成程序多项式,方程系统能由同样的过程形成普通形式的生成程序多项式。(先前技术3在基本域GF(p)上的方程系统的解)用于求解在基本域GF(q)上的方程系统的常规方法在下面描述。这种方法称做高斯消去法。本文档来自技高网...

【技术保护点】
一种用于加密或解密的装置,用于求解在有限域GF(p)上有n个未知数的线性方程系统Ax=b,其中p是素数,n是正整数,A是包括n行和n列的系数矩阵,x是包括n个元素的未知向量,和b是包括n个元素的常向量,该装置包括:用于存储系数矩阵A和常 向量b的参数存储装置;三角变换装置,用于从参数存储装置中读取系数矩阵A和常向量b的,和转变读出的系数矩阵A和常向量b以产生用于有n个未知数的线性方程系统Cx=d的系数矩阵C和常向量d,该方程系统Cx=d等价于线性方程系统Ax=b,系数矩 阵C包括n行和n列,常向量d包括n个元素,其中系数矩阵A在被三角变换成上三角形式的系数矩阵C的同时不需改变系数矩阵A的对角形元素为1;对角线元素逆运算装置,用于计算在有限域GF(p)上产生的系数矩阵C的对角线元素的逆;和方程计算装置 ,用于使用系数矩阵C、常向量d和系数矩阵C的对角线元素的逆求解线性方程系统Cx=d,从而求解线性方程Ax=b。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:布田裕一
申请(专利权)人:松下电器产业株式会社
类型:发明
国别省市:JP[日本]

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

1