• 
    

    
    

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

      一種基于嵌入式系統(tǒng)的3DES算法IP核的設計

      2016-11-10 06:54:34解同同李天陽
      關鍵詞:解密寄存器密鑰

      解同同,李天陽

      一種基于嵌入式系統(tǒng)的3DES算法IP核的設計

      解同同1,李天陽2

      (1.江南大學物聯(lián)網(wǎng)工程學院,無錫214122;2.中國電子科技集團公司第58研究所)

      使用Verilog語言設計了一款3DES算法IP核,采用ARM公司的AMBA總線,使其可以用于ARM體系結構的嵌入式芯片中。首先通過分析3DES算法原理,提出IP核的整體結構,對算法的關鍵部分狀態(tài)機和S盒進行分析設計,完成整體設計后再進行驗證與綜合。目前該IP核的綜合結果符合要求,并已通過仿真驗證,在一款32位高性能DSP芯片中得到了成功應用。

      嵌入式系統(tǒng);3DES;IP核;AMBA

      引 言

      隨著嵌入式系統(tǒng)朝著網(wǎng)絡化發(fā)展,安全性將成為嵌入式系統(tǒng)必須考慮的問題。對傳輸信息進行加、解密是保障信息傳輸安全的主要方法,3DES算法是一種在嵌入式系統(tǒng)中得到廣泛應用的加解密算法[1]。信息數(shù)據(jù)的加密主要分為軟件加密與硬件加密。使用軟件進行3DES加、解密的缺點主要有:明文和密鑰需要存儲在磁盤中,有泄露的風險[2];會占用系統(tǒng)資源,拖慢系統(tǒng)速度。而3DES算法常使用移位、異或、換位等位操作,非常適合采用硬件電路實現(xiàn)加密。

      許多硬件加密IP核都是針對某一芯片專門設計的,通用性不好。ARM公司提出的AMBA總線標準,已經(jīng)成為系統(tǒng)芯片設計領域公認的總線標準,其中使用最多的是AHB- APB架構。因此設計一款可以掛接到AHB總線上的3DES算法IP核具有重要意義。本文設計的3DES算法模塊IP核,采用AHB總線接口,使用硬件資源少,可靈活地改變工作方式,具有很強的通用性,可以很容易集成到嵌入式芯片中。

      1 3DES算法簡介

      圖1 DES算法基本流程

      3DES算法是通過普通DES算法的混合運算來實現(xiàn)的三重DES算法,它是DES算法的一個變形[3]。DES算法的基本流程如圖1所示。64位明文輸入后,首先使用初始置換IP對明文中的各位進行換位,打亂排列次序后進入一個16輪運算組,進行16輪迭代,最后經(jīng)過逆初始置換IP進行換位,生成64位密文。

      在16輪運算的每輪變換中,先將64位輸入分成左、右兩部分(各32位)。左半部分不變,右半部分進行位的擴展,從32位擴展成48位后與48位的子密鑰進行異或,得到8組每組6位的數(shù)據(jù),輸入到8個S盒中進行S盒置換(6位輸入,4位輸出),得到32位數(shù)據(jù)。再將此時的右半部分的數(shù)據(jù)與左半部分的數(shù)據(jù)進行異或操作,生成新的右半部分,最終左半部分與右半部分合并輸出。

      DES算法使用64位密鑰中的56位,而56位密鑰的窮舉空間為256,這樣即使用窮舉搜索法進行攻擊,也幾乎難以破解。然而,隨著硬件技術和互聯(lián)網(wǎng)的發(fā)展,使用窮舉攻擊破解的可能性也越來越大,如果使用專門設計的硬件并行處理,只要幾個小時就可能破解[4]。為了增大DES算法的密鑰空間,提出了3DES算法。

      3DES算法的原理如圖2所示。它采用加密-解密-加密序列對明文進行三次加密,K1、K2、K3為3個56位的密鑰,3個密鑰互不相同時安全性最高,此時相當于擁有168位的密鑰,可以有效地對抗窮舉法破解[5]。

      圖2 3DES算法原理

      2 電路設計

      2.1總體結構

      圖3 3DES算法lP結構框圖

      3DES算法IP總體結構如圖3所示,由AHB總線接口模塊、寄存器模塊、狀態(tài)機控制模塊和數(shù)據(jù)處理模塊組成。AHB總線接口模塊作為AHB總線從機接口[5],將AHB總線主機發(fā)出的信號轉換為3DES模塊所需信號。寄存器模塊用來存放數(shù)據(jù)寄存器和密鑰寄存器的值。狀態(tài)機控制模塊通過狀態(tài)機的輪轉控制其余模塊工作并存放控制寄存器的值,同時向外提供加密完成、解密完成和密鑰檢驗錯誤三個中斷信號。數(shù)據(jù)處理模塊是3DES加解密算法的具體硬件實現(xiàn)。

      3DES算法IP設置了一個64位的數(shù)據(jù)寄存器,用來存放等待加解密的數(shù)據(jù),3個64位的密鑰寄存器用來存放密鑰,使用時需要依次向密鑰寄存器1、2、3中寫入相應密鑰。主要控制功能由32位的控制狀態(tài)寄存器DCCSR實現(xiàn),其具體功能如表1所列。

      表1 控制狀態(tài)寄存器DCCSR功能

      2.2狀態(tài)機設計

      3DES算法需要對64位明文或密文依次進行3次DES加密或解密,得到64位密文或明文。一般有兩種結構:一種是由3個DES模塊并行工作,形成流水線結構,這樣速度快;另一種是采用單個DES模塊,控制DES模塊順序進行3次加密或解密,這樣可以節(jié)省硬件資源[6]。為了節(jié)約硬件資源、縮小芯片面積,保證IP核的可讀性和通用性,采用單個DES模塊順序進行加解密。

      狀態(tài)機控制模塊使用計數(shù)器對加解密運算中的16輪或48輪迭代進行計數(shù),判定狀態(tài)的跳轉,控制狀態(tài)寄存器DCCSR起著重要作用。如圖4所示,主狀態(tài)機的設計中共定義了3種基本狀態(tài):空閑狀態(tài)、加密狀態(tài)和解密狀態(tài)。

      空閑狀態(tài):系統(tǒng)復位后或寄存器DCCSR中TC位置1后,IP核進入空閑狀態(tài),加密完成或解密完成轉到空閑狀態(tài)。

      加密狀態(tài):寄存器DCCSR中CD位置0后,由空閑狀態(tài)轉到加密狀態(tài)。

      解密狀態(tài):寄存器DCCSR中CD位置1后,由空閑狀態(tài)轉到解密狀態(tài)。

      圖4 主狀態(tài)機

      此外,根據(jù)寄存器DCCSR中CD位和CT位的值,以及計數(shù)器的值來判定狀態(tài)轉換,以實現(xiàn)加密狀態(tài)與解密狀態(tài)之間的變換。

      圖5所示為加密運算子狀態(tài)流程圖,解密狀態(tài)算法與加密相似。用Verilog語言設置5個狀態(tài):State0為輸入狀態(tài);State1為第一次16輪迭代狀態(tài);State2為第二次16輪迭代狀態(tài);State3為第三次16輪迭代狀態(tài);State4為輸出狀態(tài)。

      圖5 加密運算子狀態(tài)流程圖

      狀態(tài)轉換過程:進入輸入狀態(tài)后,每個周期輸入8位數(shù)據(jù),計數(shù)器count從0開始計數(shù),每輸入一次明文和密鑰,count加1,期間緩沖一個周期,等待密鑰生成。count=7時,64位明文和密鑰輸入完成。開始第一次16輪循環(huán)迭代,count再次從0開始計數(shù),每完成一輪迭代,count加1,count=15時,第一次16輪迭代完成。當控制狀態(tài)寄存器DCCSR中的CT=0時,表明使用DES算法,轉入輸出狀態(tài);CT=1時,使用3DES算法,進入第二次16輪迭代狀態(tài)。先緩沖一個周期,等待密鑰模塊產(chǎn)生子密鑰,然后count歸0開始計數(shù),每完成一輪迭代,count加1。count= 15時,第二次16輪迭代完成。再次緩沖一個周期,等待密鑰模塊產(chǎn)生子密鑰,電路轉入第三次16輪迭代狀態(tài)。Count歸0開始計數(shù),每完成一輪迭代,count加l。count= 15時,完成第三次16輪迭代。進入輸出狀態(tài),count=7時,完成輸出。

      2.3S盒實現(xiàn)

      在DES算法的16輪迭代運算中,只有S盒變換是非線性和不可逆的,需要依靠S盒實現(xiàn)運算過程中的混亂操作[7]。由于16輪迭代運算是DES算法的核心,所以S盒是整個3DES算法的關鍵部位。

      采用Verilog硬件描述語言建立S盒電路模型的方法主要有兩種:一種是采用Verilog語言中的多重選擇語句case,用純組合邏輯來實現(xiàn);另一種是利用FPGA器件內(nèi)部的嵌入式陣列塊進行查表的方式實現(xiàn),為了節(jié)省硬件資源,采用雙層嵌套的case語句來實現(xiàn)??偣残枰?個S盒,每個S盒都是6位輸入、4位輸出。每個S盒的具體功能不一樣,但是設計方法類似。單個S盒設計的部分代碼如下所示:

      單個S盒的輸入為s_bit[5:0],輸出為f_bit[3:0]。為了降低資源占用,通過雙層case嵌套,使用4輸入選擇器而不是6輸入選擇器。設計時外層使用輸入數(shù)據(jù)的s_bit[0]與s_bit[5]作為外層case的控制變量,s_bit[1]、s_bit[2]、s_bit[3]、s_bit[4]作為內(nèi)層case的控制變量,這樣設計既能保證數(shù)據(jù)運算能力,又能降低資源占用率。

      3 功能驗證與設計實現(xiàn)

      本文的3DES算法IP核用Verilog語言進行設計,使用Synopsys公司的DC軟件進行綜合,器件庫選用TSMC的65 nm典型庫,頻率為500 M Hz,電壓為0.95 V,結果如表2所列。18 穩(wěn)定性與可擴展性。提出了基于時空約束的組播路由算法,克服了單層結構的所有節(jié)點均需路由消耗能量,降低了節(jié)點設備的能耗。未來網(wǎng)絡的自適應性決定了本文中的網(wǎng)關必須要融合多網(wǎng)絡的功能,目前采用基于IPv6的地址池來分配地址,可以增加地址空間的容量,在此基礎上增加諸如源地址檢查、無狀態(tài)地址映射等技術,期望能滿足未來互聯(lián)網(wǎng)的要求。

      [1]李嵩,李永超,夏葳,等.物聯(lián)網(wǎng)技術在氣象業(yè)務中的應用性研究[J].中小企業(yè)管理與科技:中旬刊,2016(1):34-36.

      [2]王夢迪,楊柳濤.新型集裝箱狀態(tài)監(jiān)測系統(tǒng)軟件設計[J].上海船舶運輸科學研究所學報:2015(4).

      [3]羅濤.基于ZigBee技術的糧倉環(huán)境監(jiān)測系統(tǒng)設計與實現(xiàn)[J].物流工程與管理,2015(11):80-83.

      [4]馬國俊.基于物聯(lián)網(wǎng)技術的甘南牦牛疾病預警系統(tǒng)[J].工業(yè)儀表與自動化裝置,2015(5):56-58.

      [5]李眾,王鵬澄,陸???,等.基于ZigBee、以太網(wǎng)、WiFi技術的網(wǎng)關設計[J].測控技術,2015(3):120-122.

      [6]高泗俊,張永剛,周小林,等.農(nóng)業(yè)物聯(lián)網(wǎng)應用服務監(jiān)測系統(tǒng)的設計[J].上海師范大學學報:自然科學版,2015(01):58-70.

      [7]王倩,鄭樹泉,丁志剛,等.一種“一主多從”的物聯(lián)網(wǎng)網(wǎng)關系統(tǒng)設計與實現(xiàn)[J].計算機應用與軟件,2015(1):77-79.

      [8]李孟,王季壯,田雨,等.農(nóng)業(yè)物聯(lián)網(wǎng)網(wǎng)關設計[J].機械與電子,2014(12):44-46.

      陳勇(高級工程師),研究方向為軟件和集成電路、物聯(lián)網(wǎng)。

      (責任編輯:薛士然 收修改稿日期:2016-03-29)

      該IP核可通過寄存器選擇DES算法或3DES算法;有3種中斷信號并支持AMBA總線接口,具有良好的片上集成性與可重用性;可自動或強制開始轉換方式,加解密運算可停止;可以鎖定總線,對轉換過程進行實時監(jiān)控。由綜合結果可知,時間冗余為正數(shù),功耗和面積都滿足設計預期。該IP核在500 MHz工作頻率下,加解密轉換速率為610 Mbps,實現(xiàn)了設計目標。

      表2 綜合結果

      結 語

      本文設計的3DES算法IP核已成功應用于一款32位高性能DSP芯片中,此芯片采用軍用CMOS工藝,最高工作頻率為300 MHz。如圖6所示,3DES算法IP核掛接到AMBA總線上,作為整個嵌入式芯片的加解密引擎,可以提供快速、安全的硬件加解密支持,保證了通信數(shù)據(jù)的安全,在DES模式下的加解密速率可達到1.6 Gbps。由于該IP核使用AMBA總線接口,可以方便地在各類嵌入式芯片的開發(fā)中得到進一步應用。隨著集成電路產(chǎn)業(yè)的迅速發(fā)展,采用更先進的工藝與制程,該IP核依然有很大的提升空間。

      圖6 3DES算法模塊在DSP芯片中的位置

      參考文獻

      [1]陳志平,雷航,楊霞,等.嵌入式安全操作系統(tǒng)的研究和實現(xiàn)[J].計算機工程,2007(1):83-85.

      [2]周學廣,劉藝.信息安全學[M].北京:機械工業(yè)出版社,20-03.

      [3]戴紫彬,孫萬忠,張永福.DES算法IP核設計[J].半導體技術,2003,28(5):58-59.

      [4]王簡瑜,張魯國.基于FPGA實現(xiàn)DES算法的性能分析[J].微計算機信息,2007,23(3):217-219.

      [5]張麗娜,陳建華.基于ASIC的有效DES/3DES流水線設計[J].計算機工程,2007,33(2):225-226.

      [6]梅振宇,張虹.基于非S盒變換的DES分組密碼的改進[J].計算機工程與設計,2007,28(17):4119-4121.

      [7]晏福平,盛利元,簡遠鳴.基于DSP的3DES加密系統(tǒng)的設計與實現(xiàn)[J].計算機測量與控制,2009,17(7):1390-1392.

      解同同(碩士研究生)、李天陽(工程師),研究方向為集成電路設計。

      (責任編輯:薛士然 收修改稿日期:2016-03-28)

      Design of 3DES Algorithm lP-core Based on Embedded System

      Xie Tongtong1,Li Tianyang2
      (1.College of Internet of Things,Jiangnan University,Wuxi 214122,China;2.NO.58 Research Institute of China Electronics Technology Group Corporation)

      This paper introduces the design of 3DES algorithm IP-core using Verilog language,which adopts ARM's AMBA bus.It can be used for embedded chip in ARM architecture.Firstly,the principle of 3DES algorithm is introduced,the overall structure of IP-core is proposed,the key part of the state machine algorithm and S box are analyzed.Then on the basis of overall design,the verification and synthesis are completed.The comprehensive results of the IP-core meet the requirements.The design has been verified by the simulation,and successfully applied in a 32-bit high performance DSP chip.

      embedded system;3DES;IP-core;AMBA

      TP334

      A

      猜你喜歡
      解密寄存器密鑰
      探索企業(yè)創(chuàng)新密鑰
      解密“熱脹冷縮”
      解密“一包三改”
      少先隊活動(2020年9期)2020-12-17 06:17:31
      密碼系統(tǒng)中密鑰的狀態(tài)與保護*
      Lite寄存器模型的設計與實現(xiàn)
      計算機應用(2020年5期)2020-06-07 07:06:44
      炫詞解密
      一種對稱密鑰的密鑰管理方法及系統(tǒng)
      分簇結構向量寄存器分配策略研究*
      基于ECC的智能家居密鑰管理機制的實現(xiàn)
      電信科學(2017年6期)2017-07-01 15:45:06
      解密“大調(diào)解”
      南部县| 潢川县| 揭西县| 灵丘县| 谢通门县| 定襄县| 乌鲁木齐县| 应用必备| 霸州市| 长顺县| 泰安市| 泗水县| 呼图壁县| 青阳县| 宜宾县| 哈巴河县| 安泽县| 景德镇市| 连江县| 普陀区| 娄烦县| 高阳县| 凤冈县| 喀什市| 凤山县| 富民县| 突泉县| 桃源县| 曲阳县| 长丰县| 宣城市| 盘山县| 凤凰县| 历史| 丹巴县| 鄂伦春自治旗| 涪陵区| 龙岩市| 英吉沙县| 永济市| 眉山市|