專利名稱:一種橢圓曲線上基于公鑰證書的密鑰交換方法
技術領域:
本發(fā)明涉及保密或安全通信的密鑰交換方法,具體地說是一種橢圓曲線上基于公鑰證書的密鑰交換方法。
背景技術:
安全性可證明的密碼算法和通信協(xié)議是密碼學的一個重要而又困難的研究課題,通信安全保密研究圍繞尋找更強更好的密碼體制而展開。傳統(tǒng)的密碼體制由于在加密和解密時使用的是單一密鑰,一旦加密密鑰泄露,整個密碼體制就失去了作用。因此在實際應用中暴露出了越來越多的缺陷,但由于對稱密鑰體制具有加密速度比公鑰加密速度快得多的特點,在對大量數(shù)據(jù)進行加密進具有優(yōu)勢。因此,就產(chǎn)生了一種混合加密方法,綜合了它們的優(yōu)點,即用公鑰加密體制傳輸會話密鑰,用會話密鑰進行信息的加密和解密。Bellovin設計了一種同時使用對稱和公開密鑰密碼的方法,該方法用共享的密鑰加密隨機產(chǎn)生的公開密鑰。但是EKE協(xié)議有一個嚴重的缺陷,它需要雙方都知道一個共享的口令P,這樣大大限制了通信的范圍。
發(fā)明內(nèi)容
本發(fā)明的目的在于提拱一種橢圓曲線上基于公鑰證書的密鑰交換方法,是從橢圓曲線上離散對數(shù)問題出發(fā),輔以抗碰撞雜湊函數(shù),公鑰證書和數(shù)字簽名的會話密鑰交換的方法。
本發(fā)明采用的技術方案的具體步驟如下由于密鑰交換就是雙方通過交互實現(xiàn)會話密鑰的交換,也關系到交換雙方的身份確認。因此,在密鑰交換中引入表示用戶身份的用戶證書數(shù)據(jù)是非常自然的。由于數(shù)字證書能有效的表明主體身份,我們從而得到一個基于數(shù)字證書的密鑰交換方法。數(shù)字證書的內(nèi)部格式是由CCITT X.509規(guī)定的,它必須包含以下幾個方面的信息內(nèi)容證書的版本號;數(shù)字證書的序列號;證書擁有者的姓名;簽名算法;頒發(fā)數(shù)字證書的單位;頒發(fā)數(shù)字證書的單位的簽名;公開秘鑰的有效期等。把這些信息稱為證書數(shù)據(jù)(Certificate-data)。本發(fā)明所述的密鑰交換方法的具體步驟如下1.定義了一個系統(tǒng)參數(shù)(Fq,E,P,n,H),其中Fq是有限域,域的特征為大素數(shù)q,E是Fq上的橢圓曲線,P是E上的一個有理點,稱為基點,P的階為素數(shù)n,H是抗碰撞雜湊函數(shù),系統(tǒng)參數(shù)(Fq,E,P,n,H)由一組用戶公用。
2.需交換密鑰的雙方設為A和B,通過交互實現(xiàn)共享會話密鑰的交換,系統(tǒng)參數(shù)為(Fq,E,P,n,H)密鑰交換的步驟如下(a)A隨機選取1<ra<n,計算u1=raP,并把(u1,sigA(u1))發(fā)送給B;(b)B驗證A的簽名u1,SigA(u1),如簽名不符則中止,否則隨機選取1<rb<n,計算u2=rbP,并把u2,sigB(u1,u2)發(fā)送給A,計算K=H(cert-data,rbu1)作為會話密鑰。
(c)A驗證簽名sigB(u1,u2),如果簽名不正確則交換中止,否則計算K=H(cert-data,rau2),作為會話密鑰;本發(fā)明與背景技術相比具有的有益效果是本發(fā)明從橢圓曲線上的離散對數(shù)問題和Diffie-Hellman密鑰交換協(xié)議出發(fā),輔以抗碰撞雜湊函數(shù),公鑰證書和數(shù)字簽名的會話密鑰交換方法。它具有可證明的安全性,且具有較快的運算速度。
具體實施例方式
當本發(fā)明用于密鑰交換時,假定用戶A想與用戶B進行保密的通信,需要在不安全的信道上進行密會話密鑰的傳輸。本方法中,用戶A和用戶B共同用一橢圓曲線,這里給出一橢圓曲線如下Ey2=x3+ax+b mod n其中p=6277101735386680763835789423207666416083908700390324961279;seedE=0x3045ae6fc8422f64ed579528d38120eae12196d5;r=0x3099d2bbbfcb2538542dcd5fb078b6ed5f3d6fe2c745de65;a=-3;b=0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1;h=1橢圓曲線的階為n=6277101735386680763835789423176059013767194773182842284081;它是一個素數(shù)。
階為n的基點為P的選取為P=(xG,yG)其中xG=0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012;yG=0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811;
用戶A隨機選取1<w<n,計算u=wP,并把(u,siga(u))發(fā)送給B。用戶B按照本方法的步驟進行操作,進行簽名驗證,如果簽名正確,則隨機選取1<x<n,計算y=xP,并把(u,y,Sigb(u,y))發(fā)送給A,并計算K=(cert-data,xu)作為會話密鑰。用戶A驗證簽名(u,y,sigb(u,y)),如果簽名不正確即停止交換,否則計算K=H(cert-data,wy)作為會話密密鑰。
權利要求
1.一種橢圓曲線上基于公鑰證書的密鑰交換方法,其特征是從橢圓曲線上的離散對數(shù)困難問題假設出發(fā),輔以碰撞雜湊函數(shù),公鑰證書(certificate-date)和數(shù)字簽名方法進行會話密鑰交換的方法。
2.根據(jù)權利要求1所述的一種橢圓曲線上基于公鑰證書的密鑰交換方法,其特征是定義了一個系統(tǒng)參數(shù)(Fq,E,P,n,H),其中Fq是有限域,域的特征為大素數(shù)q,E是Fq上的橢圓曲線,P是E上的一個有理點,稱為基點,P的階為素數(shù)n,H是抗碰撞雜湊函數(shù),系統(tǒng)參數(shù)(Fq,E,P,n,H)由一組用戶公用。
3.根據(jù)權利要求2所述的一種橢圓曲線上基于公鑰證書的密鑰交換方法,其特征是需交換密鑰的雙方設為A和B,通過交互實現(xiàn)共享會話密鑰的交換,系統(tǒng)參數(shù)為(Fq,E,P,n,H),密鑰交換的步驟如下(a)A隨機選取1<ra<n,計算u1=raP,并把(u1,sigA(u1))發(fā)送給B;(b)B驗證A的簽名u1,SigA(u1),如簽名不符則中止,否則隨機選取1<rb<n,計算u2=rbP,并把u2,sigB(u1,u2)發(fā)送給A,計算K=H(cert-data,rbu1)作為會話密鑰;(c)A驗證簽名sigB(u1,u2),如果簽名不正確則交換中止,否則計算K=H(cert-data,rau2),作為會話密鑰。
全文摘要
本發(fā)明公開了一種橢圓曲線上基于公鑰證書的密鑰交換方法。從橢圓曲線上的離散對數(shù)問題和Diffie-Hellman密鑰交換協(xié)議出發(fā),輔以抗碰撞雜湊函數(shù),公鑰證書和數(shù)字簽名的會話密鑰交換方法。它具有可證明的安全性,且具有較快的運算速度。
文檔編號H04L9/00GK1455542SQ03116620
公開日2003年11月12日 申請日期2003年4月23日 優(yōu)先權日2003年4月23日
發(fā)明者朱華飛 申請人:浙江大學