由包括在确定间隔内的质数形成电子密钥的方法及采用该方法的装置的制作方法

文档序号:7663230阅读:274来源:国知局
专利名称:由包括在确定间隔内的质数形成电子密钥的方法及采用该方法的装置的制作方法
技术领域
本发明涉及一种由包括在正整数数组确定间隔[Wm,WM]内的质数形成电子密钥的方法。本发明也涉及一种采用该方法的装置。
本发明特别应用到那些带有公用密钥的密码规约可用于信息加密和/或在两个数学实体间的认证和/或电子信息签字。
本发明具体被应用到这样一些带有公用密钥的密码规约如RSA(Rivest Shamir et Adelman)、E1 Gamal、Schnorr、或Fiat Shamir规约。
在这类应用的情况下,都是求助于大质数的生成(例如可大于或等于512比特)以便形成一个或几个规约密钥。
第一种所谓“自然的”质数生成方法主要在于·在奇数中选择一个候选数,·检测其优选性(primalité),·如果优选性被核实了,就把该数存储起来,否则,就按增加2来更新候选数,反复对这种新的候选数进行检测,以此类推直至一个候选数的优选性被核实。
这种方法很慢。另一种方法主要在于,在含有质数∏的质数数组中按照检测优选性来选择候选数。大家可联想到两个数如果而且仅仅如果它们的最大公约数(pgcd)等于1则它们是质数或互为质数。这另一种方法主要在于·考虑数∏=2.3.5.7.…它是最初的k个质数的积(经常k=4)并且选择一个数p比如是利用∏的质数,·检测p的优选性,·如果p的优选性核实了,就把该数存储起来,否则就以增加∏的方式更新数p。该更新的数p也是利用∏的质数;事实上,可联想到pgcd(p+∏,∏)=pgcd(p,∏)=1利用该更新的候选数重复进行检测并以此类推直至找到了一个是质数的候选数。
这种方法是比较有效的。
但是人们通常都希望得出一个在确定间隔内的质数。的确,在例如带有公用密钥的密码规约RSA情况下,人们都考虑两个质数p和q的1024比特的积,也就是2511.√2<p,q<2512。根据另一种基于非连续对数的规约,人们力求直接得到一个1024比特的质数,也就是21023<p<=21024。这些规约的证实是较难在微处理器卡型的及对于常用大号码数,512比特1024比特甚至更大而性能一般的便携装置上进行编程(因为较复杂)。
本发明的目的是,在已指定间隔[Wm,WM]的情况下,一次性地确定∏并且提出一种候选数的更新,它确保了新的候选数将是在最初确定间隔中的利用∏的质数同时还把这些新的待选数的计算时间保持在合理的限制之内,也就是说还同时限定了优选性的检测数。


