《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 面向CBC模式的AES高速芯片設計與實現
面向CBC模式的AES高速芯片設計與實現
來源:電子技術應用2014年第1期
劉 楠,陳 迅,李軍偉
信息工程大學 密碼工程學院,河南 鄭州450004
摘要: 為以硬件方式高速實現AES密碼算法,縮短整個芯片的關鍵路徑,基于一種改進AES密碼算法,在算法級對電路實現進行優化,將AES密碼算法中字節代替變換與列混合變換進行合并,以查找表的方式實現這兩種變換的一步變換。在支持密鑰長度為128 bit、192 bit和256 bit AES算法的同時,支持分組密碼工作中的ECB,CBC模式,提高了分組密碼不同級別的安全性。在0.13 μm CMOS工藝下,用Verilog硬件描述語言進行綜合,仿真結果表明最高時鐘頻率可以達到781 MHz,在密鑰長度分別為128 bit、192 bit和256 bit時,最大數據吞吐率分別可以達到9.9 Gb/s、8.3 Gb/s和7.1 Gb/s,占用面積38.5 KGates。
中圖分類號: TN492
文獻標識碼: A
文章編號: 0258-7998(2014)01-0064-04
Design and implementation of high-speed AES chip optimized for CBC modes
Liu Nan,Chen Xun,Li Junwei
Institute of Cryptography Engineering, PLA Information Engineering University, Zhengzhou 450004,China
Abstract: For the purpose of implementing high-speed AES algorithm and reducing the critical path of the whole chip, this paper optimizes the circuits based on an improved AES algorithm in an algorithmic view. This paper merges the SubByte transform and the MixColumn transform together and implements it in the lookup table(LUT) approach. It can fully support AES-128/192/256 performance and meanwhile support both ECB and CBC modes improving different levels of the security of block cipher. Based on 0.13 μm CMOS technology, using Verilog hardware description language for synthesis, the simulation results show that 781 MHz clock frequency and up to 9.9/8.3/7.1Gb/s data throughput rate are achieved for AES-128/192/256 and the area cost is 38.5 KGates.
Key words : high-speed;AES;CBC;ECB

   針對通信網絡、數據存儲加密等應用場景中的安全需求,人們對AES算法的硬件實現進行了廣泛地研究。目前,對其高速高吞吐率的優化實現方法主要分為兩類。
    第一類采用組合邏輯計算字節代替變換中S盒代替表的值,并通過在組合路徑中插入流水寄存器的方法來減小整個芯片的關鍵路徑,從而提高最高時鐘頻率與數據吞吐率。HODJAT A[1]將數據映射到GF(24)上,MATHEW S K[2]將所有數據與變換系數均映射到GF(24)2上,并在組合路徑中插入了不同級數的流水寄存器,實現了不同數據吞吐率的AES硬件電路。雖然這類實現方法有著面積占用小、數據吞吐率高的優點,但不能有效支持分組密碼工作中目前已被廣泛使用的密碼分組鏈接CBC(Cipher Block Chaining)模式,影響算法實際應用的安全性。
    第二類采用多核方案實現。Wang Maoyin[3]提出了面向不同安全等級的AES架構,Huang Wei[6]提出了低復雜性的多核異構安全SoC平臺。雖然數據吞吐率較高,但這類方法在提高數據吞吐率的同時成倍地增加了電路面積,且仲裁邏輯的設計也會導致電路設計復雜性的增加。
    基于以上問題,本設計基于一種改進的AES算法,在算法級對電路實現進行優化,將AES算法中字節代替變換與列混合變換進行合并,采用查找表方式實現,從而有效地縮短了關鍵路徑,提高了時鐘頻率,同時支持分組密碼CBC模式,提升了安全強度。
1 AES密碼算法簡介
    AES密碼算法是基于對稱密鑰密碼實現的分組密碼算法,分組長度為128 bit,密鑰長度為128 bit、192 bit或256 bit。對應的輪數Nr分別為10、12和14。
    AES密碼算法在對明文進行加密時,經過的變換依次為字節代替變換、行移位變換、列混合變換和輪密鑰加變換。
