999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于低成本FPGA的AES密碼算法設計

2010-08-04 06:36:42黃前山季曉勇
通信技術 2010年9期
關鍵詞:設計

黃前山,季曉勇

(南京大學 電子科學與工程系,江蘇 南京 210093)

0 引言

密碼學是保障信息安全的核心技術,應用涉及軍事、國防、商貿及人們日常生活的各個方面。2001年美國標準技術研究所決定用AES算法逐漸取代日益不安全的56 bit密鑰長度的 數據加密標準(DES)算法。AES算法是迭代分組密碼算法,分組長度為128 bit,而密鑰長度可為128 bit、192 bit、256 bit,其對應不同的密鑰長度相應的迭代循環次數為 10輪、12輪、14輪。現實現的是128 bit的AES算法[1-2]。

一種AES算法實現是采用輪展開的流水線結構[3],吞吐量很大可達到10 Gb/s量級,但消耗大量的邏輯面積。考慮在資源少的FPGA上實現AES算法,能滿足低端應用的加、解密速度一般不超過100 Mb/s的需求。現設計采用順序結構[3],多輪加密共用一個輪運算結構,加密模塊和解密模塊共用一個密鑰擴展模塊,能保持較高加解密速率,同時節省了邏輯面積,在50 MHz時鐘下加解密速率可達530 Mb/s。

1 AES算法描述

AES算法中的字節表示為有限域 GF (28)上的元素,并在有限域上定義加法和乘法兩種運算,運算的基本單位是字節和雙字(4個字節)。AES算法將128位的中間結果和密鑰都分成16個字節,構成4×4以字節為元素的狀態矩陣,AES在加解密過程中就是以狀態矩陣為操作對象的。加密算法中每一次輪操作都由字節替換、行移位、列混淆和輪密鑰加這四個函數組成,最后一次輪操作不含列混淆操作。

2 在FPGA上實現AES算法

2.1 頂層結構圖

該設計的頂層結構圖如圖1所示,由控制模塊、加密模塊、解密模塊、密鑰擴展模塊、隨機存儲器(RAM)和FIFO組成。接口采用16位并行數據總線結構。加密數據流向為:明文數據通過數據總線寫入16位入128位出的FIFO緩存;由控制模塊啟動AES加密模塊進行一次加密運算;運算完成輸出128bit密文存入128位入16位出的FIFO中。解密過程與之相同。加密模塊和解密模塊完全獨立,保證模塊能同時進行加密和解密運算,以滿足快速雙向保密通信的需求。

圖1 頂層結構圖及數據流向

2.2 加解密部分設計

2.2.1 加密模塊

由于輸入8次16位數據才能提供一個128 bit明文,這一過程至少需要8個時鐘,因此采用邏輯面積較大的多輪展開流水線結構方式意義不大。該設計采用多輪運算復用一個輪操作結構的順序方式,設計原理圖如圖2所示。

輪運算包括輪密鑰加、字節替換、行移位和列混淆 4個部分。其中,輪密鑰加只是輪數據與輪密鑰進行異或運算,結構比較簡單;行移位也只是簡單的邏輯連線,幾乎不產生時延并且幾乎不耗邏輯資源。

字節替換如果采用 GF(28) 模乘求逆運算[4]實現,則邏輯延時較長,速度較慢。為加快速度,采用時延小的基于只讀存儲器(ROM)查找方式的S盒結構,即輸入8bit數據作為地址而相應數據輸出則為字節替換后的8 bit數據。S盒結構若采用基于塊存儲的查找表(LUT)來實現,一個輪運算中16個S盒將占用16×128個LUT,占用邏輯資源較大。可采用FPGA內部集成的塊 RAM來實現S盒。