图1描述了∏的选择,其中表示出了包括在间隔[Wm,WM]中的整数集I,此数集中包含了该带有∏的质数间隔内的整数集I∏,其中又包含了该间隔的质数集IP。目的主要在于确定∏使得具有∏的质数数组的中间集I∏,也就是待选数集尽可能接近间隔质数数组的子集IP。
本发明具体的内容是一种由包括在确定的正整数间隔[Wm,WM]内的质数q形成电子密钥的方法,其主要特征在于质数q是在进行如下运算操作时而得到的a)选择一个正整数η,η是k个初始质数的积,取k最大数以便存在两个正整数εm和εM比如εm是Wm/η的大舍入数,而εM是(WM-Wm)/η的小舍入数,计算∏=εM.η及p=εm.η,得出两个正整数a和c属于∏模整数的乘法群Z∏,取带有∏的质数C计算q=c+pb)检测q的优选性,c)在优选性被核实的情况下,存储q,d)在相反的情况下在计算∏模a.c的同时更新c,利用b)采用新值q=c+p重复进行上述的一些运算操作。
根据本发明的一个特征,a=2以及∏=(εM-1).η。
根据本发明的另一个特征,a=216+1。
本发明可应用到RSA、E1 Gamal、Schnorr,或Fiat Shamir密码密钥的形成方法。
本发明还有一个内容是一种便携式电子装置,它包括一个运算信息处理器以及一个相配合的程序存储器,它能够进行模数计算,其主要特征在于,它包含一个检验程序可检验正整数q的优选性,该正整数包括在正整数数组的确定间隔[Wm,WM]内它可进行如下的运算操作a)选择正整数η,η是最初k个质数的积,取k的最大数以便存在两个正整数εm和εM比如εm是Wm/η的大舍入数,而εM是(WM-Wm)/η的小舍入数,计算∏=εM.η及p=εm.η,得出两个正整数a和c属于∏模数正整数的乘法群Z*∏,取带有∏的质数c。
计算q=c+pb)检测q的优选性,c)在核实了优选性的情况下,运算信息处理器储存q,d)在相反的情况下利用计算∏模a.c更新c,运算信息处理器利用b)取q=c+p重复进行上述运算操作。
有利的是,便携式电子装置是由带微处理器的智能卡构成的。
本发明的其它一些特征和优点在阅读了作为非限定实施的说明时就会清楚地显示出来,解释时还参照了几个附图,其中有图1表示的是包括在间隔[Wm,WM]中的整数集I、其间有该质数间隔的整数集I∏以及最后是该间隔的质数集IP。
图2表示了本发明方法的程序方框图,图3表示的是一种便携电子装置的原理示意图,比如是一种采用本发明方法的智能卡。
本发明的目的因而首先就在于确定∏使得图1所示带有∏的质数集I∏尽可能接近间隔的质数子集IP。
根据本发明,图2所示的方法是以下面的方式预置的(步骤I)为了得出一个质数q比如q∈[Wm,WM],
选择与∏相同形式的数η(η是前k’个质数的积)其中k’是最大数并且比如它存在两个正整数εm和εM比如εm是Wm/η的大舍入数,就标注Wm/η而是(WM-Wm)/η的小舍入数,则标注□(WM-Wm)/η□。
那时是设定∏=εM.η而得到∏的;也可设定P=εM.η。
可注意到∏接近WM-Wm但是较小,而且P接近Wm但是较大。
这时必须确定新候选数使得新的候选数始终属于I∏。
现在我们考虑∏模整数的圆环Z∏及Z∏乘法群Z*∏;可注意到所包括的集(P+Z*∏)几乎与I∏相同,也就是说与候选数集一致。
在那种情况下得出了两个正整数a和c属于该采用带∏质数c的乘法群Z*∏(也就是pgcd(c,∏)=1)并且考虑候选数q=c+p(步骤I)。为了得出c,使用了比如在说明书中所出现的互质数的产生算法。
因为P接近Wm并且c<∏,必然会证明Wm<k<WM。
此外,pgcd(q,∏)=pgcd(c+p,∏)=pgcd(c,∏)=1因此可证实q确实属于I∏。
这个预置阶段一结束,就检测候选数q的优选性(步骤II)。如果优选性被核实,就存储q,否则就在计算∏模数a.c的同时更新c并计算新的候选数k=c+p(步聚III)。
新的候选数属于I∏集事实上,考虑到乘法群的性质,a和c属于Z*∏,积a.c也属于该群组Z*∏以及∏模数a.c。
带有公用密钥的密码规约往往都使用到带微处理器的智能卡上。例如,在规约RSA中,密钥都是利用在执行规约时由微处理器的智能卡随机所选择的数形成的。为此,微处理器智能卡有一个随机数发生器它能够提供所希望大小的整数。
因而在图3上表示出了微处理器智能卡的功能示意图,此微处理器智能卡可采用本发明方法。
卡c带有一个主处理器1、程序存储器3和4以及一个工作寄存器(图中末示出),它们都与主处理器相配合。该卡还带有一个能进行模计算的运算处理器2以及一个安全化存储器6(不能从外边进入)将要核实其优选性的候选数9就储存在其中。该卡也有一个随机整数发生器5。
特别是为了把该方法利用到如上述带微处理器的智能卡上,都希望提高此方法所采用的处理速度(由运算处理器2进行的操作)并且希望可适当的清除工作寄存器中的存储单元。
为此目的,在选择a=2以及排除∏数的2时(∏=3.5.7....),就避免了模数的计算。实际上,c的更新变为了∏模2c。然而,因为c是Z*∏的一个元,则2c mod∏=2c或2c-∏。
但是,一此新的候选数q那时都可以是偶数。如果是这种情况,那么就给新候选数增加一个数,如新候选数变成了奇数,同时要始终属于集I∏。因此可设定∏=(εm-1).ηq=c+p如果q是偶数,那么q应变为q+η。
根据另一种取舍,可以保留∏如同最初所确定的那样并且可以选择一个a的特定值如a是带有∏的质数。例如可选择a=216+1本发明方法已应用到Infineon的SLE66CX1603型智能卡平台上了,该智能卡包括一个8-比特中心处理器和一个1100-比特运算加密处理器。同时要为η、∏及P选择如下的数值=b16bdle084af628fe5089e6dabd16b5b80f60681d6a092fcble86d82876ed71921000bcfdd063fb90f81dfd07a021af23c735d52e63bdlcb59c93cbb398afd16,∏=1729.ηP=4180.η,取a=2可得到在不足4秒钟内的512比特的质数。困此就得到在平均不到8秒钟内的1024比特的质数。
权利要求
1.一种由包括在确定的正整数间隔[Wm,WM]内的质数q形成电子密钥的方法,其特征在于质数q是在进行如下运算操作时而得到的a)选择一个正整数η,η是前K个质数的积,取最大数k以便有两个正整数εm和εM,如εm是Wm/η的大舍入数,而εM是(WM-Wm)/η的小舍入数,计算∏=εM.η及P=εm.η,得出两个正数a和c属于∏模质数的乘法群Z*∏,选取带有∏的质数c,计算q=c+pb)检测q优选性,c)在核实了优选性的情况下,存储q,d)在相反的情况下在计算∏模a.c的同时更新c,在采用新值q=c+p的情况下,利用b)反复进行上述的运算操作。
2.根据上述权利要求所述的方法,其特征在于a=2而∏=(εM-1)。η。
3.根据权利要求1所述的方法,其特征在于a=216+1。
4.一种形成RSA,E1 Gamal,Schnorr或Fiat Shamir密码密钥的方法,其特征在于它采用了根据上述权利要求中任一项所述的方法。
5.一种便携式电子装置,它包括一个运算处理器和一个相配合的程序存储器,它能够进行模数计算,其特征在于该装置包括一个检验程序可检测包括在确定的正整数间隔[Wm,WM]内的正整数q的优选性并且它可进行如下运算操作;a)选择一个正整数η,η是前k个质数的积,选取最大数k以便存在两个正整数εm和εM,如εm是Wm/η的大舍入数,而εM是(WM-Wm)/η的小舍入数,计算∏=εM.η及P=εm.η,得出两个正整数a和c属于∏模整数的乘法群Z*∏,选取带有∏的质数,计算q=c+pb)检测q的优选性,c)在核实了优选性的情况下,运算处理器储存q,d)在相反的情况下利用计算∏模a.c更新c,利用b)选取q=c+p反复进行上述运算操作。
6.根据权利要求5所述的便携式电子装置,其特征在于它是由带有微处理器的智能卡构成的。
全文摘要
本发明涉及一种形成电子密钥的方法,它是由包括在确定的正整数间隔[W
文档编号H04L9/30GK1449609SQ0181487
公开日2003年10月15日 申请日期2001年6月21日 优先权日2000年7月10日
发明者M·若耶, P·派利尔 申请人:格姆普拉斯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1