2 高速AES密碼算法硬件結構設計
2.1 適用于CBC模式的硬件結構選擇

    分組密碼算法對數據進行加/解密操作時,有多種不同的工作模式,其中ECB(Electronic Code Book)和CBC是兩種常用的工作模式。
    ECB模式中各明/密文分組獨立處理、實現簡單。但ECB模式無法隱蔽明文數據的格式規律和統計特性,無法抵抗組的重放、嵌入和刪除等攻擊,使密碼分析者可以按組進行分析,這對長報文而言并不安全。CBC工作模式中加密算法的輸入是當前明文分組與前一密文分組的“異或”。其能夠隱蔽明文數據的格式規律和統計特性,使相同的明文分組未必蘊涵著相同的密文分組,可以有效克服ECB模式的弱點。
    為使AES密碼芯片能夠有效支持分組密碼CBC模式,在實現時要對其硬件結構設計進行充分的考量。
    分組密碼算法的硬件實現結構通常可以分為兩種——循環迭代結構和全流水結構。
    圖1(a)所示,循環迭代結構將明文分組接入AES運算模塊進行Nr輪迭代運算后輸出,關鍵路徑為經過數據選擇器和AES運算模塊到輪數據寄存器的延遲,其共需Nr個時鐘周期完成加/解密運算。對于分組密碼CBC模式而言,下一明文分組等待Nr個時鐘周期后與當前明文分組的密文結果先進行“異或”,再開始加/解密運算。
    圖1(b)所示,全流水結構以在每輪運算之間插入流水寄存器的方式實現,其關鍵路徑與循環迭代結構相同。在輸入數據連續,即每個時鐘周期輸入1個明文分組的情況下,當前明文分組與下一明文分組連續輸入時,下一明文分組在沒有得到當前明文分組對應的密文結果之前就輸入進行計算,這顯然不能滿足分組密碼CBC模式的工作條件。在輸入數據不連續(即下一明文分組在得到當前明文分組的密文結果后,先“異或”再進行加/解密運算)的情況下,下一明文分組需要等待Nr個時鐘周期才能進行加/解密運算。此時,芯片的吞吐率與采用循環迭代結構實現時相同。

    但在占用面積資源方面,采用全流水結構時,電路結構中需要Nr個128 bit位寬的輪數據寄存器和Nr個AES運算模塊,占用面積較大。采用循環迭代結構實現時,電路結構中只需1個128 bit位寬的輪數據寄存器和1個AES運算模塊通過硬連線進行迭代就可實現,占用面積較小。
    因此,為有效支持分組密碼CBC模式,同時考慮到資源占用問題,本設計采用循環迭代結構來實現AES密碼算法。
2.2 整體架構設計
    本設計的架構設計主要分為(ENCRYPT/DECRYPT)加/解密模塊和(EXPANDKEY)密鑰擴展模塊兩大部分。
    如圖2所示,輸入數據寄存器直接接入與密鑰擴展模塊輸出的128 bit輪密鑰進行“異或”操作,而后數據依次進入(ShiftRow)行移位變換模塊、(Sub&Mix)字列合并變換模塊,并將運算結果存入輪數據寄存器。以此類推,每一輪的輪寄存器當中存入的都是其相應輪數的運算結果。若為最后一輪時,數據直接與最后一輪密鑰相“異或”進入輸出寄存器。


    例如,第1列32 bit列向量中Column1的第i個字節通過硬連線接入(S&M Table i)字列合并查找表i中(i=1,2,3,4),對查找表的結果進行“異或”后,輸出該32 bit列向量經過字節代替變換與列混合變換后的結果。
2.4 密鑰擴展模塊設計
    由于AES密碼算法的密鑰擴展算法是以字為單位進行操作的,所以要將128 bit、192 bit和256 bit的密鑰存入4、6和8個不同的32 bit位寬寄存器中。之后初始密鑰數據按照密鑰擴展算法被擴展成4(Nr+1)個字的陣列,記其為W[0],W[1],…,W[4Nr+3]。
    如圖4所示,經ModeSel信號選擇后,電路可完成3種不同密鑰長度的AES密鑰擴展算法。對于128 bit、192 bit和256 bit的密鑰長度,本設計一個時鐘周期分別能夠輸出4、6和8個字的輪密鑰。

    初始密鑰輸入到不同個數的32 bit位寬輸入密鑰寄存器中,經密鑰擴展運算后并置輸出至KEY.OUT,同時返回迭代,通過數據選擇器選擇作為下一輪密鑰擴展算法的輸入。其分別需要經過10、9和8個時鐘周期完成密鑰擴展運算。
    為減小整個芯片的關鍵路徑,本設計采用預先生成密鑰擴展模塊設計,在電路接收到初始密鑰之后,在狀態機控制信號的控制下預先生成加/解密模塊所需要的Nr輪密鑰序列,并將每輪的128 bit密鑰存入相應的寄存器當中,在使用時結合狀態機不同輪數的選擇信號,將每輪的輪密鑰輸出至加/解密模塊以完成相應輪數的加/解密運算。這樣一來,在使用時只需結合相應的選擇信號從這些寄存器中選擇相應的輪密鑰,不需要在線生成輪密鑰。因此可以減小整個芯片的關鍵路徑,提高時鐘頻率。
