《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 一種應用于生物識別領域的AES算法
一種應用于生物識別領域的AES算法
2015年電子技術應用第4期
彭 海,高俊雄,王耘波
華中科技大學 光學與電子信息學院, 湖北 武漢430074
摘要: 生物識別技術已廣受重視,利用AES加密算法對生物識別過程中的特征模板進行加密可以大大提高生物識別技術的安全性。為提高AES加密算法的吞吐率,使其更好地應用于生物識別領域,以FPGA為實現主體,采用串行緩存結構,充分利用FPGA并行處理的特點,成功實現了一種大吞吐量的AES算法。最后在Xilinx的XC7A200T芯片上對算法進行了驗證,經計算其理論吞吐量可以達到30.3 Gb/s。
中圖分類號: TP309.7
文獻標識碼: A
文章編號: 0258-7998(2015)04-0116-03
中文引用格式:彭海,高俊雄,王耘波.一種應用于生物識別領域的AES算法[J].電子技術應用,2015,41(04):116-118
AES algorithm used in biometrics
Peng Hai,Gao Junxiong,Wang Yunbo
School of Optical and Electronic Information,Huazhong University of Science and Technology,Wuhan 430074,China
Abstract: Biometrics is now more and more important to many occasions, encrypting the templates which generated in the process of biometrics using the AES encryption algorithm can enhance the safety of the biometrics significantly. In this paper, an AES encryption algorithm is proposed,which could improve the throughput rate of AES, and make it better in applications. Based on FPGA and parallel processing,a high throughput rate is achieved and verified on the XC7A200T chip. The results are performed and discussed.
Key words : FPGA;AES;biometrics;throughput

 

0 引言

  生物識別技術方便、快捷、安全可靠,已被廣泛應用于部隊、政府機關、高檔小區等對安全系數要求較高的場合,并且呈快速發展的趨勢。然而隨著生物識別技術的大量應用,人們對生物識別技術的安全性和隱私問題的關注也越來越多[1]。生物識別技術一般對生物特征(如指紋、虹膜等)進行取樣,提取其唯一特征并且轉化為特征模板,根據特征模板進行匹配。特征模板就像生物識別技術里的“鑰匙”,一旦被修改將直接影響其識別結果。因此,采集模板時利用AES加密算法對模板數據進行加密,進行識別時取出加密后的模板并將其解密。這種以AES算法實現對模板數據的加密可大大提高生物識別的安全性。生物識別系統在識別時往往要遍歷所有模板,而由于用戶基數龐大,數據庫中一般存在大量的特征模板,因此系統對解密的速度要求非常高。

  AES加密算法由美國國家標準與技術研究所(NIST)在2002年建立,它可以使用128 bit、192 bit或256 bit密鑰,并用128 bit(16 B)分組加密和解密數據。現階段AES加密主要通過軟件編程或硬件邏輯實現。采用軟件編程實現的方法具有成本低、靈活的特點,但軟件實現的AES易被修改,且速度較慢;采用硬件邏輯實現的AES加密算法除了高效和安全外,還保證了很高的速度,所以在生物識別領域十分適用。本文主要論述了在FPGA硬件平臺下實現的一種大吞吐量256 bit密鑰的AES算法,因AES加密與解密的過程基本相同,故主要論述了AES算法的解密過程在FPGA上的實現。

1 AES算法簡介

  AES算法是基于置換和代替的。置換是指數據的重新排列,而代替是用一個單元數據替換另一個。圖1顯示了AES(256 bit)加密解密的完整流程。

001.jpg

  AES加密算法把輸入的128 bit數據看成是一個名為State狀態矩陣的4×4的字節矩陣。加密過程就是對State狀態矩陣進行多輪操作[2]。算法開始前首先構造用于加密的兩個表,一個是用于字節替換的S-box表,另一個是用于產生輪密鑰的密鑰調度表。算法首先進行AddRoundKey(輪密鑰加),即用密鑰調度表中的前4行對State矩陣進行異或操作。然后是AES加密算法的主循環,循環的次數由輸入密鑰的長度決定,如密鑰位數為256 bit,則循環總輪數為14輪。AES算法的加密主循環每輪對State狀態矩陣執行4個不同的操作,分別是SubBytes(字節替換)、ShiftRows(行移位變換)、MixColums(列混淆變換)和AddRoundKey(輪密鑰加),其中最后一輪不進行ShiftRows(行移位變換)。字節替換是指通過S盒對狀態矩陣進行替換,行移位變換是指狀態矩陣的每一行進行循環移位,列混淆變換主要用到了GF28域上的乘法和加法運算,而輪密鑰加是簡單的異或運算。AES解密主循環是加密循環的逆過程,解密主循環中也有對應的逆變換:Inv_SubBytes(逆字節替換)、Inv_ShiftRows(逆行移位變換)、Inv_MixColumns(逆列混淆變換),這些變換均可看成加密主循環中4個變換的逆變換。

