国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種減少rsa密鑰變量存儲空間的方法

      文檔序號:6684506閱讀:355來源:國知局
      專利名稱:一種減少rsa密鑰變量存儲空間的方法
      技術領域
      本發(fā)明涉及一種減少RSA密鑰變量存儲空間的方法,屬信息安全和網(wǎng)絡安全的技術領域。
      背景技術
      隨著全球性信息化浪潮的出現(xiàn),信息安全和網(wǎng)絡安全日益受到人們的關注。信息安全和網(wǎng)絡安全技術的應用已深入到大型、關鍵性業(yè)務系統(tǒng)如EFT和POS機系統(tǒng)(electronic fund transfer and point of salessystems)等。然而對于用小容量存儲設備的系統(tǒng)而言,由于計算能力的限制和存貯設備介質不能存儲大數(shù)據(jù)的物理特性,這些技術的應用受到了限制。
      公鑰密碼算法是Difte和Hellman在1976年提出的。他們利用一種特別的數(shù)學變換,冪運算,提出基于離散對數(shù)難題的密鑰分配協(xié)議。用戶進行兩次模冪運算,就可以得到與其相關的一方的相同的密鑰。由于這個變換是單向的,所以無法用于加密和解密。
      在美國專利US 4,218,582的中,Hellman和Merkle利用Difte和Hellman的結果提出一種消除安全信息通道的方法。1978年,Rivest,Shanir和Adleman提出公鑰加密算法RSA,同時還提出數(shù)字簽名,即電子簽名的概念。他們?yōu)樵撍惴ㄉ暾埩嗣绹鴮@?,并獲得授權,專利號為US 4,405,829。該算法是利用兩個大素數(shù)相乘,得出一個模數(shù)N,取一個公鑰e,然后通過這兩個大素數(shù)計算出私鑰d,公開公鑰e和模數(shù)N。這樣,如果用戶A要給公鑰為e和模數(shù)為N的用戶B發(fā)送消息M的話,則只需用模數(shù)N和公鑰e對消息M進行模冪運算,得到密文C。用戶B接到密文C后,用私鑰d進行解密。上述過程的逆向運算正好可以用來做電子簽名,以證實消息M的完整性、可認證性和不可否認性,因為私鑰d只有用戶B一人知道。
      由于公鑰密碼的密鑰量巨大,在卡上認證系統(tǒng)里公鑰密碼一直未被看好。在美國專利US 4,438,824中,Mueller-Schloer用附加數(shù)據(jù)卡的辦法提出了一個身份驗證系統(tǒng)。在該系統(tǒng)里,多個終端與安全服務站相連,每個終端都有一個CPU、內(nèi)存、讀卡器和合數(shù)模。CPU通過合數(shù)??刂茢?shù)據(jù)的加密和解密。而安全服務站的工作也類似,以此來進行驗證,這個系統(tǒng)同時兼容了美國數(shù)據(jù)加密標準算法DES和公鑰加密算法RSA。
      但在商業(yè)上,這個系統(tǒng)至今仍未被EFT和POS機系統(tǒng)所接受。因為這些系統(tǒng)采用容量很小的磁條卡作存儲介質,來存儲私人鑒別號碼(PIN),以認證用戶身份的合法性。在80年代末和90年代初,人們開始尋求解決將密鑰變量存儲在小容量存儲介質上的辦法。
      在美國專利US 4,408,203中,Canpbell用對稱密碼(私鑰密碼)的算法,提出了一個解決法方案。此外,在美國專利US 4,423,287中,Zeidler用一次密鑰的方法解決EFT和POS機系統(tǒng)的用戶身份認證問題。由于受到磁條卡的容量限制,人們(包括Canpbell和Zeidler)始終沒能將更安全的RSA應用到EFT和POS機系統(tǒng)上去。
      目前安全的RSA合數(shù)模是1024比特的整數(shù),而銀行等機構的磁條卡上的3個磁道只能存放316,160和432比特的信息,這對于長度為1024比特的合數(shù)模、公鑰、私鑰都是遠遠不夠的。美國專利US4,736,423雖公開了一個400比特的算法,但由于該算法本身的局限性,該算法無法推廣到長度為1024比特的RSA上,而且當時小指數(shù)攻擊方面的技術沒有出現(xiàn),在今天看來,這個方法可能是完全不安全的。
      所以對公鑰密碼系統(tǒng)在銀行或金融系統(tǒng)的應用,主要取決于兩個因素的發(fā)展,即要么大容量的存儲技術出現(xiàn),要么找到一種減少密鑰存儲空間的技術。由于存儲技術的局限性,主要的出路便是發(fā)展減少密鑰存儲空間的技術。從實用和安全的角度來看,這又是一對矛盾。因此既安全又密鑰存儲空間小的密鑰生成技術更是重中之重了。

      發(fā)明內(nèi)容
      本發(fā)明要解決的技術問題是提出一種減少RSA密鑰變量存儲空間的方法,即減少RSA密鑰變量存儲空間的算法。該方法是一項生成既安全、密鑰存儲空間又小的密鑰的技術,有以下優(yōu)點能為用小容量存儲器,磁條卡的金融電子系統(tǒng),如EFT和POS機系統(tǒng)等生成用于身份認證、鑒別和消息認證所需的高強度密碼。
      本發(fā)明采用以下技術方案使上述的技術問題得到解決。根據(jù)目前EFT和POS機系統(tǒng)用磁條卡進行身份認證的特點,為滿足RSA安全性的要求RSA密鑰變量的長度應為3072比特,其中,公鑰PK、私鑰SK和模數(shù)N各占1024比特;密鑰公鑰PK和私鑰SK應能抵抗小指數(shù)攻擊。本發(fā)明的技術方案先將存儲在磁條卡上的106比特的身份認證信息分成9個變量,其中兩個變量的長度分別為16和20比特,其余變量的長度均為10比特;接著利用本發(fā)明的技術方案提供的算法生成所述的9個變量和求出兩個大素數(shù)P和Q;用兩個大素數(shù)P和Q的乘積可得到模數(shù)N=P*Q和兩個能抵抗小指數(shù)攻擊的密鑰KP公鑰PK和私鑰SK。綜上,本發(fā)明的技術方案利用模數(shù)N、公鑰PK和私鑰SK,兩個大素數(shù)P和Q,以及9個變量三者之間的關系,生成長度總和為106比特的9個變量。本發(fā)明的技術方案把RSA密碼系統(tǒng)密鑰變量的存儲空間減少到使其能用在以存儲容量為106比特的磁條卡作為用戶身份認證的EFT和POS機等系統(tǒng)中的程度。
      關于EFT和POS機系統(tǒng)的認證,用公鑰密碼算法RSA來實現(xiàn),需要用到減少密鑰變量的存儲空間的技術,而這個技術的三個主體分別是用戶卡(CARD),終端(EFT)和主機處理中心(HPC)。
      假定用戶在銀行或其它金融機構已經(jīng)注冊,則他擁有一個基本賬號(PAN)。而用戶插入終端的卡上信息被讀入時,用戶只需輸入個人的身份證號(PIN)來證實自己的基本賬號(PAN)。如果PIN和PAN核對正確,則系統(tǒng)將啟動業(yè)務服務。
      但是用戶的身份認證實際上是利用卡上的用戶個人身份信息個人密鑰KP,通過密碼算法如RSA等來保護的。
      圖1解釋了RSA系統(tǒng)在EFT和POS機系統(tǒng)中的應用。磁條卡的容量不能存儲足夠安全的RSA密鑰變量,成為了一個急需解決的問題。在詳細解釋減少RSA密鑰變量存儲空間的方法之前,先來看看整個系統(tǒng)的結構。
      首先,設用戶的身份IDi,個人密鑰KPi和模數(shù)Ni都被讀入終端EFT,且個人的身份證號PINi也已讀入終端EFT,這時用戶的身份信息IDi和終端的身份信息TIDj被送到主機處理中心HPC。
      然后,主機處理中心HPC通過隨機數(shù)發(fā)生器(GEN RN)產(chǎn)生隨機數(shù)T1,并發(fā)送至終端EFT,接著終端EFT將隨機數(shù)T1和業(yè)務要求消息TRM做連接運算,同時也把個人的身份證號PINi和個人密鑰KPi做模2加運算,產(chǎn)生私鑰SKi。用私鑰SKi和模數(shù)Ni對業(yè)務要求消息TRM‖隨機數(shù)T1做解密運算,得到dSKi(TRM,T1)。終端EFT通過自己的隨機數(shù)發(fā)生器產(chǎn)生隨機數(shù)T2,將它與dSKi(TRM,T1)一起發(fā)送給主機處理中心HPC。
      在主機處理中心HPC中,通過終端EFT發(fā)送的用戶身份信息IDi,終端身份信息TIDj,找到用戶的個人的身份證號PANi,模數(shù)Ni和公鑰PKi,用公鑰PKi和模數(shù)Ni對dSKi(TRM,T1)進行加密處理,恢復出業(yè)務要求消息TRM和隨機數(shù)T1′。若隨機數(shù)T1′=隨機數(shù)T1,則通過驗證,繼續(xù),否則拒絕業(yè)務要求。假設上面的驗證通過,則主機處理中心HPC用銀行的模數(shù)Nb和私鑰SKb對隨機數(shù)T2進行解密處理,將dSKb(T2)發(fā)回至終端EFT。圖2和圖3分別是解密和加密過程。
      最后,終端EFT將接收到的dSKb(T2)用銀行公開的模數(shù)Nb和公鑰PKb進行加密處理。如果加密結果是T2′,正好與原來的T2一致,則認證用戶為合法用戶,并按業(yè)務要求消息TRM辦理業(yè)務。
      上述系統(tǒng)的運行是以卡(CARD)的容量足夠能存儲Ni和KPi為前提的。由于磁條卡的的容量小,沒有辦法將他們直接存儲到磁條卡上,因此本發(fā)明利用一定的預計算將Ni和KPi壓縮存儲在容量為106比特的磁條卡上,使磁條卡能與上述的系統(tǒng)聯(lián)用。
      以下是利用存儲在磁條卡上的106比特的信息產(chǎn)生足夠安全的RSA密鑰變量模數(shù)Ni和個人密鑰KPi。
      圖4所示的106比特被分為9組變量D1,…,D9,所有變量都是以二進制形式存儲的。其中,D2和D9的長度分別為20和16比特,其余變量的長度均為10比特。
      現(xiàn)結合圖5a和圖5b具體說明本發(fā)明的技術方案。
      一種減少RSA密鑰變量存儲空間的方法,其特征在于,具體操作步驟第一步 選取變量D1,使Z=2488-2D1+1是一個長度為488比特的素數(shù),下面將利用Z產(chǎn)生其它的參數(shù),所用的運算及其符號羅列如下OR二進制數(shù)的‘或’運算,mod數(shù)的模運算,[K]不超過K的最大整數(shù),a*b表示a和b的相乘,L(Q)取Q的二進表示的左邊373比特,即前373比特構成一個新數(shù),以上未羅列的其它運算均為普通整數(shù)運算;(注變量D1生成,其長度為10比特。)第二步 選取D2,D3,得X1=D2(D3+1)modZ,]]>使P″=(X1)OR(2487+1)是一個長度為488比特的素數(shù);(注變量D2和D3生成,變量D2和D3的長度分別為20和10比特。)第三步 選取D4,使P′=2(D4+210)P″+1是一個長度為500比特的素數(shù);(注變量D4生成,其長度為10比特。)第四步 選取D5,使P=2(D5+210)P′+1是一個長度為512比特的素數(shù);(注變量D5生成,其長度為10比特。)
      第五步 計算X2=[21024/P],將X2的二進制表示的最后一位強制改為1,得X3;第六步 選取D6,使Q″=2(D6+210)X3+1是一個長度為488比特的素數(shù);(注變量D6生成,其長度為10比特。)第七步 選取D7,使Q′=2(D7+210)Q″+1是一個長度為500比特的素數(shù);(注變量D7生成,其長度為10比特。)第八步 選取D8,使Q=2(D8+210)Q′+1是一個長度為512比特的素數(shù);(注變量D8生成,其長度為10比特。)第九步 計算模數(shù)N=P*Q,此時N的長度為1024比特;第十步 選取D9,計算d=2374+2(D9+L(Q))+1,使e*d≡1 mod(P-1)(Q-1)中的e≥217+1;(注變量D9生成,其長度為16比特。e和d分別稱為加密指數(shù)和解密指數(shù)。在現(xiàn)今攻擊RSA密碼系統(tǒng)的方法中,若解密指數(shù)d<N0.365,RSA密碼系統(tǒng)是容易被攻破的。N0.365<2374,所以這里選取的d大于2374是安全的。與此同時,關于較小的加密指數(shù)e也是不安全的,所以選取的e必須≥217+1。)第十一步令公鑰PK=e,私鑰SK=d,此時公鑰PK和私鑰SK的長度均為1024比特;第十二步至此,變量D1,D2,D3,D4,D5,D6,D7,D8和D9均已生成,其中,變量D2和D9的長度分別為20和16比特,其余的長度均為10比特。
      將變量D1,D2,D3,D4,D5,D6,D7,D8和D9存儲在磁條卡上的長度為106比特的存儲空間上。
      用本發(fā)明的方法錄制的磁條卡特別適于與EFT和POS機等系統(tǒng)聯(lián)用,為EFT和POS機等系統(tǒng)提供既安全又能抵抗小指數(shù)攻擊的用戶身份認證或信息認證。
      本發(fā)明的方法的優(yōu)點1、由于本發(fā)明的方法生成的用于身份認證或數(shù)據(jù)認證的數(shù)據(jù)長度為106比特,所以該方法適合于用在目前用磁條卡進行身份認證的EFT和POS機系統(tǒng)中。
      2、本發(fā)明的方法生成的長度為106比特的身份認證或數(shù)據(jù)認證的數(shù)據(jù)讀入EFT和POS機系統(tǒng)后,EFT和POS機系統(tǒng)能產(chǎn)生長度均為1024比特的模數(shù)N、公鑰PK和私鑰SK,并且公鑰PK和私鑰SK能抵抗小指數(shù)攻擊,換句話說,該方法能產(chǎn)生既能抵抗小指數(shù)攻擊,又能不被分解的模數(shù)N、公鑰PK和私鑰SK。
      上述性能大幅度提高了目前EFT和POS機系統(tǒng)的身份認證安全性和應用的廣泛性。


      本發(fā)明的主要結構,算法和技術步驟主要由附圖1,圖2,圖3,圖4和圖5組成。
      圖1是RSA密碼算法在EFT和POS機系統(tǒng)上的應用結構和算法,及認證用戶合法性和銀行合法性的示意圖。
      圖2,圖3分別為圖1中的解密算法和加密算法。
      圖4為存儲在磁條卡上106比特的RSA壓縮密鑰。
      圖5(a)和圖5(b)為將106比特的9組變量生成安全有效的RSA密鑰變量的預計算過程。該算法是本發(fā)明的方法的技術核心,既能滿足RSA最新防止攻擊的技術要求,又能產(chǎn)生安全性很高的密鑰。
      具體實施例方式
      在上面的發(fā)明內(nèi)容中詳加說明的減少RSA密鑰變量存儲空間的方法就是實施例。
      工作原理。
      上述過程中都可以通過預計算來實現(xiàn)。目前,已有很多檢測整數(shù)素性的算法,所以上述的操作步驟都是可實現(xiàn)的。
      通過事先預計算的106比特的數(shù)據(jù)和上述操作步驟的逆過程可以非常容易地恢復出模數(shù)N,密鑰KP公鑰PK和私鑰SK。已知用戶身份認證數(shù)據(jù),其長度為106比特,及其9組變量D1,D2,D3,D4,D5,D6,D7,D8和D9。以下是恢復出模數(shù)N,密鑰KP公鑰PK和私鑰SK的過程1、Z=2488-2D1+1將D1代入上式,得Z。
      2、X1=D2(D3+1)modZ]]>將D2,D3和Z代入上式,得X1。
      3、P″=(X1)OR(2487+1)將X1代入上式,得P″。
      4、P′=2(D4+210)P″+1將D4和P″代入上式,得P′。
      5、P=2(D5+210)P′+1將D5和P′代入上式,得P。
      6、X2=[21024/P]7、 8、Q″=2(D6+210)X3+1將D6和X3代入上式,得Q″。
      9、Q′=2(D7+210)Q″+1將D7和Q″代入上式,得Q′。
      10、Q=2(D8+210)Q′+1將D8和Q′代入上式,得Q。
      11、N=P*Q將P和Q代入上式,得N。
      12、d=2374+2(D9+L(Q))+1將D9和L(Q)代入上式,得d。
      13、e*d≡1 mod(P-1)(Q-1)將d,P和Q代入上式,得e。
      14、PK=e,SK=d至此,恢復出的模數(shù),公鑰和私鑰分別為N,PK和SK,模數(shù)N,公鑰PK和私鑰SK的長度均為1024比特。
      權利要求
      1.一種減少RSA密鑰變量存儲空間的方法,其特征在于,具體操作步驟第一步 選取變量D1,使Z=2488-2D1+1是一個長度為488比特的素數(shù),下面將利用Z產(chǎn)生其它的參數(shù),所用的運算及其符號羅列如下OR二進制數(shù)的‘或’運算,mod數(shù)的模運算,[K]不超過K的最大整數(shù),a*b表示a和b的相乘,L(Q)取Q的二進表示的左邊373比特,即前373比特構成一個新數(shù),以上未羅列的其它運算均為普通整數(shù)運算;第二步 選取D2,D3,得X1=D2(D3+1)modZ,]]>使P″=(X1)OR(2487+1)是一個長度為488比特的素數(shù);第三步 選取D4,使P′=2(D4+210)P″ +1是一個長度為500比特的素數(shù);第四步 選取D5,使P=2(D5+210)P′+1是一個長度為512比特的素數(shù);第五步 計算X2=[21024/P],將X2的二進制表示的最后一位強制改為1,得X3;第六步 選取D6,使Q″=2(D6+210)X3+1是一個長度為488比特的素數(shù);第七步 選取D7,使Q′=2(D7+210)Q″+1是一個長度為500比特的素數(shù);第八步 選取D8,使Q=2(D8+210)Q′+1是一個長度為512比特的素數(shù);第九步 計算模數(shù)N=P*Q,此時N的長度為1024比特;第十步 選取D9,計算d=2374+2(D9+L(Q))+1,使e*d≡1 mod(P-1)(Q-1)中的e≥217+1;第十一步 令公鑰PK=e,私鑰SK=d,此時公鑰PK和私鑰SK的長度均為1024比特;第十二步 至此,變量D1,D2,D3,D4,D5,D6,D7,D8和D9均已生成,其中,變量D2和D9的長度分別為20和16比特,其余的長度均為10比特。
      2.根據(jù)權利要求1所述的方法,其特征在于,將該方法生成的9個變量D1,D2,D3,D4,D5,D6,D7,D8和D9存儲在磁條卡上的長度為106比特的存儲空間上,制得適于與EFT和POS機等系統(tǒng)聯(lián)用的、既安全又能抵抗小指數(shù)攻擊的用戶身份認證卡或信息認證卡。
      3.權利要求2所述的用戶身份認證卡或信息認證卡用于EFT和POS機等系統(tǒng)作用戶身份認證的方法,其特征在于,通過事先預計算的106比特的數(shù)據(jù)和上述操作步驟的逆過程可以非常容易地恢復出模數(shù)N,密鑰KP公鑰PK和私鑰SK。已知用戶身份認證數(shù)據(jù),其長度為106比特,及其9組變量D1,D2,D3,D4,D5,D6,D7,D8和D9,以下是恢復出模數(shù)N,密鑰KP公鑰PK和私鑰SK的過程1、Z=2488-2D1+1將D1代入上式,得Z;2、X1=D2(D3+1)modZ]]>將D2,D3和Z代入上式,得X1;3、P″=(X1)OR(2487+1)將X1代入上式,得P″;4、P′=2(D4+210)P″+1將D4和P″代入上式,得P′;5、P=2(D5+210)P′+1將D5和P′代入上式,得P;6、X2=[21024/P] 8、Q″=2(D6+210)X3+1將D6和X3代入上式,得Q″;9、Q′=2(D7+210)Q″+1將D7和Q″代入上式,得Q′;10、Q=2(D8+210)Q′+1將D8和Q′代入上式,得Q;11、N=P*Q將P和Q代入上式,得N;12、d=2374+2(D9+L(Q))+1將D9和L(Q)代入上式,得d;13、e*d≡1mod(P-1)(Q-1)將d,P和Q代入上式,得e;14、PK=e,SK=d至此,恢復出的模數(shù),公鑰和私鑰分別為N,PK和SK,模數(shù)N,公鑰PK和私鑰SK的長度均為1024比特。
      全文摘要
      一種減少RSA密鑰變量存儲空間的方法,屬信息安全和網(wǎng)絡安全的技術領域。本發(fā)明的技術方案利用模數(shù)N、公鑰PK和私鑰SK,兩個大素數(shù)P和Q,以及9個變量三者之間的關系,生成長度總和為106比特的9個變量,把RSA密碼系統(tǒng)密鑰變量的存儲空間減少到使其能用在以存儲容量為106比特的磁條卡作為用戶身份認證的EFT和POS機等系統(tǒng)中的程度。該方法有以下優(yōu)點將生成的9個變量存儲在磁條卡上的長度為106比特的磁條卡上,可制得適于與EFT和POS機等系統(tǒng)聯(lián)用的、既安全又能抵抗小指數(shù)攻擊的用戶身份認證卡或信息認證卡。
      文檔編號G07F7/10GK1777100SQ20051011135
      公開日2006年5月24日 申請日期2005年12月9日 優(yōu)先權日2005年12月9日
      發(fā)明者錢海峰, 汪振華, 陳志杰, 時儉益, 陸洪文, 葉家琛, 李志斌, 王澤成 申請人:上海燕托計算機有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1