列混淆是系數在有限域 GF(28)上的四次多項式矩陣乘法,輸入列向量(X0, X1, X2, X3),輸出列向量(Y0, Y1, Y2, Y3),加密過程是在GF(28)上乘以01、02、03、01,解密過程是乘以09、0E、0B、0D。為了優化用FPGA邏輯實現,采用一個xtime函數來實現GF(28)上的乘02運算,對輸入的一個字節 b 做以下變換[5]:xtime = { b[6∶0], 1'b0 } ^ ( 8'h1b &{ 8{ b[7]} } )。則列混淆在GF(28)上所有矩陣乘法就可以通過分解成有限個xtime運算和異或運算來實現。

輪密鑰加、行移位和列混淆三步運算實現的邏輯資源較少并且邏輯時延較小,可以合并在一個寄存器傳輸層間實現。

2.2.2 密鑰擴展模塊

密鑰擴展模塊設計比較簡單,只需要4個S盒和一個輪常數字計算模塊,外加一些異或運算和邏輯連線即可完成。密鑰擴展模塊也是一個迭代運算的結構,與加密模塊的輪運算同步,即每個時鐘計算出一輪加密的密鑰。

當解密密鑰更新時,密鑰擴展模塊計算出的各輪密鑰作為解密的輪密鑰,需要按每個時鐘存儲在RAM中,解密運算時從RAM中讀取。

2.3 接口設計

模塊的外部接口采用了16位數據總線的接口。由于輸入的加密密鑰和解密密鑰各 128位,占用地址為128×2/16=16個。另外,加密需要一個輸入明文寄存器和一個輸出密文寄存器,解密需要一個輸入密文寄存器和一個輸出明文寄存器。因此芯片地址數總共20,即需要5位地址線。接口讀寫時序的設計以TMS320C5509型號數字信號處理器(DSP)總線讀寫時序作為標準。16位數據線采用雙向三態設計。16位三態口由片選信號CS和讀使能信號RDE控制,當CS和RDE均有效時三態口數值為輸出數據寄存器的值以輸出數據,否則三態口數值為高阻將數據輸入。

3 測試與分析

3.1 加密模塊和解密模塊功能仿真

用Xilinx ISE Simulator分別對加密模塊和解密模塊進行信號仿真,仿真圖如圖3和圖4所示。

兩圖中 text_in[127∶0]為輸入數據,key[127∶0]為密鑰,text_in[127∶0]為輸出數據。在圖4和圖5中,明文均為(3243,F6A8, 885A, 308D, 3131, 98A2, E037, 0734 H),密鑰均為(2B7E, 1516, 28AE, D2A6, ABF7, 1588, 09CF, 4F3C H),密文均為(3925, 841D, 02DC, 09FB, DC11, 8597, 196A, 0B32 H),證明其加密和解密正確。

圖2 加密模塊設計原理

圖3 加密結果信號仿真

圖4 解密結果信號仿真

3.2 功能測試

將設計的FPGA模塊連接到TI的5509的DSP開發板的總線擴展口,FPGA模塊通過JTAG線與計算機連接,DSP開發板通過仿真器與計算機連接。 通過C程序將明文和密鑰寫入FPGA模塊,加密后讀出密文,解密過程與之類似。通過 DSP測試,結果與 3.1仿真結果完全一致,證明 AES算法在FPGA上準確實現。

使用在線調試邏輯分析軟件通過JTAG口對FPGA總線接口的信號波形進行采樣并顯示,地址、數據和控制信號正確。通過加密或解密時連續輸出128 bit結果間隔的時鐘數可以計算出,在50 MHz時,數據處理能力可達530 Mb/s。

4 結語

所采用的AES算法設計采用16位并行總線接口,能方便的與上層處理器擴展。在算法實現上,采用多輪運算共用一個輪結構的迭代結構,適用于在較少邏輯資源的 FPGA芯片上實現,滿足了較高吞吐率和較小的芯片面積的應用需求,能滿足當前各種數據流的加密。算法的實現采用ROM來實現字節替換,同時優化實現列混淆運算。該設計在賽靈思(Xilinx)公司的xc3s500e芯片上實現,僅占用4230個Slice,其中7222個LUT和1758個觸發器,消耗的邏輯資源較少。