2 AES算法的FPGA實現

  2.1 FPGA技術簡介

  現場可編程門陣列FPGA(Field Programmable Gate Array)是美國Xilinx公司于1984年首次開發的一種通用型用戶可編程器件。FPGA既具有門陣列器件的高集成度和通用性,又有可編程邏輯器件的靈活性。

  FPGA結構靈活,其邏輯單元、可編程內部連線和I/O單元都可由用戶編程,可實現任何邏輯功能,滿足各種設計需求。其速度快、功耗低、通用性強的特點適用于復雜系統的設計[3]。FPGA技術還可以實現動態配置、在線系統重構(可以在系統運行的不同時刻,按需要改變電路的功能,使系統具備多種空間相關或時間相關的任務)及硬件軟化、軟件硬化等功能。

    2.2 使用FPGA實現AES算法

  2.2.1 系統的總體結構


002.jpg

  根據AES算法輪操作的特點,本文采取基本迭代與串行緩存相結合的方法,系統總體實現框圖如圖2所示。通過14個AES解密模塊并行使用,大大提高了吞吐率,其中每個AES解密模塊采用基本迭代的方法,即所有輪次復用一個輪函數,每個時鐘周期完成一次輪操作,14個時鐘周期完成一個分組運算。

  解密數據時,首先讓密文數據依次進入串行緩存,串行緩存的深度與AES算法的輪數相同(為14),進入串行緩存的數據依次進入AES解密模塊進行解密。第一個時鐘周期,讓密文數據進入Data_buffer1,然后啟動第一個AES解密模塊AES1;第二個時鐘周期,讓新的密文數據進入Data_buffer2,然后啟動第二個AES解密模塊AES2;依此類推,往復循環。14個AES解密模塊的啟動順序如圖3所示。

003.jpg

  每經過14個時鐘周期,將每個AES解密模塊的結果依次移位輸出。采用這種結構實現的AES解密算法雖然消耗了不少FPGA的內部資源,但數據無需等待,可以源源不斷地進入解密模塊,整個解密過程的速度僅僅取決于單個AES解密模塊的工作頻率與數據輸入的速率,使得系統的吞吐率大大提高。考慮到FPGA內部資源豐富,可以犧牲部分資源來換取速度。

  2.2.2 AES解密模塊的實現

004.jpg

  AES解密前,首先要進行密鑰擴展。密鑰擴展是將初始密鑰作為種子密鑰,經過字節代換、字節移位、輪常數計算、字節異或等過程,計算產生14輪迭代所需的輪密鑰。密鑰擴展實現框圖如圖4。有文獻提出計算密鑰時密鑰擴展和加密過程同步執行,這樣做會節約FPGA的存儲器資源。但考慮到密鑰不需要經常更換,而且FPGA存儲器資源豐富,有足夠的空間存放子密鑰,所以本文決定在解密前先進行密鑰擴展,然后將產生子密鑰存放在RAM中,根據使用需要從RAM中讀取密鑰。這種方法易于實現,且靈活性強,產生好的密鑰調度表在種子密鑰不變的情況下都可以供其他模塊使用。

  密鑰擴展完成后,就可以開始進行解密。256 bit的AES解密過程總共需要14輪,除最后一輪外每輪需要進行字節替換、逆行移位、輪密鑰加、逆列混淆等4個操作,最后一輪不需要進行輪密鑰加。其實現框圖如圖5所示。

