• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      TD-LTE系統(tǒng)中的SNOW3G完整性保護(hù)算法研究*

      2013-09-07 02:52:16李小文李媚媚
      電子技術(shù)應(yīng)用 2013年7期
      關(guān)鍵詞:寄存器完整性密鑰

      李小文,李媚媚

      (重慶郵電大學(xué) 重慶市移動(dòng)通信技術(shù)重點(diǎn)實(shí)驗(yàn)室,重慶 400065)

      TD-LTE是3GPP標(biāo)準(zhǔn)化組織設(shè)立的一個(gè)無線移動(dòng)通信系統(tǒng)演進(jìn)計(jì)劃,其系統(tǒng)設(shè)計(jì)目標(biāo)已經(jīng)成為3G移動(dòng)通信系統(tǒng)的主流演進(jìn)方向。TD-LTE系統(tǒng)基于全I(xiàn)P的無線空口傳輸,數(shù)據(jù)和信息完全暴露于網(wǎng)絡(luò)上,導(dǎo)致信息容易丟失、前后失真,所以保護(hù)信息的完整性在通信中便顯得非常重要[1]。SNOW3G技術(shù)曾應(yīng)用于3G通信網(wǎng)絡(luò)中,由于其高效的加密性能及強(qiáng)大的抗攻擊能力,所以時(shí)至今日SNOW3G仍然廣泛地運(yùn)用在TD-LTE系統(tǒng)中,有效地保證網(wǎng)絡(luò)中傳輸無線數(shù)據(jù)不被竊聽和修改,滿足了現(xiàn)代通信系統(tǒng)的安全需求[2]。

      1 SNOW3G完整性保護(hù)算法概述

      在TD-LTE系統(tǒng)中,EMM子層主要用于對(duì)EMM和ESM子層的消息提供加密和完整性保護(hù)。而SNOW3G完整性保護(hù)算法則是EMM層對(duì)數(shù)據(jù)進(jìn)行完整性保護(hù)的主要算法[3]。

      在正常的RRC連接建立完成并且鑒權(quán)成功之后,執(zhí)行安全模式命令,EPC向UE發(fā)送消息Security Mode Command,如圖1所示。

      圖1 安全模式命令

      安全模式命令過程是為了將鑒權(quán)過程新產(chǎn)生的一個(gè)EPS Security Context激活并投入使用,以此來建立UE與EPC之間的安全信令連接。UE收到 Security Mode Command消息后,核實(shí)該消息能被接收,UE將選用的NAS安全性算法保存在本地,利用鑒權(quán)過程中保存的KASME生成KNASenc、KNASint和KeNB, 然后決定使用什么EPS Security Context。最后UE將用已選擇的NAS加密算法和完整性保護(hù)算法對(duì)Security Mode Complete消息進(jìn)行安全保護(hù)[4]。

      2 SNOW3G完整性保護(hù)算法研究

      完整性算法主要用于在發(fā)送端保護(hù)發(fā)送數(shù)據(jù)的完整性不被破壞及在接收端檢驗(yàn)接收數(shù)據(jù)的完整性是否被破壞。通過SNOW3G完整性保護(hù)算法分別對(duì)發(fā)送端和接收端的數(shù)據(jù)進(jìn)行運(yùn)算得到MAC-I和XMAC-I,兩者進(jìn)行比對(duì)可以確認(rèn)數(shù)據(jù)的完整性。

      2.1 基本函數(shù)

      SNOW3G完整性保護(hù)算法的實(shí)現(xiàn)要用到以下10個(gè)基本功能函數(shù)[5-6]:

      (1)MUL64x

      該函數(shù)將128位數(shù)據(jù)轉(zhuǎn)化為64位數(shù)據(jù)。設(shè)V是128位數(shù)據(jù)的高64位,c是128位數(shù)據(jù)的低64位。

      如果V的最高位為1,則MUL64x(V,c)=(V<<1)⊕c;如果V的最高位不為1,則MUL64x(V,c)=(V<<1)。其中V<<1表示左移一位,⊕表示“異或”運(yùn)算。

      (2)MUL64xPOW

      該函數(shù)的輸入?yún)?shù)是一個(gè)整數(shù)i和128位數(shù)據(jù),得到64位數(shù)據(jù)的輸出。設(shè)V是128位數(shù)據(jù)的高64位,c是128位數(shù)據(jù)的低64位。

      如果i=0,MUL64xPOW(V,i,c)=V;如果i≠0,MUL-64xPOW(V,i,c)=MUL64x(MUL64xPOW(V,i-1,c),c)。

      (3)MUL64

      該函數(shù)的輸入?yún)?shù)是3個(gè)64位的數(shù)據(jù),分別為V、P、c,得到一個(gè)64位的數(shù)據(jù)result。

      在函數(shù)中定義一個(gè)整數(shù)i從0遞增到63,當(dāng)V的第i位數(shù)據(jù)是1時(shí),result=result⊕MUL64xPOW(V,i,c),否則result不做處理。如此循環(huán)64次,最終得到result。

      (4)MULx

      該函數(shù)的輸入?yún)?shù)是一個(gè)16位的數(shù)據(jù),得到一個(gè)8位的輸出數(shù)據(jù),映射過程如下:

      如果V的最高位為1,則MULx(V,c)=(V<<8)⊕c;否則MULx(V,c)=V<<8。

      (5)MULxPOW

      該函數(shù)的輸入?yún)?shù)是一個(gè)16位的數(shù)據(jù)和一個(gè)正整數(shù)i,得到一個(gè)8位的輸出數(shù)據(jù),V和c為8 bit輸入,映射過程如下:

      如果i為0,則MULxPOW(V,i,c)=V;否則MULx-POW(V,i,c)=MULx(MULxPOW(V,i-1,c),c)。

      (6)S-BOX S1

      該函數(shù)的輸入?yún)?shù)是一個(gè)32位的數(shù)據(jù)w,得到一個(gè)32位的輸出數(shù)據(jù)r。w=w0||w1||w2||w3,輸入?yún)?shù)以w0開頭以w3結(jié)尾。S1(w)=r0||r1||r2||r3,以r0開頭以r3結(jié)尾。S-box S1用于更新寄存器R2,所以此處的w表示R1,S1(w)表示更新后的R2(||表示連接符)。

      (7)S-BOX S2

      該函數(shù)的功能與S-BOX S1相同。

      w=w0||w1||w2||w3,輸入?yún)?shù)以w0開頭以w3結(jié)尾。S2(w)=r0||r1||r2||r3,以r0開頭以r3結(jié)尾。S-box S2用于更新寄存器R3,所以此處的w表示R2,S2(w)表示更新后的R3。

      (8)FSM

      該函數(shù)有兩個(gè)32位的輸入S15和S5,產(chǎn)生一個(gè)32位的輸出F,F(xiàn)=(S15 R1)⊕R2(表示整數(shù)和模232),然后寄存器更新數(shù)據(jù)。計(jì)算中間值r如下:r=R2 (R3⊕S5)。令R3=S2(R2),R2=S1(R1),R1=r。圖2為FSM的運(yùn)算圖示。

      圖2 FSM運(yùn)算圖示

      (9)MULα

      該函數(shù)的輸入?yún)?shù)是一個(gè)8位數(shù)據(jù)c,得到一個(gè)32位的數(shù)據(jù):MULα(c)=(MULxPOW(c,23,0xA9)||MULxPOW(c,245,0xA9)||MULxPOW(c,48,0xA9)||MULxPOW(c,239,0xA9))。

      (10)DIVα

      該函數(shù)的輸入?yún)?shù)是一個(gè)8位數(shù)據(jù)c,得到一個(gè)32位的數(shù)據(jù):DIVα(c)=(MULxPOW(c,16,0xA9)||MULxPOW(c,39,0xA9)||MULxPOW(c,6,0xA9)||MULxPOW(c,64,0xA9))。

      2.2 算法流程

      SNOW3G完整性保護(hù)算法主要分為三步,首先是初始化操作,然后是生成密鑰流,最后用得到的密鑰流和輸入?yún)?shù)通過完整性保護(hù)算法得到32位的MAC-I[7]。

      2.2.1 初始化

      SNOW3G的初始化指將一個(gè)128位的密鑰設(shè)定為包含4個(gè)32位字的k0、k1、k2、k3;一個(gè)128位的初始變量(Initialization Vector)包含4個(gè)32位字的IV0、IV1、IV2、IV3,且IV=IV0||IV1||IV2||IV3;設(shè)置LFSR即線性反饋移位寄存器由16部分組成:S0,S1,S2,…,S15,每部分32位;令1為全1字(0xffffffff)。令:S15=k3⊕IV0,S14=k2,S13=k1,S12=k0⊕IV1,S11=k3⊕1,S10=k2⊕1⊕IV2,S9=k1⊕1⊕IV3,S8=k0⊕1,S7=k3,S6=k2,S5=k1,S4=k0,S3=k3⊕1,S2=k2⊕1,S1=k1⊕1,S0=k0⊕1。設(shè)置完LFSR后,循環(huán)32次,實(shí)現(xiàn)對(duì)FSM的賦值。初始化操作如圖3所示。

      圖3 初始化操作

      2.2.2 生成密鑰流

      在初始化操作后進(jìn)入密鑰流(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個(gè)32位字的Z1、Z2、Z3、Z4和Z5。生成密鑰流操作的圖示如圖4所示。

      2.2.3 生成MAC-I

      將2.2.2中得到的P(即Z1||Z2)與需要完整性保護(hù)的數(shù)據(jù)MESSAGE進(jìn)行MUL64運(yùn)算,得到的中間數(shù)據(jù)EVAL與MESSAGE的長(zhǎng)度LENGTH進(jìn)行“異或”,得到“異或”后的EVAL,這個(gè)EVAL與步驟⑴中得到的Q(即Z3||Z4)進(jìn)行MUL64運(yùn)算,再次得到更新的EVAL。將密鑰流低位的32位數(shù)據(jù)與EVAL的高位的32位數(shù)據(jù)進(jìn)行“異或”,得到的32位數(shù)據(jù)MAC_I即為完整性保護(hù)密鑰。具體過程如圖5所示。

      圖5 生成完整性保護(hù)密鑰

      3 算法實(shí)現(xiàn)與驗(yàn)證

      通過編寫C程序在Microsoft Visual C++6.0軟件運(yùn)行完整性保護(hù)算法,按照測(cè)試規(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é)果符合測(cè)試規(guī)范。通過前面的分析,利用偽代碼編寫C語言,驗(yàn)證了算法的正確性。測(cè)試結(jié)果如圖6所示。

      圖6 測(cè)試結(jié)果

      本文描述了SNOW3G完整性保護(hù)算法的基本操作和算法流程,并對(duì)它的實(shí)現(xiàn)過程及程序仿真作了深入分析。上面的VC運(yùn)行結(jié)果得到的完整性保護(hù)密鑰,與預(yù)期結(jié)果一致,很好地驗(yàn)證了算法。隨著通信技術(shù)的進(jìn)步,將對(duì)該算法進(jìn)行進(jìn)一步的研究。

      [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.

      猜你喜歡
      寄存器完整性密鑰
      探索企業(yè)創(chuàng)新密鑰
      稠油熱采水泥環(huán)完整性研究
      云南化工(2021年9期)2021-12-21 07:44:00
      密碼系統(tǒng)中密鑰的狀態(tài)與保護(hù)*
      Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
      一種對(duì)稱密鑰的密鑰管理方法及系統(tǒng)
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      基于ECC的智能家居密鑰管理機(jī)制的實(shí)現(xiàn)
      莫斷音動(dòng)聽 且惜意傳情——論音樂作品“完整性欣賞”的意義
      精子DNA完整性損傷的發(fā)生機(jī)制及診斷治療
      樁身完整性檢測(cè)中缺陷的綜合判別
      河南科技(2014年18期)2014-02-27 14:14:46
      丰城市| 绵竹市| 汉阴县| 丰都县| 光泽县| 黔西县| 古丈县| 莱芜市| 论坛| 宣化县| 贵溪市| 铜川市| 弋阳县| 陆良县| 双柏县| 岑巩县| 木里| 朝阳县| 邹平县| 揭西县| 东方市| 武义县| 长垣县| 册亨县| 河间市| 类乌齐县| 什邡市| 衢州市| 武宣县| 昭苏县| 改则县| 长治县| 巢湖市| 鄂尔多斯市| 水富县| 淮安市| 阜平县| 夏邑县| 土默特左旗| 兴义市| 巴南区|