欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種三方口令認(rèn)證密鑰交換方法

文檔序號(hào):7721631閱讀:261來(lái)源:國(guó)知局
專利名稱:一種三方口令認(rèn)證密鑰交換方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信技術(shù)領(lǐng)域,特別是涉及一種三方口令認(rèn)證密鑰交換方法。
背景技術(shù)
隨著互聯(lián)網(wǎng)絡(luò)技術(shù)的發(fā)展和普及,網(wǎng)絡(luò)已經(jīng)成為一種主要的通信手段。由于互聯(lián)網(wǎng)的開(kāi)放性,不僅普通合法用戶可以通過(guò)網(wǎng)絡(luò)辦理業(yè)務(wù),惡意用戶也可以通過(guò)網(wǎng)絡(luò)進(jìn)行竊聽(tīng)、冒充、篡改等各種攻擊,給合法用戶的業(yè)務(wù)安全性帶來(lái)了很大的威脅。為了保護(hù)合法用戶的重要業(yè)務(wù)得以安全進(jìn)行,需要采用密鑰建立技術(shù)來(lái)建立一個(gè)安全的信道以保護(hù)用戶數(shù)據(jù)的保密性和完整性。 密鑰交換協(xié)議是一種密鑰建立技術(shù),其中兩個(gè)或多個(gè)參與方共同提供信息,推導(dǎo)出一個(gè)任何一方不能預(yù)先確定結(jié)果的會(huì)話密鑰。密鑰交換協(xié)議可以分為兩類第一類是基于公鑰的密鑰交換協(xié)議,通過(guò)使用用戶公鑰和私鑰對(duì)消息進(jìn)行加密和簽名來(lái)保證傳輸數(shù)據(jù)的保密性和數(shù)據(jù)完整性。雖然基于公鑰的密鑰交換協(xié)議具有較高的安全強(qiáng)度,但是這種方法計(jì)算復(fù)雜度較高,并且密鑰長(zhǎng)度可能在幾百比特到幾千比特之間,這么長(zhǎng)的密鑰人腦無(wú)法準(zhǔn)確記憶。為此,希望僅依據(jù)一個(gè)可以被人們記得住的共享口令就能夠建立安全信道,即第二類密鑰交換協(xié)議基于口令的認(rèn)證密鑰交換協(xié)議。由于基于口令的認(rèn)證密鑰交換協(xié)議使用人們易記的口令進(jìn)行認(rèn)證和建立會(huì)話密鑰,不需要攜帶諸如智能卡等儲(chǔ)存設(shè)備就可以建立安全通信,因此具有很大的應(yīng)用需求。 目前,基于口令認(rèn)證密鑰交換協(xié)議的研究集中在兩方的應(yīng)用場(chǎng)合,S卩"用戶_服務(wù)器"模式,并且已經(jīng)取得了不少很好的成果。但是如果網(wǎng)絡(luò)規(guī)模比較大,那么使用兩方的口令認(rèn)證密鑰交換協(xié)議就需要任意兩個(gè)用戶之間共享口令,導(dǎo)致同一個(gè)用戶需要記憶多個(gè)口令。三方的口令認(rèn)證密鑰交換協(xié)議只需要每個(gè)用戶與可信服務(wù)器共享口令,在服務(wù)器的協(xié)助下可以與任何處于同一服務(wù)域的用戶建立會(huì)話密鑰,更符合實(shí)際的應(yīng)用需求。但是研究三方或者三方以上情形的成果較少,目前的結(jié)果還不夠完善。 2005年,提出了通過(guò)兩方的口令認(rèn)證密鑰交換協(xié)議構(gòu)造三方口令認(rèn)證密鑰交換協(xié)議的一個(gè)通用構(gòu)造方法,但是,發(fā)現(xiàn)該通用結(jié)構(gòu)不能抵抗不可檢測(cè)在線字典攻擊,在2005年,又提出了一個(gè)高效的三方口令認(rèn)證密鑰交換協(xié)議,該協(xié)議僅僅通過(guò)口令來(lái)建立會(huì)話密鑰,因此易受口令泄露偽裝攻擊,即用戶的口令泄露,敵手不僅可以偽裝成該用戶,還可以反向偽裝成服務(wù)器來(lái)欺騙該用戶。 通過(guò)對(duì)現(xiàn)有技術(shù)的研究,發(fā)明人發(fā)現(xiàn)現(xiàn)有的三方口令認(rèn)證密鑰交換協(xié)議,不能抵抗不可檢測(cè)在線字典攻擊和口令泄露偽裝攻擊,使通信的安全性無(wú)法得到保障,給用戶帶來(lái)很大的損失,除此之外,現(xiàn)有技術(shù)的通信效率較低。