005.jpg

  逆行移位(Inv_ShiftRow)采用簡單的組合邏輯即可實現;逆字節替換(Inv_SubBytes)利用FPGA內部的分布式RAM實現,將逆S_BOX的值預先存入到RAM中,在進行逆字節替換時,以字節的高4位和低4位作為地址即可讀出要替換的值,這樣既避免了復雜的組合邏輯,又提高了系統的運行頻率;輪密鑰加(AddKey)為簡單的異或運算;逆列混淆(Inv_MixCol)的實現采用了將復雜的GF28域乘法逐次分解為基礎的GF28域乘法的方法,使整個過程易于在FPGA中實現。

3 實驗結果


006.jpg


  本設計在Xilinx公司的XC7A200T-2芯片上進行驗證,圖6給出了系統的在Isim仿真環境下的仿真圖。

  輸入密文為16進制數8960494b9049fceabf456751cab-7a28e,密鑰為16進制數1f1e1d1c1b1a1918171615141312-

  11100f0e0d0c0b0a09080706050403020100,14個周期后輸出解密后的明文為16進制數ffeeddccbbaa998877665544-33221100。經驗證,該解密過程完全正確。

  在ISE13.6環境下代碼在綜合后頻率可達到236.9 MHz,由于采用串行緩存的方法,數據可以持續加密,無需等待上一個數據加密完。經計算理論吞吐量可以達到30.3 Gb/s,完全適用于各個應用場合的需要。

