文獻標識碼: A
文章編號: 0258-7998(2013)07-0057-03
TD-LTE是3GPP標準化組織設(shè)立的一個無線移動通信系統(tǒng)演進計劃,其系統(tǒng)設(shè)計目標已經(jīng)成為3G移動通信系統(tǒng)的主流演進方向。TD-LTE系統(tǒng)基于全IP的無線空口傳輸,數(shù)據(jù)和信息完全暴露于網(wǎng)絡(luò)上,導(dǎo)致信息容易丟失、前后失真,所以保護信息的完整性在通信中便顯得非常重要[1]。SNOW3G技術(shù)曾應(yīng)用于3G通信網(wǎng)絡(luò)中,由于其高效的加密性能及強大的抗攻擊能力,所以時至今日SNOW3G仍然廣泛地運用在TD-LTE系統(tǒng)中,有效地保證網(wǎng)絡(luò)中傳輸無線數(shù)據(jù)不被竊聽和修改,滿足了現(xiàn)代通信系統(tǒng)的安全需求[2]。
1 SNOW3G完整性保護算法概述
在TD-LTE系統(tǒng)中,EMM子層主要用于對EMM和ESM子層的消息提供加密和完整性保護。而SNOW3G完整性保護算法則是EMM層對數(shù)據(jù)進行完整性保護的主要算法[3]。
在正常的RRC連接建立完成并且鑒權(quán)成功之后,執(zhí)行安全模式命令,EPC向UE發(fā)送消息Security Mode Command,如圖1所示。
安全模式命令過程是為了將鑒權(quán)過程新產(chǎn)生的一個EPS Security Context激活并投入使用,以此來建立UE與EPC之間的安全信令連接。UE收到Security Mode Command消息后,核實該消息能被接收,UE將選用的NAS安全性算法保存在本地,利用鑒權(quán)過程中保存的KASME生成KNASenc、KNASint和KeNB,然后決定使用什么EPS Security Context。最后UE將用已選擇的NAS加密算法和完整性保護算法對Security Mode Complete消息進行安全保護[4]。
2 SNOW3G完整性保護算法研究
完整性算法主要用于在發(fā)送端保護發(fā)送數(shù)據(jù)的完整性不被破壞及在接收端檢驗接收數(shù)據(jù)的完整性是否被破壞。通過SNOW3G完整性保護算法分別對發(fā)送端和接收端的數(shù)據(jù)進行運算得到MAC-I和XMAC-I,兩者進行比對可以確認數(shù)據(jù)的完整性。
2.2.2 生成密鑰流
在初始化操作后進入密鑰流(Keystream)生成過程。執(zhí)行FSM函數(shù),生成的32位數(shù)據(jù)F將被丟棄,執(zhí)行DIVα函數(shù)。后面執(zhí)行FSM函數(shù),生成的數(shù)據(jù)將作為密鑰,循環(huán)5次后得到密鑰流Z,Z=Z1||Z2||Z3||Z4||Z5,包括5個32位字的Z1、Z2、Z3、Z4和Z5。生成密鑰流操作的圖示如圖4所示。
2.2.3 生成MAC-I
將2.2.2中得到的P(即Z1||Z2)與需要完整性保護的數(shù)據(jù)MESSAGE進行MUL64運算,得到的中間數(shù)據(jù)EVAL與MESSAGE的長度LENGTH進行“異或”,得到“異或”后的EVAL,這個EVAL與步驟⑴中得到的Q(即Z3||Z4)進行MUL64運算,再次得到更新的EVAL。將密鑰流低位的32位數(shù)據(jù)與EVAL的高位的32位數(shù)據(jù)進行“異或”,得到的32位數(shù)據(jù)MAC_I即為完整性保護密鑰。具體過程如圖5所示。
3 算法實現(xiàn)與驗證
通過編寫C程序在Microsoft Visual C++ 6.0軟件運行完整性保護算法,按照測試規(guī)范,輸入如下參數(shù)[8]:
COUNT=3E DC 87 E2;
FRESH=A4 F2 D8 E2;
DIRECTION=1;
IK=D4 2F 68 24 28 20 1C AF CD 9F 97 94 5E 6D E7 B7;
LENGTH=254 bits;
MESSAGE=B5 92 43 84 32 8A 4A E0 0B 73 71 09 F8 B6 C8 DD 2B 4D B6 3D D5 33 98 1C EB 19 AA D5 2A 5B 2B C0。
得到密鑰為MAC-I=FC 7B 18 BD.,該結(jié)果符合測試規(guī)范。通過前面的分析,利用偽代碼編寫C語言,驗證了算法的正確性。測試結(jié)果如圖6所示。
本文描述了SNOW3G完整性保護算法的基本操作和算法流程,并對它的實現(xiàn)過程及程序仿真作了深入分析。上面的VC運行結(jié)果得到的完整性保護密鑰,與預(yù)期結(jié)果一致,很好地驗證了算法。隨著通信技術(shù)的進步,將對該算法進行進一步的研究。
參考文獻
[1] Motorola Co. Ltd..Long Term Evolution(LTE):a technical overview[R].2007.
[2] 解謙.Snow 3G算法分析[J].現(xiàn)代電信科技,2011(06):23-28.
[3] 3GPP TS 33.401 V940-2010.3GPP system architecture evolution(SAE)-security architecture[S].2008-16-17.
[4] 3GPP TS 24.301 V920-2009.Non-Access-Stratum(NAS)protocol for Evolved Packet System(EPS) Stage 3[S].2010.
[5] Specification of the 3GPP confidentiality and integrity algorithms UEA2&UIA2.Document 1:UEA&UIA2 specifications[EB/OL].[2012-03-19].http://gsmworld.com/documents/etsi_sage_06_09_06.pdf.
[6] 張洪銘,何登平.基于LTE系統(tǒng)的SNOW3G密算法研究[J].電視技術(shù),2010(12):91-93.
[7] Specification of the 3GPP confidentiality and integrity algorithms UEA2&UIA2.Document 2:SNOW3G specification[EB/OL].[2012-03-19].http://gsmworld.com/documents/snow_3g_spec.pdf.
[8] Specification of the 3GPP confidentiality and integrity algorithms UEA2&UIA2.Document 4:design conformance test data[EB/OL].[2012-03-19].http://gsmworld.com/documents/conformance.pdf.