《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > 高速可重構AES的設計與實現

高速可重構AES的設計與實現

2008-12-10
作者:任 巧, 戴紫彬, 李 偉

??? 摘?? 要: 提出一種可重構" title="可重構">可重構AES硬件架構,對加/解密運算模塊和密鑰擴展模塊進行了可重構設計,使其能夠適配" title="適配">適配128bit、192bit、256bit三種" title="三種">三種密鑰長度的AES算法,并針對列混合模塊進行了結構優化" title="結構優化">結構優化。在FPGA上進行了驗證與測試,并在0.18μm SMIC工藝下進行了邏輯綜合" title="邏輯綜合">邏輯綜合及布局布線。結果表明其核心時鐘頻率為270MHz, 吞吐量達到3.4Gb/s,能夠滿足高性能的密碼處理要求。?

??? 關鍵詞: 可重構; AES; 密鑰擴展;列混合

?

??? 隨著信息化和網絡化的飛速發展,計算機之間傳輸數據的安全性已愈發重要。對數據進行加密是保護秘密信息的一種重要手段,然而,隨著計算機運算速度、密碼分析技術和芯片處理能力的不斷發展,一些傳統的加密算法的安全強度已經很難適應新的安全需要。因此,AES應運而生。2000年10月,美國國家標準技術研究所(NIST)通過公開征集和討論最終宣布將Rijndael算法作為新的高級加密標準[1]。Rijndael具有抗攻擊能力強、密鑰建立時間短、靈敏性好和內存需求小的特點。?

??? 本文在設計AES算法IP核時,綜合考慮速度和面積等因素對硬件實現的影響,一方面對列混合模塊進行了結構優化,另一方面對密鑰擴展模塊進行了可重構[2]設計,使其能夠適配密鑰長度為128bit、192bit和256bit的三種AES算法,從而既提高了處理速度,又有效節省了硬件資源。本設計在經過FPGA驗證后,采用Synopsys邏輯綜合工具Design Compiler進行邏輯綜合和優化。結果表明,該設計能夠滿足高性能密碼處理要求,可以作為CPU核的外圍模塊。?

1 AES算法介紹?

??? AES算法是一個迭代型分組密碼。其明文分組長度為128bit,密鑰分組長度可以分別指定為128bit、192bit、256bit,即AES-128、AES-192和AES-256。它們的加/解密圈數分別為10、12和14。AES加/解密算法的輸入是一個128bit的數據塊,此數據塊被編排為一個被稱作狀態矩陣的4×4矩陣,AES的所有變換都是基于該狀態矩陣的。類似地,種子密鑰也用一個以字節為元素的矩陣陣列表示,該陣列有4行,列數記為Nk,對應三種密鑰長度,Nk分別為4、6、8。AES算法流程如圖1所示。?

?

?

??? 算法的操作步驟為:初始的密鑰加、(Nr-1)輪迭代以及一個結尾輪。其中,輪迭代又分為四步,即字節替代(ByteSub)、行移位(ShiftRow)、列混合(MixColumn)、密鑰加(AddRoundKey)。在結尾輪運算中不進行列混合變換。?

??? AES解密算法有兩種實現方案[3],其一是直接使用加密算法的逆算法,在這種實現方案中,解密算法所使用的基本運算都是加密算法的逆運算,但所使用的子密鑰與加密算法相同,只是使用順序與加密算法相反。其二是采用等效解密算法,其架構與加密算法非常類似,但所使用的子密鑰與加密算法不同。本文在硬件實現時,為減少資源占用,將加密和解密模塊整合到一個模塊中實現,故采用等效的解密流程。?

2 可重構AES算法的設計與實現?

2.1 整體架構?

??? AES算法結構簡單,只需要邏輯運算和查找表運算,易于實現,靈活性強。它不需要大量復雜的乘法運算,加解密速度快,且輪函數具有良好的統計特性,并行執行度高,十分有利于硬件設計與實現。本設計從節約資源角度出發,將加密和解密算法整合到一個模塊中實現。圖2所示是可重構AES算法的整體電路架構。電路由輸入輸出模塊、可重構運算模塊、可重構密鑰擴展模塊和控制模塊四部分組成。?

?

?