[1] JOAN D, VINCENT R. AES Proposal: Rijndael (2ndversion) [EB/OL].(1999-03-09) [2009-09-10].http://csrc.nist.gov/ encryption/aes/rijndael/Rijndael.pdf

[2] 蘇晨,陳前斌.AES算法在流媒體加密中的應用[J].通信技術,2007,40(11):350-352.

[3] FAN C P, HWANG J K. Implementations of High Throughput Sequential and Fully Pipelined AES Processors on FPGA[C]USA:IEEE Press, 2007:353-356.

[4] 宋軍輝.基于先進加密標準(AES)算法的加密芯片設計[D].南京理工大學,2004.

[5] 武玉華,徐玲杰,周玉,等.AES 密碼算法的 FPGA 優化設計[J].通信技術,2008,41(10):133-136.

猜你喜歡
設計
二十四節氣在平面廣告設計中的應用
河北畫報(2020年8期)2020-10-27 02:54:06
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統設計
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設計
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發生器仿真設計
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設計到“設計健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 久久国产精品夜色| 亚洲第一精品福利| 色哟哟国产精品| 东京热一区二区三区无码视频| 丁香五月婷婷激情基地| 暴力调教一区二区三区| 69国产精品视频免费| 夜夜高潮夜夜爽国产伦精品| 亚洲欧美成人综合| 国产高清在线丝袜精品一区| 亚洲一区二区黄色| 国产综合亚洲欧洲区精品无码| 成人毛片免费在线观看| 国产极品美女在线| 亚洲日本中文综合在线| 国产精品人人做人人爽人人添| 日韩在线播放欧美字幕| 狠狠色噜噜狠狠狠狠色综合久| 欧美激情视频二区| 99这里精品| 国产91麻豆免费观看| 国产另类视频| 欧美怡红院视频一区二区三区| 四虎影视国产精品| 最新国产麻豆aⅴ精品无| 尤物亚洲最大AV无码网站| 91成人在线免费观看| 国产视频只有无码精品| 狼友av永久网站免费观看| 成人免费视频一区| 久久免费精品琪琪| 99久久精品久久久久久婷婷| 日韩视频福利| 日韩一级二级三级| 四虎精品黑人视频| 日韩av无码DVD| 亚洲国产中文在线二区三区免| 日韩毛片在线视频| 蜜芽国产尤物av尤物在线看| 噜噜噜久久| 国产免费福利网站| 91黄视频在线观看| 国产精品乱偷免费视频| m男亚洲一区中文字幕| 国产精品人人做人人爽人人添| 亚洲第一区欧美国产综合| 欧美不卡视频一区发布| 亚洲有码在线播放| 亚洲无线国产观看| 中文字幕无线码一区| 日韩欧美国产成人| 国产福利一区在线| 色综合网址| 毛片大全免费观看| 国产av色站网站| 国产综合在线观看视频| 特级毛片8级毛片免费观看| 她的性爱视频| 精品久久久久成人码免费动漫| 国产中文在线亚洲精品官网| 日韩精品一区二区三区大桥未久| 国产91色在线| 国产精品第页| 日韩精品亚洲精品第一页| 亚国产欧美在线人成| 18禁色诱爆乳网站| 91久久国产成人免费观看| 真实国产乱子伦视频| 鲁鲁鲁爽爽爽在线视频观看| 日韩123欧美字幕| 亚洲美女高潮久久久久久久| 免费看的一级毛片| 手机精品福利在线观看| 三上悠亚一区二区| 国产三级a| 国产综合网站| 日韩AV无码一区| 国产av无码日韩av无码网站| 毛片久久网站小视频| 亚洲第一黄色网| av尤物免费在线观看| 国产成人av一区二区三区|