簡易檢索 / 詳目顯示

研究生: 林茂元
Lin Mao Yuan
論文名稱: FPGA設計32-bits及128-bits AES演算法使用Block RAM
指導教授: 黃奇武
Huang, Chi-Wu
張吉正
Chang, Chi-Jeng
學位類別: 碩士
Master
系所名稱: 電機工程學系
Department of Electrical Engineering
論文出版年: 2007
畢業學年度: 95
語文別: 中文
論文頁數: 62
中文關鍵詞: 高級加密標準現場可規劃邏輯閘陣列
英文關鍵詞: AES, FPGA
論文種類: 學術論文
相關次數: 點閱:192下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 高級加密標準Advanced Encryption Standard (AES)演算法為一種對稱式加密系統的新標準,於西元2001年10月由美國國家標準與技術學會NIST(National Institute of Standards and Technology)選定Rijndael區塊加密演算法定名之,目的以用來取代資料加密標準DES (Data Encryption Standard)演算法。
    本篇論文中,利用HDL (Hardware Description Language)語言,針對FPGA架構及特性,實現32-bit AES演算法電路,並將其中SubByte、MixColumn,ShiftRow及KeyExpansion進行Memory Base設計,簡少FPGA上的Slices使用,因此大幅提昇電路執行的整體運作時脈。並且利用4個32-bits AES電路為基礎,並列實現128-bits的AES電路。透過此研究可以提供在FPGA上小面積、Memory Base及較高頻率與Throughput之AES電路。

    謝 致 I 摘要 II 英文摘要 III 總目錄 IV 表目錄 VI 圖目錄 VII 第一章 緒論 1 第二章 研究背景、動機與文獻探討 3 2.1 研究背景 3 2.2 研究動機 4 2.3 文獻探討 5 2.3.1 Very small FPGA application-specific instruction processor for AES 5 2.3.2 Compact and efficient encryption/decryption module for FPGA implementation of the AES Rijndael very well suited for small embedded applications 8 2.3.3 A High-throughput area efficient FPGA implementation of AES-128 Encryption 10 2.3.4 Reconfigurable memory based AES co-processor 11 第三章 AES 演算法介紹 13 3.1 Rijndael 13 3.2 數學理論 15 3.2.1 GF(28)的定義 15 3.2.2 GF(28)加法 15 3.2.3 GF(28)乘法 15 3.2.4 GF(28)乘以x 16 3.3 AES加解密演算法 16 3.4 SubBytes 函數 19 3.5 ShiftRows函數 22 3.6 MixColumn轉換 23 3.7 AddRoundKey函數 24 3.8 Key Expansion函數 25 第四章 32-bits AES硬體電路設計 28 4.1 Xilinx Dual-Port Block Memory 設計方法 28 4.2 SubBytes與Inv_SubBytes 電路設計 30 4.3 ShiftRows與Inv_ShiftRows 電路設計 32 4.4 MixColumn與Inv_MixColumn 電路設計 33 4.5 KeyExpansion 電路設計 36 4.6 32-bits AES電路設計結果 39 4.6.1 KeyExpasion電路合成資訊與電路模擬 40 4.6.2 32-bits AES SubBytes電路模擬 42 4.6.3 32-bits AES ShiftRows電路模擬 43 4.6.4 32-bits AES MixColumns電路模擬 44 4.6.5 32-bits AES電路合成 45 4.6.6 32-bits AES電路比較 46 4.7 32-bits AES基礎,並列實現128-bits AES電路設計 47 4.7.1 128-bits AES電路 ShiftRows設計 48 4.7.2 128-bits AES電路合成結果 49 4.7.3 128-bits AES電路比較結果 50 第五章 結論與未來展望 51 參考文獻 52 表目錄 表3.1 AES演算法運算回合 14 表3.2 Sbox列表 20 表3.3 InvSbox列表 21 表4.1 32-bits AES電路結果與Chodowiec及Rouvroy比較表 46 表4.2 ShiftRows/InvShiftRow表示 48 表4.2 128-bits AES設計結果與Chaves、Helion、CAST及Jhing比較 50 圖目錄 圖2.1 Tim Good’s ASIP Architecture 6 圖2.2 Tim Good’s ASIP Processor Instrustion Set 6 圖2.3 ASIP使用資源分配圖 7 圖2.4 ASIP指令集 7 圖2.5 Rouvroy, G設計之AES架構圖 9 圖2.6 Rouvroy, G設計之AES key schedule 10 圖2.7 Andreas Brokalakis設計之AES架構圖 11 圖2.8 Andreas Brokalakis使用Dual-Port Memory 11 圖2.9 Ricardo設計之AES partial Encryption and decryption round 12 圖2.10 Ricardo設計之AES Polymorphic Processor 12 圖3.1 秘密金鑰密碼系統 13 圖3.2 State Array 15 圖3.3 AES加解密演算法流程圖 17 圖3.4 AES區塊加密之金鑰流程圖 19 圖3.5 Affine轉換運算 20 圖3.6﹛63﹜矩陣的形式表示式 20 圖3.7 SubByte替換動作表示 21 圖3.8 ShiftRow位移動作 22 圖3.9 InvShiftRow位移動作 22 圖3.10 MixColumn轉換表示 23 圖3.11 AddRound Key 動作表示圖 25 圖3.12 Key Expansion運算範例列表 27 圖4.1 Core Schematic Symbol 29 圖4.2 Dual-Port Memory方塊圖 29 圖4.3 Sbox/InvSbox使用Dual-Port Memory 31 圖4.4 ShiftRows與InvShiftRows 電路設計圖 33 圖4.5 MixColumn/InvMixColumn circuit realization 36 圖4.6 KeyExpansion using one 4 32bit BRAM 38 圖4.7 32-bits AES完整電路方塊圖 39 圖4.8 NIST提供測試數值表 40 圖4.9 Keyin輸入模擬 40 圖4.10 KeyExpansion產生之值 40 圖4.11 KeyExpansion 合成資訊檔 41 圖4.12 KeyExpansion Schematic 41 圖4.13 NIST SubByte測試數據 42 圖4.14 SubByte電路模擬 42 圖4.15 NIST ShiftRow測試數據 43 圖4.16 ShiftRow電路模擬 43 圖4.17 NIST MixColumn測試數據 44 圖4.18 MixColumn電路模擬 44 圖4.19 32-bits AES電路合成資訊檔 45 圖4.20 32-bits AES Schematic 45 圖4.21 128-bits AES電路架構圖 47 圖4.22 128-bits AES電路之ShiftRows設計 48 圖4.23 128-bits AES電路合成資訊 49 圖4.24 128-bits AES Schematic 49

    [1] NIST. Announcing the advanced encryption standard(AES), FIPS 197. Technical report, National Institute of Standards and Technology, November 2001.
    [2] Tim Good, Mohammed Benaissa, "Very small FPGA application-specific instruction processor for AES", IEEE Trans. Circuit and System,vol. 53, no. 7, 2006.
    [3] G. Rouvroy, F.-X. Standaert, J.-J. Quisquater, J.-D. Legat,“Compact and efficient encryption/decryption module for FPGA implementation of the AES Rijndael very well suited for small embedded applications”,Information Technology Coding and Computing, 2004. Proceedings. ITCC 2004, Volume 2, Page(s):583 - 587 Vol.2, 2004.
    [4] Brokalakis, A.; Kakarountas, A.P.; Goutis, C.E.;A high-throughput area efficient FPGA implementation of AES-128 Encryption;Signal Processing Systems Design and Implementation, 2005. IEEE Workshop on 2-4 Nov. 2005 Page(s):116 - 121
    [5] Ricardo Chaves, Georgi Kuzmanov, Stamatis Vassiliadis, Leonel Sousa,"Reconfigurable Memory Based AES Co-Processor", IPDPS 2006. 20th International Parallel and Distributed Processing Symposium, Page(s):8 pp, April 2006.
    [6] Pawel Chodowiec, Kris Gaj,“Very Compact FPGA Implementation of the AES Algorithm”, CHES 2003, LNCS 2779, pp. 319–333, 2003.
    [7] CAST. AES128-P Programmable Advanced Encryption Standard Core. http://http://www.castinc.com/,2005.
    [8] Helion. High Performance AES (Rijndael) cores for Xilinx FPGA. http://www.heliontech.com/, 2005.
    [9] Ricardo Chaves, Georgi Kuzmanov, Stamatis Vassiliadis, Leonel Sousa,"Reconfigurable Memory Based AES Co-Processor", IPDPS 2006. 20th International Parallel and Distributed Processing Symposium, Page(s):8 pp, April 2006.
    [10]X. Zhang and K. K. Parhi, "High-speed VLSI architectures for the AES algorithm," IEEE Trans. Very Large Scale Integr. (VLSI) Syst., vol. 12, no. 9, pp. 957-967, Sep. 2004.
    [11]A. Satoh, S. Morioka, K. Takano, and S. Munetoh, "A Compact Rijndael Hardware ArchitectureWith S-Box Optimization," in Proc. LNCS ASIACRYPT'01, vol. 2248, pp. 239-254, Dec. 2001.
    [12]Alireza Hodjat, Ingrid Verbauwhede,"Minimum Area Cost for a 30 to 70 Gbits/s AES Processor", IEEE Computer society Annual Symposium on VLSI, 2004. Proceedings., Page(s):83 - 88, Feb. 2004.
    [13]Ricardo Chaves, Georgi Kuzmanov, Stamatis Vassiliadis, Leonel Sousa,"Reconfigurable Memory Based AES Co-Processor", IPDPS 2006. 20th International Parallel and Distributed Processing Symposium, Page(s):8 pp, April
    [14]J.-F. Wang, S.-W. Chang, P.-C. Lin, and C. Kung.A novel round function architecture for AES encryption/decryption utilizing look-up table. In IEEE 37th Annual 2003 International Carnahan Conference on Security Technology, pages 132- 136, October 2003.
    [15]E. R. Berlekamp, “Bit-serial Reed–Solomon encoders,” IEEE Trans. Inform.Theory, vol. IT-28, pp. 869–874, Nov. 1982.
    [16]B. Benjauthrit and I. S. Reed, “Galois switching functions and their applications,”IEEE Trans. Comput., vol. C-25, pp. 78–86, Jan. 1976.
    [17]T. ElGamal, “A public key cryptosystem and a signature scheme basedon discrete logarithms,” IEEE Trans. Inform. Theory, vol. IT-31, pp. 469–472, July 1985.
    [18]A. J. Menezes, Elliptic Curve Public Key Cryptosystems. Norwell,MA: Kluwer, 1993.
    [5]J. Daemen, L. R. Knudsen, and V. Rijmen, “The block cipher square,”in Fast Software Encryption. ser. 1267 in LNCS, E. Biham, Ed. NewYork: Springer-Verlag, 1997, pp. 149–165.
    [6]C. C.Wang, T. K. Truong, H. M. Shao, L. J. Deutsch, J. K. Omura, and I.S. Reed, “VLSI architectures for computing multiplications and inversesGF(2 ),” IEEE Trans. Comput., vol. C-34, pp. 709–717, Aug. 1985.

    無法下載圖示 電子全文延後公開
    2099/12/31
    QR CODE