信息技術(shù)安全技術(shù)-密鑰管理第3部分:采用非對(duì)稱技術(shù)的機(jī)制_第1頁(yè)
信息技術(shù)安全技術(shù)-密鑰管理第3部分:采用非對(duì)稱技術(shù)的機(jī)制_第2頁(yè)
信息技術(shù)安全技術(shù)-密鑰管理第3部分:采用非對(duì)稱技術(shù)的機(jī)制_第3頁(yè)
信息技術(shù)安全技術(shù)-密鑰管理第3部分:采用非對(duì)稱技術(shù)的機(jī)制_第4頁(yè)
信息技術(shù)安全技術(shù)-密鑰管理第3部分:采用非對(duì)稱技術(shù)的機(jī)制_第5頁(yè)
已閱讀5頁(yè),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

GB/TXXXX—XXXXPAGE7GB/TXXXX—XXXXPAGE8信息技術(shù)安全技術(shù)密鑰管理第3部分:采用非對(duì)稱技術(shù)的機(jī)制范圍本部分定義了基于非對(duì)稱密碼技術(shù)的密鑰管理機(jī)制,以達(dá)到如下目的:通過密鑰協(xié)商建立一個(gè)共享密鑰,用于實(shí)體A和實(shí)體B間的對(duì)稱加密。在密鑰協(xié)商機(jī)制中,密鑰必須通過實(shí)體A和實(shí)體B交換的數(shù)據(jù)計(jì)算得到,任何實(shí)體一方不能預(yù)先確定共享密鑰值。通過密鑰傳遞建立一個(gè)共享密鑰,用于實(shí)體A和實(shí)體B間的對(duì)稱加密。在密鑰傳遞機(jī)制中,密鑰由實(shí)體A選擇,采用非對(duì)稱密碼保護(hù)技術(shù),傳給實(shí)體B。通過密鑰傳遞將實(shí)體A的公鑰傳給其它實(shí)體。在公鑰傳遞機(jī)制中,實(shí)體A的公鑰經(jīng)鑒別后傳給其它實(shí)體,但不需保密。本部分定義的一些機(jī)制基于GB/T15843.3[3]相對(duì)應(yīng)的鑒別機(jī)制。本部分不包含以下密鑰管理內(nèi)容:密鑰生存期管理產(chǎn)生或確定非對(duì)稱密鑰對(duì)機(jī)制密鑰的存儲(chǔ)、存檔、刪除等機(jī)制注意:該機(jī)制不涉及實(shí)體私鑰的分發(fā);可采用公鑰簽名系統(tǒng)對(duì)密鑰交換消息進(jìn)行簽名操作。規(guī)范性引用文件下列文件對(duì)于本文件的應(yīng)用是必不可少的。凡是注日期的引用文件,僅所注日期的版本適用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改單)適用于本文件。GB/T25069-2010信息安全技術(shù)術(shù)語(yǔ)GB/T32918.1-2016信息安全技術(shù)SM2橢圓曲線公鑰密碼算法第1部分:總則GB/T32918.2-2016信息安全技術(shù)SM2橢圓曲線公鑰密碼算法第2部分:數(shù)字簽名算法GB/T32918.3-2016信息安全技術(shù)SM2橢圓曲線公鑰密碼算法第3部分:密鑰交換協(xié)議GB/T32918.4-2016信息安全技術(shù)SM2橢圓曲線公鑰密碼算法第4部分:公鑰加密算法GB/T32905-2016信息安全技術(shù)SM3密碼雜湊算法GB/T17901.1-AAAA信息技術(shù)安全技術(shù)密鑰管理第1部分:框架術(shù)語(yǔ)和定義下列術(shù)語(yǔ)和定義適用于本文件。非對(duì)稱密鑰對(duì)asymmetrickeypair一對(duì)相關(guān)密鑰,其中私有密鑰規(guī)定私有變換,公開密鑰規(guī)定公開變換。非對(duì)稱密碼技術(shù)asymmetriccryptographictechnique一種采用兩種相關(guān)變換,由公鑰定義的公開變換和由私鑰定義的私有變換的密碼技術(shù)。這兩個(gè)變換具有如下特性,即對(duì)給定的公鑰導(dǎo)出私鑰在計(jì)算上是不可行的。公開密鑰/公鑰publickey在某一實(shí)體的非對(duì)稱密鑰對(duì)中,能夠公開的密鑰。公鑰證書publickeycertificate由證書權(quán)威機(jī)構(gòu)對(duì)一個(gè)實(shí)體簽發(fā)并不可偽造的、有關(guān)其公鑰信息的數(shù)據(jù)結(jié)構(gòu)。可信第三方trustedthirdparty在與安全相關(guān)的事件中,被其它實(shí)體信任的安全機(jī)構(gòu)或代理。秘密密鑰secretkey用于對(duì)稱密碼技術(shù)中的一種密鑰,并僅由一組規(guī)定實(shí)體所使用。密鑰建立keyestablishment為一個(gè)或多個(gè)實(shí)體產(chǎn)生一個(gè)可用的、共享的秘密密鑰的過程。密鑰建立包括密鑰協(xié)商、密鑰傳送等。密鑰派生函數(shù)keyderivationfunction通過作用于共享秘密和雙方均知道的其它參數(shù),產(chǎn)生一個(gè)或多個(gè)共享秘密密鑰的函數(shù)。密鑰權(quán)標(biāo)keytoken在密鑰建立機(jī)制執(zhí)行期間,一個(gè)實(shí)體向另一個(gè)實(shí)體發(fā)送密鑰建立的消息。密鑰協(xié)商keyagreement在實(shí)體之間建立一個(gè)共享的秘密密鑰的過程,其中任何實(shí)體都不能預(yù)先確定該密鑰的值。簽名系統(tǒng)signaturesystem一種基于非對(duì)稱密碼技術(shù),其私有密鑰用于簽署變換,其公開密鑰用于驗(yàn)證變換的系統(tǒng)。雜湊/雜湊函數(shù)hashfunction將比特串映射為固定長(zhǎng)度的比特串的函數(shù),該函數(shù)滿足下列兩特性:對(duì)于給定輸出,找出映射為該輸出的輸入,在計(jì)算上是不可行的;對(duì)于給定輸入,找出映射為同一輸出的第二個(gè)輸入,在計(jì)算上是不可行的。數(shù)字簽名digitalsignature附加在數(shù)據(jù)單元上的數(shù)據(jù),或?qū)?shù)據(jù)單元所作的密碼變換,這種數(shù)據(jù)或變換允許數(shù)據(jù)單元的接收者用以確認(rèn)數(shù)據(jù)單元的來(lái)源和完整性,并保護(hù)數(shù)據(jù)防止被人(如接收者)偽造或抵賴。私有密鑰/私鑰privatekey在某一實(shí)體的非對(duì)稱密鑰對(duì)中,只應(yīng)由該實(shí)體使用的密鑰。時(shí)間變量timevariantparameter(TVP)用于驗(yàn)證數(shù)據(jù)沒有被重發(fā)的數(shù)據(jù),例如一個(gè)隨機(jī)數(shù),一個(gè)序列號(hào),或者時(shí)間戳。如果使用時(shí)間戳,則必須同步實(shí)體間的時(shí)鐘。如果使用序列號(hào),必須維持和驗(yàn)證兩邊的序列號(hào)計(jì)數(shù)器同步性。時(shí)間戳timestamp相對(duì)于一個(gè)共同時(shí)間基準(zhǔn)的一個(gè)時(shí)間數(shù)據(jù)項(xiàng)。橢圓曲線密碼算法EllipticCurvesCryptography一種公鑰加密算法,它利用橢圓曲線上的有理點(diǎn)構(gòu)成Abel加法群上橢圓離散對(duì)數(shù)的計(jì)算困難性。消息鑒別碼messageauthenticationcode(MAC)通過公開函數(shù)和密鑰產(chǎn)生一個(gè)固定長(zhǎng)度的值作為鑒別標(biāo)識(shí),用于鑒別消息的完整性。證書認(rèn)證機(jī)構(gòu)certificateauthority(CA)負(fù)責(zé)產(chǎn)生、簽發(fā)和管理證書的、受用戶信任的權(quán)威機(jī)構(gòu)。用戶可選擇該機(jī)構(gòu)為其創(chuàng)建特定密鑰。符號(hào)和縮略語(yǔ)下列符號(hào)和縮略語(yǔ)適用于本文件。A,B,C實(shí)體A、B、C的區(qū)分標(biāo)識(shí)BE加密的數(shù)據(jù)塊BS帶符號(hào)的數(shù)據(jù)塊簽名的數(shù)據(jù)塊CA認(rèn)證機(jī)構(gòu)CertA實(shí)體A的公鑰證書DA實(shí)體A的私有解密變換函數(shù)dA實(shí)體A的私有解密密鑰E橢圓曲線,給定在域GF(p)上的方程Y2=X3+aX+b,當(dāng)p>3并且m為正整數(shù),給定在域GF(2m)上方程Y2+XY=X3+AX2+B,或者在域GF(3m)上的方程Y2=X3+AX2+B,有一額外的參考點(diǎn)OE稱為無(wú)窮遠(yuǎn)點(diǎn),分別記為E/GF(pm),E/GF(2m),或E/GF(3m)EA實(shí)體A的公開加密變換函數(shù)eA實(shí)體A的公開加密密鑰F密鑰協(xié)商函數(shù)FP基于對(duì)的密鑰協(xié)商函數(shù)F(h,g)使用參數(shù)h和公共參數(shù)g作為輸入的密鑰協(xié)商函數(shù)G以n為順序E上的點(diǎn)GF(pm),GF(2m),GF(3m)對(duì)素?cái)?shù)p>3并且m為正整數(shù)pm,2m,3m的有限域g密鑰協(xié)商函數(shù)F使用的所有實(shí)體共享的公共參數(shù)hash雜湊函數(shù)hA實(shí)體A的私鑰協(xié)商密鑰j用于余子式乘法中的余子式K對(duì)稱加密系統(tǒng)的密鑰KT密鑰權(quán)標(biāo)KTA實(shí)體A的密鑰權(quán)標(biāo)KTAi實(shí)體A處理第i次交互后發(fā)送的密鑰權(quán)標(biāo)KAB在實(shí)體A與B間共享的密鑰kdf密鑰派生函數(shù)l余子式乘法采用的值M數(shù)據(jù)消息MAC消息鑒別碼MACK(Z)以密鑰K和隨機(jī)數(shù)據(jù)串Z作為輸入的MAC算法輸出n橢圓曲線E在有限域中的序列的素因數(shù)OE橢圓曲線的無(wú)限遠(yuǎn)點(diǎn)P橢圓曲線E上的點(diǎn)PX實(shí)體A在橢圓曲線E上的公開密鑰協(xié)商密鑰PKIA實(shí)體A的公開密鑰信息parameter密鑰派生數(shù)函數(shù)使用的參數(shù)pA,pB實(shí)體A,B的公開密鑰協(xié)商密鑰q素?cái)?shù)p≠3且m≥1的素?cái)?shù)冪pmr隨機(jī)生成數(shù)rA實(shí)體A的密鑰協(xié)商機(jī)制的隨機(jī)數(shù)S1,S2,S3元素集合SA實(shí)體A的私有簽名變換函數(shù)sA實(shí)體A的私有簽名密鑰T可信第三方TVP隨時(shí)間變化的參數(shù),如一隨機(jī)數(shù),一時(shí)間戳,或一序列號(hào)Texti包括在一數(shù)據(jù)塊中第i個(gè)文本、數(shù)據(jù)或其它信息VA實(shí)體A的公開驗(yàn)證變換函數(shù)vA實(shí)體A的公開驗(yàn)證密鑰w單向函數(shù)X(p)點(diǎn)P的x坐標(biāo)Y(p)點(diǎn)P的y坐標(biāo)√q一個(gè)正數(shù)q的平方根#E橢圓曲線E的順序(或基數(shù))‖兩數(shù)據(jù)元素連接「x大于或等于實(shí)數(shù)x的最小整數(shù)∑數(shù)字簽名π(p)(X(P)&(2「ρ/2-1))+2「ρ/2,其中,ρ=「log2n,X(p)為p點(diǎn)的x軸坐標(biāo)要求本部分要求所涉及的實(shí)體彼此知道其所聲稱的身份,這可通過兩個(gè)實(shí)體間信息交換時(shí)所包含的標(biāo)識(shí)符來(lái)實(shí)現(xiàn),或從該機(jī)制所使用的上下文明顯看出。身份驗(yàn)證意味著檢查一個(gè)收到的標(biāo)識(shí)符與某個(gè)已知的(可信的)或預(yù)期值是否相同。如果一個(gè)公鑰屬于某實(shí)體,那么該實(shí)體必須確保它擁有相應(yīng)的私鑰(密鑰注冊(cè)參見GB/T17901.1-AAAA)。本部分涉及使用橢圓曲線簽名驗(yàn)證、公鑰加解密的算法見GB/T32918.2和GM/T0003.4。密鑰派生函數(shù)第10章描述的對(duì)稱密鑰系統(tǒng)導(dǎo)出的共享密鑰,建議對(duì)其做進(jìn)一步處理。通過密鑰派生函數(shù)可導(dǎo)出共享密鑰,建議使用一個(gè)單向函數(shù)作為密鑰派生函數(shù),譬如使用雜湊函數(shù)。密鑰派生函數(shù)產(chǎn)生的密鑰與隨機(jī)產(chǎn)生的密鑰很難區(qū)分。但密鑰派生函數(shù)需輸入一個(gè)共享秘密和一組密鑰推導(dǎo)參數(shù),并產(chǎn)生輸出所需長(zhǎng)度的密鑰。為了讓參與同一個(gè)密鑰建立機(jī)制的雙方能夠協(xié)商出共同的密鑰,密鑰派生函數(shù)應(yīng)事先商定。達(dá)成這一協(xié)定的方法超出了本規(guī)范的范圍。附錄C提供了密鑰派生函數(shù)的例子。余子式乘法這一章只適用使用橢圓曲線密碼算法的機(jī)制。第11章描述的密鑰協(xié)商機(jī)制和第12、13章描述的密鑰傳送機(jī)制都要求用戶的私鑰或者密鑰權(quán)標(biāo)和另一個(gè)實(shí)體的公鑰或者密鑰權(quán)標(biāo)混合使用。在橢圓曲線密碼算法中,如果另一個(gè)實(shí)體的公鑰或者密鑰權(quán)標(biāo)不是有效的(即它不是橢圓曲線上的一個(gè)點(diǎn),或者不在n階子群中),那么該操作的執(zhí)行可能會(huì)導(dǎo)致私鑰中的某些位泄露給攻擊者,例如,“小子群攻擊”?!靶∽尤汗簟笨蓞㈤哰32]的描述。有兩種選擇方法,可防止“小子群攻擊”和類似的攻擊:一種方法是采用公鑰鑒別法對(duì)從另一方接收到的公鑰和密鑰權(quán)標(biāo)進(jìn)行驗(yàn)證(參照本標(biāo)準(zhǔn)的規(guī)定)。另一種方法是采用余子式乘法對(duì)公鑰進(jìn)行驗(yàn)證,余子式乘法將在第11章中具體規(guī)范。下面定義的j和l的值,將在余子式乘法中用到。使用余子式乘法時(shí)有兩種選擇:如果不要求與未使用余子式相乘的實(shí)體兼容,則設(shè)j=#E/N和l=1。在這種情況下,要求參與雙方都應(yīng)同意使用該選項(xiàng),否則該機(jī)制不起作用。如果要求與未使用余子式相乘的實(shí)體兼容,則設(shè)j=#E/N和l=j-1modn。由于要求n>4√qQUOTE,因此gcd(n,j)=1,所以j-1modn的值始終存在。如果不需要用到余子式相乘,則j=l=1。無(wú)論是否使用了余子式相乘法,如果共享密鑰(或者共享密鑰的一個(gè)組成部分)的計(jì)算結(jié)果為無(wú)窮遠(yuǎn)點(diǎn)(OE),則用戶認(rèn)為密鑰協(xié)商過程失敗。公鑰驗(yàn)證法或余子式乘法特別適合下列情況:實(shí)體的公鑰未經(jīng)驗(yàn)證;密鑰權(quán)標(biāo)未經(jīng)驗(yàn)證;用戶的公鑰希望長(zhǎng)期使用。如果另一實(shí)體的公鑰已被驗(yàn)證且余子式較小,可被泄露的信息相當(dāng)有限,則可不需完成這些測(cè)試。密鑰承諾第11章將描述一種密鑰協(xié)商機(jī)制,通過單向函數(shù)及私鑰協(xié)商密鑰來(lái)建立密鑰。然而,某實(shí)體可能在選擇自己的私鑰前就知道另一實(shí)體的公鑰或密鑰權(quán)標(biāo)。所以,在該實(shí)體發(fā)現(xiàn)其它實(shí)體的公鑰和選定自己私鑰的間隔內(nèi),可以以生成2s個(gè)私鑰協(xié)商密鑰候選值為代價(jià),控制其所要建立的密鑰中s個(gè)二進(jìn)制比特位的值。增加一個(gè)附加信息或協(xié)議傳遞的代價(jià)是使用密鑰承諾方法。密碼承諾的執(zhí)行可以通過讓第一實(shí)體對(duì)公鑰或者密鑰權(quán)標(biāo)進(jìn)行雜湊變換并將雜湊碼送給第二實(shí)體;接著第二實(shí)體回復(fù)自己的公鑰或者密鑰權(quán)標(biāo),然后第一實(shí)體回復(fù)自己的公鑰或者密鑰權(quán)標(biāo)給第二實(shí)體,第二個(gè)實(shí)體可對(duì)它進(jìn)行雜湊變換并驗(yàn)證雜湊碼是否等于之前第一實(shí)體所發(fā)送的值。密鑰確認(rèn)顯式密鑰確認(rèn)過程是通過添加附加消息到一個(gè)提供隱式密鑰鑒別的密鑰建立協(xié)議中,因此提供了顯式密鑰鑒別和實(shí)體鑒別。顯式密鑰確認(rèn)可以被添加到任何不包含它本身的方法中。密鑰確認(rèn)通常是通過交換一個(gè)值來(lái)實(shí)現(xiàn),這個(gè)值在很大的概率下只有密鑰建立計(jì)算成功時(shí)才能正確計(jì)算出來(lái)。從實(shí)體A到實(shí)體B的密鑰確認(rèn)是通過實(shí)體A計(jì)算一個(gè)值并發(fā)送給實(shí)體B以確認(rèn)實(shí)體A的計(jì)算。如果要求相互密鑰確認(rèn),則每個(gè)實(shí)體需發(fā)送一個(gè)不同的值給對(duì)方。隱式密鑰確認(rèn)是在已建立的密鑰的后續(xù)使用中提供密鑰確認(rèn),當(dāng)發(fā)生某種錯(cuò)誤時(shí),就立即檢測(cè)到。在這種情況下,不需顯式密鑰確認(rèn)。如果一個(gè)實(shí)體不在線(如在單輪通信協(xié)議中,存儲(chǔ)和轉(zhuǎn)發(fā)(電子郵件)的場(chǎng)景),另一個(gè)實(shí)體就不可能獲得密鑰確認(rèn)。然而,有時(shí)建立的密鑰在后來(lái)才使用,或者密鑰建立過程的實(shí)體并不知道所產(chǎn)生的密鑰是否會(huì)被立即使用。在這些情況下,通常需使用顯式密鑰確認(rèn)方法,否則一旦錯(cuò)誤檢測(cè)出來(lái)糾正它就可能太晚。顯式密鑰確認(rèn)可看作是密鑰建立過程中具有“堅(jiān)固”安全屬性的一種方式,且可認(rèn)作為是一個(gè)保守的協(xié)議設(shè)計(jì)。使用MAC提供密鑰確認(rèn)的例子如下:實(shí)體A和B首先執(zhí)行本規(guī)范中第11及12章中采用的其中一個(gè)密鑰建立過程,期望共享一個(gè)的MAC密鑰KAB,執(zhí)行的步驟如下:實(shí)體B產(chǎn)生一個(gè)八位位組串的消息M,由幾部分組成:消息標(biāo)識(shí)符八位位組0x02,實(shí)體B的標(biāo)識(shí)符,實(shí)體A的標(biāo)識(shí)符,對(duì)應(yīng)于實(shí)體B的密鑰權(quán)標(biāo)的八位位組串KTB(如不存在,省略),對(duì)應(yīng)于實(shí)體A的密鑰權(quán)標(biāo)的八位位組串KTA(如不存在,省略),對(duì)應(yīng)于實(shí)體B的密鑰建立公鑰pB(如不存在,省略),對(duì)應(yīng)于實(shí)體A的密鑰建立公鑰pA(如不存在,省略),及可選的附加文本Text1(如存在的話),即:M=02||B||A||KTB||KTA||pB||pA||Text1,其中0x02是消息序號(hào)。實(shí)體B計(jì)算KB=kdf(KAB),采用共享密鑰KB,用一個(gè)合適的MAC機(jī)制對(duì)消息M計(jì)算出MACKBQUOTEMACKB(M)。實(shí)體B將消息M和MACKBQUOTEMACKB(M)發(fā)送給實(shí)體A。實(shí)體A計(jì)算KA=kdf(KAB),用收到的消息M計(jì)算MACKAQUOTEMACKA(M),并驗(yàn)證MACKB(M)=MACKAQUOTEMACKA(M)。假設(shè)MAC驗(yàn)證,實(shí)體A已收到實(shí)體B的密鑰確認(rèn)(即實(shí)體A知道KA=KB)。如需相互密鑰確認(rèn),則實(shí)體A繼續(xù)執(zhí)行協(xié)議,產(chǎn)生八位位組串的消息M',由幾部分組成:消息標(biāo)識(shí)符八位位組0x03,實(shí)體A的標(biāo)識(shí)符,實(shí)體B的標(biāo)識(shí)符,對(duì)應(yīng)于實(shí)體A的密鑰權(quán)標(biāo)的八位位組串KTA(如不存在,省略),對(duì)應(yīng)于實(shí)體B的密鑰權(quán)標(biāo)的八位位組串KTB(如不存在,省略),對(duì)應(yīng)于實(shí)體A的密鑰建立公鑰pA(如不存在,省略),對(duì)應(yīng)于實(shí)體B的密鑰建立公鑰pB(如不存在,省略),以及可選的附加文本Text2(如存在的話),即:M'=03||A||B||KTA||KTB||pA||pB||Text2,其中0x03是消息序號(hào)。實(shí)體A采用共享密鑰KA,用一個(gè)合適的MAC機(jī)制計(jì)算MACKAQUOTEMACKA(M')。實(shí)體A將M'和MACKAQUOTEMACKA(M')發(fā)送給實(shí)體B。對(duì)消息M',實(shí)體B用KB驗(yàn)證MACKAQUOTEMACKA(M')。假設(shè)MAC驗(yàn)證,實(shí)體B已收到實(shí)體A的密鑰確認(rèn)(即實(shí)體B知道KA=KB)。也可采用其它確認(rèn)密鑰方法,如果共享密鑰用于數(shù)據(jù)加密,那么一實(shí)體可將另一實(shí)體已知的一些特定的明文進(jìn)行加密,并發(fā)送給該實(shí)體,如全0或全1的二進(jìn)制塊,但應(yīng)注意后續(xù)使用該密鑰時(shí),不再加密用于密鑰確認(rèn)時(shí)使用過的同一明文。密鑰管理框架概要本章包含了對(duì)密鑰建立機(jī)制框架的高級(jí)描述,定義了四種機(jī)制(雙方密鑰協(xié)商,三方密鑰協(xié)商,私鑰傳送以及公鑰傳送)以及各自的使用要求。雙方密鑰協(xié)商本節(jié)適用于本標(biāo)準(zhǔn)中第11.1-11.11部分描述的雙方密鑰協(xié)商的密鑰協(xié)商機(jī)制。雙方密鑰協(xié)商是一個(gè)在A與B兩實(shí)體間建立共享密鑰的過程,任何一方不能預(yù)先確定共享密鑰的值。密鑰協(xié)商機(jī)制可以提供隱式密鑰鑒別;在密鑰建立的條件下,隱式密鑰鑒別意味著機(jī)制實(shí)施后只有經(jīng)確定的實(shí)體才可擁有正確的共享密鑰。A與B兩實(shí)體間的密鑰協(xié)商發(fā)生在雙方共享一段內(nèi)容的條件下。該內(nèi)容包括兩個(gè)集合S1,S2和一個(gè)密鑰協(xié)商函數(shù)F。函數(shù)F應(yīng)滿足以下規(guī)定:F:S1*S2->S2將元素(h,g)∈S1*S2映射到S2的元素,寫成y=F(h,g)。F滿足可交換:F(hA,F(hB,g))=F(hB,F(hA,g)).從F(h1,g),F(h2,g)和g計(jì)算得到F(h1,F(h2,g))是困難的,意味著F(??,g)是單向函數(shù)。實(shí)體A和B共享S2中的一個(gè)公共元素g,該元素是公開的。此設(shè)置下的實(shí)體可以高效計(jì)算函數(shù)值F(h,g),并有效地產(chǎn)生S1中的隨機(jī)元素。在特定的密鑰協(xié)商中,可進(jìn)一步包括一些條件。1:附錄D和附錄E給出密鑰協(xié)商函數(shù)F的例子。2:如第6章中描述,在密鑰協(xié)商機(jī)制的實(shí)際實(shí)現(xiàn)中,需對(duì)共享密鑰做進(jìn)一步處理。3:一般來(lái)講,必須檢查收到的函數(shù)值F(h,g)是否為弱值。如果為弱值,該協(xié)議將終止。三方密鑰協(xié)商本節(jié)適用于描述第11.12部分描述的三方之間密鑰協(xié)商的密鑰協(xié)商機(jī)制。三方密鑰協(xié)商在三個(gè)實(shí)體A,B,C間建立一個(gè)共享密鑰,三方中的任何一方不能預(yù)先確定共享密鑰的值。三實(shí)體A,B,C間的密鑰協(xié)商發(fā)生在三方共享一段內(nèi)容的條件下,該內(nèi)容包括三個(gè)集合S1,S2,S3,密鑰協(xié)商函數(shù)F和FP。密鑰協(xié)商函數(shù)F和FP應(yīng)滿足以下規(guī)定:F:S1*S2->S2將元素(h,g)∈S1*S2映射到S2的元素,寫成y=F(h,g)。F滿足可交換:F(hA,F(hB,g))=F(hB,F(hA,g))。從F(h1,g),F(h2,g)和g計(jì)算F(h1,F(h2,g))是困難的,意味著F(??,g)是單向函數(shù)。F:S1*S2*S2->S3將元素(hC,F(hA,g),F(hB,g))∈S1*S2*S2映射到S3的元素,寫成:z=FP(hC,F(hA,g),F(hB,g))。FP滿足可交換性:FP(hC,F(hA,g),F(hB,g))=FP(hC,F(hB,g),F(hA,g))=FP(hB,F(hA,g),F(hC,g))=FP(hA,F(hB,g),F(hC,g))=FP(hA,F(hC,g),F(hB,g))=FP(hB,F(hC,g),F(hA,g)).從F(hA,g),F(hB,g),F(hC,g)和g計(jì)算得到FP(hC,F(hA,g),F(hB,g))是困難的,意味著F(??,pA,pB)是單向函數(shù)。實(shí)體A,B,C共享一個(gè)S2中的一個(gè)公共元素g,該元素是公開的。此設(shè)置下的實(shí)體可以高效計(jì)算函數(shù)值F(h,g)和FP(hC,F(hA,g),F(hB,g)),并有效地產(chǎn)生在S1中的隨機(jī)元素。在特定的密鑰協(xié)商中,可進(jìn)一步包括一些條件。:如第6章描述,在密鑰協(xié)商機(jī)制的實(shí)際實(shí)現(xiàn)中,需對(duì)共享密鑰做進(jìn)一步處理,共享派生密鑰應(yīng)通過以下途徑計(jì)算:直接從共享私鑰KABC提取一些比特位;或?qū)⒐蚕硭借€KABC和選用一些非秘密數(shù)據(jù)經(jīng)過一個(gè)單向函數(shù)計(jì)算,從輸出中提取一些比特位。秘密密鑰傳送秘密密鑰傳送(也稱密鑰傳遞)是一個(gè)傳遞秘密密鑰的過程,由一實(shí)體(或可信任中心)選擇,傳給另一實(shí)體,并通過非對(duì)稱密碼算法加密保護(hù)。公鑰傳送公鑰傳送使一實(shí)體的公鑰可讓其它實(shí)體以鑒別方式得到,公鑰鑒別分發(fā)是一個(gè)基本的安全需求。分發(fā)主要通過以下兩種方式:沒有可信第三方的公鑰分發(fā);通過可信第三方的公鑰分發(fā),例如證書頒發(fā)機(jī)構(gòu)。實(shí)體A的公鑰是實(shí)體A公鑰信息的一部分,公鑰信息至少包括實(shí)體A的區(qū)分標(biāo)識(shí)符和實(shí)體A的公鑰。密鑰協(xié)商密鑰協(xié)商機(jī)制1該密鑰協(xié)商機(jī)制以非交互方式在實(shí)體A和B間建立包含相互隱式密鑰鑒別的共享密鑰,應(yīng)滿足以下規(guī)定:每個(gè)實(shí)體X在S1中有一個(gè)密鑰協(xié)商私鑰hX和一個(gè)密鑰協(xié)商公鑰pX=F(hX,g)。每個(gè)實(shí)體可得到另一實(shí)體的已鑒別的密鑰協(xié)商公鑰副本,可用第13章描述的機(jī)制來(lái)實(shí)現(xiàn)。密鑰協(xié)商機(jī)制1如圖1所示。該機(jī)制用于以離線方式在兩個(gè)實(shí)體之間協(xié)商共享密鑰。密鑰協(xié)商機(jī)制1密鑰建立(A1):實(shí)體A用其私鑰協(xié)商密鑰hA和實(shí)體B的公鑰協(xié)商密鑰pB計(jì)算共享秘密密鑰KAB=F(hA,pB)。密鑰建立(B1):實(shí)體B用其私鑰協(xié)商密鑰hB和實(shí)體A的公鑰協(xié)商密鑰pA計(jì)算共享私鑰KAB=F(hB,pA)。在第10章中對(duì)F進(jìn)行了規(guī)定,以保證密鑰KAB的兩個(gè)計(jì)算值一致。1:交互次數(shù)為0。2:該機(jī)制提供了相互隱式密鑰鑒別。該零交互協(xié)議將產(chǎn)生相同的密鑰。解決該問題的方法是確保密鑰只用一次。也可用唯一的初始化矢量與密鑰一起使用來(lái)解決該問題。3:該機(jī)制不提供密鑰確認(rèn)。4:該機(jī)制是一個(gè)密鑰協(xié)商機(jī)制,它建立的密鑰是實(shí)體A和B的私鑰hA和hB的單向函數(shù)。然而,一實(shí)體可能在選擇私鑰前就知道另一實(shí)體的公鑰。因此,如第8章所描述,一實(shí)體可選擇所建立密鑰的s位,代價(jià)是在發(fā)現(xiàn)另一個(gè)實(shí)體的公鑰和選擇私鑰的間隔中,為私鑰產(chǎn)生2s個(gè)備選值。5:附錄E.3給出該機(jī)制的例子。密鑰協(xié)商機(jī)制2該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體中僅有一方知道對(duì)方身份,且只需在線交互一次的場(chǎng)景,采用實(shí)體B到A的隱式密鑰鑒別方式,在實(shí)體A和實(shí)體B間經(jīng)一次交互建立一個(gè)共享私鑰,但實(shí)體B不鑒別實(shí)體A(即實(shí)體B不知道和誰(shuí)建立共享密鑰)。該機(jī)制需滿足以下規(guī)定:實(shí)體B在S1中有一個(gè)密鑰協(xié)商私鑰hB和一個(gè)密鑰協(xié)商公鑰pB=F(hB,g)。實(shí)體A可以通過第13章描述的機(jī)制獲得實(shí)體B已鑒別的密鑰協(xié)商公鑰pB的副本。密鑰協(xié)商機(jī)制2如圖2所示。密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)A隨機(jī)并秘密產(chǎn)生r(r在S1中),計(jì)算F(r,g),并將密鑰權(quán)標(biāo):KTA1=F(r,g)||Text發(fā)送給實(shí)體B。密鑰創(chuàng)建(A2):實(shí)體A計(jì)算共享密鑰KAB=F(r,pB)。密鑰創(chuàng)建(B1):實(shí)體B從接收到的密鑰權(quán)標(biāo)KTA1中提取F(r,g),并計(jì)算共享密鑰:KAB=F(hB,F(r,g))。在第10章中對(duì)F進(jìn)行了規(guī)定,以保證密鑰KAB的兩個(gè)計(jì)算值一致。1:交互次數(shù)為1。2:該機(jī)制提供從實(shí)體B到實(shí)體A的隱式鑒別(實(shí)體B是除了實(shí)體A之外唯一可計(jì)算出共享密鑰的實(shí)體)。3:該機(jī)制不提供密鑰確認(rèn)。4:該機(jī)制是一個(gè)密鑰協(xié)商機(jī)制,它建立的密鑰是實(shí)體A提供的隨機(jī)值r和實(shí)體B的密鑰協(xié)商私鑰的單向函數(shù)。因此,如第8章所描述,實(shí)體A可在選取r的值之前就得到實(shí)體B的公鑰,實(shí)體A可選擇所建立密鑰的s位,代價(jià)是在發(fā)現(xiàn)實(shí)體B的公鑰和發(fā)送KTA的間隔中,為r產(chǎn)生2s個(gè)備選值。5:由于實(shí)體B是從未鑒別的實(shí)體A收到可計(jì)算出密鑰KAB的信息,實(shí)體B對(duì)KAB的使用必須被限制在不需實(shí)體A鑒別的范圍內(nèi),例如,解密和消息鑒別碼的生成。密鑰協(xié)商機(jī)制2及機(jī)制8密鑰協(xié)商機(jī)制3該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體彼此知道對(duì)方身份,且只需在線交互一次的場(chǎng)景,通過相互隱式密鑰鑒別以及實(shí)體A到實(shí)體B的實(shí)體鑒別,在實(shí)體A和實(shí)體B間經(jīng)一次交互建立共享秘密密鑰。應(yīng)滿足以下要求:實(shí)體A擁有非對(duì)稱簽名系統(tǒng)(SA,VA)。實(shí)體B可得到已鑒別的公開驗(yàn)證變換VA的副本,可通過第13章所描述的機(jī)制實(shí)現(xiàn)。實(shí)體B有密鑰(hB,pB)的密鑰協(xié)商方案。實(shí)體A可獲取已鑒別的實(shí)體B密鑰協(xié)商公鑰pB的副本,可通過第13章所描述的機(jī)制實(shí)現(xiàn)。(可選)如果被使用,TVP可為時(shí)間戳或序列號(hào)。如果使用時(shí)間戳,需有安全和同步的時(shí)鐘;如果使用序列號(hào),則需維護(hù)和校驗(yàn)雙邊計(jì)數(shù)器。實(shí)體A和B在MAC函數(shù)和使用KAB作為該MAC函數(shù)密鑰的方法上應(yīng)一致。MAC函數(shù)可參照ISO/IEC9797規(guī)范。密鑰協(xié)商機(jī)制3如圖3所示。密鑰協(xié)商機(jī)制3密鑰創(chuàng)建(A1.1):實(shí)體A隨機(jī)并秘密產(chǎn)生r(r在S1中),計(jì)算F(r,g),按KAB=F(r,pB)計(jì)算共享秘密密鑰。實(shí)體A使用共享秘密密鑰KAB對(duì)發(fā)送者實(shí)體A的區(qū)分標(biāo)識(shí)符及可選的TVP(時(shí)間戳或序列號(hào))的級(jí)聯(lián),計(jì)算出MAC。密鑰權(quán)標(biāo)簽名(A1.2):實(shí)體A用其私有簽名轉(zhuǎn)換SA對(duì)MAC進(jìn)行簽名。實(shí)體A形成密鑰權(quán)標(biāo),它由發(fā)送者實(shí)體A的區(qū)分標(biāo)識(shí)符、密鑰輸入F(r,g)、TVP(可選)、已簽名的MAC和一些可選數(shù)據(jù)組成,即KTA1=A||F(r,g)||TVP||SA(MACKAB(A||TVP))||Text1然后將它發(fā)送給實(shí)體B。密鑰創(chuàng)建(B1.1):實(shí)體B從接收到的密鑰權(quán)標(biāo)中提取出F(r,g),并用其私鑰協(xié)商密鑰hB計(jì)算共享秘密密鑰,KAB=F(hB,F(r,g))。實(shí)體B使用共享秘密密鑰KAB對(duì)發(fā)送者實(shí)體A的區(qū)分標(biāo)識(shí)符和(可選)TVP計(jì)算出MAC。簽名驗(yàn)證(B1.2):實(shí)體B使用發(fā)送者的公開驗(yàn)證轉(zhuǎn)換VA驗(yàn)證實(shí)體A的簽名以及接收到的密鑰權(quán)標(biāo)KTA1的完整性和來(lái)源。然后驗(yàn)證權(quán)標(biāo)的及時(shí)性(通過檢查(可選)TVP)。1:交互次數(shù)為1.2:該機(jī)制提供從實(shí)體A到實(shí)體B的顯式密鑰鑒別和從實(shí)體B到實(shí)體A的隱式密鑰鑒別。3:該機(jī)制提供從實(shí)體A到實(shí)體B的密鑰確認(rèn)。注4:該機(jī)制是一個(gè)密鑰協(xié)商機(jī)制,它建立的密鑰是實(shí)體A提供的隨機(jī)值r和實(shí)體B的私鑰協(xié)商密鑰的單向函數(shù),如第8章所描述,實(shí)體A可在選取r的值之前就得到實(shí)體B的公鑰,實(shí)體A可選擇所建立密鑰的s位,代價(jià)是在發(fā)現(xiàn)實(shí)體B的公鑰和發(fā)送KTA的間隔中,為r產(chǎn)生2s個(gè)備選值。5:(可選)TVP防止從實(shí)體A向?qū)嶓wB的密鑰權(quán)標(biāo)重放。6:如果Text1被用來(lái)傳送實(shí)體A的公鑰證書,那么第11.3的要求2可放寬到實(shí)體B擁有一個(gè)已鑒別的CA公開密鑰副本。密鑰協(xié)商機(jī)制4該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體彼此不知道對(duì)方身份,且在線交互兩次的場(chǎng)景,實(shí)體A和B事先沒有交換密鑰信息,通過采用聯(lián)合密鑰控制方法,經(jīng)兩次交互建立共享秘密密鑰。該機(jī)制既不提供實(shí)體鑒別也不提供密鑰鑒別。密鑰協(xié)商機(jī)制4如圖4所示。密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A隨機(jī)并秘密產(chǎn)生rA(rA在S1中),計(jì)算F(rA,g),構(gòu)造密鑰權(quán)標(biāo)KTA1=F(rA,g)||Text1,然后發(fā)給實(shí)體B。密鑰權(quán)標(biāo)創(chuàng)建(B1):實(shí)體B隨機(jī)并秘密產(chǎn)生rB(rB在S1中),計(jì)算F(rB,g),構(gòu)造密鑰權(quán)標(biāo)KTB1=F(rB,g)||Text2,然后發(fā)給實(shí)體A。密鑰創(chuàng)建(A2):實(shí)體A從收到的密鑰權(quán)標(biāo)KTB1中提取F(rB,g),并計(jì)算共享密鑰KAB=F(rA,F(rB,g))。密鑰創(chuàng)建(B2):實(shí)體B從收到的密鑰權(quán)標(biāo)KTA1中提取F(rA,g),并計(jì)算共享密鑰KAB=F(rB,F(rA,g))。1:交互次數(shù)為2.2:該機(jī)制不提供顯式或隱式密鑰鑒別,但該機(jī)制可用于通過其它方式核實(shí)密鑰權(quán)標(biāo)的真實(shí)性的情況。例如,可通過第二通信信道在實(shí)體間交換密鑰權(quán)標(biāo)的雜湊碼。參見公鑰傳送機(jī)制2.3:可采用單獨(dú)的信道或方法核實(shí)密鑰權(quán)標(biāo)。?4:該機(jī)制不提供密鑰確認(rèn)。5:該機(jī)制是一個(gè)密鑰協(xié)商機(jī)制,它建立的密鑰是實(shí)體A和實(shí)體B提供的隨機(jī)值rA和rB的單向函數(shù),如第8章所描述,實(shí)體B可在選擇rB的值之前就得到F(rA,g),實(shí)體B可選擇所建立密鑰的s位,代價(jià)是在接收KTA1和發(fā)送KTB1的間隙中,為rB產(chǎn)生2s個(gè)備選值。密鑰協(xié)商機(jī)制4如圖4所示。密鑰協(xié)商機(jī)制4,5,9密鑰協(xié)商機(jī)制5該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體彼此知道對(duì)方身份,且在線交互兩次的場(chǎng)景,通過相互顯式密鑰別和聯(lián)合密鑰控制方法,經(jīng)兩次交互在實(shí)體A和B間建立一個(gè)共享秘密密鑰。應(yīng)滿足以下條件:每個(gè)實(shí)體X有一個(gè)私鑰協(xié)商密鑰hX(hX在S1中),和一個(gè)公鑰協(xié)商密鑰pX=F(hX,g)。每個(gè)實(shí)體可獲取其它實(shí)體的已鑒別的公鑰協(xié)商密鑰副本,可通過第13章所描述的機(jī)制實(shí)現(xiàn)兩個(gè)實(shí)體有共同的單向函數(shù)w。密鑰協(xié)商機(jī)制5如圖4所示。密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A隨機(jī)和秘密地產(chǎn)生rA(rA在S1中),計(jì)算F(rA,g),并將密鑰權(quán)標(biāo)KTA1=F(rA,g)||Text1發(fā)送給實(shí)體B。密鑰權(quán)標(biāo)創(chuàng)建(B1):實(shí)體B隨機(jī)和秘密地產(chǎn)生rB(rB在S1中),計(jì)算F(rB,g),并將密鑰權(quán)標(biāo)KTB1=F(rB,g)||Text2發(fā)送給實(shí)體A。密鑰創(chuàng)建(B2):實(shí)體B從收到的密鑰權(quán)標(biāo)KTA1中提取F(rA,g),并計(jì)算共享秘密密鑰:KAB=w(F(hB,F(rA,g))||F(rB,pA)),其中w為單向函數(shù)。密鑰創(chuàng)建(A2):實(shí)體A從收到的密鑰權(quán)標(biāo)KTB1中提取F(rB,g),并計(jì)算共享秘密密鑰:KAB=w(F(rA,pB)||F(hA,F(rB,g)))。1:交互次數(shù)為2。2:該機(jī)制提供相互隱式密鑰鑒別。如果數(shù)據(jù)域Text2含有一個(gè)由密鑰KAB對(duì)已知數(shù)據(jù)計(jì)算得到的MAC,則該機(jī)制提供實(shí)體B到實(shí)體A的顯式密鑰鑒別。3:如果數(shù)據(jù)域Text2含有一個(gè)由密鑰KAB對(duì)已知數(shù)據(jù)計(jì)算得到,則該機(jī)制提供實(shí)體B到實(shí)體A的密鑰確認(rèn)。4:該機(jī)制是一個(gè)密鑰協(xié)商機(jī)制,它建立的密鑰是實(shí)體A和實(shí)體B提供的隨機(jī)值rA和rB的單向函數(shù)。5:如果Text1和Text2分別包含實(shí)體A和實(shí)體B的密鑰協(xié)商密鑰的公鑰證書,則第11.5的要求2替代為:每個(gè)實(shí)體擁有一個(gè)已鑒別的CA公開驗(yàn)證密鑰副本。6:在某種情況下該機(jī)制可能會(huì)遭受源替換攻擊,考慮到這種情況,可以這樣來(lái)避免這種攻擊:作為提交公鑰給CA獲得證書的一部分,提交者應(yīng)證明其持有相應(yīng)私鑰。該類攻擊對(duì)于基于橢圓曲線的協(xié)議更為嚴(yán)重。密鑰協(xié)商機(jī)制6該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體彼此鑒別對(duì)方身份,且在線交互兩次的場(chǎng)景,基于同時(shí)使用非對(duì)稱加密方案和簽名系統(tǒng),通過相互隱式密鑰鑒別和聯(lián)合密鑰控制,經(jīng)兩次交互在實(shí)體A和B間建立一個(gè)共享密鑰。應(yīng)滿足以下要求:實(shí)體A具有非對(duì)稱加密系統(tǒng)及變換(EA,DA)。實(shí)體B具有非對(duì)稱簽名系統(tǒng)及變換(SB,VB)。實(shí)體A可得到經(jīng)鑒別的實(shí)體B公鑰驗(yàn)證變換VB副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。實(shí)體B可得到經(jīng)鑒別的實(shí)體A的公鑰加密變換EA副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。密鑰協(xié)議機(jī)制6如圖5所示。密鑰協(xié)商機(jī)制6密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A產(chǎn)生隨機(jī)數(shù)rA,創(chuàng)建密鑰權(quán)標(biāo)KTA1=rA||Text1,并將其發(fā)送給實(shí)體B。密鑰權(quán)標(biāo)處理(B1):實(shí)體B產(chǎn)生隨機(jī)數(shù)rB,使用其私有簽名變換SB,對(duì)數(shù)據(jù)塊簽名,該數(shù)據(jù)塊的組成是:實(shí)體A的區(qū)分標(biāo)識(shí)符、隨機(jī)數(shù)rA、隨機(jī)數(shù)rB和可選數(shù)據(jù)文本Text2,得到BS=SB(A||rA||rB||Text2)。然后實(shí)體B用實(shí)體A的基于公鑰加密變換EA對(duì)數(shù)據(jù)塊加密,該數(shù)據(jù)塊的組成是:區(qū)分標(biāo)識(shí)符(可選)、簽名塊BS及可選的數(shù)據(jù)Text3,實(shí)體B將密鑰權(quán)標(biāo)KTB1=EA(||BS||Text3)||Text4返回給實(shí)體A,或?qū)嶓wB可包括其標(biāo)識(shí)符B:KTB1=EA(B||BS||Text3)||Text4。密鑰創(chuàng)建(B2): 經(jīng)密鑰派生函數(shù),共享秘密密鑰由簽名塊BS中實(shí)體B所有或其中一部分簽名Σ組成(見第4章注2)。密鑰權(quán)標(biāo)處理(A2):實(shí)體A使用其私有解密變換DA解密密鑰權(quán)標(biāo)KTB1,檢查發(fā)送者的標(biāo)識(shí)(可選),并采用實(shí)體B的公鑰驗(yàn)證變換VB驗(yàn)證簽名塊BS的數(shù)字簽名。然后實(shí)體A檢查接收者標(biāo)識(shí)符和簽名塊BS中隨機(jī)數(shù)rA是否等于在發(fā)送的權(quán)標(biāo)KTA1中的隨機(jī)數(shù)rA。如果所有檢查都成功,實(shí)體A接受所有采用密鑰派生函數(shù)的簽名塊BS中實(shí)體B所有或其中一部分簽名作為共享秘密密鑰。 1:交互次數(shù)為2。2:簽名Σ部分作為實(shí)體A和B間建立的秘密密鑰的基礎(chǔ)需要事先商定。3:該機(jī)制提供從實(shí)體A與實(shí)體B的隱式密鑰鑒別和從實(shí)體B向?qū)嶓wA的顯式密鑰鑒別。4:如果Text3包含用密鑰KAB對(duì)已知數(shù)據(jù)計(jì)算出的MAC,則該機(jī)制提供實(shí)體B向?qū)嶓wA密鑰確認(rèn)。5:該機(jī)制是一個(gè)密鑰協(xié)商機(jī)制,它建立的密鑰是由實(shí)體A和實(shí)體B提供的隨機(jī)值rA和rB的單向函數(shù),如第8章所討論,實(shí)體B可在選擇rB的值之前就得到F(rA,g),實(shí)體B可選擇所建立密鑰的s位,代價(jià)是在接收KTA1和發(fā)送KTB1的間隙中,為rB產(chǎn)生2s個(gè)備選值。6:如果Text1和Text4分別包含有實(shí)體A加密密鑰的公鑰證書的和實(shí)體B驗(yàn)證密鑰的公鑰證書,則第11.6節(jié)的要求3和4可放寬到:每個(gè)實(shí)體擁有已鑒別的CA公開驗(yàn)證密鑰副本。7:該機(jī)制有一個(gè)顯著特征,實(shí)體B的身份可對(duì)竊聽者匿名,這是無(wú)線通信環(huán)境中有潛在意義的屬性。密鑰協(xié)商機(jī)制7該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體采用GB/T15843.3規(guī)定的三輪交互鑒別機(jī)制彼此鑒別對(duì)方身份,且在線交互兩次的場(chǎng)景,通過相互鑒別在實(shí)體A和B間建立共享秘密密鑰。應(yīng)滿足以下要求:每個(gè)實(shí)體X有一個(gè)非對(duì)稱簽名系統(tǒng)(SX,VX)。實(shí)體雙方均可得到另一實(shí)體已鑒別的公開驗(yàn)證變換副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。兩實(shí)體使用同一MAC函數(shù)。密鑰協(xié)商機(jī)制7如圖6所示。密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A隨機(jī)及秘密生成rA(rA在S1中),計(jì)算F(rA,g),構(gòu)建密鑰權(quán)標(biāo)KTA1=F(rA,g)||Text1,并將其發(fā)送給實(shí)體B。密鑰權(quán)標(biāo)處理及密鑰創(chuàng)建(B1):實(shí)體B隨機(jī)及秘密生成rB,(rB在S1中),計(jì)算F(rB,g),計(jì)算共享密鑰:KAB=F(rB,F(xiàn)(rA,g)),并構(gòu)建簽名密鑰權(quán)標(biāo)KTB1=SB(DB1)||MACKAB(DB1)||Text3,其中DB1=F(rB,g)||F(rA,g)||A||Text2,并送回給實(shí)體A。通過在KTB1中包含MACKAB(DB1)提供密鑰確認(rèn)。如果雙方有一個(gè)共同的對(duì)稱加密系統(tǒng),用KTB1=||EKAB(SB(DB1))取代KTB1提供密鑰確認(rèn),其中E是對(duì)稱加密函數(shù)。密鑰權(quán)標(biāo)處理(A2):實(shí)體A使用實(shí)體B的公開驗(yàn)證密鑰驗(yàn)證實(shí)體B對(duì)密鑰權(quán)標(biāo)KTB1的簽名,然后驗(yàn)證A的區(qū)分標(biāo)識(shí)符以及步驟(A1)中F(rA,g)值。如果檢查成功,實(shí)體A計(jì)算共享秘密密鑰:KAB=F(rA,F(xiàn)(rB,g))。實(shí)體A使用KAB,驗(yàn)證MACKAB(DB1),構(gòu)造經(jīng)簽名的密鑰權(quán)標(biāo):KTA2=SA(DB2)||MACKAB(DB2)||Text5,其中DB2=F(rA,g)||F(rB,g)||B||Text4,并發(fā)送給實(shí)體B。通過在KTA2中包含MACKAB(DB2)提供密鑰確認(rèn)。也可用KTA2=EKAB(SA(DB2))取代KTA2提供密鑰確認(rèn)。密鑰權(quán)標(biāo)處理(B2):實(shí)體B使用實(shí)體A的公開驗(yàn)證密鑰驗(yàn)證實(shí)體A對(duì)密鑰權(quán)標(biāo)KTA2的簽名,然后驗(yàn)證實(shí)體B的區(qū)分標(biāo)識(shí)符以及F(rA,g)和F(rB,g)的值是否與之前協(xié)商的一致。如果驗(yàn)證成功,實(shí)體B使用KAB=F(rB,F(rA,g))驗(yàn)證MACKAB(DB2)。1:交互次數(shù)為3。2:該機(jī)制提供相互顯式密鑰鑒別和相互實(shí)體鑒別。3:該機(jī)制提供相互密鑰確認(rèn)。4:該機(jī)制是一個(gè)密鑰協(xié)商機(jī)制,它建立的密鑰是實(shí)體A和實(shí)體B提供的隨機(jī)值rA和rB的單向函數(shù),如第8章所討論,實(shí)體B可在選擇rB的值之前就得到F(rA,g),實(shí)體B可選擇所建立密鑰的s位,代價(jià)是在接收KTA1和發(fā)送KTB1的間隙中,為rB產(chǎn)生2s個(gè)備選值。5:該機(jī)制符合GB/T15843.3[3]。KTA1,KTB1和KTA2與GB/T15843.3的第5.2.2描述的三輪交互鑒別機(jī)制的權(quán)標(biāo)相同[3]。TVP也相同,在下列使用上做些改變:將TVPRA(GB/T15843.3的三個(gè)權(quán)標(biāo)[3],5.2.2)設(shè)置為F(rA,g);以及將TVPRB(GB/T15843.3的三個(gè)權(quán)標(biāo)[3],5.2.2)設(shè)置為F(rB,g)。6:如果數(shù)據(jù)域Text1和Text3(或Text5和Text3)分別包含實(shí)體A和B的公鑰證書,則第11.7的第二個(gè)要求可放寬到:每個(gè)實(shí)體擁有一份已鑒別的CA公開驗(yàn)證密鑰副本。7:如果使用帶有文本雜湊的簽名機(jī)制,則F(rA,g)及/或F(rB,g)不需在密鑰權(quán)標(biāo)KTB1中發(fā)送。同樣,F(xiàn)(rA,g)和F(rB,g)不需在密鑰權(quán)標(biāo)KTA2中發(fā)送,但在各簽名的計(jì)算中應(yīng)包括隨機(jī)數(shù)。8:密鑰確認(rèn)也可通過加密簽名中的一部分來(lái)實(shí)現(xiàn),在這種情況下,在第11.7中的第三要求可不采用。密鑰協(xié)商機(jī)制7密鑰協(xié)商機(jī)制8該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體采用橢圓曲線密碼算法且在線交互一次的場(chǎng)景,通過相互隱式密鑰鑒別及一次交互在實(shí)體A和B間建立一個(gè)共享秘密密鑰。應(yīng)滿足以下要求:每個(gè)實(shí)體X在S1中都有一個(gè)私鑰協(xié)商密鑰hX和一個(gè)公鑰協(xié)商密鑰pX=F(hX,g)。每個(gè)實(shí)體可得到另一個(gè)實(shí)體已鑒別的公鑰協(xié)商密鑰副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。密鑰協(xié)商機(jī)制8如圖2所示。l和j值用于余子式乘法(見第7章)。還需采用一個(gè)函數(shù)將一橢圓點(diǎn)P轉(zhuǎn)換為整數(shù),例如,函數(shù)π(P)=(X(P)mod2ρ/2)+2ρ/2,其中ρ=log2n,X(P)為點(diǎn)P的x坐標(biāo)。密鑰權(quán)標(biāo)創(chuàng)建(A1): 實(shí)體A隨機(jī)并秘密地產(chǎn)生rA(rA在S1中),計(jì)算F(rA,g),構(gòu)建密鑰權(quán)標(biāo)KTA1=F(rA,g),并將其發(fā)送給實(shí)體B。密鑰創(chuàng)建(A2):實(shí)體A計(jì)算共享秘密密鑰:KAB=lj(1+π(pB))(F(rA,pB)+π(KTA1)F(hA,pB))密鑰創(chuàng)建(B1):實(shí)體B計(jì)算共享秘密密鑰:KAB=lj(1+π(pB))(F(hB,KTA1)+π(KTA1)F(hB,pA))1:交互次數(shù)為1。2:該機(jī)制提供相互隱式密鑰鑒別。密鑰協(xié)商機(jī)制9該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體采用橢圓曲線密碼算法且在線交互兩次的場(chǎng)景,通過相互隱式密鑰鑒別,經(jīng)兩輪交互在實(shí)體A和實(shí)體B間建立一個(gè)共享秘密密鑰。應(yīng)滿足下面條件:每個(gè)實(shí)體X在S1中有一個(gè)私鑰協(xié)商密鑰hx和一個(gè)公鑰協(xié)商密鑰px=F(hx,g)。每個(gè)實(shí)體可得到另一個(gè)實(shí)體已鑒別的公鑰協(xié)商密鑰副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。密鑰協(xié)商機(jī)制9如圖4所示。l和j值用于余子式乘法(見第7章)。還需采用一個(gè)函數(shù)將一橢圓點(diǎn)P轉(zhuǎn)換為整數(shù),例如,函數(shù)π(P)=(X(P)mod2ρ/2)+2ρ/2,其中ρ=log2n,X(P)為點(diǎn)P的x坐標(biāo)。密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A隨機(jī)及秘密地產(chǎn)生rA(rA在S1中),計(jì)算F(rA,g),構(gòu)建密鑰權(quán)標(biāo)KTA1=F(rA,g),然后發(fā)給實(shí)體B。密鑰權(quán)標(biāo)創(chuàng)建(B1):實(shí)體B隨機(jī)及秘密地產(chǎn)生rB(rB在S1中),計(jì)算F(rB,g),構(gòu)建密鑰權(quán)標(biāo)KTB1=F(rB,g),然后發(fā)給實(shí)體A。密鑰創(chuàng)建(A2):實(shí)體A計(jì)算共享密鑰:KAB=lj(1+π(pB))F(rA,pB)+π(KTA1)F(hA,pB))密鑰創(chuàng)建(B2):實(shí)體B計(jì)算共享密鑰:KAB=lj(1+π(pB))F(hB,KTA1)+π(KTA1)F(hB,pA))1:交互次數(shù)為2。2:該機(jī)制提供相互隱式密鑰鑒別。3:在某些情況下,該機(jī)制可能會(huì)受到源替換攻擊,但可以通過增加延遲檢測(cè)來(lái)避免這種攻擊,其它對(duì)策,可參閱[21]。密鑰協(xié)商機(jī)制10該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體采用SM2橢圓曲線密碼算法且在線交互三次的場(chǎng)景,見GB/T32918.3-2016。該密鑰協(xié)商機(jī)制采用橢圓曲線密碼體制,通過三次交互采用相互隱式密鑰鑒別,在實(shí)體A和實(shí)體B間建立一個(gè)共享密鑰。需滿足下面條件:每個(gè)實(shí)體X在S1中有一個(gè)私鑰協(xié)商密鑰hx和一個(gè)公鑰協(xié)商密鑰px=F(hx,g)。每個(gè)實(shí)體可得到另一個(gè)實(shí)體已鑒別的公鑰協(xié)商密鑰副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。密鑰協(xié)商機(jī)制10如圖7所示。l和j值用于余子式乘法(見第7章)。還需采用一個(gè)函數(shù)將一橢圓點(diǎn)P轉(zhuǎn)換為整數(shù),函數(shù)π(P)=(X(P)&(2「ρ/2-1))+2「ρ/2,其中ρ=「log2n,X(P)為點(diǎn)P的x坐標(biāo)。密鑰協(xié)商機(jī)制10密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A隨機(jī)及秘密地產(chǎn)生rA(rA在S1中),計(jì)算F(rA,g),構(gòu)建密鑰權(quán)標(biāo)KTA1=F(rA,g),然后發(fā)給實(shí)體B。密鑰創(chuàng)建(B1):實(shí)體B隨機(jī)及秘密地產(chǎn)生rB(rB在S1中),計(jì)算F(rB,g),構(gòu)建密鑰權(quán)標(biāo)KTB1=F(rB,g),計(jì)算共享秘密密鑰:KAB=((hB+π(KTB1)rB)l)(pA+π(KTA1)j(KTA1))實(shí)體B計(jì)算密鑰K=kdf(KAB||ZA||ZB)。并進(jìn)一步構(gòu)建MACK(2||Y(KAB)||MACK(X(KAB)||ZA||ZB||KTA1||KTB1)),然后將KTB1及MACK(2||Y(KAB)||MACK(X(KAB)||ZA||ZB||KTA1||KTB1))發(fā)給實(shí)體A。密鑰創(chuàng)建(A2):實(shí)體A計(jì)算共享秘密密鑰:KAB=((hA+π(KTA1)rA)l)(pB+π(KTB1)j(KTB1)),計(jì)算密鑰K=kdf(KAB||ZA||ZB)及MACK(2||Y(KAB)||MACK(X(KAB)||ZA||ZB||KTA1||KTB1))并驗(yàn)證實(shí)體B發(fā)送的內(nèi)容。然后計(jì)算:MACK(3||Y(KAB)||MACK(X(KAB)||ZA||ZB||KTA1||KTB1)),然后將其發(fā)送給實(shí)體B。驗(yàn)證(B2):實(shí)體B計(jì)算MACK(3||Y(KAB)||MACK(X(KAB)||ZA||ZB||KTA1||KTB1))。1:交互次數(shù)為3。2:該機(jī)制提供相互顯式密鑰鑒別。3:附錄E.3給出該機(jī)制的一個(gè)例子。密鑰協(xié)商機(jī)制11該機(jī)制適用于參與協(xié)商密鑰的兩個(gè)實(shí)體中僅有一方知道對(duì)方身份,且在線交互四次的場(chǎng)景,通過四次交互在實(shí)體A和實(shí)體B間建立一個(gè)共享密鑰,應(yīng)滿足下面條件:實(shí)體B有一個(gè)采用(EB,DB)變換的非對(duì)稱加密系統(tǒng)。實(shí)體A可得到公開驗(yàn)證變換的一個(gè)已鑒別副本,用于驗(yàn)證CertB。雙方實(shí)體使用同一密鑰派生函數(shù)kdf。密鑰協(xié)商機(jī)制11如圖8所示。實(shí)體確認(rèn)(A1):實(shí)體A選擇一個(gè)隨機(jī)整數(shù)rA,發(fā)送一個(gè)消息M1=(rA||Text1)給實(shí)體B。?實(shí)體確認(rèn)(B1):實(shí)體B選擇一個(gè)隨機(jī)整數(shù)rB,發(fā)送一個(gè)消息M2=(rB||CertB||Text2)給實(shí)體A。?密鑰權(quán)標(biāo)和密鑰創(chuàng)建(A2):實(shí)體A驗(yàn)證CertB以得到實(shí)體B公鑰的可信副本,并產(chǎn)生一個(gè)隨機(jī)整數(shù)r'A,計(jì)算共享密鑰KAB=kdf(rA,rB,r'A)。然后發(fā)送密鑰權(quán)標(biāo)KTA2=EB(r'A)和MACKAB(M1||KTA2)給實(shí)體B。密鑰創(chuàng)建(B2):實(shí)體B解密KTA2,計(jì)算共享密鑰KAB=kdf(rA,rB,r'A)。計(jì)算MACKAB(M1||KTA2),并與接收到的MAC值進(jìn)行比較。實(shí)體B把MACKAB(M2)發(fā)給實(shí)體A。密鑰驗(yàn)證(A3):實(shí)體A計(jì)算MACKAB(M2),并與接收到的MAC值進(jìn)行比較。1:交互次數(shù)為4。2:該機(jī)制提供實(shí)體B到A的隱式密鑰鑒別。?3:該機(jī)制源于傳輸層安全協(xié)議(TLS),在TLS中密鑰協(xié)商過程稱為TLS握手階段。在TLS中,每個(gè)實(shí)體有一個(gè)“密碼套件”,即實(shí)體支持的一系列算法。作為“密碼套件協(xié)商”過程的一部分,Text1和Text2用來(lái)交換這些密碼套件。密鑰協(xié)商機(jī)制11密鑰協(xié)商機(jī)制12該機(jī)制用于以離線方式在三個(gè)實(shí)體之間協(xié)商共享密鑰,非交互式地采用相互隱式密鑰鑒別在實(shí)體A、B和C間建立一個(gè)共享密鑰,應(yīng)滿足下列條件:每個(gè)實(shí)體X在S1中有一個(gè)密鑰協(xié)商私鑰hX和一個(gè)密鑰協(xié)商公鑰pX=F(hX,g)。每個(gè)實(shí)體可得到其它實(shí)體已鑒別的密鑰協(xié)商公鑰副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。?密碼協(xié)商機(jī)制12如圖9所示。密鑰協(xié)商機(jī)制12密鑰創(chuàng)建(A1):實(shí)體A使用自己的私鑰協(xié)商密鑰hA、實(shí)體B的公鑰協(xié)商密鑰pB、實(shí)體C的公鑰協(xié)商密鑰pC計(jì)算共享秘密密鑰KABC=FP(hA,pB,pC)。?密鑰創(chuàng)建(B1):實(shí)體B用自己的私鑰協(xié)商密鑰hB、實(shí)體A的公鑰協(xié)商密鑰pA、實(shí)體C的公鑰協(xié)商密鑰pC計(jì)算共享秘密密鑰KABC=FP(hB,pC,pA)。密鑰創(chuàng)建(C1):實(shí)體C用自己的私鑰協(xié)商密鑰hC、實(shí)體A的公鑰協(xié)商密鑰pA、實(shí)體B的公鑰協(xié)商密鑰pB計(jì)算共享秘密密鑰KABC=FP(hC,pA,pB)。?根據(jù)第10章中規(guī)定的函數(shù)F和FP條件,密鑰KABC的三個(gè)計(jì)算值相等。1:交互次數(shù)為0。2:該機(jī)制提供相互隱式密鑰鑒別。然而,這種零交互協(xié)議總是產(chǎn)生相同的密鑰,一種消除該問題帶來(lái)隱患的辦法是確保該密鑰只被使用一次。此外,每次使用該密鑰時(shí)并用一個(gè)唯一初始向量也可以解決該問題。?3:該機(jī)制不提供密鑰確認(rèn)。?4:這是一個(gè)密鑰協(xié)商機(jī)制,它建立的密鑰分別是實(shí)體A、B、C私鑰協(xié)商密鑰的單向函數(shù)。密鑰傳遞密鑰傳遞機(jī)制1該機(jī)制適用于參與密鑰傳遞的兩個(gè)實(shí)體中僅有一方知道對(duì)方身份,且只需在線交互一次的場(chǎng)景,通過實(shí)體B到實(shí)體A的隱式密鑰鑒別,經(jīng)一次交互實(shí)體A將一個(gè)秘密密鑰傳給實(shí)體B,應(yīng)滿足以下幾個(gè)要求:實(shí)體B有一個(gè)非對(duì)稱加密系統(tǒng)(EB,DB)實(shí)體A能訪問實(shí)體B已鑒別的公開加密變換EB副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。?可選的TVP可為一時(shí)間戳或一序列號(hào),如果使用時(shí)間戳,那么實(shí)體A和實(shí)體B必須保持時(shí)鐘同步;如果使用序列號(hào),那么實(shí)體A和實(shí)體B必須維護(hù)雙邊計(jì)數(shù)器。密鑰傳遞機(jī)制1如圖10所示。密鑰傳遞機(jī)制1密鑰權(quán)標(biāo)創(chuàng)建(A1):假設(shè)K是實(shí)體A希望安全傳遞給實(shí)體B的一個(gè)秘密密鑰。實(shí)體A創(chuàng)建一個(gè)密鑰數(shù)據(jù)塊,該數(shù)據(jù)塊包含其可區(qū)分標(biāo)識(shí)符(可選)、密鑰K、一個(gè)可選的TVP和一個(gè)可選的數(shù)據(jù)域Text1。實(shí)體A使用接收者的公開加密變換EB對(duì)該密鑰數(shù)據(jù)塊加密,然后將密鑰權(quán)標(biāo)KTA1=EB(A||K||TVP||Text1)||Text2發(fā)送給實(shí)體B。密鑰權(quán)標(biāo)解構(gòu)(B1):實(shí)體B使用自己的私有解密變換DB將接收到的密鑰權(quán)標(biāo)加密部分進(jìn)行解密,恢復(fù)密鑰K,檢查可選的TVP,將恢復(fù)的密鑰K與聲稱是發(fā)送方的實(shí)體A相關(guān)聯(lián)。1:交互次數(shù)為1。2:由于只有實(shí)體B才能恢復(fù)密鑰K,該機(jī)制提供從實(shí)體B到實(shí)體A的隱式密鑰鑒別。3:該機(jī)制不提供密鑰確認(rèn)。4:實(shí)體A可選擇密鑰。5:由于實(shí)體B從未經(jīng)鑒別的實(shí)體A接收到密鑰K,實(shí)體B對(duì)密鑰K的安全使用限于不需對(duì)實(shí)體A做鑒別的功能。例如,可執(zhí)行解密和產(chǎn)生消息鑒別碼,但不執(zhí)行加密和驗(yàn)證消息鑒別碼。??密鑰傳遞機(jī)制2該密鑰傳遞機(jī)制是GB/T15843.3[3]一次交互實(shí)體鑒別機(jī)制的擴(kuò)展,它通過實(shí)體A到實(shí)體B的顯式密鑰鑒別,實(shí)體B到實(shí)體A的隱式密鑰鑒別,從實(shí)體A傳遞一個(gè)經(jīng)加密和簽名的秘密密鑰給實(shí)體B,應(yīng)滿足以下條件:實(shí)體A有一個(gè)非對(duì)稱簽名系統(tǒng)(SA,VA)。實(shí)體B有一個(gè)非對(duì)稱加密系統(tǒng)(EB,DB)。實(shí)體A能夠訪問實(shí)體B已鑒別的公開加密變換EB副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。實(shí)體B能夠訪問實(shí)體A已鑒別的公開驗(yàn)證變換VA副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。可選的TVP是一時(shí)間戳或一序列號(hào),如果使用時(shí)間戳,那么實(shí)體A和實(shí)體B必須保持時(shí)鐘同步,或使用一可信第三方時(shí)間戳機(jī)構(gòu);如使用序列號(hào),那么實(shí)體A和實(shí)體B必須維護(hù)雙邊計(jì)數(shù)器。密鑰傳遞機(jī)制2如圖11所示。??密鑰加密(A1.1):假設(shè)K是實(shí)體A希望安全傳遞給實(shí)體B的一個(gè)密鑰,實(shí)體A形成一個(gè)密鑰數(shù)據(jù)塊,該數(shù)據(jù)塊包含發(fā)送方可區(qū)分識(shí)別符、密鑰K、和一個(gè)可選數(shù)據(jù)域Text1。實(shí)體A用實(shí)體B的公開加密變換EB對(duì)密鑰數(shù)據(jù)塊進(jìn)行加密,形成加密數(shù)據(jù)塊BE=EB(A||K||Text1)。密鑰權(quán)標(biāo)創(chuàng)建(A1.2):實(shí)體A創(chuàng)建權(quán)標(biāo)數(shù)據(jù)塊,包括接收者的可區(qū)分識(shí)別符、可選的TVP(時(shí)間戳或序列號(hào)),經(jīng)加密的數(shù)據(jù)塊BE和可選的數(shù)據(jù)域Text2。實(shí)體A用其私有簽名變換SA簽署數(shù)據(jù),附加上可選的Text3,然后形成密鑰權(quán)標(biāo)KTA1=SA(B||TVP||BE||Text2)||Text3,發(fā)送給實(shí)體B。密鑰權(quán)標(biāo)驗(yàn)證(B1.1):實(shí)體B用發(fā)送方的公開驗(yàn)證變換VA來(lái)驗(yàn)證接收的密鑰權(quán)標(biāo)中的數(shù)字簽名,然后實(shí)體B檢查KTA1中的識(shí)別符和可選的TVP。密鑰解密(B1.2):實(shí)體B用其私有解密變換DB解密塊BE,然后將包含在塊BE中的實(shí)體A的識(shí)別符和簽名實(shí)體的身份進(jìn)行比較,如果所有的檢查成功,那么實(shí)體B將接受密鑰K。1:交互次數(shù)為1。?2:該機(jī)制提供了實(shí)體A到實(shí)體B的的實(shí)體鑒別,該機(jī)制還提供從實(shí)體B到實(shí)體A的隱式密鑰鑒別。?3:該機(jī)制提供了實(shí)體A到實(shí)體B的密鑰確認(rèn)。實(shí)體B確信它與實(shí)體A分享正確的密鑰,但實(shí)體A在它收到實(shí)體B用密鑰K加密答復(fù)之后,才能確信實(shí)體B已經(jīng)收到該密鑰。?4:可選的TVP提供實(shí)體A到實(shí)體B的實(shí)體鑒別,并防止密鑰權(quán)標(biāo)重放。為了防止密鑰數(shù)據(jù)塊BE的重放,需在Text1中增加一個(gè)TVP。5:實(shí)體A可選擇密鑰KA,因?yàn)樗前l(fā)起實(shí)體。類似的,實(shí)體B也能選擇密鑰KB。聯(lián)合密鑰控制可以通過將實(shí)體A和實(shí)體B的密鑰KA和KB結(jié)合起來(lái)(可通過這個(gè)機(jī)制的兩個(gè)例子傳遞),形成一個(gè)共享秘密密鑰KAB。聯(lián)合密鑰控制需額外的一次交互。這種結(jié)合應(yīng)是單向的,否則實(shí)體A就能夠選擇共享秘密密鑰。這種機(jī)制可被分類為密鑰協(xié)商機(jī)制。?6:實(shí)體A的可區(qū)分標(biāo)識(shí)符包括在被加密的塊BE中,以防止實(shí)體A的加密密鑰塊被另一實(shí)體盜用。抵抗該攻擊的方法是要求實(shí)體B比較實(shí)體A的標(biāo)識(shí)符和實(shí)體A對(duì)權(quán)標(biāo)的簽名。7:與GB/T15843.3[3]一致,采用公鑰算法KTA1的實(shí)體鑒別和單次鑒別機(jī)制的權(quán)標(biāo)發(fā)送兼容。通過使用BE||Text2取代GB/T15843.3機(jī)制中的Text1,該權(quán)標(biāo)能夠幫助密鑰K的傳送。8:數(shù)據(jù)域Text3可用來(lái)傳遞實(shí)體A的公鑰證書,在這種情況下,第12.2的第四個(gè)要求可放寬為,實(shí)體B擁有CA一個(gè)已鑒別的公開驗(yàn)證密鑰副本。密鑰傳遞機(jī)制2密鑰傳遞機(jī)制3該密鑰傳遞機(jī)制中,實(shí)體A采用單邊密鑰確認(rèn)通過一次交互將經(jīng)簽名及加密的秘密密鑰傳給實(shí)體B。應(yīng)滿足以下幾個(gè)要求:實(shí)體A有一個(gè)非對(duì)稱的簽名系統(tǒng)(SA,VA)。實(shí)體B有一個(gè)非對(duì)稱的加密系統(tǒng)(EB,DB)。實(shí)體A得到實(shí)體B已鑒別的公開加密變換EB副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。實(shí)體B得到實(shí)體A已鑒別的公開鑒別變換VA副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)??蛇x的TVP是一時(shí)間戳或一序列號(hào),如果使用時(shí)間戳,那么實(shí)體A和實(shí)體B必須保持同步時(shí)鐘;如果使用序列號(hào),那么實(shí)體A和實(shí)體B必須維護(hù)雙邊計(jì)數(shù)器。密鑰傳遞機(jī)制3如圖12所示。密鑰傳遞機(jī)制3密鑰塊簽名(A1.1):假設(shè)實(shí)體A希望將一個(gè)秘密密鑰K安全傳遞給實(shí)體B,實(shí)體A形成一個(gè)密鑰數(shù)據(jù)塊,該數(shù)據(jù)塊包含接收方的可區(qū)分識(shí)別符、密鑰K、可選的TVP(序列號(hào)或時(shí)間戳)和可選數(shù)據(jù),然后用其私有簽名變換SA對(duì)密鑰塊進(jìn)行簽名,產(chǎn)生簽名后的數(shù)據(jù)塊BS=SA(B||K||TVP||Text1)。密鑰權(quán)標(biāo)創(chuàng)建(A1.2):實(shí)體A構(gòu)建權(quán)標(biāo)數(shù)據(jù)塊,它包括已簽名的塊BS和可選項(xiàng)Text2。實(shí)體A用接收者的公開加密變換EB加密權(quán)標(biāo)數(shù)據(jù)塊,附上可選的Text3,然后形成密鑰權(quán)標(biāo)KTA1=EB(BS||Text2)||Text3,并送給實(shí)體B。密鑰權(quán)標(biāo)解密(B1.1):實(shí)體B使用其私有解密變換DB解出接收到的密鑰權(quán)標(biāo)加密部分。密鑰塊驗(yàn)證(B1.2):實(shí)體B使用發(fā)送方的公開驗(yàn)證變換VA驗(yàn)證BS的完整性和來(lái)源,確認(rèn)它確實(shí)是權(quán)標(biāo)的接收者(通過檢查BS中的標(biāo)識(shí)符),并可選擇地確認(rèn)TVP在可接受的范圍內(nèi)(驗(yàn)證權(quán)標(biāo)的時(shí)間性),如所有的驗(yàn)證都成功,實(shí)體B將接受該密鑰K。1:交互次數(shù)為1。2:該機(jī)制提供實(shí)體A到實(shí)體B的的實(shí)體鑒別和從實(shí)體B到實(shí)體A的隱式密鑰鑒別。?3:該機(jī)制提供實(shí)體A到實(shí)體B的密鑰確認(rèn),實(shí)體B確信它與實(shí)體A分享正確的密鑰,但實(shí)體A在它收到實(shí)體B用密鑰K加密答復(fù)之后,才能確信實(shí)體B已經(jīng)收到該密鑰。?4:實(shí)體A可選擇密鑰。5:實(shí)體B的可區(qū)分標(biāo)識(shí)符包括在被簽名的密鑰塊BS中,來(lái)明確表明密鑰的接收者,從而防止由實(shí)體B簽名的塊BS被濫用。?6:數(shù)據(jù)域Text3能用來(lái)傳遞實(shí)體A的公鑰證書,在這種情況下,第12.3的第四個(gè)要求可被放寬為實(shí)體B擁有CA已鑒別的公開驗(yàn)證密鑰副本。7:如果將該密鑰傳遞機(jī)制的兩種實(shí)施方法結(jié)合起來(lái)(從實(shí)體A到實(shí)體B,從實(shí)體B到實(shí)體A),那么就可以提供相互實(shí)體鑒別和聯(lián)合密鑰控制(取決于可選項(xiàng)TVP的使用)。密鑰傳遞機(jī)制4該機(jī)制適用于參與密鑰傳遞的兩個(gè)實(shí)體彼此鑒別對(duì)方身份,且在線交互兩次的場(chǎng)景,基于GB/T15843.3中的兩次交互鑒別機(jī)制,將密鑰從實(shí)體B傳遞到實(shí)體A。應(yīng)滿足以下要求:實(shí)體A有一個(gè)非對(duì)稱加密系統(tǒng)(EA,DA)。實(shí)體B有一個(gè)非對(duì)稱簽名系統(tǒng)(SB,VB)。實(shí)體A可得到實(shí)體B已鑒別的公鑰驗(yàn)證變換VB副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。實(shí)體B可得到實(shí)體A已鑒別的公鑰加密變換EA副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。密鑰傳遞機(jī)制4如圖13所示。密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A產(chǎn)生一個(gè)隨機(jī)數(shù)rA,將rA和可選的數(shù)據(jù)域Text1組成密鑰權(quán)標(biāo)KTA1,KTA1=rA||Text1并把它送給實(shí)體B。密鑰塊加密(B1.1):假設(shè)實(shí)體B希望將一個(gè)秘密密鑰K安全傳遞到實(shí)體A,實(shí)體B構(gòu)建一個(gè)由發(fā)送者的區(qū)分標(biāo)識(shí)符、密鑰K和一可選的數(shù)據(jù)域Text2組成的密鑰數(shù)據(jù)塊。,實(shí)體B用實(shí)體A的公鑰變換EA將密鑰數(shù)據(jù)塊加密,構(gòu)成加密塊BE=EA(B||K||Text2)。密鑰權(quán)標(biāo)創(chuàng)建(B1.2):實(shí)體B可選地生成隨機(jī)數(shù)rB,并形成權(quán)標(biāo)數(shù)據(jù)塊,該權(quán)標(biāo)數(shù)據(jù)塊由接收者的區(qū)分標(biāo)識(shí)符、步驟A1中接收的隨機(jī)數(shù)rA、新的隨機(jī)數(shù)rB(可選)、加密塊BE以及可選的數(shù)據(jù)域Text3組成,然后實(shí)體B用其私鑰簽名變換SB形成簽名,附加可選的Text4,產(chǎn)生密鑰權(quán)標(biāo)KTB1=SB(A||rA||rB||BE||Text3),并送給實(shí)體A。密鑰權(quán)標(biāo)驗(yàn)證(A2.1):實(shí)體A使用發(fā)送者的公鑰驗(yàn)證變換VB驗(yàn)證接收到的公鑰權(quán)標(biāo)KTB1中的數(shù)字簽名,然后實(shí)體A檢查KTB1中的區(qū)分標(biāo)識(shí)符,并檢查接收到的值rA與步驟A1發(fā)送的隨機(jī)數(shù)是否一致。密鑰塊解密(A2.2):實(shí)體A用其私鑰解密變換DA解密加密塊BE,然后驗(yàn)證BE中的發(fā)送者區(qū)分標(biāo)識(shí)符。如所有檢查都成功,實(shí)體A接受該密鑰K。1:交互次數(shù)為2。2:該機(jī)制提供從實(shí)體A到實(shí)體B的隱式密鑰鑒別。3:該機(jī)制提供實(shí)體B到實(shí)體A的密鑰確認(rèn),實(shí)體A確信它與實(shí)體B分享正確的密鑰,但實(shí)體B在它收到實(shí)體A用密鑰K加密答復(fù)之后,才能確信實(shí)體A已經(jīng)收到該密鑰。?4:實(shí)體B可選擇密鑰。5:權(quán)標(biāo)KTA1和KTB1與GB/T15843.3的第5.1.2中所描述的兩次交互鑒別機(jī)制里發(fā)送的權(quán)標(biāo)一致(注意此時(shí)實(shí)體A和實(shí)體B的角色互換),通過使用BE||Text3取代GB/T15843.3機(jī)制中的Text2,該權(quán)標(biāo)能夠幫助密鑰K的傳送。6:如果該密鑰傳遞機(jī)制在兩個(gè)實(shí)體間并行執(zhí)行兩次,那么得到的相互密鑰傳遞機(jī)制與GB/T15843.3中第5.2.3所描述的機(jī)制一致。7:為了與GB/T15843.3保持一致性,將數(shù)據(jù)域rB包含在內(nèi)。但由于KTB1中存在BE,,rB在此機(jī)制中就不再是必須的,而是可選的。密鑰傳遞機(jī)制4密鑰傳遞機(jī)制5該機(jī)制適用于參與密鑰傳遞的兩個(gè)實(shí)體采用GB/T15843.3規(guī)定的三次交互鑒別機(jī)制彼此鑒別對(duì)方身份,且在線交互三次的場(chǎng)景,通過相互實(shí)體鑒別的和密鑰確認(rèn)傳遞兩個(gè)共享密鑰,一個(gè)從實(shí)體A傳給實(shí)體B,另一個(gè)從實(shí)體B傳給實(shí)體A。應(yīng)滿足以下條件:每個(gè)實(shí)體X有一個(gè)非對(duì)稱的簽名系統(tǒng)(Sx,Vx)。每個(gè)實(shí)體X有一個(gè)非對(duì)稱的加密系統(tǒng)(Ex,Dx)。每個(gè)實(shí)體可得到其它實(shí)體已鑒別的公開驗(yàn)證變換副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。每個(gè)實(shí)體可得到其它實(shí)體已鑒別的公開加密變換副本,可使用第13章的機(jī)制來(lái)實(shí)現(xiàn)。密鑰傳遞機(jī)制5如圖14所示。密鑰傳遞機(jī)制5密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A隨機(jī)生成rA,構(gòu)建密鑰權(quán)標(biāo)KTA1=rA||Text1。并將其發(fā)送給實(shí)體B。密鑰塊加密(B1.1):假設(shè)實(shí)體B希望將一個(gè)秘密密鑰K安全傳遞到實(shí)體A,實(shí)體B構(gòu)建一個(gè)由它自己的區(qū)分標(biāo)識(shí)符、密鑰KB以及可選的Text2組成的塊,然后用接收者的公鑰加密變換EA加密這個(gè)塊:BE1=EA(B||KB||Text2)密鑰權(quán)標(biāo)創(chuàng)建(B1.2):實(shí)體B隨機(jī)生成rB,構(gòu)建一個(gè)包含rB、rA、接收者標(biāo)識(shí)、加密的密鑰塊BE1以及可選的Text3數(shù)據(jù)塊。實(shí)體B用其私鑰簽名變換SB簽名這個(gè)數(shù)據(jù)塊,附加可選的Text4,形成密鑰權(quán)標(biāo)塊KTB1,KTB1=SB(rB||rA||A||BE1||Text3)||Text4,并發(fā)給實(shí)體A。密鑰權(quán)標(biāo)確認(rèn)(A2.1):實(shí)體A使用實(shí)體B的公鑰驗(yàn)證變換VB來(lái)驗(yàn)證實(shí)體B對(duì)密鑰權(quán)標(biāo)KTB1的簽名。檢查它在KTB1中的區(qū)分標(biāo)識(shí)符,并檢查接收到的rA是否與步驟A1發(fā)送的隨機(jī)數(shù)一致。密鑰塊解密(A2.2):實(shí)體A使用其私鑰解密變換DA解密加密塊BE1,并檢查實(shí)體B的區(qū)分標(biāo)識(shí)符,如果所有的檢查結(jié)果都成功,實(shí)體A接受密鑰KB。密鑰塊加密(A2.3):實(shí)體A構(gòu)建一個(gè)包含其區(qū)分標(biāo)識(shí)符、其私鑰KA及可選的Text5的數(shù)據(jù)塊,并使用接收者的公開加密變換EB加密這個(gè)加密塊:BE2=EB(A||KA||Text5)。密鑰權(quán)標(biāo)創(chuàng)建(A2.4):實(shí)體A構(gòu)建一個(gè)包含隨機(jī)數(shù)rA、隨機(jī)數(shù)rB、接收者的區(qū)分標(biāo)識(shí)符、加密的密鑰塊BE2和可選的Text6數(shù)據(jù)塊。實(shí)體A用其私鑰簽名變換SA來(lái)簽名這個(gè)數(shù)據(jù)塊,附上可選的Text7,并發(fā)送這個(gè)密鑰權(quán)標(biāo)KTA2=SA(rA||rB||B||BE2||Text6||Text7)給實(shí)體B。密鑰權(quán)標(biāo)驗(yàn)證(B2.1):實(shí)體B使用實(shí)體A的公鑰驗(yàn)證變換VA驗(yàn)證實(shí)體A的簽名,檢查KTA2中它自己的區(qū)分標(biāo)識(shí)符,并檢查接收到的rB是否與步驟B1.2發(fā)送的隨機(jī)數(shù)一致,此外,B還檢查接收到的rA是否與KTA1中的數(shù)值是一致。密鑰塊解密(B2.2):實(shí)體B用其私鑰變換DB解密加密數(shù)據(jù)塊BE2,驗(yàn)證實(shí)體A的區(qū)分標(biāo)識(shí)符,如果所有的檢查成功,那么實(shí)體B接受密鑰KA,如果只是要求單方密鑰傳輸,則BE1或BE2可省略。1:交互次數(shù)為3。2:該機(jī)制提供相互實(shí)體鑒別,即實(shí)體B到實(shí)體A的KA隱式密鑰鑒別和實(shí)體A到實(shí)體B的KB隱式密鑰鑒別。3:該機(jī)制對(duì)KA和KB都進(jìn)行從發(fā)送端到接收端的密鑰確認(rèn),此外如果實(shí)體A在KB中包含一個(gè)MAC,那么就KB而言,這種機(jī)制可以進(jìn)行相互密鑰確認(rèn)。4:由于實(shí)體A是發(fā)送實(shí)體,它可選擇密鑰KA。類似的,實(shí)體B也可選擇密鑰KB。聯(lián)合密鑰控制可通過將兩個(gè)密鑰KA和KB組合在一起構(gòu)成一個(gè)共享秘密密鑰KAB來(lái)實(shí)現(xiàn)。組合函數(shù)應(yīng)為單向的,否則實(shí)體A可選擇共享秘密密鑰。這種機(jī)制可分類為一種密鑰協(xié)商機(jī)制。?5:KTA1、KTB1和KTA2與GB/T15843.3第5.2.2中描述的三次交互鑒別機(jī)制中發(fā)送的密鑰權(quán)標(biāo)兼容。通過使用BE1||Text3取代GB/T15843.3機(jī)制中的Text2,第二個(gè)權(quán)標(biāo)能夠幫助密鑰KB的傳送。通過使用BE2||Text6取代GB/T15843.3中的Text4,第三個(gè)權(quán)標(biāo)能夠幫助密鑰KA的傳送,第三個(gè)權(quán)標(biāo)還能夠幫助Text6里的MAC的傳送。6:如果數(shù)據(jù)域Text1和Text4(或Text7和Text4)包含實(shí)體A和實(shí)體B的公鑰證書,那么第12.5的第三條和第四條要求可以放寬為,兩個(gè)實(shí)體都擁有CA經(jīng)鑒別的公開驗(yàn)證密鑰副本。密鑰傳遞機(jī)制6該機(jī)制適用于參與密鑰傳遞的兩個(gè)實(shí)體采用以零知識(shí)技術(shù)為基礎(chǔ),且在線交互三次的場(chǎng)景,經(jīng)三次交互安全傳遞兩個(gè)密鑰,一個(gè)從實(shí)體A到實(shí)體B,另一個(gè)從實(shí)體B到實(shí)體A。此外,該機(jī)制還實(shí)現(xiàn)相互實(shí)體鑒別及對(duì)各密鑰分別進(jìn)行相互密鑰確認(rèn)。該機(jī)制基于以下要求:每個(gè)實(shí)體X有一個(gè)非對(duì)稱的加密系統(tǒng)(EX,DX)。每個(gè)實(shí)體可得到其它實(shí)體已鑒別的公開加密變換副本??墒褂玫?3章的機(jī)制來(lái)實(shí)現(xiàn)。密鑰傳遞機(jī)制6如圖15所示。密鑰傳遞機(jī)制6密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A獲得一個(gè)密鑰KA,并希望把它安全地傳送給實(shí)體B。實(shí)體A選擇一個(gè)隨機(jī)數(shù)rA并構(gòu)造一個(gè)包含其區(qū)分標(biāo)識(shí)符、密鑰KA、隨機(jī)數(shù)rA以及可選的數(shù)據(jù)塊Text1的密鑰數(shù)據(jù)塊,然后用實(shí)體B的公鑰加密變換EB將密鑰塊加密,產(chǎn)生加密數(shù)據(jù)塊BE1=EB(A||KA||rA||Text1)。實(shí)體A構(gòu)造一個(gè)密鑰權(quán)標(biāo)KTA1,它由加密數(shù)據(jù)塊BE1及可選數(shù)據(jù)域Text2組成,KTA1=BE1||Text2,并發(fā)送給實(shí)體B。密鑰權(quán)標(biāo)創(chuàng)建(B1):實(shí)體B從接收到的密鑰權(quán)標(biāo)KTA1中提取加密密鑰塊BE1,并用其私鑰解密變換DB來(lái)將它解密,然后檢查解密后的密鑰塊BE1中包含的實(shí)體A標(biāo)識(shí)符。實(shí)體B獲得一個(gè)密鑰KB,并希望把它安全地傳送給實(shí)體A。實(shí)體B選擇一個(gè)隨機(jī)數(shù)rB,并構(gòu)造一個(gè)包含其區(qū)分標(biāo)識(shí)符、密鑰KB、隨機(jī)數(shù)rB、隨機(jī)數(shù)r??(從解密塊提?。┘翱蛇x的數(shù)據(jù)域Text3的密鑰數(shù)據(jù)塊。實(shí)體B用實(shí)體A的公鑰加密變換EA將密鑰塊加密,構(gòu)造加密數(shù)據(jù)塊BE2=EA(B||KB||rA||rB||Text3)。實(shí)體B構(gòu)造一個(gè)密鑰權(quán)標(biāo)KTB1,它由加密數(shù)據(jù)塊BE2及可選數(shù)據(jù)域Text4組成,KTB1=BE2||Text4,并發(fā)送給實(shí)體A。密鑰和實(shí)體確認(rèn)(A2.1):實(shí)體A從接收到的密鑰權(quán)標(biāo)KTB1中提取加密密鑰塊BE2,并使用其私鑰解密變換DA將它解密。實(shí)體A通過比較隨機(jī)數(shù)rA與包含在加密塊BE2中的隨機(jī)數(shù)rA檢查密鑰權(quán)標(biāo)的有效性。如果驗(yàn)證成功,那么實(shí)體A確認(rèn)密鑰KA已安全到達(dá)實(shí)體B。密鑰權(quán)標(biāo)響應(yīng)(A2.2):實(shí)體A從解密的密鑰塊中提取隨機(jī)數(shù)rB,并用隨機(jī)數(shù)rB和可選的數(shù)據(jù)域Text5構(gòu)建密鑰權(quán)標(biāo)KT??2=rB||Text5。然后實(shí)體送給實(shí)體B。密鑰和實(shí)體確認(rèn)(B2):實(shí)體B驗(yàn)證從KT??2提取的響應(yīng)rB與KTB1中的隨機(jī)數(shù)rB是否一致,如果驗(yàn)證成功,那么實(shí)體B就實(shí)現(xiàn)對(duì)實(shí)體A的鑒別,同時(shí)確認(rèn)密鑰KB已安全到達(dá)實(shí)體A。1:交互次數(shù)是32:該機(jī)制提供從實(shí)體B到實(shí)體A的KA隱式密鑰鑒別,以及實(shí)體A到實(shí)體B的KB隱式密鑰鑒別。3:由于實(shí)體A是發(fā)送實(shí)體,實(shí)體A可選擇密鑰KA。類似的,實(shí)體B也可選擇密鑰KB。聯(lián)合密鑰控制可通過將兩個(gè)密鑰KA和KB組合在一起構(gòu)成一個(gè)共享秘密密鑰KAB來(lái)實(shí)現(xiàn)。組合函數(shù)應(yīng)為單向的,否則實(shí)體B可選擇共享秘密密鑰。這種機(jī)制可分類為一種密鑰協(xié)商機(jī)制。4:該機(jī)制使用非對(duì)稱技術(shù)相互傳遞兩個(gè)秘密密鑰,KA從實(shí)體A傳到實(shí)體B,KB從實(shí)體B傳到實(shí)體A。該機(jī)制可用于如下密鑰功能分離:實(shí)體A用密鑰KA加密傳輸給實(shí)體B的消息以及驗(yàn)證來(lái)自實(shí)體B的認(rèn)證碼。實(shí)體B使用得到的密鑰KA解密A傳來(lái)的消息并生成給實(shí)體A的認(rèn)證碼。密鑰KB的密鑰功能也采用類似的方式分離。這樣,非對(duì)稱密鑰傳遞機(jī)制就可拓展為密鑰使用。5:該機(jī)制以零知識(shí)技術(shù)為基礎(chǔ),通過使用該機(jī)制,雙方實(shí)體除了自己能夠計(jì)算得到的信息之外,不會(huì)了解到任何其它信息。公鑰傳遞公鑰傳遞機(jī)制1如果實(shí)體A經(jīng)一個(gè)受保護(hù)通道到實(shí)體B,(例如提供數(shù)據(jù)源鑒別及數(shù)據(jù)完整性的通道),如速遞,注冊(cè)郵件等,那么實(shí)體A可將其公鑰信息直接通過該受保護(hù)通道傳遞給實(shí)體B。這是傳遞公鑰最基本的形式。該機(jī)制需滿足以下要求:實(shí)體A的公鑰信息PKIA至少要包含實(shí)體A的可區(qū)分標(biāo)識(shí)符和實(shí)體A的公鑰。此外,它還可以包含序列號(hào),有效期,時(shí)間戳和其它數(shù)據(jù)元素。由于公鑰信息不包含任何秘密數(shù)據(jù),所以通信信道不需提供保密性。公鑰傳遞機(jī)制1如圖16所示。公鑰傳輸機(jī)制1密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A生成密鑰權(quán)標(biāo)KTA1,它包含實(shí)體A的公鑰信息和可選的數(shù)據(jù)字段Text,并通過受保護(hù)的通道將KTA1=PKIA||Text傳給實(shí)體B。密鑰權(quán)標(biāo)接收(B1):實(shí)體B得到從受保護(hù)通道傳遞的實(shí)體A的密鑰權(quán)標(biāo),得到實(shí)體A的公鑰PKIA并將實(shí)體A的公鑰保存在有效的公鑰列表中(該列表需防止被篡改)。1:該機(jī)制可用于傳遞公開驗(yàn)證密鑰(對(duì)于非對(duì)稱簽名系統(tǒng)),或公開加密密鑰(對(duì)于非對(duì)稱加密系統(tǒng)),或公鑰協(xié)商密鑰。2:鑒別包括數(shù)據(jù)完整性和數(shù)據(jù)源鑒別(如ISO7498-2[1]所定義)。公鑰傳遞機(jī)制2該傳遞機(jī)制通過不受保護(hù)的通道將實(shí)體A的公鑰信息傳遞給實(shí)體B。為了確認(rèn)完整性以及接收到公鑰信息的來(lái)源,需使用另外一條鑒別通道。該機(jī)制有效地用于:當(dāng)公鑰信息PKI以電子形式通過高帶寬通道傳輸,而公鑰信息的鑒別經(jīng)低帶寬通道執(zhí)行,如電話,速遞或者注冊(cè)郵件等。作為一種附加要求,如GB/T32905-2016所定義,實(shí)體間需共享通用的雜湊函數(shù)。需滿足以下要求:實(shí)體A的公鑰信息PKIA至少要包含實(shí)體A的可區(qū)分標(biāo)識(shí)符和實(shí)體A的公鑰。此外,它還可包含序列號(hào),有效期,時(shí)間戳和其它數(shù)據(jù)元素。由于公鑰信息不包含任何秘密數(shù)據(jù),所以通信信道不需提供保密性。公鑰傳遞機(jī)制2如圖17所示。公鑰傳遞機(jī)制2密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A生成密鑰權(quán)標(biāo)KTA1,它包含實(shí)體A的公鑰信息和可選的數(shù)據(jù)字段Text,并通過受保護(hù)的通道將KTA1=PKIA||Text傳給實(shí)體B。密鑰權(quán)標(biāo)接收(B1):實(shí)體B得到從受保護(hù)信道傳遞的實(shí)體A的密鑰權(quán)標(biāo),得到實(shí)體A的公鑰PKIA并且將實(shí)體A的公鑰保存并防止被篡改,以便接下來(lái)的鑒別和使用。驗(yàn)證權(quán)標(biāo)創(chuàng)建(A2):實(shí)體A用其公鑰計(jì)算檢驗(yàn)雜湊值hash(PKIA),并將這個(gè)檢驗(yàn)值和可選的實(shí)體A和B的可區(qū)分標(biāo)識(shí)符通過第二條單獨(dú)的已鑒別信道(如速遞或注冊(cè)郵件)傳輸給實(shí)體B,其中KTA2=A||B||hash(PKIA)||Text2密鑰權(quán)標(biāo)驗(yàn)證(B2):一旦收到驗(yàn)證權(quán)標(biāo)KTA2,實(shí)體B選擇性的檢驗(yàn)實(shí)體A和B的可區(qū)分標(biāo)識(shí)符,根據(jù)實(shí)體A收到的KTA1里的公鑰信息計(jì)算出檢驗(yàn)值,并于KTA2中的檢驗(yàn)值做比較,如果校驗(yàn)成功,實(shí)體B將實(shí)體A的公鑰保存在有效的公鑰列表中(該列表需防止被篡改)。1:該機(jī)制可用于傳遞公開驗(yàn)證密鑰(對(duì)于非對(duì)稱簽名系統(tǒng)),或公開加密密鑰(對(duì)于非對(duì)稱加密系統(tǒng)),或公鑰協(xié)商密鑰。2:鑒別包括數(shù)據(jù)完整性和數(shù)據(jù)源鑒別。3:如果傳遞的公鑰用于非對(duì)稱數(shù)字簽名系統(tǒng),而不是消息恢復(fù),那么實(shí)體A可用相應(yīng)的私有簽名密鑰對(duì)KTA1簽名。這樣,步驟B1中使用接收到的公開驗(yàn)證密鑰進(jìn)行的實(shí)體A的簽名驗(yàn)證可確保實(shí)體A知道對(duì)應(yīng)的私有簽名密鑰,因此可以推測(cè),實(shí)體A是在權(quán)標(biāo)創(chuàng)建時(shí)知道相應(yīng)的私有簽名密鑰的唯一實(shí)體。如果PKIA中使用時(shí)間戳,那么驗(yàn)證可確保實(shí)體A當(dāng)前知道相應(yīng)的私有簽名密鑰。4:來(lái)自實(shí)體A的人工簽名信可用于驗(yàn)證權(quán)標(biāo)。公鑰傳遞機(jī)制3該機(jī)制通過可信第三方的身份鑒別方式從實(shí)體A傳遞一個(gè)公鑰到實(shí)體B。使用公鑰證書形式交換公鑰可確保證實(shí)體的公鑰鑒別。實(shí)體A的公鑰證書包括公鑰信息以及可信第三方(證書認(rèn)證機(jī)構(gòu))的數(shù)字簽名。引入證書認(rèn)證機(jī)構(gòu)將減少鑒別用戶公鑰的分發(fā)問題,轉(zhuǎn)為證書認(rèn)證機(jī)構(gòu)(CA)公鑰分發(fā)問題,參閱GB/TAAAA.1-AAAA,也可參閱ISO/IEC9594-8[2]。該機(jī)制基于這樣假設(shè):一個(gè)帶有實(shí)體A公鑰信息PKIA的有效公鑰證書CertA由某CA機(jī)構(gòu)發(fā)布,且實(shí)體B可獲取發(fā)布公鑰證書的CA機(jī)構(gòu)已鑒別的公開驗(yàn)證變換VCA副本。公鑰傳遞機(jī)制3如圖18所示。公鑰傳遞機(jī)制3密鑰權(quán)標(biāo)創(chuàng)建(A1):實(shí)體A生成密鑰權(quán)標(biāo)KTA1,它包含A的公鑰證書,并將KTA1=PKIA||Text傳遞給實(shí)體B。密鑰權(quán)標(biāo)驗(yàn)證(B1):實(shí)體B一旦接收到公鑰證書,就通過CA的公開驗(yàn)證變換VCA驗(yàn)證公鑰信息,并校驗(yàn)實(shí)體A公鑰的有效性。如果實(shí)體B希望確認(rèn)實(shí)體A的公鑰證書最近是否被取消,那么實(shí)體B應(yīng)通過某種可信途徑咨詢可信第三方(如CA機(jī)構(gòu))。1:交互次數(shù)為1,但實(shí)體B可以要求實(shí)體A傳輸公鑰證書。這個(gè)額外的交互是可選的,這里不顯示。實(shí)體A的公鑰證書也可通過目錄分發(fā),在這種情況下,需在目錄和實(shí)體B間執(zhí)行公鑰傳輸機(jī)制。2:該機(jī)制不提供實(shí)體鑒別

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論