專利名稱:在以太網(wǎng)無源光網(wǎng)絡(luò)上分發(fā)密鑰的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及密鑰分發(fā)方法,并且更具體地,涉及在以太網(wǎng)無源光網(wǎng)絡(luò)(EPON)上分發(fā)密鑰而不使用安全信道的方法。
背景技術(shù):
當實體A在通信網(wǎng)絡(luò)上向?qū)嶓wB傳送消息時,未授權(quán)用戶可訪問和使用正被傳送的消息。如果存在這樣的風(fēng)險,則必須使用加密,以確保消息的安全性。通常,用于安全性的加密技術(shù)分為對稱密鑰加密技術(shù)以及公共密鑰加密技術(shù)。這兩個加密技術(shù)使用非常不同的加密算法,并且以不同的方式分發(fā)密鑰。
在對稱密鑰加密技術(shù)中,用于加密的密鑰和用于解密的密鑰是一樣的。例如,如果實體A使用密鑰KC來對消息加密,則實體B必須使用密鑰KC來對從實體A接收的消息解密。在對稱密鑰加密技術(shù)中使用的加密算法包括數(shù)據(jù)加密標準(DES)算法和高級加密標準(AES)算法,它們分別使用56位和128位密鑰長度。
更長的密鑰長度帶來更強的安全性,但是導(dǎo)致更長的消息處理時間。在當前的處理技術(shù)的情況下,128位或更大的密鑰長度對于對稱密鑰加密技術(shù)是足夠的。因為可使用對稱密鑰算法來對消息快速地加密或解密,所以其被用于大多數(shù)加密模塊中的消息安全性。
然而,因為需要相互通信的每對實體必須具有相同的唯一密鑰,所以,如果在通信網(wǎng)絡(luò)上存在N個實體,則需要N(N-1)/2個密鑰。而且,在通信網(wǎng)絡(luò)內(nèi)需要用于分發(fā)密鑰的密鑰分發(fā)中心。密鑰分發(fā)中心將第一實體的密鑰分發(fā)給想要通過預(yù)定的安全信道來與第一實體通信的第二實體。另外,因為必須周期性地替換密鑰,所以分發(fā)密鑰的成本增加了。
在公共密鑰加密技術(shù)中,用于加密的密鑰和用于解密的密鑰是不同的。例如,如果實體A使用密鑰KP來對消息加密,則實體B應(yīng)當使用Rivest-Shamir-Adleman(RSA)算法,使用密鑰KP’來對從實體A接收的消息解密。這里,實體A創(chuàng)建密鑰KP和KP’,并且在通信網(wǎng)絡(luò)上向其他實體公布密鑰KP。因而,想要與實體A通信的實體使用密鑰KP來加密消息,并且將加密后的消息傳送給實體A。
密鑰KP和KP’作為唯一的對而存在。即使公布了密鑰KP,但在計算上不可能確定密鑰KP’。與對稱密鑰加密技術(shù)不同,在公共密鑰加密技術(shù)中,每個實體需要兩個密鑰,并且分發(fā)密鑰KP不需要安全信道。由此,更容易分發(fā)密鑰,并且可減少要在通信網(wǎng)絡(luò)內(nèi)分發(fā)的密鑰的數(shù)目。
然而,需要1024位或更大的密鑰長度來確保使用RSA算法加密的消息的安全性。因此,它消耗長時間來使用RSA算法加密或解密消息。由此,RSA算法難以被用作通信網(wǎng)絡(luò)中的消息安全性算法。
需要加密模塊和密鑰管理模塊以在網(wǎng)絡(luò)層上采用安全性技術(shù)。加密模塊使用加密算法來對消息加密。加密模塊使用對稱密鑰加密技術(shù)或公共密鑰加密技術(shù),以使用由密鑰管理模塊提供的密鑰來對消息加密。密鑰管理模塊管理要被提供給加密模塊的密鑰。密鑰管理涉及密鑰的創(chuàng)建、存儲、分發(fā)、更新和丟棄。當使用對稱密鑰加密技術(shù)時,密鑰分發(fā)中心使用安全信道來分發(fā)密鑰。當使用公共密鑰加密技術(shù)時,通過非安全信道來分發(fā)密鑰。
發(fā)明內(nèi)容
技術(shù)問題本發(fā)明提供了一種在以太網(wǎng)無源光網(wǎng)絡(luò)(EPON)上安全地分發(fā)密鑰而不使用安全信道的方法,該方法應(yīng)用于數(shù)據(jù)鏈路層。
技術(shù)方案根據(jù)本發(fā)明的一個方面,提供了一種在EPON上分發(fā)密鑰以生成單播安全信道的方法,該方法包括在光線終端(OLT)和光網(wǎng)絡(luò)單元(ONU)之間交換分別由OLT和ONU生成的第一隨機值;基于所交換的第一隨機值和預(yù)分發(fā)的主密鑰,使用hash(散列)函數(shù)來生成成對主密鑰(PMK);在OLT和ONU之間交換分別由OLT和ONU生成的第二隨機值;以及基于所交換的第二隨機值、OLT和ONU各自的媒體訪問控制(MAC)地址、以及PMK,使用hash函數(shù)來生成臨時密鑰。
根據(jù)本發(fā)明的另一方面,提供了一種在EPON上分發(fā)密鑰以生成廣播安全信道的方法,該方法包括將由OLT生成的第一隨機值傳輸給ONU;基于所傳輸?shù)牡谝浑S機值和預(yù)分發(fā)的主密鑰,使用hash函數(shù)來生成PMK;將由OLT生成的第二隨機值傳送給ONU;以及基于所傳輸?shù)牡诙S機值、OLT和ONU的MAC地址、以及PMK,使用hash函數(shù)來生成臨時密鑰。
因而,可在EPON上安全地分發(fā)密鑰,而不使用單獨的安全信道。
有益效果如上所述,為了網(wǎng)絡(luò)安全性而將根據(jù)本發(fā)明的密鑰分發(fā)方法應(yīng)用于EPON。由此,可使用EPON的OLT和ONU的每個中的密鑰管理模塊來安全有效地分發(fā)由加密模塊使用的密鑰。根據(jù)本發(fā)明的實施例的密鑰分發(fā)方法的具體效果如下。
首先,因為使用了PRF,所以不需要單獨的用于密鑰分發(fā)的安全信道。PRF是公知的單向無沖突hash函數(shù)。當輸出值被設(shè)置為大于160位時,PRF在密碼學(xué)上是穩(wěn)定的。本發(fā)明建議使用PRF的密鑰分發(fā)方法,由此避免信道上的直接的密鑰傳輸。因為不需要單獨的安全信道,所以可降低密鑰管理模塊的復(fù)雜度。
第二,使用了慢協(xié)議(slow protocol)。慢協(xié)議使用數(shù)據(jù)鏈路層中的MAC幀。因而,使用慢協(xié)議的本發(fā)明不允許密鑰管理幀被EPON外部的攻擊者截取。因為不能在EPON外部截取密鑰管理幀,所以其在EPON內(nèi)是安全的。此外,慢協(xié)議將每秒可傳送的幀的最大數(shù)目限制為10,并將幀長度限制為128字節(jié)。因而,幀傳送不會影響EPON中的流量。
第三,使用相對簡單的協(xié)議來分發(fā)密鑰。本發(fā)明使用密鑰管理協(xié)議來分發(fā)密鑰,并且包括五個過程請求密鑰更新、響應(yīng)密鑰更新請求、請求密鑰校驗、響應(yīng)密鑰校驗請求、以及確認密鑰校驗。因為在要傳送的幀中包括的信息由具有簡單的輸入和輸出值的簡單算法組成,所以可簡化協(xié)議復(fù)雜度。
最后但不是最不重要的,本發(fā)明是可縮放的。換言之,當將安全性技術(shù)應(yīng)用于一般網(wǎng)絡(luò)中的數(shù)據(jù)鏈路層時,密鑰管理模塊可獨立于加密模塊的加密算法來使用本發(fā)明。當在網(wǎng)絡(luò)上安裝了裝置、并且設(shè)置了主密鑰(master key)時,根據(jù)密鑰分發(fā)步驟(procedure)來自動分發(fā)密鑰。為將本發(fā)明應(yīng)用于具有網(wǎng)絡(luò)結(jié)構(gòu)的共享局域網(wǎng)(LAN),需要作用為密鑰分發(fā)中心的中央控制裝置,如OLT。
盡管已參照本發(fā)明的示例實施例來具體示出和描述了本發(fā)明,但本領(lǐng)域技術(shù)人員將理解,可在其中進行各種形式和細節(jié)的改變,而不會脫離由所附權(quán)利要求定義的本發(fā)明的精神和范圍。
通過參照附圖詳細描述本發(fā)明的示例實施例,本發(fā)明的上述和其他特征和優(yōu)點將變得更清楚,附圖中圖1圖解了示出應(yīng)用本發(fā)明的以太網(wǎng)無源光網(wǎng)絡(luò)(EPON)的結(jié)構(gòu)的框圖;圖2是圖解根據(jù)本發(fā)明的實施例、在EPON上分發(fā)密鑰的方法的流程圖;圖3圖解了在數(shù)據(jù)鏈路層中使用的傳統(tǒng)的媒體訪問控制(MAC)幀的結(jié)構(gòu);圖4圖解了根據(jù)本發(fā)明的實施例、用于分發(fā)和管理密鑰的MAC幀的結(jié)構(gòu);圖5圖解了根據(jù)本發(fā)明的實施例的信息密鑰管理幀的結(jié)構(gòu);圖6A和圖6B圖解了根據(jù)本發(fā)明的實施例、用于請求密鑰更新的密鑰管理幀的結(jié)構(gòu);圖7A和圖7B圖解了根據(jù)本發(fā)明的實施例、用于響應(yīng)密鑰更新請求的密鑰管理幀的結(jié)構(gòu);圖8圖解了根據(jù)本發(fā)明的實施例、用于請求密鑰校驗的密鑰管理幀的結(jié)構(gòu);圖9圖解了根據(jù)本發(fā)明的實施例、用于響應(yīng)密鑰校驗請求的密鑰管理幀的結(jié)構(gòu);圖10圖解了根據(jù)本發(fā)明的實施例、用于確認密鑰校驗的密鑰管理幀的結(jié)構(gòu);圖11圖解了根據(jù)本發(fā)明的實施例的密鑰分發(fā)方法中的步驟狀態(tài);圖12是圖解根據(jù)本發(fā)明的實施例的密鑰更新方法的流程圖;以及圖13是圖解根據(jù)本發(fā)明的另一實施例的密鑰更新方法的流程圖。
具體實施例方式
根據(jù)本發(fā)明的一個方面,提供了一種在EPON上分發(fā)密鑰以生成單播安全信道的方法,該方法包括在光線終端(OLT)和光網(wǎng)絡(luò)單元(ONU)之間交換分別由OLT和ONU生成的第一隨機值;基于所交換的第一隨機值和預(yù)分發(fā)的主密鑰,使用hash函數(shù)來生成成對主密鑰(PMK);在OLT和ONU之間交換分別由OLT和ONU生成的第二隨機值;以及基于所交換的第二隨機值、OLT和ONU各自的媒體訪問控制(MAC)地址、以及PMK,使用hash函數(shù)來生成臨時密鑰。
根據(jù)本發(fā)明的另一方面,提供了一種在EPON上分發(fā)密鑰以生成廣播安全信道的方法,該方法包括將由OLT生成的第一隨機值傳輸給ONU;基于所傳輸?shù)牡谝浑S機值和預(yù)分發(fā)的主密鑰,使用hash函數(shù)來生成PMK;將由OLT生成的第二隨機值傳送給ONU;以及基于所傳輸?shù)牡诙S機值、OLT和ONU的MAC地址、以及PMK,使用hash函數(shù)來生成臨時密鑰。
因而,可在EPON上安全地分發(fā)密鑰,而不使用單獨的安全信道。
現(xiàn)在將參照附圖更完整地描述本發(fā)明,附圖中示出了本發(fā)明的示例實施例。然而,本發(fā)明可以以許多不同的形式來實現(xiàn),而不應(yīng)被理解為局限于在此闡述的實施例;更準確地,提供這些實施例,以使得此公開徹底和完整,并向本領(lǐng)域技術(shù)人員完全轉(zhuǎn)達本發(fā)明的概念。
圖1是圖解應(yīng)用本發(fā)明的以太網(wǎng)無源光網(wǎng)絡(luò)(EPON)的結(jié)構(gòu)的框圖。EPON具有點對多點(P2MP)的樹結(jié)構(gòu)。如果將非對稱密鑰加密技術(shù)應(yīng)用于EPON,則可保證加密模塊的更快的操作,但密鑰分發(fā)的復(fù)雜度是不可避免的。
然而,EPON不具有網(wǎng)絡(luò)結(jié)構(gòu)。邏輯上,盡管其物理上具有P2MP結(jié)構(gòu),但EPON具有點對點(P2P)結(jié)構(gòu)。換言之,所有光網(wǎng)絡(luò)單元(ONU)110到11N被連接到單個光線終端(OLT)100。因而,不必要如在對稱密鑰加密技術(shù)中所需要的那樣,向每個實體分發(fā)多個密鑰。
也就是說,ONU110到11N中的每一個僅僅需要一個密鑰來與OLT100通信。當ONU110與另一ONU112通信時,因為所傳送的數(shù)據(jù)必須經(jīng)過OLT100,所以兩個ONU110和112使用相同的密鑰。將在EPON中使用的安全性技術(shù)應(yīng)用于數(shù)據(jù)鏈路層。
因而,即使當在EPON中使用對稱密鑰加密技術(shù)時,加密所需的密鑰的數(shù)目也與由ONU110到11N設(shè)置來與OLT100通信的信道的數(shù)目相同。因此,對稱密鑰加密技術(shù)中所需的密鑰的數(shù)目接近在使用公共密鑰加密技術(shù)時分發(fā)的密鑰的數(shù)目。在EPON上,OLT100可通過控制過程,來向ONU110到11N中的每一個分發(fā)密鑰。
在EPON上,廣播從OLT100下行傳送到ONU110到11N的數(shù)據(jù)(下文中,稱為“下行數(shù)據(jù)”),而單播從ONU110到11N傳送到OLT的上行數(shù)據(jù)(下文中,稱為“上行數(shù)據(jù)”)。
即使當向單個目標傳送下行數(shù)據(jù)時,事實上也沒有辦法防止下行數(shù)據(jù)被廣播。因而,下行數(shù)據(jù)可能被傳送給不期望的、或未授權(quán)的ONU。這是需要安全性來保護消息、或防止未授權(quán)用戶訪問和使用EPON上的數(shù)據(jù)的地方。
為了將安全性技術(shù)應(yīng)用于EPON,需要加密消息的加密模塊和向該加密模塊提供密鑰的密鑰管理模塊。根據(jù)本發(fā)明的實施例的密鑰分發(fā)方法是應(yīng)用于數(shù)據(jù)鏈路層的鏈路安全性技術(shù)。另外,由密鑰管理模塊來使用密鑰分發(fā)方法。當在EPON上實現(xiàn)鏈路安全性時,密鑰管理模塊可使用密鑰分發(fā)方法。
OLT100生成要被提供給加密模塊的密鑰,并將所生成的密鑰分發(fā)給ONU110到11N,或者,ONU110到11N生成要被提供給加密模塊的密鑰,并將所生成的密鑰分發(fā)給OLT100。為了安全性,周期性地更新所生成的密鑰,并且需要用于此的密鑰分發(fā)方法。必須使用可能的、最安全的密鑰分發(fā)方法來分發(fā)密鑰。
可使用由加密模塊提供的安全信道、或使用由密鑰管理模塊創(chuàng)建的單獨的安全信道來分發(fā)密鑰。然而,當使用了由加密模塊提供的安全信道時,如果加密模塊僅僅在一個方向上操作,即,如果對從OLT100向ONU110到11N傳送的數(shù)據(jù)加密、而不對從ONU110到11N向OLT100傳送的數(shù)據(jù)加密,則密鑰管理模塊必須創(chuàng)建單獨的安全信道。
然而,如果密鑰管理模塊創(chuàng)建單獨的安全信道,則其必須包括使用加密算法的、類似于加密模塊的模塊,并且與由加密模塊提供的那些密鑰相分離地管理密鑰。因而,密鑰管理變得相當復(fù)雜。
避免此問題的最好的辦法是不將安全信道用于密鑰分發(fā)??紤]到這一點,本發(fā)明提出了在EPON上安全地分發(fā)密鑰、而不使用單獨的安全信道的方法。
圖2是圖解根據(jù)本發(fā)明的實施例、在EPON上分發(fā)密鑰的方法的流程圖。參照圖2,OLT生成第一隨機值A(chǔ)nonce,并將該第一隨機值A(chǔ)nonce傳送到ONU,并且,ONU也生成第一隨機值Bnonce,并且將該第一隨機值Bnonce傳送給OLT??商鎿Q地,僅僅OLT生成第一隨機值A(chǔ)nonce并將所生成的第一隨機值A(chǔ)nonce傳送給ONU(S200)。OLT和ONU的每一個對由自身生成的第一隨機值A(chǔ)nonce或Bnonce、相互接收的第一隨機值Bnonce或Anonce、以及預(yù)分發(fā)且共享的主密鑰(MK)執(zhí)行hash函數(shù),并且生成成對主密鑰(PMK)(S210)。
在執(zhí)行加密前將MK分發(fā)給OLT和ONU,并且可使用各種傳統(tǒng)方法來分發(fā)MK。本發(fā)明使用偽隨機函數(shù)(PRF)作為用于生成密鑰的算法,其是一種hash函數(shù)。hash函數(shù)具有以下特性。
1.任何長度的輸入位流x被轉(zhuǎn)換為固定長度的輸出位流H(x)。
2.給定H和x,易于計算H(x)。
3.給定輸出,計算上不可能找到輸入值。
4.給定輸入,計算上不可能找到產(chǎn)生相同輸出的另一輸入。
5.計算上不可能找到產(chǎn)生相同輸出的任意兩個不同輸入。
當使用單向且無沖突的PRF來產(chǎn)生長于160位的輸出值時,難以找到密鑰,即使使用暴力攻擊。由此,PRF是高度安全的。這里,蠻力攻擊是其中代入所有可能的值來尋找密鑰值的攻擊。在此情況下,攻擊者必須進行平均280次的嘗試來找到密鑰。
在生成PMK之后,OLT生成第二隨機值A(chǔ)nonce,并將第二隨機值A(chǔ)nonce傳送到ONU,并且ONU也生成第二隨機值Bnonce,并將第二隨機值Bnonce傳送到OLT(S220)??商鎿Q地,OLT生成第二隨機值A(chǔ)nonce和Bnonce,并將第二隨機值A(chǔ)nonce和Bnonce傳送給ONU(S220)。OLT使用由自身生成的第二隨機值A(chǔ)nonce、從ONU接收或由自身生成的第二隨機值Bnonce、其MAC地址、ONU的MAC地址以及PMK來執(zhí)行ha sh函數(shù),并且生成臨時密鑰(TK)(S230)。ONU還使用由OLT使用的方法,來生成TK。
TK是會話密鑰。廣播TK被分為廣播密鑰(BK)和用于廣播安全信道的初始值(IV)。單播TK被分為鑒別密鑰(AK)、安全關(guān)聯(lián)密鑰(SAK)以及用于單播安全信道的IV。在下面的表1中示出了每個密鑰的功能。
表1
基于以下等式,可使用PRF來生成密鑰。
PMK=PRF(Anonce||Bnonce||MK)TK=PRF(Anonce||Bnonce||Aaddr||Baddr||PMK)....(1)
其中,PMK具有16字節(jié),Anonce是由A生成的16字節(jié)的隨機值,Bnonce是由B生成的16字節(jié)的隨機值,TK具有64字節(jié),Aaddr是A的6字節(jié)MAC地址,并且Baddr是B的6字節(jié)MAC地址。
參照圖2描述的根據(jù)本發(fā)明的密鑰分發(fā)方法可避免使用信道來直接傳輸密鑰。由此,不需要用于傳輸密鑰的單獨安全信道。當不使用該密鑰分發(fā)方法并通過安全信道傳輸密鑰時,如果安全信道密鑰被暴露給攻擊者,則數(shù)據(jù)加密密鑰也被暴露給攻擊者。因此,在這樣的系統(tǒng)中,總是存在這樣的雙重風(fēng)險。然而,本發(fā)明的實施例可避免這樣的風(fēng)險。
即使當TK被暴露給攻擊者時,生成TK的PMK也未暴露。因此,可安全的使用經(jīng)更新的TK。此外,因為周期性地更新很少暴露的PMK,所以其更加安全。另外,因為根據(jù)其生成密鑰的MK從不暴露給信道,所以其帶來最高的安全性。
將本實施例用于數(shù)據(jù)鏈路層,并由此,使用在OLT和ONU之間生成和消失的幀。在EPON上生成和消失的MAC幀是OAM幀。根據(jù)本實施例的密鑰分發(fā)方法使用如在OAM協(xié)議中使用的慢協(xié)議。
下文中,將參照圖3到圖10,描述在本發(fā)明的實施例中使用的MAC幀。
圖3圖解了在數(shù)據(jù)鏈路層中使用的傳統(tǒng)MAC幀300的結(jié)構(gòu)。參照圖3,傳統(tǒng)MAC幀300包括目標地址(DA)字段310、源地址(SA)字段320、長度/類型字段330、用于記錄數(shù)據(jù)的數(shù)據(jù)/填充(data/pad)字段340、以及用于識別誤幀(frame errors)的FCS字段350。
圖4圖解了根據(jù)本發(fā)明的實施例、用于分發(fā)和管理密鑰的MAC幀400的結(jié)構(gòu)。參照圖4,MAC幀400包括DA字段405、SA字段410、長度/類型字段415、子類型字段420、標記字段425、代碼字段430、數(shù)據(jù)/填充字段435、以及FCS字段440。
可將適合于根據(jù)本發(fā)明的密鑰管理協(xié)議的MAC幀400稱為密鑰管理幀,現(xiàn)在,將在下面描述其每個字段。
根據(jù)慢協(xié)議,DA字段405具有值‘01-80-C2-00-00-02’,并且長度/類型字段415具有值‘80-09’,以指示慢協(xié)議。子類型字段420使用除了傳統(tǒng)使用的1-3之外的4-10中的‘4’。
因為圖3的MAC幀300的最小長度是64字節(jié),所以數(shù)據(jù)/填充字段435必須具有43字節(jié)的最小長度。即使當MAC幀400的最大長度是1522字節(jié)時,密鑰管理幀(即MAC幀400)的數(shù)據(jù)/填充字段435只能被延伸至107字節(jié),這是因為在慢協(xié)議中使用的最大幀長度被限制為128字節(jié)。
標記字段425包括1字節(jié),并且在下面的圖2中示出了每個位的功能。
設(shè)置完成位被分類為本地設(shè)置完成位和遠程設(shè)置完成位。例如,當OLT向ONU傳輸密鑰管理幀時,本地設(shè)置完成位指示OLT的加密模塊信息,而遠程設(shè)置完成位指示ONU的加密模塊信息。
當設(shè)置完成位的值是0時,因為OLT和ONU的加密設(shè)置不匹配,所以沒有加密模塊可用或可操作。當沒有加密模塊可用時,密鑰管理模塊可能或不可能可用。換言之,當密鑰管理模塊不可用時,對密鑰管理的請求沒有響應(yīng)。當密鑰管理模塊可用但加密模塊不可操作時,設(shè)置完成位被設(shè)置為“0”,并且剩余的位被設(shè)置為“空”(null)。因為兩種情況都指示加密模塊不能正確地操作,所以它們被相同地處理,即,為“0”。
當設(shè)置完成位的值是1時,因為OLT和ONU的加密設(shè)置匹配,所以加密模塊可用,且加密模塊可操作。因而,當本地設(shè)置完成位和遠程設(shè)置完成位的值都是“1”時,加密模塊可操作。
標記字段425被包括在所有的密鑰管理幀中,并且被處理為密鑰管理幀的第一信息。標記字段425使得密鑰管理模塊能夠快速地響應(yīng)當加密模塊在標記字段425的本地和遠程設(shè)置完成位是“1”的狀態(tài)下、正常操作時發(fā)生的加密模塊中的改變。換言之,當本地設(shè)置完成位和遠程設(shè)置完成位的值變?yōu)椤?”時,加密模塊必須停止。
當傳送密鑰管理幀時,傳送端始終具有其在密鑰管理幀的遠程設(shè)置完成中具有的、接收端的加密模塊的狀態(tài)信息,并將該密鑰管理幀傳送給接收端。因而,接收端可基于所接收的密鑰管理幀,識別出傳送端是否正確地管理接收端的加密模塊的狀態(tài)信息。
代碼字段430包括1字節(jié),并且指示密鑰管理幀的類型。在表3中示出了根據(jù)代碼值的密鑰管理幀的類型。
圖5圖解了根據(jù)本發(fā)明的實施例的信息密鑰管理幀500的結(jié)構(gòu)。參照圖5,信息密鑰管理幀500的結(jié)構(gòu)與圖4的密鑰管理幀(即,MAC幀400)的結(jié)構(gòu)相同。然而,在信息密鑰管理幀500中,代碼字段530的值是指示信息密鑰管理幀500的“1”(見表3)。此外,數(shù)據(jù)/填充字段535包括指示密鑰管理模塊的配置信息的local-config字段537、以及指示加密模塊的配置信息的remote-config字段539。
在下面的表4中示出了在數(shù)據(jù)/填充字段535中記錄的配置信息。
表4
當沒有加密模塊可用時,如果標記字段525的設(shè)置完成位的值是“0”,則所有配置信息被設(shè)置為“空”。然而,當加密模塊可用但不可操作時,即使標記字段525的設(shè)置完成位的值是“0”,當配置信息的操作狀態(tài)位指示“開”時,也向所有配置信息填入相應(yīng)的值。
表4中所示的操作狀態(tài)位指示當前加密模塊事實上是否可在系統(tǒng)上操作。換言之,當操作狀態(tài)位指示“開”而配置信息的剩余位相互同步時,標記字段525的設(shè)置完成位的值可為“1”。然而,當加密模塊不操作、并由此操作狀態(tài)位被設(shè)置為“0”時,配置信息的剩余位都被設(shè)置為“空”。
表4中所示的加密模式位指示由加密模塊提供的功能。因為在EPON的情況下,下行數(shù)據(jù)是廣播數(shù)據(jù),而上行數(shù)據(jù)是單播數(shù)據(jù),所以有時可能不對上行數(shù)據(jù)加密,或者有時可能不對下行數(shù)據(jù)加密。如果在處理了加密模式信息之后,OLT和ONU的安全性模塊不能同步,則標記字段525的設(shè)置完成位被設(shè)置為“0”。
表4中所示的加密算法位指示由加密模塊用來加密或解密數(shù)據(jù)的算法。在表4中,除了RSA之外的所有算法都是對稱算法。加密模塊可以具有、或可以不具有操作多個加密模塊的獨立模塊。如果在處理了加密算法信息之后,OLT和ONU的安全性模塊不能同步,則將標記字段525的設(shè)置完成位設(shè)置為‘0’。
表4中所示的密鑰分發(fā)算法位指示由密鑰管理模塊使用的密鑰分發(fā)方法。在表4中示出兩個算法作為示例。然而,當形成用于密鑰分發(fā)的單獨加密信道時,密鑰分發(fā)算法位指示由密鑰分發(fā)加密模塊使用的算法信息。
當形成用于密鑰分發(fā)的單獨的加密信道時,可改變信息密鑰管理幀500的數(shù)據(jù)/填充字段535,或者可定義和使用新的密鑰管理幀。然而,根據(jù)本發(fā)明的實施例的密鑰分發(fā)算法是Diffie-Hellman方法的修改版本,并且不需要單獨的加密信道。如果在處理了密鑰分發(fā)算法信息之后,OLT和ONU的安全性模塊不能同步,則標記字段525的設(shè)置完成位被設(shè)置為“0”。
圖6A和圖6B圖解了根據(jù)本發(fā)明的實施例、用于請求密鑰更新的密鑰管理幀600的結(jié)構(gòu)。參照圖6A,用于請求密鑰更新的密鑰管理幀600的結(jié)構(gòu)與圖4的密鑰管理幀400的結(jié)構(gòu)相同。然而,代碼字段630具有指示密鑰管理幀600的值“2”(見表3)。此外,數(shù)據(jù)/填充字段635包括指示要更新的密鑰的類型的密鑰索引字段637、以及指示為密鑰更新而交換的隨機值的Nonce字段639。
加密消息始終容易受到攻擊者的攻擊。由此,當攻擊者截取加密消息時,用于加密該被偷取的消息的密鑰可能會暴露。因此,為了安全性,必須周期性地改變用于加密的密鑰。
圖6A或圖6B所示的密鑰管理幀600被用于更新TK和PMK,這兩者必須被周期性地更新。PMK不用于加密數(shù)據(jù),因此具有相對長的更新周期。然而,因為TK被用于加密數(shù)據(jù),從而經(jīng)常暴露給信道,所以其具有短的更新周期。
這里,盡管未用于數(shù)據(jù)加密,也必須為了安全性而周期性地更新PMK,這是因為其被用于更新TK,并且用于生成TK的因子(factor)被暴露給信道。
用于請求密鑰更新的密鑰管理幀600的數(shù)據(jù)/填充字段635的密鑰索引字段637指示要更新的密鑰的類型(PMK或TK),并且Nonce字段639包括生成密鑰所需的隨機值。例如,如果密鑰索引字段637是“0”,則應(yīng)當更新PMK。如果密鑰索引字段637是“1”,則應(yīng)當更新TK。
圖6A中所示的密鑰管理幀600被用于更新單播密鑰,而圖6B中所示的密鑰管理幀600被用于更新廣播密鑰。單播密鑰用于OLT和ONU之間的P2P通信,而廣播密鑰用于OLT和連接到OLT的所有ONU之間的P2MP通信。因為必須將廣播密鑰分發(fā)給所有ONU,所以使用由OLT生成的隨機值來生成它。
當傳送端傳送用于請求密鑰更新的密鑰管理幀600時,直到其從接收端接收到用于響應(yīng)密鑰更新請求的密鑰管理幀700(見圖7A或圖7B)之前,其不能生成密鑰。當傳送端的密鑰管理模塊接收到響應(yīng)密鑰更新請求的密鑰管理幀700時,其使用由自身生成的隨機值A(chǔ)nonce和由另一端生成的隨機值Bnonce,更新由密鑰管理幀700的密鑰索引字段637指示的密鑰。當生成廣播密鑰時,因為OLT也分發(fā)隨機值Bnonce,所以O(shè)NU不生成隨機值。
圖7A和圖7B圖解了根據(jù)本發(fā)明的實施例、用于響應(yīng)密鑰更新請求的密鑰管理幀700的結(jié)構(gòu)。參照圖7A,用于響應(yīng)密鑰更新請求的密鑰管理幀700的結(jié)構(gòu)與圖6的用于請求密鑰更新的密鑰管理幀600的結(jié)構(gòu)相同。然而,代碼字段730具有指示密鑰管理幀700的值“3”(見表3)。
僅僅在接收到用于請求密鑰更新的密鑰管理幀600之后才傳送密鑰管理幀700。用于響應(yīng)密鑰更新請求的密鑰管理幀700的數(shù)據(jù)/填充字段735的密鑰索引字段737指示密鑰的類型(例如,0PMK,1TK),并且Nonce字段739指示生成密鑰所需的值。
在傳送響應(yīng)密鑰更新請求的密鑰管理幀700之后,傳送端的密鑰管理模塊使用用于請求密鑰更新的密鑰管理幀600的隨機值A(chǔ)nonce以及由自身生成的隨機值Bnonce,來更新目標密鑰。
圖8圖解了根據(jù)本發(fā)明的實施例、用于請求密鑰校驗的密鑰管理幀800的結(jié)構(gòu)。參照圖8,用于請求密鑰校驗的密鑰管理幀800的結(jié)構(gòu)與圖4的密鑰管理幀400的結(jié)構(gòu)相同。然而,代碼字段830具有指示密鑰管理幀800的值“4”(見表3)。數(shù)據(jù)字段835包括指示要驗證的密鑰的類型的密鑰索引836、以及指示密鑰校驗所需的數(shù)據(jù)的Anonce字段837和Nonce字段838。
即使當使用密鑰管理幀600和700來更新密鑰時,必須傳輸是否準確地傳輸密鑰,這是因為本發(fā)明的實施例中的密鑰不是直接傳輸?shù)摹?br>
用于請求密鑰校驗的密鑰管理幀800包括要校驗的密鑰的密鑰索引836、以及由Anonce字段837和Bnonce字段838指示且用于生成密鑰的隨機值。由下式給出用于密鑰校驗的校驗密鑰(VK)VK=PRF(Anonce||Bnonce||Ki)...(2)其中Ki指示要校驗的密鑰的類型(i(0)AK,(1)BK,(2)SAK)。
傳送端的密鑰管理模塊在傳送了用于請求密鑰校驗的密鑰管理幀800之后,生成VK,并且等待響應(yīng)密鑰校驗請求的密鑰管理幀900(見圖9)。
圖9圖解了根據(jù)本發(fā)明的實施例、用于響應(yīng)密鑰校驗請求的密鑰管理幀900的結(jié)構(gòu)。參照圖9,用于響應(yīng)密鑰校驗請求的密鑰管理幀900的結(jié)構(gòu)與圖4的密鑰管理幀400的結(jié)構(gòu)相同。然而,代碼字段930具有指示密鑰管理幀900的值‘5’(見表3)。
與可生成VK的因子一起傳送用于響應(yīng)密鑰校驗請求的密鑰管理幀900。因而,接收響應(yīng)密鑰校驗請求的密鑰管理幀900的接收端的密鑰管理模塊生成用于確認密鑰校驗的密鑰管理幀1000(見圖10),并且傳送包括要校驗的密鑰的密鑰索引字段937以及指示所生成的VK的Y字段939的、用于確認密鑰校驗的密鑰管理幀1000。使用等式2來生成VK。
圖10圖解了根據(jù)本發(fā)明的實施例、用于確認密鑰校驗的密鑰管理幀1000的結(jié)構(gòu)。參照圖10,用于確認密鑰校驗的密鑰管理幀1000的結(jié)構(gòu)與圖4的密鑰管理幀400的結(jié)構(gòu)相同。然而,代碼字段1030具有指示密鑰管理幀1000的值‘6’(見表3)。
在交換密鑰管理幀800和900以校驗所生成的密鑰之后,請求密鑰校驗的一端必須向接收端傳送校驗結(jié)果。如果密鑰被更新、然后被校驗,則必須檢查校驗結(jié)果。然而,如果密鑰被更新而沒有校驗,則不必傳送用于確認密鑰校驗的密鑰管理幀1000。
在傳送了用于請求密鑰校驗的密鑰管理幀800的傳送端從接收端接收到響應(yīng)密鑰校驗請求的密鑰管理幀900之后,傳送端向接收端傳送用于確認密鑰校驗的密鑰管理幀1000。如果由接收端接收的密鑰管理幀1000中的校驗結(jié)果值指示還未校驗密鑰,則不更新密鑰。
在EPON上傳送上述密鑰管理幀而不進行加密,這是因為由于PRF的安全特性,即使在密鑰管理幀中包含的信息被暴露給攻擊者時,攻擊者也不能在一段有效時間內(nèi)確定密鑰。
圖11圖解了在根據(jù)本發(fā)明的實施例的密鑰分發(fā)方法中的步驟過渡。參照圖11,密鑰分發(fā)步驟包括密鑰更新步驟1100、密鑰分發(fā)步驟1110、以及密鑰校驗步驟1120。
當執(zhí)行密鑰更新周期時,密鑰更新步驟1100生成密鑰,并執(zhí)行密鑰分發(fā)步驟1110,以分發(fā)所生成的密鑰。密鑰分發(fā)步驟1110分發(fā)所生成的密鑰,并在完成密鑰分發(fā)之后,執(zhí)行密鑰校驗步驟1120。在校驗了所生成的密鑰之后,密鑰校驗步驟1120執(zhí)行密鑰更新步驟1110。然后,密鑰更新步驟1100更新經(jīng)校驗的密鑰。
圖12是圖解根據(jù)本發(fā)明的實施例的密鑰更新方法的流程圖。參照圖12,在生成用于加密的密鑰、并在EPON上分發(fā)給OLT和ONU之后,啟動密鑰更新計時器(S1200)。當密鑰更新計時器在一段預(yù)定時間之后停止(S1205)時,分發(fā)密鑰的一端(OLT或ONU,下文中稱之為傳送端)向另一端(OLT或ONU,下文中稱之為接收端)傳送用于請求密鑰更新的密鑰管理幀600(S1210)。
響應(yīng)于用于請求密鑰更新的密鑰管理幀600,傳送端從接收端接收用于響應(yīng)密鑰更新請求的密鑰管理幀700(S1215)。然后,傳送端生成用于請求密鑰校驗的密鑰管理幀800,并向接收端傳送用于請求密鑰校驗的密鑰管理幀800(S1220)。
響應(yīng)于用于請求密鑰校驗的密鑰管理幀800,傳送端從接收端接收用于響應(yīng)密鑰校驗請求的密鑰管理幀900(S1225)。然后,傳送端檢查用于響應(yīng)密鑰校驗請求的密鑰管理幀900,以確定是否成功地校驗了密鑰(S1230)。如果成功地校驗了密鑰,則傳送端向接收端傳送用于確認密鑰校驗的密鑰管理幀1000,然后更新密鑰(S1235)。
使用慢協(xié)議的MAC幀來交換上述密鑰管理幀。
圖13是圖解根據(jù)本發(fā)明的另一實施例的密鑰更新方法的流程圖。圖12的流程圖從請求密鑰更新的一端的角度圖解了密鑰更新方法,而圖13的流程圖從接收用于密鑰更新的請求的一端的角度圖解了密鑰更新方法。
參照圖13,當接收端接收到用于請求密鑰更新的密鑰管理幀600時(S1300),其生成用于響應(yīng)密鑰更新請求的密鑰管理幀700,并且向傳送端傳送用于響應(yīng)密鑰更新請求的密鑰管理幀700(S1305)。當接收端接收到用于請求密鑰校驗的密鑰管理幀800時,其生成用于響應(yīng)密鑰校驗請求的密鑰管理幀900,并向傳送端傳送用于響應(yīng)密鑰校驗請求的密鑰管理幀900(S1315)。當接收端接收到用于確認密鑰校驗的密鑰管理幀1000時,其更新密鑰(S1325)。
工業(yè)實用性為了網(wǎng)絡(luò)安全性,將根據(jù)本發(fā)明的密鑰分發(fā)方法應(yīng)用于EPON。由此,可使用在EPON的OLT和ONU的每一個中的密鑰管理模塊,來安全和有效地分發(fā)由加密模塊使用的密鑰。
權(quán)利要求
1.一種在以太網(wǎng)無源光網(wǎng)絡(luò)(EPON)上分發(fā)密鑰的方法,該方法包括在光線終端(OLT)和光網(wǎng)絡(luò)單元(ONU)之間交換分別由OLT和ONU生成的第一隨機值,以生成單播安全信道;基于所交換的第一隨機值和預(yù)分發(fā)的主密鑰,使用散列函數(shù)來生成成對主密鑰(PMK);在OLT和ONU之間交換分別由OLT和ONU生成的第二隨機值;以及基于所交換的第二隨機值、OLT和ONU各自的媒體訪問控制(MAC)地址、以及PMK,使用散列函數(shù)來生成臨時密鑰。
2.如權(quán)利要求1所述的方法,其中所述臨時密鑰被用作OLT和ONU的校驗密鑰、用作廣播數(shù)據(jù)的加密密鑰、用作單播數(shù)據(jù)的加密密鑰、以及用作用于初始化加密模塊算法的值。
3.如權(quán)利要求1所述的方法,其中OLT和ONU使用慢協(xié)議的MAC幀來相互交換所述第一隨機值和所述第二隨機值。
4.如權(quán)利要求1所述的方法,還包括按照預(yù)定周期來更新PMK或臨時密鑰。
5.如權(quán)利要求4所述的方法,其中所述更新PMK或臨時密鑰包括從OLT或ONU向OLT或ONU傳送包括要更新的密鑰的類型以及用于更新密鑰的第三隨機值的、用于請求密鑰更新的幀,從OLT或ONU接收包括第四隨機值的、用于響應(yīng)密鑰更新請求的幀,并且生成新密鑰;以及向OLT或ONU傳送包括要更新的密鑰的類型、第三隨機值和第四隨機值的用于請求密鑰校驗的幀,并且從OLT或ONU接收包括使用所述第三隨機值和第四隨機值而生成的校驗密鑰的、用于響應(yīng)密鑰校驗請求的幀。
6.如權(quán)利要求5所述的方法,還包括向OLT或ONU傳送包括使用在所述用于響應(yīng)密鑰校驗請求的幀中包括的所述校驗密鑰來校驗密鑰的結(jié)果的、用于確認密鑰校驗的幀。
7.如權(quán)利要求1所述的方法,還包括在OLT和ONU之間交換MAC幀,其中該MAC幀包括OLT和ONU中的每一個的加密模塊和密鑰管理模塊的配置信息。
8.一種在EPON上分發(fā)密鑰的方法,該方法包括將由OLT生成的第一隨機值傳輸給ONU,以生成廣播安全信道;基于所傳輸?shù)牡谝浑S機值和預(yù)分發(fā)的主密鑰,使用散列函數(shù)來生成PMK;將由OLT生成的第二隨機值傳送給ONU;以及基于所傳輸?shù)牡诙S機值、OLT和ONU的MAC地址、以及PMK,使用散列函數(shù)來生成臨時密鑰。
9.如權(quán)利要求8所述的方法,其中所述臨時密鑰被用作OLT和ONU的校驗密鑰、用作廣播數(shù)據(jù)的加密密鑰、用作單播數(shù)據(jù)的加密密鑰、以及用作用于初始化加密模塊算法的值。
10.如權(quán)利要求8所述的方法,還包括按照預(yù)定周期來更新PMK或臨時密鑰。
11.如權(quán)利要求10所述的方法,其中所述更新PMK或臨時密鑰包括傳送包括要更新的密鑰的類型以及用于更新密鑰的第三隨機值的、用于請求密鑰更新的幀,從OLT或ONU接收包括第四隨機值的、用于響應(yīng)密鑰更新請求的幀,并且生成新密鑰;以及向OLT或ONU傳送包括要更新的密鑰的類型、第三隨機值和第四隨機值的用于請求密鑰校驗的幀,并且從OLT或ONU接收包括使用所述第三隨機值和第四隨機值而生成的校驗密鑰的、用于響應(yīng)密鑰校驗請求的幀。
12.如權(quán)利要求11所述的方法,還包括向OLT或ONU傳送包括使用在所述用于響應(yīng)密鑰校驗請求的幀中包括的所述校驗密鑰來校驗密鑰的結(jié)果的、用于確認密鑰校驗的幀。
13.如權(quán)利要求8所述的方法,還包括在OLT和ONU之間交換MAC幀,其中該MAC幀包括OLT和ONU中的每一個的加密模塊和密鑰管理模塊的配置信息。
全文摘要
提供了一種將鏈路安全性技術(shù)應(yīng)用于以太網(wǎng)無源光網(wǎng)絡(luò)(EPON)的密鑰分發(fā)方法。光線終端(OLT)和光網(wǎng)絡(luò)單元(ONU)分別生成第一隨機值,并且相互交換第一隨機值。OLT和ONU基于所交換的第一隨機值和預(yù)分發(fā)的主密鑰,使用散列函數(shù)來生成成對主密鑰(PMK)。OLT和ONU分別生成第二隨機值并相互交換第二隨機值。OLT和ONU基于所交換的第二隨機值、OLT和ONU各自的媒體訪問控制(MAC)地址、以及PMK,使用散列函數(shù)來生成臨時密鑰。因而,可在EPON上安全地分發(fā)密鑰,而不使用單獨的安全信道。
文檔編號H04L9/08GK101073221SQ200580041966
公開日2007年11月14日 申請日期2005年12月7日 優(yōu)先權(quán)日2004年12月7日
發(fā)明者殷知淑, 韓景洙, 俞泰皖, 權(quán)栗 申請人:韓國電子通信研究院