3 實驗結果
    在0.13 μm CMOS工藝條件下,利用綜合工具對本設計進行邏輯綜合優化。仿真結果顯示,本設計的關鍵路徑為1.28 ns,最高時鐘頻率為781 MHz,在這一時鐘頻率下,在密鑰長度分別為128 bit、192 bit和256 bit時,最大數據吞吐率分別可以達到9.9 Gb/s、8.3 Gb/s和7.1 Gb/s。
    表1所示為本設計與相關文獻中AES硬件設計在工藝、面積、最高時鐘頻率、吞吐率和性能面積比等方面的仿真結果對比情況。

 

 

    在0.13 μm CMOS工藝下,LIN S Y[4]提出了同樣支持ECB、CBC模式的高數據吞吐率AES密碼芯片;HAMALAINENP[5]設計實現了小面積、低功耗的AES算法核,Yan Weiwei[6]實現了可重構的AES算法,本設計在數據吞吐率方面較其均有顯著的提升。HODJAT A[1]和MATHEW S K[2]以流水線方式實現AES算法,雖然數據吞吐率較高,但不支持CBC模式,安全性較低。
    本設計基于改進AES算法,在算法級對電路進行優化,將字節代替變換和列混合變換整合為一次查表完成,縮短了關鍵路徑,提高了最高時鐘頻率和數據吞吐率。同時采用輪間循環迭代結構設計,占用相對較少的面積。仿真結果證明,本設計在密碼處理速率上有較高的指標,在支持密鑰長度為128 bit、192 bit和256 bit AES算法的同時,支持分組密碼工作中的ECB、CBC模式,可以有效滿足當前人們對于芯片在通信網絡、數據存儲加密等應用場景中的高速數據處理需求,并可以作為一個獨立的IP核嵌入到SoC芯片中。
