AES加密在GPON中的應(yīng)用

GPON(Gigabit-Capable PON) 技術(shù)是基于ITU-TG.984.x標(biāo)準(zhǔn)的最新一代寬帶無源光綜合接入標(biāo)準(zhǔn),具有高帶寬,高效率,大覆蓋范圍,用戶接口豐富等眾多優(yōu)點(diǎn),被大多數(shù)運(yùn)營商視為實(shí)現(xiàn)接入網(wǎng)業(yè)務(wù)寬帶化,綜合化改造的理想技術(shù)。

在PON系統(tǒng)中,下行數(shù)據(jù)廣播給所有ONU。如果有惡意用戶存在,那么他就能夠聽到所有用戶的所有下行數(shù)據(jù)。這是PON安全系統(tǒng)會(huì)遇到的“偷聽”威脅。其他更多的外來威脅實(shí)際上并不重要,因?yàn)槿绻獙?shí)施這些攻擊,用戶要消耗更多的資源,而這些多消耗的資源與他的所得并不相稱。GPON系統(tǒng)可采用多種加密算法,具體算法應(yīng)符合國家相關(guān)規(guī)定。在開啟加密算法前,OLT和ONU應(yīng)通過OMCI通道來協(xié)商算法。目前GPON僅規(guī)定支持AES加密算法。

AES加密算法是是一種分組加密算法,處理的最小單元是一個(gè)分組,即把明文或密文分成固定長度的分組,進(jìn)而進(jìn)行加密或解密處理。AES的分組大小為128比特,可以支持的密鑰長度有128、192、256三種,分別稱為AES-128、AES-192、AES-256,其中又以AES-128應(yīng)用最廣,GPON中使用的就是AES-128。

AES加密在GPON中的應(yīng)用

GPON中的AES加密使用的是計(jì)數(shù)器(CTR)模式。密碼算法產(chǎn)生一個(gè)16字節(jié)的偽隨機(jī)碼塊流,偽隨機(jī)碼塊與輸入的明文進(jìn)行異或運(yùn)算后產(chǎn)生密文輸出。密文與同樣的偽隨機(jī)碼進(jìn)行異或運(yùn)算后可以重產(chǎn)生明文。密鑰長度是固定的為128比特。更多比特的密鑰也支持,不過這種情況視為可選。CTR模式使用OLT和所有ONU都相同的同步crypto-counter 。crypto-counter 的結(jié)構(gòu)如下:計(jì)數(shù)器寬度為46比特,低16比特為幀內(nèi)計(jì)數(shù)器,高30比特是幀間計(jì)數(shù)器。幀內(nèi)計(jì)數(shù)器在下行幀開始時(shí)置為0( 第一字節(jié)是PCBd),每4字節(jié)遞增。幀間計(jì)數(shù)器與在PCBd的Ident域中傳遞的復(fù)幀計(jì)數(shù)器保持一致。ONU實(shí)現(xiàn)一個(gè)同步的本地計(jì)數(shù)器,因此對(duì)這個(gè)域的錯(cuò)誤有恢復(fù)能力。隨機(jī)密碼塊排列在數(shù)據(jù)包凈荷的起始位置。對(duì)于GEM分片的情況,只加密凈荷, 不加密Port_ID幀頭。由于碎片不一定是一個(gè)編碼塊的整數(shù),尾數(shù)據(jù)塊(長度為1到16字節(jié))與尾AES密碼塊(長度為16字節(jié))的高位部分進(jìn)行異或運(yùn)算。密碼塊結(jié)尾的多余部分將會(huì)被丟棄。

AES加密在GPON中的應(yīng)用

crypto-counter 與GTC 下行幀對(duì)齊,但是AES密碼塊與數(shù)據(jù)凈荷對(duì)齊。當(dāng)數(shù)據(jù)包在OLT上發(fā)送或者在ONU上接收時(shí),幀頭第一個(gè)字節(jié)的位置被標(biāo)注。該字節(jié)位置的crypto-counter 值用作數(shù)據(jù)包的密碼塊計(jì)數(shù)器的開始值。對(duì)于數(shù)據(jù)包中接下來的密碼塊,計(jì)數(shù)器對(duì)每個(gè)塊遞增1。這種方法可以保證計(jì)數(shù)器的同一值不會(huì)被重復(fù)使用。

在GPON中采取了AES加密后,能有效的保護(hù)下行數(shù)據(jù)的安全性,防止惡意用戶的偷聽威脅,使得GPON成為一個(gè)真正安全的接入方式。