• 
    

    
    

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

      PDCP中EEA/EIA在FPGA上的實(shí)現(xiàn)

      2015-12-15 07:58:09吳彥北朱宇霞陳印峰
      電子設(shè)計(jì)工程 2015年7期
      關(guān)鍵詞:密匙加密算法移位

      吳彥北,朱宇霞,陳印峰

      (1.武漢郵電科學(xué)研究院 湖北 武漢430074;2.北方烽火科技有限公司 北京 100085)

      PDCP中EEA/EIA在FPGA上的實(shí)現(xiàn)

      吳彥北1,2,朱宇霞1,2,陳印峰2

      (1.武漢郵電科學(xué)研究院 湖北 武漢430074;2.北方烽火科技有限公司 北京 100085)

      隨著LTE系統(tǒng)的發(fā)展,PDCP層需要處理的數(shù)據(jù)流量越來(lái)越大,其中EEA/EIA功能在CPU上通過(guò)軟件的方式已經(jīng)無(wú)法滿足系統(tǒng)對(duì)吞吐量的需求。在分析了128-EEA3/128-EIA3[1]算法以后,提出了一種基于PFGA的PDCP加速處理實(shí)現(xiàn)方案,在經(jīng)過(guò)編碼、仿真、驗(yàn)證以后,實(shí)際處理性能有很大提升,并準(zhǔn)備實(shí)際運(yùn)用于4G基站設(shè)備中。

      PDCP;FPGA;EEA;EIA

      LTE是一種基于分組低時(shí)延無(wú)線交換網(wǎng)絡(luò),PDCP層位于LTE空中接口協(xié)議棧RLC層之上子層用于對(duì)用戶平面和控制平面數(shù)據(jù)提供頭壓縮、加密與完整性保護(hù)(EEA/EIA)[2]等操作。在LTE-A中引入傳輸模式9,對(duì)PDCP處理能力提出了更高要求,但是通過(guò)軟件的實(shí)現(xiàn)方式在算法優(yōu)化到極限時(shí)仍不能滿足系統(tǒng)要求,通過(guò)硬件加速是通常采取的方法。

      基于FPGA(可編程門陣列)的硬件開發(fā)具有周期短、成本低和能根據(jù)系統(tǒng)需求的變化可以靈活的更改硬件電路的特點(diǎn)[3],所以這里采用FPGA用來(lái)加速PDCP中EEA/EIA處理。

      1 系統(tǒng)功能及實(shí)現(xiàn)

      1.1 EEA(加密/解密)功能簡(jiǎn)介

      PDCP子層中EEA/EIA兩者處理流程有很大的相似之處,所以這里以加密處理在FPGA上的實(shí)現(xiàn)為主,完整性分析的處理可以類比得到。

      PDCP加密功能只針對(duì)PDCP數(shù)據(jù)PDU(控制平面數(shù)據(jù)PDU和用戶平面數(shù)據(jù)PDU),實(shí)體所使用的具體算法和參數(shù)都由高層配置。

      這里設(shè)計(jì)中EEA選擇的加密算法為128-EEA3,該算法由中科院數(shù)據(jù)與通信保護(hù)研究教育中心設(shè)計(jì),其核心為ZUC算法。ZUC算法作為一種流式加密算法,根據(jù)系統(tǒng)輸入的參數(shù)生成128 bit初始化key和128 bit初始化iv,然后進(jìn)入工作狀態(tài),最后在密匙流輸出階段每次運(yùn)算輸出32bit密匙,用于加密/解密消息。

      1.2 ZUC算法簡(jiǎn)介

      核心ZUC算法在邏輯上分為3層:線性反饋移位寄存器(LFSR)、比特重組(BR)和非線性函數(shù)F。ZUC算法執(zhí)行時(shí)分為初始化狀態(tài)、工作狀態(tài)和密匙流輸出狀態(tài)[4],其中層一和層三在不同模工作模式下,計(jì)算流程上存在區(qū)別。

      1)初始化狀態(tài)

      在輸入初始化序列K、IV以后,將r1、r2置0,然后執(zhí)行下面操作32次:

      ①Bitreorganization(); //比特重組

      ②W=F(X0,X1,X2); //非線性F函數(shù)

      ③LFSRWithInitialisationMode(w>>1).//線性反饋移位工作單元

      2)工作階段

      僅執(zhí)行下面的操作一次,不產(chǎn)生W,也不產(chǎn)生Z:

      ①Bitreorganization();

      ②F(X0,X1,X2);

      ③LFSRWithWorkMode().

      3)密匙流輸出階段

      每次執(zhí)行下面的迭代運(yùn)算,然后輸出32 bit的Z

      ①Bitreorganization();

      ②Z=F(X0,X1,X2)⊕X3;

      ③LFSRWithWorkMode().

      2 ZUC算法的FPGA實(shí)現(xiàn)

      ZUC加密算法中核心功能在于線性移位單元 (LFSR)中s16狀態(tài)的計(jì)算塊以及非線性函數(shù)F中S盒運(yùn)算,而比特重組的功能僅是從線性移位單元中提取s0、s2、s5、s7、s9、s11、s14、s15若干比特組成4個(gè)32bit的數(shù)X0、X1、X2、X3用于非線性函數(shù)F和密匙流的計(jì)算。在設(shè)計(jì)中,將層一和層二合并,扁平化設(shè)計(jì)。

      2.1 線性移位單元

      ZUC算法第一層線性反饋移位單元(LFSR)中,核心功能是計(jì)算。線性移位單元工作在初始化模式和非初始化模式時(shí),關(guān)鍵區(qū)別在與的計(jì)算方式不同:

      比較公式(1)與公式(3),可以發(fā)現(xiàn):線性移位反饋單元(LFSR)在初始狀態(tài)計(jì)算s16時(shí),需要加上u,工作狀態(tài)則不需要加上u。因此,在工作狀態(tài)時(shí),將公式(1)中的u置為0,即可計(jì)算工作狀態(tài)時(shí)的s16。

      [1]中說(shuō)明:a+b mod GF(231-1),計(jì)算規(guī)則如下

      1)計(jì)算v=a+b;

      2)如果進(jìn)位位為1,則令v=v+1。

      這里將公式(1)與公式(2)合并簡(jiǎn)化,有:

      同時(shí)調(diào)用Xilinx加法IP core生成一個(gè)38bit無(wú)符號(hào)的累加器,通過(guò) 6次加法運(yùn)算,得到 215s15、217s13、221s10、28s0、u的和sum,然后將sum與sum的高6 bit再次相加,取低位的31 bit執(zhí)行公式(4),再做判斷即可得到s16。根據(jù)這種方式,避免了每次執(zhí)行加法后要判斷最高位的進(jìn)為位是否為1。同時(shí),若按照參考文獻(xiàn)[1]中提供運(yùn)算方式,則需要進(jìn)行5次進(jìn)位判斷運(yùn)算和12次加法運(yùn)算,這里僅用7次加法運(yùn)算即可完成。

      2.2 非線性函數(shù)F

      在完成線性移位操作以后,ZUC算法設(shè)計(jì)了基于查表方式的非線性函數(shù)F,用于破壞數(shù)據(jù)之間的線性關(guān)系,增強(qiáng)加密算法的破解難度,其具體計(jì)算步驟如下:

      其中L1、L2同為一個(gè)32bit到32bit的線性運(yùn)算:

      L1(X)=X⊕(X<<2)⊕(X<<10)⊕(X<<18)⊕(X<<24)

      L2(X)=X⊕(X<<8)⊕(X<<14)⊕(X<<22)⊕(X<<30)

      F函數(shù)中通過(guò)S盒操作破壞比特之間的線性關(guān)系。32*32的S盒運(yùn)算由4個(gè)并列的8乘8的S盒組成:S=(S0,S1,S2, S3),其中S0=S2,S1=S3。在FPGA處理能力已經(jīng)滿足系統(tǒng)要求還有余量時(shí),從資源優(yōu)化的角度考慮設(shè)計(jì),定義2個(gè)深度256,寬度為8bit的雙端口ROM,通過(guò)時(shí)分復(fù)用的方式在2個(gè)時(shí)鐘周期內(nèi)完成R1、R2查找,節(jié)約了片上資源[5]。

      3 結(jié)果分析

      在對(duì)算法系統(tǒng)功能明確劃分以后,按照模塊化開發(fā)的方法,開始對(duì)每個(gè)模塊進(jìn)行詳細(xì)設(shè)計(jì)。在Modelsim 10.0c下仿真,輸入?yún)⒖嘉墨I(xiàn)[6]中的Test set4,在經(jīng)過(guò)初始化狀態(tài)、工作狀態(tài),最后在密匙流輸出狀態(tài)觀察加密處理器的輸出結(jié)果如圖1所示,其中pid_k_din、pid_iv_din為輸入的初始密匙,pod_key_dout為輸出的密匙,pod_key_ready高指示密匙輸出有效:

      圖1 加密算法工作模式仿真圖Fig.1 The simulation of encryption algorithm in working mode

      當(dāng)FPGA系統(tǒng)時(shí)鐘為312.50 MHz時(shí),在輸入初始化參數(shù)以后,ZUC加密算法經(jīng)過(guò)99個(gè)時(shí)鐘周期完成初始化,在工作模式下每3個(gè)時(shí)鐘周期輸出一個(gè)32 bit秘鑰,此時(shí)系統(tǒng)吞吐量為:156.25*32*0.5=2.5 G/s。與中科院數(shù)據(jù)與通信保護(hù)研究教育中心提供的參考數(shù)據(jù)[6]作對(duì)比,對(duì)比結(jié)果如表1所示。

      The EEA/EIA in PDCP im p lement on FPGA

      WU Yan-bei1,2,ZHU Yu-xia1,2,CHEN Yin-feng2
      (1.Wuhan Research Institute of Post and Telecommunication,Wuhan 430074,China; 2.Beijing Northern FiberHome Technologies Co.,Ltd,Beijing 100085,China)

      With the development of LTE,the throughput of PDCP is increasing more and more,especially the EEA/EIA can't finish by software on CPU in time.After analyzing the 128-EEA3/128-EIA3[1]method,this paper put out a way to accelerate the processing of PDCP based on FPGA,after coding、modeling and testing which will be used in the 4G base station.

      PDCP;FPGA;EEA;EIA

      TN929.5

      A

      1674-6236(2015)07-0096-02

      2014-07-27 稿件編號(hào):201407210

      吳彥北(1989—),男,湖北武漢人,碩士。研究方向:信號(hào)與信息處理及可編程片上系統(tǒng)(SOPC)。

      猜你喜歡
      密匙加密算法移位
      6口塘出蝦43000斤!產(chǎn)值超100萬(wàn)元,“萬(wàn)畝蝦塘”的成功密匙你了解了嗎?
      嵌入式系統(tǒng)授權(quán)密匙的實(shí)驗(yàn)與設(shè)計(jì)
      再生核移位勒讓德基函數(shù)法求解分?jǐn)?shù)階微分方程
      基于SDN 的量子密碼通信網(wǎng)絡(luò)設(shè)計(jì)與研究*
      試論密鑰協(xié)商協(xié)議及其安全性
      大型總段船塢建造、移位、定位工藝技術(shù)
      Σ(X)上權(quán)移位算子的不變分布混沌性
      基于小波變換和混沌映射的圖像加密算法
      多指離斷手指移位再植拇指25例
      Hill加密算法的改進(jìn)
      花莲县| 奉新县| 丹巴县| 盖州市| 嵊州市| 万全县| 玛沁县| 商南县| 沁阳市| 蓝山县| 无为县| 萨迦县| 全椒县| 汶川县| 喀什市| 缙云县| 富民县| 沙洋县| 衡东县| 泸水县| 临汾市| 香河县| 宜川县| 阜阳市| 云梦县| 凤庆县| 汕头市| 深水埗区| 河源市| 抚顺市| 镇原县| 启东市| 金门县| 芒康县| 金川县| 琼海市| 尖扎县| 凤凰县| 株洲县| 郧西县| 陇川县|