4 結論

  采用FPGA實現AES算法可以大幅度提高加密解密速度,并且具有開發周期短、易于實現的特點;采用本方法實現的AES算法雖然占用了較多的FPGA資源,但加密解密速度得到大大的提高,吞吐量可達到30.3 Gb/s,完全滿足現行生物識別技術的要求,能廣泛應用于虹膜識別技術及指紋識別技術等領域,應用前景廣闊。

  參考文獻

  [1] 趙洋.生物識別系統中的模板安全分析[J].中國安防,2012,3(3):99-104.

  [2] DANMEN J,RIIJMEN V.AES proposal:rijndael.AES algo-rithm submission.[EB/OL](1999-09-03)[2014-12-23].http://www.nist.gov/aes.

  [3] Clive Max Maxfield.FPGA設計指南:器件、工具和流程[M].北京:人民郵電出版社,2007.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲视频综合| 性欧美暴力猛交69hd| 亚洲婷婷免费| 亚洲国产日韩精品| 狠狠色狠狠色综合日日tαg| 国产美女精品免费电影| 欧美午夜不卡在线观看免费 | 免费观看日韩av| 久久久久www| 久久成人人人人精品欧| 欧美一区二区高清在线观看| 亚洲综合色视频| 国产精品99久久久久久久女警| 亚洲人午夜精品| 亚洲高清视频中文字幕| 亚洲电影免费在线| 亚洲国产视频a| 久久精品女人的天堂av| 久久国产毛片| 午夜性色一区二区三区免费视频 | 亚洲高清激情| 亚洲第一精品在线| 亚洲国产精品热久久| 亚洲高清视频在线| 亚洲黄网站黄| 亚洲精品中文字| 一本色道久久99精品综合| 亚洲激情欧美| 99国产精品久久久久久久| 一本久久青青| 亚洲女性裸体视频| 欧美中文在线免费| 久久视频在线视频| 欧美电影打屁股sp| 欧美久久久久久久久| 欧美亚一区二区| 国产精品一区视频网站| 欧美视频不卡中文| 国产精品入口| 国内精品模特av私拍在线观看| 一区免费观看视频| 亚洲激情第一区| 国产精品任我爽爆在线播放| 国产亚洲精品久久久久动| 国内成人精品一区| 亚洲国产欧美不卡在线观看| 亚洲精品麻豆| 亚洲深夜影院| 久久精品国产亚洲aⅴ| 亚洲国产成人不卡| 99国产精品99久久久久久粉嫩 | 欧美激情精品久久久| 欧美日韩一区在线| 国产日韩欧美三区| 伊人久久久大香线蕉综合直播| 亚洲国内高清视频| 亚洲在线一区二区三区| 久久国内精品视频| 在线视频精品一区| 欧美一区二区观看视频| 欧美成年人网| 国产精品国产精品国产专区不蜜| 国产亚洲亚洲| 亚洲美女av在线播放| 亚洲淫性视频| 亚洲国产黄色片| 国产日韩亚洲欧美精品| 在线观看亚洲一区| 中日韩男男gay无套 | 亚洲免费婷婷| 亚洲国产精品激情在线观看| 正在播放欧美一区| 久久综合九色九九| 国产精品久久久久久久久| 黑人中文字幕一区二区三区| 日韩一本二本av| 欧美在线在线| 亚洲欧美久久| 牛夜精品久久久久久久99黑人| 国产精品久久久久三级| 亚洲高清色综合| 亚洲你懂的在线视频| 一本色道精品久久一区二区三区| 欧美中文字幕视频在线观看| 欧美日韩国产另类不卡| 激情久久久久久久| 中文精品一区二区三区| 亚洲国产精品免费| 欧美在线观看网址综合| 欧美日本免费| 一区二区在线观看视频| 亚洲一区二区3| 亚洲精品中文在线| 久久精品中文| 国产精品伊人日日| 99成人在线| 日韩视频在线一区| 免费观看久久久4p| 国产日韩精品视频一区二区三区| 亚洲最新视频在线播放| 亚洲福利av| 欧美在线三级| 国产精品久久久一本精品| 国产一区二区精品久久| 亚洲人成绝费网站色www| 国产日韩亚洲欧美综合| 欧美日韩在线直播| 欧美日本免费一区二区三区| 欧美极品在线视频| 免费人成网站在线观看欧美高清| 欧美一区二区免费观在线| 亚洲欧美精品在线观看| 亚洲欧美文学| 午夜精品999| 一区二区在线免费观看| 性色av一区二区三区在线观看| 夜夜夜精品看看| 另类酷文…触手系列精品集v1小说| 国产精品日韩欧美大师| 日韩系列在线| 欧美一区二区国产| 欧美一级艳片视频免费观看| 欧美日韩中文| 99热在线精品观看| 一区二区电影免费在线观看| 欧美激情一区二区三区在线视频观看| 在线成人小视频| 久久精品亚洲乱码伦伦中文| 久久综合网络一区二区| 黄色成人91| 欧美专区日韩专区| 久久亚洲视频| 亚洲第一精品夜夜躁人人躁| 亚洲国产专区校园欧美| 免费观看成人| 亚洲精品一区二区在线观看| 一二三四社区欧美黄| 欧美日韩在线视频首页| 夜夜嗨一区二区三区| 亚洲欧美国产一区二区三区| 国产精品久久网站| 亚洲欧美日本伦理| 久久精品国产77777蜜臀| 国产午夜精品一区二区三区欧美| 久久精品国产视频| 免费在线欧美黄色| 亚洲精品影视| 亚洲自拍偷拍麻豆| 国产精品成人在线观看| 亚洲一区激情| 欧美亚洲综合另类| 激情av一区| 日韩视频一区二区在线观看| 免费在线观看日韩欧美| 亚洲免费大片| 亚洲欧美一区二区三区极速播放 | 麻豆成人精品| 最新国产精品拍自在线播放| 在线午夜精品| 欧美日韩免费高清| 亚洲免费在线看| 久久影院亚洲| 亚洲精选视频免费看| 欧美一级理论性理论a| 韩日在线一区| 一区二区日韩欧美| 国产精品自拍三区| 91久久极品少妇xxxxⅹ软件| 欧美激情一区二区三区在线视频观看| 一区二区电影免费观看| 欧美在线在线| 91久久黄色| 欧美与欧洲交xxxx免费观看 | 欧美一区二区高清| 一区二区亚洲精品国产| 一区二区三区色| 国产在线视频欧美一区二区三区| 亚洲精品日韩在线观看| 久久免费偷拍视频| 99v久久综合狠狠综合久久| 欧美一区高清| 亚洲欧洲在线看| avtt综合网| 欧美成人中文字幕| 中日韩午夜理伦电影免费| 久久久久久久综合| 99精品国产热久久91蜜凸| 久久国产天堂福利天堂| 亚洲精品视频免费在线观看| 香蕉久久夜色精品| 国产一区二区日韩精品欧美精品| 亚洲小视频在线观看| 免费看的黄色欧美网站| 亚洲欧美99| 欧美精彩视频一区二区三区| 亚洲免费视频在线观看| 欧美激情综合色综合啪啪| 欧美一区二区三区成人| 欧美日韩中国免费专区在线看| 亚洲第一精品夜夜躁人人躁|