??? Start為啟動信號。當LoadData信號或LoadKey信號有效時,外部明/密文或種子密鑰通過In/Out端口分別注入到可重構加/解密運算模塊或可重構密鑰擴展模塊中進行相應變換。KeySize信號用來選擇該模塊被重構成哪種密鑰長度的AES算法。當其為“00”時,該模塊重構成AES-128;當為“01”時重構成AES-192;為“10”時重構成AES-256。Enc_Dec為加/解密信號,用來指示加密或解密操作。當Busy信號有效時,表示內部正在進行加/解密處理或密鑰擴展運算。?

??? 在可重構加/解密運算模塊中,ByteSub所使用的S-box和InvS-box主要有三種實現方法,即查找表法、多項式法以及ROM替代法。本文采用存儲器資源來進行實現,不占用其他硬件資源,而且可以減少延時。AddRoundKey采用簡單的異或邏輯實現。?

2.2 關鍵模塊的設計實現?

2.2.1 密鑰擴展模塊?

??? 密鑰擴展是以4字節字為元素的一維陣列,表示為W[Nb×(Nr+1)],其中前一個字取為種子密鑰,以后每個字按遞歸方式定義。本文針對密鑰擴展模塊進行了可重構設計,其單元結構如圖3所示。?

?

?

??? 在圖3中,對C1、C2、C3進行相應配置就能使該單元分別適配三種密鑰長度的密鑰擴展算法。具體的配置參數如表1所示。

?

?

??? 在加/解密過程中每一輪需要128位的輪子密鑰,子密鑰的生成可以與密碼處理并行進行,采用這種方式擴展密鑰可以節省存儲空間,但會增加芯片的動態功耗,并且由于解密運算所使用的子密鑰是由加密子密鑰經過列混合運算得到,故解密時的密鑰擴展比加密時的密鑰擴展要多用一倍的時鐘,這將使運算模塊長期處于等待狀態,制約解密過程的實現,導致處理性能降低。通常,在實際應用中種子密鑰不會頻繁改變,所以本文采用外部擴展方式,即通過預計算將擴展出的子密鑰保存在RAM中,進行密碼處理時再從RAM中讀出各輪子密鑰參與運算。這種方式靈活性強,對提高整體性能有很大幫助。?

2.2.2 行移位模塊?

??? 行移位只是完成信號在不同輸入輸出之間的切換,不占用任何觸發器、門陣列資源,只占用布線資源。本文采用硬連線方式實現該模塊,延時小且實現簡單。通過配置,該模塊能夠分別實現三種密鑰長度所對應的行移位。該模塊結構如圖4所示。?

?

?

2.2.3 列混合模塊?

??? 列混合變換被定義為系數在有限域GF(28)上的四次多項式矩陣乘法[1],加密過程是在GF(28)上乘01、02、03,解密過程相對復雜,是在GF(28)上乘09、0E、0B、0D。為了簡化實現,將矩陣乘法展開并整理。以加密過程為例可得:對解密過程也進行相應整理,經比較可以得知加密和解密兩種操作函數中存在可共享的部分,于是將兩種操作函數整合在一起,從而簡化了列混合模塊的實現過程,節約了硬件資源。?

??? 圖5給出了以字為單位的硬件電路模型。在以字節為單位的列混合模塊中,x乘法電路是最重要的單元。對于任意給定的輸入數據b(7:0),當執行x乘運算時,首先將b(7:0)左移1位得到數據b(6:0)&‘0’;其次判斷數據最高位b(7)的值。若b(7)=0,則輸出數據為b(6:0),否則,輸出數據為b(6:4)&(“11011”xor (b(3:0) &‘0’))。因此,x乘法可以用字節內左移一位和緊接著的一個與0x1b的條件位異或來實現。本文對其進行了優化設計,如圖6所示。?

?

?

?

3 性能評價?

3.1 密碼處理性能?

??? 整個設計是在Quartus Ⅱ開發平臺上采用Verilog語言實現的,并將設計文件在Quartus軟件下進行編譯、仿真和FPGA下載驗證。表2給出了采用FPGA實現時的性能和資源占用情況。

?

?

??? 本設計在經過FPGA驗證后,采用0.18μm CMOS標準單元庫編寫約束文件,使用Synopsys Design Compiler工具進行邏輯綜合、優化,在ModelSim工具上仿真,其綜合結果如表3所示。

