本发明的任务在于,提供用于在计算机上借助于至少一种椭圆曲线加密处理的一种方法,在此需要较少存储空间。
按独立权利要求的特征解决此任务。
本发明提出用于在计算机上借助于至少一种椭圆曲线加密处理的一种方法,在此方法上规定一种第一形式的椭圆曲线,在此多个第一参数决定第一形式的椭圆曲线。采用决定多个第二参数的办法来转换椭圆曲线成一种第二形式,在此相对于第一参数中的一个在其长度上缩短第二参数中的至少一个参数。将转换之后的,也就是将第二形式的椭圆曲线用于加密处理。
通过有效地缩短第一参数中的一个参数产生应为此参数准备就绪的存储区的节省。由于例如芯片卡上的存储区是紧凑地设计的,人们通过节省每个缩短的参数用的多个100位来实现例如用于存储其它保密密钥的自由存储空间。尽管如此通过有关参数的缩短,加密方法的安全性是保持有保证的。
在加密方法中采用椭圆曲线时,入侵者求出密钥用的工作量随着密钥的长度指数地上升。
本发明的一种进一步发展在于,椭圆曲线的第一形式是通过GF(p)上的
y2=x3+ax+b (1)决定的,式中
GF(p)表示具有p元素(Element)的伽罗瓦域和
x,y,a,b表示域体GF(p)的元素。
下面采用的名称″mod p″表示伽罗瓦域的一种特殊情况,即自然数较小的p.″mod″代表MODULO(模数)和包括带有余数的整数除法。
一种另外的进一步发展在于,椭圆曲线的第二形式是通过GF(p)上的
y2=x3+c4ax+c6b (2)决定的,式中c表示常数。
为了节省存储空间将方程(1)转换为方程(2),并且缩短表征按方程(2)的椭圆曲线的一个量。
一种进一步发展在于,采用如此选择常数c的办法来缩短参数a,以至于
c4a mod p (3)比描述按方程(2)的椭圆曲线的其它参数明显地变得更短。通过这种缩短该参数相应地需要较少存储空间。
在以下用途之一中采用本方法也是一种进一步发展:
-编码或译码:
由发送器(借助于对称或非对称方法)对数据编码,而在对方在接收者处对数据译码。
-通过认证主管部门的密钥发放:
值得信赖的机构(认证主管部门)发放密钥,在此必须保证,密钥源自此认证主管部门。
-数字签字或数字签字的验证:
签字电子文件,并且给此文件附上签字。在接收者处可以借助于签字确定,所希望的发送者是否也曾真正签过字。
-非对称鉴别:
使用者可以借助于非对称方法证实他的身份。尤其通过用相应的保密(专用)密钥的编码来实现这一点。每个人可以用此使用者所属的公开密钥确定,编码真正源自此使用者。
-密钥的缩短:
加密处理的一种方案包括一种密钥的缩短,此密钥优先可以用于加密的其它方法。
此外提出具有处理器单元的一种装置,此处理器单元是如此设置的,以至于规定一种第一形式的椭圆曲线,在此多个第一参数决定椭圆曲线,并且采用决定多个第二参数的办法来转换椭圆曲线为一种第二形式,在此,相对于第一参数,在其长度上缩短第二参数中的至少一个参数。最后决定第二形式的椭圆曲线用于加密处理。
这种装置可以是具有受保护和未受保护存储区的芯片卡,在此既在受保护的也在未受保护的存储区中可以存储密钥,也就是存储表征椭圆曲线的参数。
这种装置是尤其适用于按本发明方法的或它的上述进一步发展的实施。
从从属权利要求中也得出本发明的进一步发展。
借助于下列附图详述本发明的实施例。
图1展示用于借助椭圆曲线实施处理的一种方法。为此将椭圆曲线(请参阅方框101)从一种第一形式转换为(请参阅方框102)一种第二形式,缩短第二形式的一个参数(请参阅方框103),和存储第二形式用于加密处理(请参阅方框104)。以下讨论所述的步骤,在此示范性地摘出缩短用的几种可能性。
此处说明如何在GF(p)上的椭圆曲线方程(第一形式的椭圆曲线,请参阅方框101)
y2=x3+ax+b (3)中实现参数a长度的减少,在此p尤其是大于3的素数,并且GF(p)是具有p元素的伽罗瓦域。
GF(p)上的椭圆曲线
y2=x3+ax+b (4)通过转换可以转化为GF(p)上的双理同构的椭圆曲线(第二形式的椭圆曲线,请参阅方框102)
y2=x3+c4ax+c6b (5)。
通过常数c的合适选择可以缩短(请参阅方框103)系数
c4a 或 (6)
-c4a, (7)所具有的优点在于,与参数a用的存储空间相比较,用于存储此系数所需要的存储空间可以是微小的。
以下按方程(5)决定数
c4a(或-c4a)和c2。
1数“c4a”的决定
为了决定数c4a(或-c4a)人们优先区别以下情况:
1.1 p≡3 mod 4
在这些域体中适用:
-所有的平方也是四次方,
-’-1’不是平方。
现在设p=4k+3,和s是生成GF(p)中四次方(或平方)的乘法子群的一个四次方。
V={1,s,s2,s3,…,s2k}为GF(p)中四次方的群量(Menge),
和
NQ={-1,-s,-s2,-s3,…,-s2k}为GF(p)中非平方的群量。
1.对于来自V中的每个元素 a=st
存在着具有GF(p)中 c4a=s2k+1=1
的来自V中的元素 c4=s2k+1-t。
2.对于来自V中的每个元素 a=-st
存在着具有GF(p)中 c4a=-s2k+1=-1
的来自V中的元素 c4=s2k+1-t。
式中s,t,和k表示来自GF(p)中的域体元素。
对于p=3 mod 4可以通过系数c的合适选择将参数a转化为GF(p)中的数c4a=1或GF(p)中的数c4a=-1。1.2 p≡5 mod 4
在这样的域体中适用:
-域体乘法组的(p-1)/4元素是四次方;
-域体乘法组的(p-1)/4元素是平方,但不是四次方;
-域体乘法组的(p-1)/2元素是非平方;
-’-1’不是非平方。
A)p≡5 mod 8
在这样的域体中附加地适用:
-’-1’是平方,但不是四次方,
-’+2’,’-2’是非平方。
现在设p=8k+5,和s是生成GF(p)中四次方的乘法子群的一个四次方。
V={1,s,s2,s3,…,s2k} 为GF(p)中四次方的群量,和
Q={-1,-s,-s2,-s3,…,-s2k}为GF(p)中的不是四次方的平方的群量,和
NQ={2,2s,2s2,2s3,…,2s2k,-2,-2s,-2s2,-2s3,…,-2s2k}为GF(p)中非平方的群量。
1.对于来自V中的每个元素 a=st
存在着来自具有GF(p)中 c4a=s2k+1=1
的V中的元素 c4=s2k+1-t。
2.对于来自Q中的每个元素 a=-st
存在着来自具有GF(p)中 c4a=-s2k+1=-1
的V中的元素 c4=s2k+1-t。
3.对于来自NQ中的每个元素 a=2st
存在着来自具有GF(p)中 c4a=2s2k+1=2
的V中的元素 c4=s2k+1-t。
4.对于来自NQ中的每个元素 a=-2st
存在着来自具有GF(p)中 c4a=-2s2k+1=-2
的V中的元素 c4=s2k+1-t。
对于p≡5 mod 8可以通过常数c的合适选择将参数
a转化为GF(p)中的数
c4a=1,或-1,或2,或-2。
B)p≡1 mod 8
按下表可以求出数c4a:
对于r=1,-1,2,-2,3,-3,4,-4,…
-形成z≡ra-1 mod p;
-计算u≡z(p-1)/4 mod p;
-如果u=1,则中断;
-存储z=c4和r=c4a。
2数″GF(p)中的c2″的决定
为了决定数c2 mod p,首先在相应域体GF(p)中确定,a是否是四次方,是否是平方但不是四次方,或非平方。
2.1 p=4k+3
在这些域体中计算GF(p)中的u=a(p-1)/2。
-如果在GF(p)中u=1,a则是四次方(或平方)。在此情况下在GF(p)中c4=a-1。
-如果在GF(p)中u=-1,a则是非平方。在此情况下在GF(p)中c4=-a-1。
2.2 p=8k+5
在这些域体中计算GF(p)中的u=a(p-1)/4。
-如果在GF(p)中u=1,a则是四次方。在此情况下在GF(p)中c4=a-1。
-如果u=-1,a则是平方但不是四次方。在此情况下在GF(p)中c4=-a-1。
-如果在GF(p)中u既不是1,也不是-1,a则在GF(p)中是非平方。在此情况下计算GF(p)中的v=(2a)(p-1)/4。如果在GF(p)中v=1,则在GF(p)中c4=2a-1,否则在GF(p)中c4=-2a-1。
2.2 p=8k+1
在这些域体中按在1.2,情况B中说明的表z=c4。
在所有三种情况下可以用0(log p)的工作量从c4中计算两个根(c2和-c2)。对于情况p=4k+3只有两个所指出的解中的一个是允许的,即是GF(p)中平方的那个解。在另外的情况下两个根是允许的。因此可以计算椭圆曲线的系数c6b。
基于情况p=4k+3和p=8k+5用的完整(geschlossen)公式,在实际中这样的素数应优先。
实例1:设素数p=11_情况1.1:p≡3 mod 4
|
数
|
平方Q
|
四次方V
|
|
12345678910 |
1495335941 |
1543993451
|
表1:平方和四次方mod 11因此得出平方Q的群量,四次方V的群量和非平方NQ的群量为:Q=V={1,3,4,5,9};NQ={2,6,7,8,10}。a∈V=Q_ac4=1
表2:在给定参数a时c
4的决定a∈NQ_ac
4=-1
表3:在给定参数a时c
4的决定
表2指明a和c4的值分配的不同可能性,a和c4在ac4的结合中始终产生1,并且表3指明a和c4的值分配的不同可能性,a和c4在ac4的结合中始终产生-1。在GF(11)中适用这一点。
实例2:
设素数p=13_情况1.2A):p≡1 mod 4和
同时p≡5 mod 8。
|
数
|
平方Q
|
四次方V
|
|
123456789101112
|
1493121010123941 |
133919919331
|
表4:平方和四次方mod 13
因此得出(不是四次方的)平方Q的群量,四次方V的群量和非平方NQ的群量为:
Q={4,10,12};V={1,3,9};NQ={2,5,6,7,8,11}。a∈V_c
4∈V
表5:在给定参数a时c
4的决定
_ac
4≡1 mod 13a∈Q
|
a=
|
c4=
|
ac4=
|
|
41012
|
391 |
12=-1 mod 1390=-1 mod 1312=-1 mod 13
|
表6:在给定参数a时c
4的决定
_ac
4≡-1 mod 13a∈NQNQ={2,5,6,7,8,11},与2*V={1,5,6}和2*Q={7,8,11}一起情况a:a∈NQ和a∈(2*V)
|
a=
|
c4=
|
ac4=
|
|
256
|
139 |
2=2 mod 1315=2 mod 1354=2 mod 13
|
表7:在给定参数a时c
4的决定_ac
4≡2 mod 13情况b:a∈NQ和a∈(2*Q)
|
a=
|
c4=
|
ac4=
|
|
7811
|
931
|
63=-2 mod 1324=-2 mod 1311=-2 mod 13
|
表8:在给定参数a时c
4的决定_ac
4≡-2 mod 13
将以所述方式获得的第二形式椭圆曲线(请参阅方框103)用于加密处理。
图2展示,如上所述为了缩短参数a(请参阅方框201),用于选择素数p选择的可能性。可能性202如此决定p,使得p=3 mod 4有效。在此情况下借助于上述进行方式缩短参数a。同样的适用于p=1mod 4(情况203),在此分为两种情况p=5 mod 8(情况204)和p=1 mod 8(情况205)来列举情况区分。上面分别阐述了用于决定缩短的参数a的完整表达式。图2着重指明不谋求对全面选择提出要求的可能性选择。
图3中在第一步骤301中,决定按方程(1)的具有参数a,b,p的和点数ZP的椭圆曲线。在步骤302中转换椭圆曲线(请参阅方程(2))。在转换之后椭圆曲线包括参数a’,b’,p和ZP。a’和b’表明,已经改变参数a和b,在此,一个参数,尤其是参数a’,在与参数a比较中是短的,以至于通过存储参数a’代替作为椭圆曲线标志的参数a来节省存储空间。
图4中表示了用于加密处理的一种装置。
移动媒体401,尤其是芯片卡包括(不安全的)存储区MEM403和受保护的(安全的)存储区SEC402。借助于接口IFC404经信道405在媒体401和计算机网络406之间交换数据。计算机网络406包括互相连接的和互相通信的多个计算机。移动媒体401运行用的数据是优先分布在计算机网络RN406中地可供支配的。
受保护的存储区402是实施为不可读取的。借助于安置在移动媒体401上的或在计算机网络406中的计算单元,利用受保护存储区402的数据。因此,比较操作可以作为结果给出,在受保护存储区402中输入与密钥的比较是否曾是成功的。
椭圆曲线参数是存储在受保护的存储区402中的,或在未受保护的存储区403中的。尤其在受保护的存储区中存储保密的或专用的密钥,而在未受保护的存储区中存储公开的密钥。
图5中表示了计算单元501。计算单元501包括处理器CPU502,存储器503和输入/输出接口504,此接口经从计算单元501引出的接口505以不同方式和方法予以利用。经图形接口,将输出在监视器507上变成可见的,和/或在打印机508上输出。经鼠标509或键盘510进行输入。计算单元501也拥有保证存储器503,处理器502和输入/输出接口504的连接的总线506。此外也可能的是,将附加的部件连接到总线506上:附加的存储器,硬盘,等等。
[1] Neal Koblitz: A Course in Number Theory andCryptography,Springer Verlag New YORK,1987,ISBN 0-387-96576-9,Seiten 150-179。
[2] [2]Alfred J.Menezes: Elliptic Curve Public KeyCryptosystems,Kluwer Academic Publishers,Massachusetts1993,ISBN 0-7923-9368-6,Seiten 83-116。
[3] Rudolf Lidl,Harald Niederreiter: Introduction to finitefield and their applications,Cambridge University Press,Cambridge1986,ISBN 0-521-30706-6,Seiten 15,45。
[4] Christoph Ruland: Informationssicherheit in Datennetzen,DATACOM-Verlag,Bergheim 1993,ISBN 3-89238-081-3,Seiten 73-85。