參考文獻
[1] HODJAT A,VERBAUWHEDE I.Area-throughput trade-offs for fully pipelined 30 to 70 G/s AES processors[J].Computers,IEEE Transactions on.2006,55(4):366-372.
[2] MATHEW S K,SHEIKH F,KOUNAVIS M,et al.53 Gb/s Native GF(24)2 composite-field AES-encrypt/decrypt accelerator for content-protection in 45 nm high-performance microprocessors[C].VLSI Circuits(VLSIC),2010 IEEE Symposium on.2010.
[3] Wang Maoyin,SU C P,HORNG C L,et al.Single-and multi-core configurable AES architecturs for flexible security[J].Very Large Scale Integration (VLSI) Systems,IEEE Transactions on.2010,18(4):541-552.
[4] LIN S Y,HUANG C T.A high-throughput  low-power AES cipher for network applications[C].Design Automation Conference,2007.ASP-DAC′07.Asia and South Pacific,2007.
[5] HAMALAINEN P,ALHO T,HANNIKAINEN M,et al.Design and implementation of low-area and low power AES encryption hardware core[C].Digital System Design:Architectures,Methods and Tools,2006.DSD 2006. 9th EUROMICRO Conference,2006.
[6] Yan Weiwei,YOU K,Han Jun.Low-cost reconfigurable VLSI implementation of the SMS4 and AES algorithms[C].ASIC,2009.ASICON′09.IEEE 8th International Conference,2009.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品国产福利国产秒拍 | 玖玖玖免费嫩草在线影院一区| 宅男噜噜噜66一区二区66| 亚洲国产精品久久| 亚洲国产成人在线播放| 欧美在线资源| 欧美制服丝袜第一页| 羞羞答答国产精品www一本| 亚洲一区二三| 亚洲一区在线直播| 亚洲欧美视频| 久久成人免费网| 亚洲国产欧美一区二区三区久久 | 久久黄色级2电影| 久久国产精品99国产| 久久av资源网站| 欧美一区二区三区日韩视频| 欧美亚洲日本一区| 久久精品国产亚洲一区二区| 亚洲第一综合天堂另类专| 亚洲国产美国国产综合一区二区| 亚洲国产免费| 一本色道久久综合| 亚洲欧美另类国产| 久久gogo国模裸体人体| 久久久精品国产99久久精品芒果| 久久男人av资源网站| 麻豆精品视频| 欧美日韩国产一区二区三区地区| 欧美精品激情blacked18| 欧美日韩免费观看一区三区| 欧美激情亚洲激情| 亚洲免费网址| 久久免费黄色| 欧美国产日韩视频| 国产精品国产馆在线真实露脸| 国产精品国产三级国产普通话蜜臀 | 亚洲欧洲日韩在线| 中日韩美女免费视频网站在线观看| 亚洲免费视频成人| 久久久精品视频成人| 免费久久99精品国产自| 欧美大片国产精品| 国产精品国内视频| 激情久久中文字幕| 日韩一级不卡| 欧美一区二区精品| 一本到12不卡视频在线dvd| 午夜日韩在线观看| 老司机免费视频久久| 欧美日韩亚洲一区在线观看| 国产乱码精品一区二区三区忘忧草| 一区在线免费| 一区二区三区国产在线| 欧美在线观看视频在线| 99精品热6080yy久久| 欧美一区二区三区四区在线| 免费在线视频一区| 国产精品丝袜久久久久久app| 揄拍成人国产精品视频| 亚洲香蕉网站| 亚洲免费大片| 欧美自拍丝袜亚洲| 欧美日韩国产高清视频| 国产精品伦子伦免费视频| 在线观看日韩www视频免费| 亚洲午夜电影在线观看| 91久久在线视频| 性欧美video另类hd性玩具| 欧美91福利在线观看| 国产精品入口尤物| 亚洲人成7777| 亚洲福利国产| 欧美一区亚洲一区| 欧美日韩视频专区在线播放| 精品福利av| 亚洲欧美日韩国产成人| 在线视频欧美一区| 蜜臀久久久99精品久久久久久| 国产伦精品一区二区三区| 亚洲久久成人| 亚洲精品一级| 久久中文字幕一区| 国产毛片一区| 亚洲精品视频免费在线观看| 亚洲电影视频在线| 欧美专区福利在线| 国产精品久久久91| 9色精品在线| 亚洲理论在线观看| 久久网站免费| 国产一区二区三区四区老人| 亚洲综合欧美日韩| 一区二区三区欧美| 欧美韩国日本一区| 在线精品视频一区二区| 欧美一区二区三区四区在线观看地址 | 亚洲一区二区三区四区视频| 日韩视频在线观看免费| 看欧美日韩国产| 国产亚洲欧美日韩美女| 亚洲在线视频观看| 午夜伦欧美伦电影理论片| 欧美三级韩国三级日本三斤| 亚洲国产高清一区二区三区| 久久精品理论片| 久久亚洲精品网站| 国产一区二区三区免费不卡| 亚洲欧美日韩国产中文在线| 亚洲欧美资源在线| 欧美日韩中文字幕在线视频| 91久久久国产精品| 亚洲精品视频在线看| 欧美国产日韩一区二区三区| 亚洲电影免费观看高清完整版在线| 久久精品国亚洲| 另类欧美日韩国产在线| 狠狠综合久久av一区二区老牛| 久久精品30| 你懂的亚洲视频| 亚洲黄色有码视频| 9l国产精品久久久久麻豆| 欧美激情网友自拍| 亚洲激情综合| 中日韩美女免费视频网站在线观看| 欧美日韩亚洲一区二区三区| 中文在线不卡| 性xx色xx综合久久久xx| 国产一区二区三区的电影 | 最近看过的日韩成人| av成人毛片| 欧美日韩伦理在线免费| 一区二区三区鲁丝不卡| 午夜精品福利一区二区三区av| 国产精品男gay被猛男狂揉视频| 亚洲私人影院在线观看| 性欧美暴力猛交另类hd| 国产日韩欧美不卡在线| 久久大香伊蕉在人线观看热2| 老司机免费视频一区二区| 亚洲激情六月丁香| 亚洲一区二区三区高清不卡| 国产精品资源在线观看| 久久精品一区二区| 欧美喷水视频| 亚洲欧美国产三级| 久热综合在线亚洲精品| 亚洲青色在线| 欧美一级午夜免费电影| 国产综合18久久久久久| 亚洲精品影院在线观看| 欧美特黄视频| 欧美中文在线观看国产| 欧美激情aaaa| 亚洲免费影院| 欧美ed2k| 亚洲午夜在线视频| 狂野欧美激情性xxxx| 亚洲伦理中文字幕| 久久国产视频网站| 亚洲黄色成人网| 欧美一区二区精品久久911| 精品动漫一区| 亚洲自拍偷拍色片视频| 国产综合在线视频| 这里只有视频精品| 狠狠色狠狠色综合日日tαg| 一区二区三区视频观看| 国产日韩精品一区二区三区| 日韩一级黄色大片| 国产日韩欧美制服另类| 亚洲免费观看| 国产婷婷色一区二区三区| 亚洲免费高清视频| 国产欧美一区二区精品婷婷| 亚洲精品三级| 国产欧美亚洲一区| 夜夜爽www精品| 激情欧美一区| 欧美一级播放| 日韩视频中午一区| 久久综合网络一区二区| 亚洲视频999| 欧美成人激情视频免费观看| 亚洲欧美综合一区| 欧美日韩在线一区二区| 亚洲国产岛国毛片在线| 国产精品日本精品| 日韩一级黄色av| 一区二区三区在线不卡| 性色av香蕉一区二区| 91久久在线播放| 久久中文在线| 性xx色xx综合久久久xx| 欧美色图天堂网| 亚洲精品国产精品国自产观看| 亚洲性图久久| 日韩午夜激情av| 久久久久.com| 亚洲一区二区三区国产|