發(fā)明內(nèi)容
為解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了一種三方口令認(rèn)證密鑰交換方法,以實(shí)現(xiàn)安全通信的目的,技術(shù)方案如下
—種三方口令認(rèn)證密鑰交換方法,包括以下步驟 1)用戶設(shè)備A和用戶設(shè)備B分別計(jì)算請(qǐng)求通信的信息、掩碼后的第一Diffie-Hellman密鑰成分信息和向服務(wù)器S證明自身合法身份的驗(yàn)證信息;
2)用戶設(shè)備A和用戶設(shè)備B分別向所述服務(wù)器S發(fā)送所述請(qǐng)求通信的信息、掩碼后的第一 Diffie-Hellman密鑰成分信息和向服務(wù)器S證明自身合法身份的驗(yàn)證信息;
3)服務(wù)器S分別驗(yàn)證所述用戶設(shè)備A和用戶設(shè)備B發(fā)送的證明自身合法身份的驗(yàn)證信息,如果通過(guò)驗(yàn)證,服務(wù)器S利用所述掩碼后的第一 Diffie-Hellman密鑰成分信息分別計(jì)算得出用戶設(shè)備A和用戶設(shè)備B的第二 Diffie-Hellman密鑰成分信息,并發(fā)送給對(duì)端用戶,分別計(jì)算并發(fā)送向用戶設(shè)備A和用戶設(shè)備B證明服務(wù)器S自身合法身份的驗(yàn)證信息和會(huì)話的標(biāo)識(shí)ID ; 4)用戶設(shè)備A和用戶設(shè)備B分別驗(yàn)證所述的證明服務(wù)器S自身合法身份的驗(yàn)證信
息,如果都通過(guò)驗(yàn)證,用戶設(shè)備A和用戶設(shè)備B分別計(jì)算產(chǎn)生會(huì)話密鑰。 優(yōu)選地,在用戶設(shè)備A和用戶設(shè)備B分別向服務(wù)器S發(fā)送信息之前,還包括 用戶設(shè)備A向服務(wù)器S發(fā)送請(qǐng)求與用戶設(shè)備B通信的隨機(jī)信息; 服務(wù)器S將所述請(qǐng)求通信的隨機(jī)信息發(fā)送給用戶設(shè)備B。 通過(guò)應(yīng)用以上技術(shù)方案,對(duì)用戶和服務(wù)器之間交互的每條信息都增加驗(yàn)證信息,用戶和服務(wù)器之間進(jìn)行雙向認(rèn)證。進(jìn)一步的,還可以利用雙線性對(duì)加強(qiáng)用戶和服務(wù)器之間的認(rèn)證,同時(shí)利用了哈希函數(shù)難解性,實(shí)現(xiàn)了可以抵抗不可檢測(cè)在線字典攻擊和口令泄露偽裝攻擊,達(dá)到了安全通信的目的,除此之外,上述技術(shù)方案只需要兩輪的信息交互,提高了通信效率。