?

?

3.2 與其他實現方案的比較?

??? 在不考慮初始配置時間和數據輸入/輸出時間并假定數據、子密鑰已經準備完畢的情況下,在參考文獻[4]中提出的方案其速率為1.83Gb/s,參考文獻[5]中提出的方案速率為0.61Gb/s。AES算法基于SP網絡結構設計,數據處理并行度高,本文是按照其基本結構實現該算法時選取的數據。如前所述,本設計能夠較好地適配AES算法,加/解密速率達3.4Gb/s。由此可見,本方案在速度上具有明顯的優勢,同時對系統資源的消耗很少,具有很好的性價比。?

??? 本文對AES算法的運算模塊和密鑰擴展模塊進行了可重構設計,對輪結構中的列混合模塊進行了結構優化,并給出了AES算法在ECB模式下的設計方案。在該方案基礎上做進一步改進便能實現AES算法的CBC、OFB、CFB模式。此外,本文在分析AES算法基礎上,分別用FPGA和ASIC對本文提出的方案進行了高速硬件實現。該方案同樣適用于Altera公司的其他FPGA芯片及Xinlinx公司的FPGA器件等,具有很好的通用性。?

參考文獻?

[1]?DANMEN J, RIIJMEN V. AES Proposal : Rijndael.AES?algorithm submission, AES home page: http://www.nist.gov/aes, 1999-09.?

[2] SIGH H, LEE M H, LU G, et a1.An integerated reconfigurable system for data-parallel and computation-intensive?applications[J]. IEEE Transcations on Computer, 2000,49?(5):465-481.?

[3]?朱信賢.全功能AES密碼引擎之超大型積體電路架構設計[D].臺灣:臺灣國立云林科技大學,2002.?

[4]?KUO H, VERBAUWHEDE I, SCHAUMONT P. A 2.29?Gbits/sec, 56 mW Non-pipelined Rijndael AES Encryption JC in a 1.8V, 0.18 mm CMOS Technology. Electrical Engineering Department, University of California Los Angeles,Los Angeles, CA.?

