• 
    

    
    

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

      ?

      基于LTE系統(tǒng)的SNOW3G密算法研究*

      2010-08-09 05:03:52張洪銘何登平
      電視技術(shù) 2010年12期
      關(guān)鍵詞:明文加密算法寄存器

      張洪銘 ,何登平 ,2

      (1.重慶郵電大學(xué) 通信新技術(shù)應(yīng)用研究所,重慶 400065;2.重慶信科設(shè)計有限公司,重慶 400065)

      責(zé)任編輯:孫 卓

      1 引言

      第二代移動通信系統(tǒng)是中國主要應(yīng)用的通信系統(tǒng),目前,全球移動通信系統(tǒng) (Global System for Mobile Communications,GSM)已成為全球第一大網(wǎng),如此龐大的系統(tǒng),其安全性不容忽視。雖然比起模擬移動通信系統(tǒng),GSM在安全方面具有很多改進,但是隨著系統(tǒng)規(guī)模的擴大,其受到越來越多的攻擊,由于加密算法自身存在一些缺陷,使得其中一些攻擊很具威脅性。LTE系統(tǒng)出于對安全性的考慮采用了SNOW3G加密算法,該算法優(yōu)于TD-SCDMA中采用的KASUMI算法。

      2 SNOW3G加密算法

      PDCP層主要用于數(shù)據(jù)的頭壓縮、加密和完整性保護,而SNOW3G加密算法就是PDCP層采用對數(shù)據(jù)進行加密的主要算法。通過接收RRC層配置的加密參數(shù)來對通過PDCP層的數(shù)據(jù)進行加密處理[1]。

      2.1 加密過程概述[2-3]

      在正常的RRC連接建立完成并且通過層三消息鑒權(quán)完畢后,啟動安全模式命令,EUTRAN向UE發(fā)送消息SecurityModeCommand,如圖1所示。

      圖1 安全模式命令

      UE首先導(dǎo)出參數(shù)KeNB和消息SecurityModeCommand中給出的KRRCint,要求底層使用消息 Security Mode Command中給出的完整性算法和參數(shù)KRRCint校驗消息SecurityModeCommand的完整性,當(dāng)該消息通過完整性校驗后,UE存儲消息SecurityModeCommand中的值nextHopChainingCount,并導(dǎo)出加密算法和關(guān)于加密算法的參數(shù)KRRCenc,KUPenc。最后配置底層使用已選定的加密算法、KRRCenc和KUPenc,對隨后的數(shù)據(jù)進行加密處理,并激活A(yù)S層的安全,向EUTRAN發(fā)送消息SecurityModeComplete。

      2.2 SNOW3G加密算法說明[4]

      1)功能函數(shù)說明

      (1)MULX(V,c)。該函數(shù)用于將 16 bit映射成為 8 bit,映射過程為:如果 V 的最高位為 1,則 MULX(V,c)=(V<<81⊕c);否則 MULX(V,c)=(V<<81)。 其中,V 和 c 均為十六進制數(shù) 0xXX(即 8 bit),<

      (2)MULXPOW(V,i,c)。該函數(shù)用于將 16 bit和一個正整數(shù)i映射成8 bit,V和c為8 bit輸入,映射過程為:如果 i為 0,MULXPOW(V,i,c)=V;否則,MULXPOW(V,i,c)=MULX(MULXPOW(V,i,c),c)(i>1,該函數(shù)遞歸)。

      (3)S-boxes S1。該函數(shù)映射一個32 bit輸入成為一個 32 bit輸出,w=w0||w1||w2||w3(本處為 R1,||代表連接符),32 bit輸入以 w0 開頭,w3 結(jié)尾。S1(w)=r0||r1||r2||r3,以 r0開頭,r3結(jié)尾。

      (4)S-boxes S2。該函數(shù)映射一個32 bit輸入成為一個 32 bit輸出,w=w0||w1||w2||w3(本處為 R2),32 bit輸入以 w0開頭,w3 結(jié)尾。 S2(w)=r0||r1||r2||r3,以 r0開頭,r3結(jié)尾。

      (5)MULa(c)。該函數(shù)映射 8 bit成為 32 bit,c 為 8 bit輸入,則定義為:MULa(c)=MULXPOW(c,23,0xA9)||MULXPOW(c,48,0xA9)||MULXPOW(c,239,0xA9)。

      (6)DIVa(c)。 該函數(shù)映射 8 bit成為 32 bit,c 為 8 bit輸 入 ,則 定 義 為 :DIVa(c)=MULXPOW(c,16,0xA9)||MULXPOW(c,6,0xA9)||MULXPOW(c,64,0xA9)。

      (7)FSM(Finite State Machine)。 該函數(shù)有 2 個輸入字s15和s5,其來自 LFSR,產(chǎn)生一個 32 bit輸入字 F,則 F=(s15R1)⊕R2(代表整數(shù)和模232),然后寄存器更新數(shù)據(jù)。計算中間值r過程為:r=R2(R3⊕s5),令R3=S2(R2),R2=S1(R1),R1=r。

      2)結(jié)構(gòu)說明

      (1)線性反饋移位寄存器(LFSR)。LFSR包括s0,s1,s2,…,s15,每部分 32 bit。

      (2)有限狀態(tài)機(FSM)。FSM包含R1,R2和R3三個32 bit寄存器。S-boxes S1和S-boxes S2更新寄存器R2和R3。

      2.3 SNOW3G加密算法的實現(xiàn)

      SNOW3G是一種面向字的流加密算法,根據(jù)輸入的128 bit密鑰key和初始變量IV來計算密鑰流。密鑰流由一系列的字組成,每個字為32 bit,產(chǎn)生的密鑰流與明文進行異或,從而達到對明文進行加密的目的[5]。算法實現(xiàn)的設(shè)計思想為:

      SNOW3G加密算法需要的輸入有COUNT-C,BEARER,DIRECTION,CK,LENGTH 和 IBS, 而輸出為OBS。該算法主要由功能函數(shù)、LFSR、FSM和計時操作組成。實現(xiàn)過程主要包括初始化過程和密鑰流(Key Stream)生成過程。

      在初始化過程之前,LFSR的s0~s15值均為0,有限狀態(tài)機R1,R2和R3也為0。在初始化過程開始后,有限狀態(tài)機的狀態(tài)均設(shè)置為0,而LFSR各個部分的狀態(tài)由輸入?yún)?shù)K和IV來決定,其計算過程為:

      LFSR設(shè)置完畢后,循環(huán)32次,完成最后對LFSR和FSM的賦值,此時初始化過程完畢,具體過程如圖2所示。

      初始化過程完畢后進入密鑰流生成過程,在此過程中FSM的輸出不再進入LFSR,而是作為整體的輸出。第一次輸出將會被丟棄,其后的輸出就作為密鑰流參加明文的加密過程(即密鑰流與明文進行異或運算)。密鑰流也以32 bit字的形式輸出,輸出字的個數(shù)由參數(shù)LENGTH來決定,去算法為 L=「LENGTH/32」[3],如圖 3 所示。

      2.4 SNOW3G加密算法程序上的實現(xiàn)與測試

      程序主要包括3個部分:頭文件、用戶函數(shù)文件和主函數(shù)。其中頭文件主要聲明自定義的數(shù)據(jù)類型和用戶函數(shù);用戶函數(shù)文件主要用于定義自定義函數(shù)的函數(shù)體;主函數(shù)完成算法的密鑰流生成。密鑰流生成后與明文進行異或運算,即可完成加密功能。該算法的函數(shù)調(diào)用框圖如圖4所示,大括號后的函數(shù)為被調(diào)用的用戶自定義函數(shù)。

      根據(jù)測試規(guī)范的要求[6-8],當(dāng)Key:2B D6459F 82 C5 B300952C 49104881 FF 48,IV:EA 024714 AD 5C 4D 84 DF 1F 9B 251C 0B F45F,密鑰流的輸出為Z1:AB EE 9704,Z2:7A C31373。

      在VC環(huán)境下運行SNOW3G加密算法程序的結(jié)果如圖5所示。

      該算法的輸入與輸出與測試規(guī)范相同,正確完成密鑰流的生成。將密鑰流與明文(IBS)進行異或運算,即可得到密文(OBS)。

      3 小結(jié)

      描述了SNOW3G加密算法在通信系統(tǒng)中的應(yīng)用,并對其實現(xiàn)過程、程序調(diào)用流程、結(jié)構(gòu)體系作了深入分析。并且通過了基于TTCN標(biāo)準(zhǔn)[9-10]的軟件對所實現(xiàn)的程序進行了測試。由于系統(tǒng)的復(fù)雜性,以后需要對各個模塊不斷地進行改進和測試,以提高和完善功能。

      [1]3GPP TS 36.323 V8.5.0,Packet Data Convergence Protocol (PDCP)specification[S].2009.

      [2]RRC protocol specification[EB/OL].[2009-03-19].http://www.3gpp.org/ftp/Specs/archive/36_series/36.331/36331-870.zip.

      [3]皮埃爾,蒂埃里.演進分組系統(tǒng)(EPS):3G UMTS的長期演進和系統(tǒng)結(jié)構(gòu)演進[M].李曉輝,崔偉,譯.北京:機械工業(yè)出版社,2009.

      [4]Specification of the 3GPP confidentiality and integrity algorithms UEA2&UIA2.Document 2:SNOW 3G Specification[EB/OL/].[2010-03-19].http://gsmworld.com/documents/snow_3g_spec.pdf.

      [5]Specification of the 3GPP confidentiality and integrity algorithms UEA2&UIA2.Document 1:UEA2&UIA2 Specifications[EB/OL/].[2010-03-19].http://gsmworld.com/documents/etsi_sage_06_09_06.pdf.

      [6]Specification of the 3GPP confidentiality and integrity algorithms UEA2&UIA2 Document 3:Implementor′s Test Data[EB/OL/].[2010-03-19].http://gsmworld.com/documents/uea2_uia2.pdf.

      [7]Specification of the 3GPP confidentiality and integrity algorithms UEA2&UIA2 Document 4:Design Conformance Test Data[EB/OL/].[2010-03-19].http://gsmworld.com/documents/conformance.pdf.

      [8]Specification of the 3GPP confidentiality and integrity algorithms UEA2&UIA2.Document 5:Design and Evaluation Report[EB/OL/].[2010-03-19].http://gsmworld.com/documents/uea2_design_evaluation.pdf.

      [9]3GPP TS 36.523,Protocol conformance specification[S].2009.

      [10]3GPP TS 33.401 V8.50,3GPP System Architecture Evolution(SAE);“Security architect”[S].2009.

      猜你喜歡
      明文加密算法寄存器
      Lite寄存器模型的設(shè)計與實現(xiàn)
      奇怪的處罰
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      奇怪的處罰
      基于小波變換和混沌映射的圖像加密算法
      四部委明文反對垃圾焚燒低價競爭
      Hill加密算法的改進
      對稱加密算法RC5的架構(gòu)設(shè)計與電路實現(xiàn)
      基于Arnold變換和Lorenz混沌系統(tǒng)的彩色圖像加密算法
      达拉特旗| 彭水| 昭觉县| 土默特右旗| 鄄城县| 清涧县| 马山县| 梅河口市| 边坝县| 龙泉市| 托克托县| 大新县| 吉木乃县| 永吉县| 英超| 石阡县| 铁岭县| 岢岚县| 同心县| 九江县| 浙江省| 共和县| 新邵县| 上林县| 错那县| 西藏| 南澳县| 漳平市| 都昌县| 通州市| 勐海县| 临夏县| 辰溪县| 蓝田县| 天水市| 延安市| 临漳县| 铅山县| 龙江县| 资中县| 神木县|