為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單的介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例三方口令認(rèn)證密鑰交換方法的流程示意圖; 圖2為本發(fā)明實(shí)施例中服務(wù)器S對(duì)用戶設(shè)備A和用戶設(shè)備B的驗(yàn)證信息進(jìn)行驗(yàn)證
和相應(yīng)計(jì)算的流程示意圖; 圖3為本發(fā)明優(yōu)選實(shí)施例三方口令認(rèn)證密鑰交換方法的流程示意圖。
具體實(shí)施例方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。 為了描述方便,首先對(duì)本說(shuō)明書(shū)中所涉及的一些參數(shù)進(jìn)行說(shuō)明 S表示服務(wù)器S的身份信息,A和B分別表示用戶設(shè)備A和用戶設(shè)備B的身份信息;
pwA表示用戶A和服務(wù)器S之間共享的口令,pwB表示用戶B和服務(wù)器S之間共享的口令;S、 A、 B、 pwA和pwB均已轉(zhuǎn)化為數(shù)值形式的信息A表示橢圓曲線上階為大素?cái)?shù)q的加法循環(huán)群,P和Q是^的生成元;G2表示階為大素?cái)?shù)q的乘法循環(huán)群;e是^ X^ — G2的雙線性對(duì);Hi是(0,lf —{0,1" (i = 1,2)的哈希函數(shù),其中Mi = 1,2)是哈希函數(shù)的安全參數(shù),一般為160比特;H是{0,1}* —^的哈希函數(shù),S是{0,1}* ^Z:的哈希函數(shù),Z: =[l,g-l],
Zq是整數(shù)模q的一個(gè)剩余類群,Ps = sP是服務(wù)器的公鑰,s G Zq*為服務(wù)器的私鑰。
圖1所示為三方口令認(rèn)證密鑰交換方法,具體步驟如下 SllO,用戶設(shè)備A計(jì)算請(qǐng)求通信的信息、掩碼的第一 Diffie-Hellman密鑰成分信息和向服務(wù)器S證明自身合法身份的驗(yàn)證信息,包括
用戶設(shè)備A隨機(jī)選取參數(shù)x, x G Zq* ; 計(jì)算X = xP,得出用戶設(shè)備A的第一 Diffie-Hellman密鑰成分X ;
用戶設(shè)備A利用與服務(wù)器共享的口令p^,通過(guò)哈希函數(shù)對(duì)所述第一Diffie-Hellman密鑰成分X進(jìn)行掩碼計(jì)算,即X* = X+S (pwA) Q,得出用戶設(shè)備A的掩碼后的第一 Diffie-Hellman密鑰成分X* ; 用戶設(shè)備A利用預(yù)先獲得的服務(wù)器S的公鑰Ps和所述計(jì)算得出的第一
Diffie-Hellman密鑰成分X,并通過(guò)利用雙線性對(duì)和哈希函數(shù)運(yùn)算計(jì)算得出用戶設(shè)備A的
第一秘密值ZA,即ZA = e(xPs, H(IDAS, X)),其中,服務(wù)器的公鑰Ps = sP, IDAS = (A, B, S),
IDAS是將用戶設(shè)備A、用戶設(shè)備B以及服務(wù)器S的身份信息A、B和S經(jīng)過(guò)一定編碼組合起來(lái)
得到一個(gè)整體信息,其中,整體信息IDAS作用在于用戶設(shè)備A告知服務(wù)器S,用戶設(shè)備A想
與用戶設(shè)備B進(jìn)行通信,因此,本說(shuō)明書(shū)中稱IDAS為用戶設(shè)備A請(qǐng)求通信的消息; 用戶設(shè)備A利用所述計(jì)算得出的IDAS、X*和ZA,通過(guò)哈希函數(shù)運(yùn)算得出用戶A向服
務(wù)器S證明其合法身份的驗(yàn)證信息AuthA,即AuthA = H2 (IDAS, X*, ZA); S120,用戶設(shè)備A將步驟SllO計(jì)算所得的用戶設(shè)備A的請(qǐng)求通信的消息IDp掩
碼后的第一 Diffie-Hellman密鑰成分X*以及驗(yàn)證信息AuthA發(fā)送給服務(wù)器S ; S130,用戶設(shè)備B計(jì)算請(qǐng)求通信的信息、掩碼后的第一 Diffie-Hellman密鑰成分
信息和向服務(wù)器S證明自身合法身份的驗(yàn)證信息,包括用戶設(shè)備B隨機(jī)選取參數(shù)y, y G Zq* ; 計(jì)算Y = yP,得出用戶設(shè)備B的第一 Diffie-Hellman密鑰成分Y ;
用戶設(shè)備B利用與服務(wù)器共享的口令pwe,通過(guò)哈希函數(shù)運(yùn)算對(duì)所述第一Diffie-Hellman密鑰交換成分Y進(jìn)行掩碼計(jì)算,即= Y+ S (pwB) Q,得出用戶設(shè)備B的掩碼后的第一 Diffie-Hellman密鑰成分Y* ; 用戶設(shè)備B利用提前獲得的服務(wù)器S的公鑰Ps和計(jì)算得出用戶設(shè)備B的第一Diffie-Hellman密鑰交換成分Y,并通過(guò)利用雙線性對(duì)和哈希函數(shù)運(yùn)算計(jì)算得出與服務(wù)器S共享的第一秘密惶Zb,即Zb = e(yPs,H(IDBS, Y)),其中,Ps = sP, IDBS = (B, A, S) , IDBS是將用戶設(shè)備B、用戶設(shè)備A以及服務(wù)器S的身份信息B、 A和S經(jīng)過(guò)一定編碼組合起來(lái)得到一個(gè)整體信息,IDBS作用在于用戶設(shè)備B告知服務(wù)器S,用戶設(shè)備B想與用戶設(shè)備A進(jìn)行通信,因此,本說(shuō)明書(shū)中ID^稱為用戶設(shè)備B請(qǐng)求通信的消息; 用戶設(shè)備B利用所述計(jì)算得出的IDpYf和Ze,通過(guò)哈希函數(shù)計(jì)算得出用戶B向服務(wù)器S證明其合法身份的驗(yàn)證信息AuthB,即AuthB = H2 (DBS, Y ZB); S140,用戶設(shè)備B將步驟S130計(jì)算所得用戶設(shè)備B的整體信息ID^、掩碼后的第一 Diff ie-Hellman密鑰成分Y*以及驗(yàn)證信息AuthB發(fā)送給服務(wù)器S ; 需要說(shuō)明的是,步驟110-120與步驟130-140并不因步驟的順序而決定時(shí)間的先
后,步驟130-140可與步驟110-120同時(shí)執(zhí)行,也可以在步驟110-120之前執(zhí)行; S150,服務(wù)器S驗(yàn)證所述用戶設(shè)備A發(fā)送的驗(yàn)證信息AuthA,如果驗(yàn)證通過(guò),隨機(jī)選
擇參數(shù)r,reZ:,利用參數(shù)r計(jì)算用戶設(shè)備A的第二 Diff ie-Hellman密鑰成分X',即X'
=rX,并計(jì)算得出向用戶設(shè)備A證明服務(wù)器S的合法身份的驗(yàn)證消息AuthSA,以及本次會(huì)話的標(biāo)識(shí)ID ; 服務(wù)器S驗(yàn)證所述用戶設(shè)備B發(fā)送的驗(yàn)證信息AuthB,如果驗(yàn)證通過(guò),利用所述選取的參數(shù)r,計(jì)算用戶設(shè)備B的第二 Diff ie-Hellman密鑰成分Y',即Y' = rY,并計(jì)算得出向用戶設(shè)備B證明服務(wù)器S的合法身份的驗(yàn)證消息AuthSB ; S160,服務(wù)器S將步驟150中計(jì)算所得的用戶設(shè)備A的第二 Diff ie-Hellman密鑰成分X'、向用戶設(shè)備B證明服務(wù)器S的合法身份的驗(yàn)證消息AuthSB以及會(huì)話的標(biāo)識(shí)ID,發(fā)送給用戶設(shè)備B; S170,服務(wù)器S將步驟150中計(jì)算所得的用戶設(shè)備B的第二 Diff ie-Hellman密鑰成分Y'、向用戶設(shè)備A證明服務(wù)器S的合法身份的驗(yàn)證消息AuthSA以及會(huì)話的標(biāo)識(shí)ID,發(fā)送給用戶設(shè)備A; 需要說(shuō)明的是本步驟與步驟160并不因步驟的順序而說(shuō)明時(shí)間的先后,本步驟可與步驟160同時(shí)執(zhí)行,或在其之前執(zhí)行; S180,用戶設(shè)備A對(duì)步驟S170中服務(wù)器S發(fā)送的用戶設(shè)備B的第二Diffie-Hellman密鑰成分Y'、會(huì)話的標(biāo)識(shí)ID以及步驟SllO中計(jì)算所得的用戶設(shè)備A的第一秘密值ZA,進(jìn)行哈希函數(shù)計(jì)算,即HJID,Y' ,ZA); 用戶設(shè)備A驗(yàn)證所述服務(wù)器S發(fā)送的證明其合法身份的驗(yàn)證消息Auth^是否等于HJID, Y' , Z》,如果等于,驗(yàn)證通過(guò),計(jì)算會(huì)話密鑰,否則,結(jié)束會(huì)話;其中所述計(jì)算會(huì)話密鑰包括 用戶設(shè)備A利用選取的參數(shù)x和步驟S170中服務(wù)器S發(fā)送的用戶設(shè)備B的第二Diffie-Hellman密鑰成分Y'進(jìn)行計(jì)算,得出Diff ie-Hellman密鑰cs,即cs = xY',其中,Y' = rY = ryP ; 對(duì)所述Diffie-Hellman密鑰cs進(jìn)行哈希函數(shù)的運(yùn)算,得出會(huì)話密鑰skA,即skA =H。(ID, cs); S190,用戶設(shè)備B利用步驟S160中服務(wù)器S發(fā)送的用戶設(shè)備A的第二Diffie-Hellman密鑰成分X'和會(huì)話的標(biāo)識(shí)ID,并利用步驟S130中計(jì)算所得用戶設(shè)備B的第一秘密值ZB,通過(guò)哈希函數(shù)計(jì)算,即HJID,X' ,ZB); 用戶設(shè)備B驗(yàn)證所述服務(wù)器S發(fā)送的證明服務(wù)器S的合法身份的驗(yàn)證消息AuthSB是否等于& (ID, X' , ZB),如果等于,驗(yàn)證通過(guò),計(jì)算會(huì)話密鑰,否則,結(jié)束會(huì)話;其中所述計(jì)算會(huì)話密鑰包括 用戶設(shè)備B利用選取的參數(shù)y和步驟S160中服務(wù)器S發(fā)送的用戶設(shè)備A的第二Diffie-Hellman密鑰成分X'進(jìn)行計(jì)算,得出Diff ie-Hellman密鑰cs,即cs = yX',其中,X' = rX = rxP ; 對(duì)所述Diffie-Hellman密鑰cs進(jìn)行哈希函數(shù)的運(yùn)算,得出會(huì)話密鑰skB,即skB =H。(ID, cs)。 其中,用戶設(shè)備B計(jì)算得出的會(huì)話密鑰ske與用戶設(shè)備A計(jì)算得出的會(huì)話密鑰skA 相同。 所述步驟S150包括服務(wù)器S對(duì)用戶設(shè)備A和用戶設(shè)備B的驗(yàn)證信息進(jìn)行驗(yàn)證和
相應(yīng)計(jì)算,參見(jiàn)圖2所示,具體包括以下步驟 S151,服務(wù)器S對(duì)用戶設(shè)備A的驗(yàn)證信息進(jìn)行驗(yàn)證; S152,服務(wù)器S對(duì)用戶設(shè)備B的驗(yàn)證信息進(jìn)行驗(yàn)證; S153,服務(wù)器S計(jì)算用戶設(shè)備A和用戶設(shè)備B的Diffie-Hellman密鑰成分、證明 自身身份信息的驗(yàn)證信息和會(huì)話標(biāo)識(shí); 其中,S151中,服務(wù)器S對(duì)用戶設(shè)備A的驗(yàn)證信息進(jìn)行驗(yàn)證,具體可以包括以下步 驟 S1511,服務(wù)器S利用與用戶設(shè)備A共享的口令p^和所述用戶設(shè)備A的掩碼后 的第一 Diffie-Hellman密鑰成分X*,通過(guò)哈希函數(shù)的運(yùn)算計(jì)算得出用戶設(shè)備A的第一 Diffie-Hellman密鑰成分X,即X = X*- S (pwA)Q ; S1512,服務(wù)器S利用步驟S1511中計(jì)算得出的用戶設(shè)備A的第一Diffie-Hellman 密鑰成分X、服務(wù)器的私鑰s以及所述用戶設(shè)備A請(qǐng)求通信的消息ID^,通過(guò)利用雙線性對(duì) 和哈希函數(shù)運(yùn)算,得出用戶設(shè)備A的第二秘密值ZSA,即ZSA = e(sX, H(IDAS, X));
S1513,對(duì)所述用戶設(shè)備A請(qǐng)求通信的消息IDp用戶設(shè)備A的掩碼后的第一 Diffie-Hellman密鑰成分X*以及步驟S1512計(jì)算得出的用戶設(shè)備A的第二秘密值ZSA,進(jìn) 行哈希函數(shù)運(yùn)算,即H2 (IDAS, X*, ZSA); S1514,驗(yàn)證用戶設(shè)備A發(fā)送的驗(yàn)證信息AuthA = H2(IDAS, X*, ZA)是否等于步驟 S1513計(jì)算所得的H2 (IDAS, X ZSA),如果等于,則說(shuō)明用戶設(shè)備A的驗(yàn)證信息AuthA中的用戶 設(shè)備A的第一秘密值ZA = e (xPs, H(DAS, X)),與服務(wù)器S計(jì)算得出的用戶設(shè)備A的第二秘密 值ZsA二e(sX,H(IDAs,X))相等,其中服務(wù)器公鑰Ps二sP,用戶設(shè)備A的第一Diffie-Hellman 密鑰成分X = xP,說(shuō)明用戶設(shè)備A為合法用戶,驗(yàn)證通過(guò),進(jìn)入步驟S153,否則結(jié)束會(huì)話;
其中,S152中,服務(wù)器S對(duì)用戶設(shè)備B的驗(yàn)證信息進(jìn)行驗(yàn)證,具體可以包括以下步 驟 S1521,服務(wù)器S利用與用戶設(shè)備B共享的口令p^和所述用戶設(shè)備A的掩碼后 的第一 Diffie-Hellman密鑰成分Y*,通過(guò)哈希函數(shù)的運(yùn)算計(jì)算得出用戶設(shè)備B的第一 Diffie-Hellman密鑰成分Y,即Y = Y*_ S (pwB)Q ; S1522,服務(wù)器S利用步驟S1521中計(jì)算得出的用戶設(shè)備B的第一 Diff ie-Hellman 密鑰成分Y、服務(wù)器的私鑰s以及所述用戶設(shè)備B請(qǐng)求通信的消息ID^,通過(guò)利用雙線性對(duì) 和哈希函數(shù)運(yùn)算得出用戶設(shè)備B的第二秘密值ZSB,即ZSB = e(sY, H(IDBS, Y));
S1523,對(duì)所述用戶設(shè)備B請(qǐng)求通信的消息IDBS、用戶設(shè)備B的掩碼后的第一 Diffie-Hellman密鑰成分Y*以及步驟S1522計(jì)算得出用戶設(shè)備B的第二秘密值4,進(jìn)行 哈希函數(shù)運(yùn)算,即H2 (IDBS, Y*, ZSB); S1524,驗(yàn)證用戶設(shè)備B發(fā)送的驗(yàn)證信息AuthB = H2(IDBS, Y*, ZB)是否等于步驟 S1523計(jì)算所得的H2 (IDBS, Y ZSB),如果等于,則說(shuō)明用戶設(shè)備B的驗(yàn)證信息AuthB中的用戶 設(shè)備B的第一秘密值ZB = e (yPs, H(IDBS, Y)),與服務(wù)器S計(jì)算得出的用戶設(shè)備B的第二秘密值ZsB二e(sY,H(IDBs,Y))相等,其中服務(wù)器公鑰Ps二sP,用戶設(shè)備B的第一Diffie-Hellman 密鑰成分Y = yP,說(shuō)明用戶設(shè)備B為合法用戶,驗(yàn)證通過(guò),進(jìn)入步驟S153,否則結(jié)束會(huì)話;
其中,S153中,服務(wù)器S計(jì)算用戶設(shè)備A和用戶設(shè)備B的Diffie-Hellman密鑰成 分、證明自身身份信息的驗(yàn)證信息和會(huì)話標(biāo)識(shí),具體可以包括以下步驟
服務(wù)器S隨機(jī)選取參數(shù)r, r e Z:,利用參數(shù)r分別計(jì)算用戶設(shè)備A和用戶設(shè)備B
的第二Diffie-Hellman密鑰成分X'和Y',其中,X' = rX, Y' = rY ;
服務(wù)器S對(duì)所述用戶設(shè)備B的第二秘密值Z^和所述用戶設(shè)備A的第二 Diffie-Hellman密鑰成分X',進(jìn)行哈希函數(shù)運(yùn)算得出向用戶設(shè)備B證明其身份的驗(yàn)證信 息AuthsB,即AuthSB = H丄(ID, X' , ZSB); 服務(wù)器S對(duì)所述用戶設(shè)備A的第二秘密值Z^和所述用戶設(shè)備B的第二 Diffie-Hellman密鑰成分Y',進(jìn)行哈希函數(shù)運(yùn)算,得出向用戶設(shè)備B證明其身份的驗(yàn)證信 息AuthSA,即AuthSA = H丄(ID, Y' , ZSA); 其中,ID = (A, B, S, X*, Y*) , ID是用戶A、用戶B和服務(wù)器S的身份信息以及用戶 A、用戶B發(fā)送的掩碼后的第一 Diffie-Hellman密鑰成分的消息級(jí)聯(lián),作為本次會(huì)話唯一的 會(huì)話標(biāo)識(shí); 需要說(shuō)明的是,步驟S1511與步驟S1521并不因步驟的順序而決定時(shí)間的先后,所 述步驟S1511可以與步驟SI521同時(shí)執(zhí)行,或在步驟SI521之前執(zhí)行。
參見(jiàn)圖3,對(duì)于上述實(shí)施例,在步驟SI 10之前還可以包括用戶設(shè)備A給用戶設(shè)備B 發(fā)送即時(shí)信息,告知用戶設(shè)備B請(qǐng)求進(jìn)行通信,具體步驟包括 S100,用戶設(shè)備A向服務(wù)器S發(fā)送即時(shí)信息ABS,請(qǐng)求與用戶設(shè)備B進(jìn)行通信;其 中,所述即時(shí)信息ABS可以是用戶設(shè)備A隨機(jī)選擇發(fā)送的信息; S101,服務(wù)器S將用戶設(shè)備A發(fā)送的即時(shí)信息ABS,發(fā)送給用戶設(shè)備B,告知用戶設(shè) 備B,用戶設(shè)備A請(qǐng)求與其進(jìn)行通信。 上述步驟S100和S101在用戶設(shè)備A或用戶設(shè)備B計(jì)算請(qǐng)求通信信息、密鑰成分 和驗(yàn)證信息之前執(zhí)行,作用在于使用戶設(shè)備A提前通知用戶設(shè)備B,請(qǐng)求與其進(jìn)行通信,達(dá) 到觸發(fā)用戶設(shè)備A和用戶設(shè)備B向服務(wù)器發(fā)送信息的目的。本領(lǐng)域技術(shù)人員可以理解,也 可以是用戶設(shè)備B向用戶設(shè)備A發(fā)送即時(shí)信息請(qǐng)求通信,用戶設(shè)備A或用戶設(shè)備B也可以 采用其他方式達(dá)到通知對(duì)端用戶設(shè)備,請(qǐng)求通信的目的,上述步驟提供的方法并不構(gòu)成對(duì) 本發(fā)明技術(shù)方案的限制。 對(duì)于前述的方法實(shí)施例,為了簡(jiǎn)單描述,故將其都表述為一系列的動(dòng)作組合,但是 本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本發(fā)明,某些 步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說(shuō)明書(shū)中所描述 的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作并不一定是本發(fā)明所必須的。
通過(guò)以上的方法實(shí)施例的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可 借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者 是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢 獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包 括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí) 行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。 以上所述僅是本發(fā)明的具體實(shí)施方式
,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人
員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)
視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
一種三方口令認(rèn)證密鑰交換方法,其特征在于,包括以下步驟1)用戶設(shè)備A和用戶設(shè)備B分別計(jì)算請(qǐng)求通信的信息、掩碼后的第一Diffie-Hellman密鑰成分信息和向服務(wù)器S證明自身合法身份的驗(yàn)證信息;2)用戶設(shè)備A和用戶設(shè)備B分別向所述服務(wù)器S發(fā)送所述請(qǐng)求通信的信息、掩碼后的第一Diffie-Hellman密鑰成分信息和向服務(wù)器S證明自身合法身份的驗(yàn)證信息;3)服務(wù)器S分別驗(yàn)證所述用戶設(shè)備A和用戶設(shè)備B發(fā)送的證明自身合法身份的驗(yàn)證信息,如果通過(guò)驗(yàn)證,服務(wù)器S分別利用所述掩碼后的第一Diffie-Hellman密鑰成分信息,分別計(jì)算得出用戶設(shè)備A和用戶設(shè)備B的第二Diffie-Hellman密鑰成分信息,并發(fā)送給對(duì)端用戶,分別計(jì)算并發(fā)送向用戶設(shè)備A和用戶設(shè)備B證明服務(wù)器S自身合法身份的驗(yàn)證信息和會(huì)話的標(biāo)識(shí)ID;4)用戶設(shè)備A和用戶設(shè)備B分別驗(yàn)證所述的證明服務(wù)器S自身合法身份的驗(yàn)證信息,如果都通過(guò)驗(yàn)證,用戶設(shè)備A和用戶設(shè)備B分別計(jì)算產(chǎn)生會(huì)話密鑰。
2. 根據(jù)權(quán)利要求l所述的方法,其特征在于,在用戶設(shè)備A和用戶設(shè)備B分別向服務(wù)器 S發(fā)送信息之前,還包括用戶設(shè)備A向服務(wù)器S發(fā)送請(qǐng)求與用戶設(shè)備B通信的隨機(jī)信息; 服務(wù)器S將所述請(qǐng)求通信的隨機(jī)信息發(fā)送給用戶設(shè)備B。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟1),包括11) 用戶設(shè)備A和用戶設(shè)備B分別隨機(jī)選擇參數(shù)x和y,利用參數(shù)x和y,分別計(jì)算得出 用戶設(shè)備A和用戶設(shè)備B的第一 Diffie-Hellman密鑰成分X和Y ;其中<formula>formula see original document page 2</formula> Zq是整數(shù)模q的一個(gè)剩余類群,P是^的生成元,^表示橢圓曲線上階為大素?cái)?shù)q的加法循環(huán)群;12) 用戶設(shè)備A和用戶設(shè)備B分別利用與服務(wù)器S共享的口令pwA和pwB,通過(guò)哈希函 數(shù)對(duì)所述第一 Diffie-Hellman密鑰成分X和Y進(jìn)行掩碼計(jì)算,得出用戶設(shè)備A的掩碼后的 第一 Diffie-Hellman密鑰成分X 和用戶設(shè)備B的掩碼后的第一 Diffie-Hellman密鑰成 分Y、其中<formula>formula see original document page 2</formula>Q, S是{0,1}* — Z:的哈希函數(shù),Z: =[1,《—1],Zq是整數(shù)模q的一個(gè)剩余類群,Q是^的生成元,^表示橢圓曲線上階為大素?cái)?shù)q的加法 循環(huán)群;13) 用戶設(shè)備A和用戶設(shè)備B分別利用提前獲得的服務(wù)器S的公鑰Ps以及所述第一 Diffie-Hellman密鑰成分X和Y,并通過(guò)利用雙線性對(duì)和哈希函數(shù)運(yùn)算分別計(jì)算得出用戶 設(shè)備A的第一秘密值ZA和請(qǐng)求通信的消息IDp用戶設(shè)備B的第一秘密值ZB和請(qǐng)求通信的 消息IDBS ;其中,<formula>formula see original document page 2</formula> IDAs是將用戶設(shè)備A、用戶設(shè)備B和服 務(wù)器S的身份信息經(jīng)過(guò)一定編碼組合起來(lái)得到的一個(gè)整體信息,<formula>formula see original document page 2</formula> IDBS是將用戶設(shè)備B、用戶設(shè)備A以及服務(wù)器 S的身份信息經(jīng)過(guò)一定編碼組合起來(lái)得到一個(gè)整體信息,Ps = sP, H是{0, l廣一^的哈希函數(shù),e是^ — G2的雙線性對(duì),^表示橢圓曲線 上階為大素?cái)?shù)q的加法循環(huán)群,G2表示階為大素?cái)?shù)q的乘法循環(huán)群,P是^的生成元;14)用戶設(shè)備A和用戶設(shè)備B分別利用所述請(qǐng)求通信的消息、掩碼后的第一 Diffie-Hellman密鑰成分和第一秘密值,計(jì)算得出用戶A向服務(wù)器S證明其合法身份的驗(yàn) 證信息Aut^,和用戶設(shè)備B向服務(wù)器S證明其合法身份的驗(yàn)證信息AuthB ;其中,AutgA = H2 (IDAS, X*, ZA) , AutgB = H2 (IDBS, T*, ZB),Hi是(O,ir ^ {0,1}'' (i = 1,2)的哈希函數(shù),其中Mi = 1,2)是哈希函數(shù)的安全參數(shù)。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟3)中,所述服務(wù)器S分別驗(yàn)證用 戶設(shè)備A和用戶設(shè)備B發(fā)送的所述用戶向服務(wù)器S證明自身合法身份的驗(yàn)證信息,包括31) 服務(wù)器S利用與用戶設(shè)備A共享的口令p^和用戶設(shè)備A的掩碼后的第 一 Diffie-Hellman密鑰成分X 通過(guò)哈希函數(shù)的運(yùn)算計(jì)算得出用戶設(shè)備A的第一 Diffie-Hellman密鑰成分X ;服務(wù)器S利用與用戶設(shè)備B共享的口令pwB和掩碼的 第一 Diffie-Hellman密鑰成分Y*,通過(guò)哈希函數(shù)的運(yùn)算計(jì)算得出用戶設(shè)備B的第一 Diffie-Hellman密鑰成分Y ;其中,X二n (PWa)Q,Y = Y*-S (pwB)Q, S是{0,1}*—Z:的哈希函數(shù),Z〉[U-1],Zq是整數(shù)模q的一個(gè)剩余類群,Q是^的生成元,^表示橢圓曲線上階為大素?cái)?shù)q的加法 循環(huán)群;32) 服務(wù)器S利用步驟31)中計(jì)算得出的用戶設(shè)備A的第一 Diffie-Hellman密鑰成 分X、服務(wù)器的私鑰s以及用戶設(shè)備A請(qǐng)求通信的消息ID^,并通過(guò)利用雙線性對(duì)和哈希函 數(shù)運(yùn)算得出用戶設(shè)備A的第二秘密值ZSA ;服務(wù)器S利用步驟31)中計(jì)算得出的用戶設(shè)備B 的第一 Diffie-Hellman密鑰成分Y、服務(wù)器的私鑰s以及用戶設(shè)備B請(qǐng)求通信的消息IDBS, 并通過(guò)雙線性對(duì)和哈希函數(shù)運(yùn)算得出用戶設(shè)備B的第二秘密值ZSB ;其中,ZSA = e(sX, H(IDAS, X)) , XSB = e(sY, H(IDBS, Y)) , H是{0, 1} * — G丄的哈希函數(shù), e是^X^ —62的雙線性對(duì),^表示橢圓曲線上階為大素?cái)?shù)q的加法循環(huán)群,G2表示階為 大素?cái)?shù)q的乘法循環(huán)群;33) 服務(wù)器S對(duì)所述用戶設(shè)備A的請(qǐng)求通信的消息IDp掩碼后的第一Diffie-Hellman 密鑰成分f以及步驟32)中計(jì)算得出的用戶設(shè)備A的第二秘密值Z^,進(jìn)行哈希函數(shù)運(yùn)算,即H2(IDas,X Zsa);服務(wù)器S對(duì)所述用戶設(shè)備B的請(qǐng)求通信的消息IDbs、掩礙后的第一 Diffie-Hellman 密鑰成分Y*以及步驟32)計(jì)算得出用戶設(shè)備B的第二秘密值ZSB,進(jìn)行哈希函數(shù)運(yùn)算,即 H2(IDBS,Y*, ZSB);34) 服務(wù)器S驗(yàn)證用戶設(shè)備A發(fā)送的驗(yàn)證信息AuthA是否等于步驟33)計(jì)算所得的 H2(IDAS, X*, ZSA),如果等于,驗(yàn)證通過(guò),否則結(jié)束會(huì)話;服務(wù)器S驗(yàn)證用戶設(shè)備B發(fā)送的驗(yàn)證信息AuthB是否等于步驟33)計(jì)算所得的H2 (IDBS, Y*, Zj,如果等于,驗(yàn)證通過(guò),否則結(jié)束會(huì)話。
5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟3)中,所述服務(wù)器S分別計(jì)算向 用戶設(shè)備A和用戶設(shè)備B證明服務(wù)器S自身合法身份的驗(yàn)證信息和會(huì)話的標(biāo)識(shí)ID,包括服務(wù)器S隨機(jī)選取參數(shù)r,利用參數(shù)r分別計(jì)算用戶設(shè)備A和用戶設(shè)備B的第二Diffie-Hellman密鑰成分X'和Y',其中,X' = rX, Y' =rY,reZ*;服務(wù)器S對(duì)所述用戶設(shè)備B的第二秘密值ZsB和所述用戶設(shè)備A的第二Diffie-Hellman密鑰成分X',進(jìn)行哈希函數(shù)運(yùn)算得出向用戶設(shè)備B證明其身份的驗(yàn)證信息AuthSB,其中,AuthSB = H丄(ID, X' , ZSB);服務(wù)器S對(duì)所述用戶設(shè)備A的第二秘密值ZsA和所述用戶設(shè)備B的第二Diffie-Hellman密鑰成分Y',進(jìn)行哈希函數(shù)運(yùn)算,得出向用戶設(shè)備B證明其身份的驗(yàn)證信息Auth^其中,AuthSA = H丄(ID, Y' , ZSA);其中,ID = (A, B, S, X*, Y*) , ID是用戶A、用戶B和服務(wù)器S的身份信息以及用戶設(shè)備A、用戶設(shè)備B發(fā)送的掩碼后的第一 Diff ie-Hellman密鑰成分的消息級(jí)聯(lián),作為本次會(huì)話唯一的會(huì)話標(biāo)識(shí)。
6. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟4)中,用戶設(shè)備A和用戶設(shè)備B分別驗(yàn)證所述證明服務(wù)器S自身合法身份的驗(yàn)證信息,包括用戶設(shè)備A和用戶設(shè)備B分別對(duì)所述服務(wù)器S發(fā)送的第二 Diff ie-Hellman密鑰成分X'和Y'、會(huì)話的標(biāo)識(shí)ID、第一秘密值ZB和ZA,進(jìn)行哈希函數(shù)運(yùn)算,即HJID, Y' , ZA)和HJID,X' ,ZB);用戶設(shè)備A驗(yàn)證所述服務(wù)器S發(fā)送的證明其合法身份的驗(yàn)證消息AuthSA是否等于& (ID, Y' , ZA),如果等于,驗(yàn)證通過(guò),計(jì)算會(huì)話密鑰,否則,結(jié)束會(huì)話;用戶設(shè)備B驗(yàn)證所述服務(wù)器S發(fā)送的證明服務(wù)器S的合法身份的驗(yàn)證消息AuthSB是否等于& (ID, X' , ZB),如果等于,驗(yàn)證通過(guò),計(jì)算會(huì)話密鑰,否則,結(jié)束會(huì)話。
7. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟4)中,用戶設(shè)備A和用戶設(shè)備B分別計(jì)算產(chǎn)生會(huì)話密鑰,包括用戶設(shè)備A計(jì)算Diffie-Hellman密鑰cs = xY',其中,Y' = rY = ryP ;用戶設(shè)備B計(jì)算Diffie-Hellman密鑰cs = yX',其中,X' = rX = rxP ;用戶設(shè)備A和用戶設(shè)備B分別對(duì)所述Diffie-Hellman密鑰cs進(jìn)行哈希函數(shù)的運(yùn)算,得出會(huì)話密鑰sk,即sk = H。(ID, cs);其中,P是^的生成元,^表示橢圓曲線上階為大素?cái)?shù)q的加法循環(huán)群。
全文摘要
本發(fā)明公開(kāi)了一種三方口令認(rèn)證密鑰交換方法,包括用戶設(shè)備A和用戶設(shè)備B分別計(jì)算并發(fā)送請(qǐng)求通信的信息、第一Diffie-Hellman密鑰成分信息和向服務(wù)器S證明自身合法身份的驗(yàn)證信息;服務(wù)器S驗(yàn)證所述的驗(yàn)證信息,如果驗(yàn)證成功,服務(wù)器S分別計(jì)算用戶設(shè)備A和用戶設(shè)備B的第二Diffie-Hellman密鑰成分信息,并發(fā)送給對(duì)端用戶,服務(wù)器S計(jì)算并發(fā)送向用戶設(shè)備A和用戶設(shè)備B證明服務(wù)器S自身合法身份的驗(yàn)證信息;用戶設(shè)備A和用戶設(shè)備B分別驗(yàn)證所述的證明服務(wù)器S自身合法身份的驗(yàn)證信息,如果通過(guò)驗(yàn)證,用戶設(shè)備A和用戶設(shè)備B分別計(jì)算產(chǎn)生會(huì)話密鑰。
文檔編號(hào)H04L9/32GK101702645SQ20091024653
公開(kāi)日2010年5月5日 申請(qǐng)日期2009年11月30日 優(yōu)先權(quán)日2009年11月30日
發(fā)明者季新生, 張汝云, 彭建華, 江濤, 程慶豐, 許明艷, 馬傳貴, 魏福山 申請(qǐng)人:中國(guó)人民解放軍信息工程大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
SHOW| 军事| 巫山县| 怀来县| 德昌县| 汨罗市| 贡山| 镇平县| 阿巴嘎旗| 神农架林区| 高州市| 德昌县| 金乡县| 伊宁县| 霍山县| 岢岚县| 易门县| 绵竹市| 南昌市| 拜城县| 浦城县| 桑日县| 灵丘县| 隆回县| 阳东县| 三门县| 乌兰浩特市| 陆河县| 五原县| 永登县| 武义县| 六枝特区| 咸宁市| 西贡区| 江孜县| 兴海县| 农安县| 兴海县| 锡林郭勒盟| 确山县| 侯马市|