[5] MROCZKOWSKI P. Implemetation of the block cipher?Rijndael using Altera FPGA. Military University of Technology.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲图片你懂的| 日韩亚洲欧美在线观看| 亚洲国产日韩在线| 国内一区二区三区| 国产欧美精品日韩| 国产精品美女久久久久aⅴ国产馆| 欧美日韩美女在线| 欧美人与禽性xxxxx杂性| 欧美高清视频一二三区| 欧美www在线| 欧美激情aaaa| 欧美激情第3页| 欧美国产第一页| 欧美高清视频一区| 欧美精品一区二区三区四区| 欧美欧美在线| 欧美日韩精品| 欧美日韩在线第一页| 国产精品swag| 国产麻豆成人精品| 国产三区二区一区久久| 国产一区日韩一区| 激情综合亚洲| 亚洲黄色成人久久久| 亚洲免费不卡| 亚洲五月婷婷| 亚洲欧美视频| 亚洲国产一成人久久精品| 亚洲精品乱码久久久久| 日韩一级黄色大片| 亚洲视频一区| 欧美一区二区在线观看| 久久婷婷国产综合精品青草| 美国成人毛片| 欧美日韩国产91| 国产精品视频专区| 精品动漫3d一区二区三区免费| 亚洲国产天堂久久综合网| 99re成人精品视频| 亚洲已满18点击进入久久| 欧美一区二区三区日韩| 91久久精品日日躁夜夜躁欧美| 99精品国产福利在线观看免费| 亚洲女性裸体视频| 久久久国产一区二区三区| 蜜臀a∨国产成人精品| 欧美日韩调教| 国产亚洲精品久久久久久| 伊人一区二区三区久久精品| 亚洲精品一区二区三区四区高清| 亚洲网站在线观看| 久久都是精品| 夜夜嗨av一区二区三区网站四季av| 亚洲欧美不卡| 乱中年女人伦av一区二区| 欧美色中文字幕| 国产又爽又黄的激情精品视频| 亚洲国产欧美日韩| 亚洲一区尤物| 91久久夜色精品国产九色| 午夜久久黄色| 欧美大片免费| 国产日产欧产精品推荐色| 亚洲国产精品一区二区三区| 亚洲在线观看视频| 亚洲啪啪91| 欧美一级理论性理论a| 欧美激情第1页| 国产亚洲毛片| 亚洲无限av看| 亚洲乱码国产乱码精品精可以看 | 日韩视频一区二区在线观看 | 老司机免费视频一区二区| 国产精品a久久久久| 在线免费观看日本欧美| 亚洲一区二区毛片| 日韩一区二区久久| 久久精品在线免费观看| 国产精品大片wwwwww| 亚洲国产综合在线| 久久成人精品视频| 亚洲欧美日韩中文在线制服| 欧美不卡在线| 国产一二精品视频| 亚洲一二三级电影| 一本久久综合亚洲鲁鲁| 久久免费的精品国产v∧| 国产精品久久久久9999高清| 亚洲片在线资源| 亚洲国语精品自产拍在线观看| 欧美一区成人| 国产精品成人播放| 亚洲精品视频免费| 亚洲精品日本| 久久美女性网| 国产有码一区二区| 亚洲欧美在线磁力| 亚洲在线播放电影| 欧美日韩精品免费| 亚洲精品欧美专区| 亚洲精品乱码| 欧美va亚洲va香蕉在线| 激情欧美亚洲| 久久精品盗摄| 久久精品最新地址| 国产亚洲一区二区精品| 亚洲女性裸体视频| 欧美亚洲一区三区| 国产精品视频一二| 亚洲综合色丁香婷婷六月图片| 亚洲午夜电影网| 欧美色图一区二区三区| 99精品视频一区二区三区| 在线中文字幕一区| 欧美日韩国产首页| 亚洲美女在线观看| 一区二区欧美亚洲| 欧美三级午夜理伦三级中文幕| 亚洲精品男同| 亚洲视频免费看| 国产精品国产福利国产秒拍| 亚洲一区二区三区777| 亚洲欧美色婷婷| 国产精品久久久一区麻豆最新章节 | 欧美诱惑福利视频| 国产亚洲观看| 久久精品99国产精品日本 | 免费观看在线综合色| 亚洲高清123| 日韩视频中午一区| 欧美三级电影大全| 亚洲一区精品电影| 久久精品五月| 在线成人h网| 99成人精品| 国产精品v欧美精品v日韩| 亚洲一区二区三区在线观看视频| 欧美一区二区三区免费视| 国内精品久久久久伊人av| 亚洲大片一区二区三区| 欧美高清不卡| 一区二区免费在线观看| 欧美一区不卡| 伊人成人在线| 一本久久综合亚洲鲁鲁| 国产精品久久久久77777| 性欧美大战久久久久久久免费观看| 久久久久久久综合色一本| 影音先锋在线一区| 一区二区国产在线观看| 国产精品日韩欧美综合| 亚洲成色www8888| 欧美日韩国产一级片| 亚洲一级二级在线| 久久蜜桃精品| 亚洲精品美女在线观看播放| 亚洲欧美日韩综合国产aⅴ| 好看的日韩av电影| 日韩午夜在线视频| 国产精品蜜臀在线观看| 久久国产直播| 欧美三级中文字幕在线观看| 欧美在线观看一区| 欧美黄色网络| 亚洲欧美国产高清| 男人天堂欧美日韩| 在线视频精品一| 久久综合久久综合久久| 一区二区三区高清视频在线观看| 久久国内精品视频| 亚洲清纯自拍| 久久精品99久久香蕉国产色戒| 1024成人| 午夜精品久久久久影视| 亚洲国产一二三| 欧美一区激情| 亚洲日韩成人| 久久精品综合网| 亚洲免费成人| 狼人社综合社区| 亚洲小视频在线| 欧美成人精品h版在线观看| 亚洲视频在线观看视频| 欧美不卡视频| 欧美在线观看一区二区三区| 欧美日一区二区三区在线观看国产免| 性色av一区二区三区| 欧美乱人伦中文字幕在线| 欧美一区在线视频| 欧美先锋影音| 亚洲另类一区二区| 国产一区二区视频在线观看| 亚洲在线日韩| 亚洲精品视频在线| 久久久最新网址| 午夜日韩视频| 欧美四级电影网站| 日韩视频一区二区三区| 一区二区亚洲精品| 久久动漫亚洲|