亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        針對AES加密算法的研究及其FPGA實現(xiàn)

        2013-01-31 05:23:48顧美康孫凱民
        電視技術(shù) 2013年17期
        關(guān)鍵詞:狀態(tài)機字節(jié)密鑰

        王 亮,顧美康,孫凱民

        (上海師范大學 通信與信息系統(tǒng)學院,上海200234)

        在信息化高速發(fā)展的時代,網(wǎng)絡不僅給人們的生活帶來了諸多便利,也推動了航天、軍事,商務領域的不斷進步。因此,信息安全尤其是在數(shù)據(jù)存儲和傳輸方面的數(shù)據(jù)安全尤為重要。數(shù)據(jù)加密技術(shù)在數(shù)據(jù)安全中起著至關(guān)重要的作用,它保護敏感信息免受來自外界的惡意攻擊,使數(shù)據(jù)不被篡改、盜?。?]。

        國際上現(xiàn)行的數(shù)據(jù)加密標準是AES加密標準,又稱Rijndael算法,它取代了DES和3DES,成為21世紀保護信息安全的新一代加密標準[2-3],并在各個領域得到廣泛應用,如智能存儲卡、高性能的數(shù)據(jù)服務器、無限網(wǎng)絡傳感器等。

        本文針對AES加密算法進行了研究,通過分析其算法結(jié)構(gòu)和加密原理,采用Nios II CPU的SOPC集成實現(xiàn)方式,基于FPGA設計出了具有加密和解密功能的、密鑰可配置的、資源利用和吞吐量都十分理想的SOPC加密系統(tǒng)。

        1 Rijndael算法的簡要概述

        AES是一個迭代的對稱分組密碼[4]。它需要一個128 bit的數(shù)據(jù)塊作為輸入,并執(zhí)行在此分組內(nèi)的輪變換。AES-Rijndael的算法是在“狀態(tài)”中進行的。

        狀態(tài)是一個兩維的字節(jié)數(shù)組,由4行Nb列組成,其中,Nb是除以32的分組長度。在AES算法中,所有字節(jié)表示為有限域GF(28)上的元素,使用多項式來表示。在有限域上的數(shù)學運算與那些有數(shù)學字符表示的運算不同。通過一個模2(一個XOR操作)實現(xiàn)兩個多項式的相加。相對應的,有限域元素上的減法也是如此。

        此外,在GF(28)上的乘法是一個8次冪的多項式乘法。AES算法指定一個不可約多項式,沒有簡單的操作可以在字節(jié)級上實現(xiàn)乘法。算法的輪數(shù)依賴于密鑰的大小和分組的大小,由表1所示。所產(chǎn)生的輪數(shù)(Nr)由以下公式所得:Nr=(密鑰長度(位))/32+6。在設計中,建議使用128 bit的密鑰和密碼的大小,因此,需要10個回合[5]。

        表1 密鑰和分組大小

        1.1 整體結(jié)構(gòu)

        AES算法的整體結(jié)構(gòu)如圖1所示。解密結(jié)構(gòu)與加密結(jié)構(gòu)具有完全相同的變換序列結(jié)構(gòu)。此功能可以更有效地實施聯(lián)合加密/解密。

        在標準的AES算法中,有4個步驟,即字節(jié)代換、行移位變換列、列混合變換及密鑰加法[6]。

        1)字節(jié)代換是一個非線性的字節(jié)取代變換獨立的作用于的每一個字節(jié),用替換表(S盒)來實現(xiàn),其中S盒是可逆的。

        2)移行變換作用于狀態(tài)的最后三行中的字節(jié)進行字節(jié)循環(huán)移位,每一行的偏移量不同。第一行不移位。

        3)列混合變換混合加密列上的狀態(tài),在每列中使用線性變換,結(jié)合行位移變換。

        圖1 AES算法的整體結(jié)構(gòu)

        4)密鑰加法把每個字節(jié)的狀態(tài)與每一輪的密鑰相結(jié)合,每個循環(huán)密鑰來自密鑰編排。

        2 AES加密系統(tǒng)FPGA設計與實現(xiàn)

        2.1 系統(tǒng)架構(gòu)

        本設計通過在FPGA中嵌入微控制處理單元Nios II來實現(xiàn)對整個系統(tǒng)的控制,定制了32位Nios II CPU軟核,并將定制的軟核連接到Avalon總線上,與此同時,將Jtag Uart、SDRAM Controller、PIO等必要的外設和CPU一起集成在芯片上,使系統(tǒng)的規(guī)模得到簡化,實現(xiàn)了On Chip System,得到了一個可靠安全、高效并且可靈活配置的實時加解密系統(tǒng)。本設計的SOPC系統(tǒng)架構(gòu)如圖2所示。

        圖2 SOPC系統(tǒng)框架圖

        2.2 自定義AES IP Core的設計

        本系統(tǒng)根據(jù)AES加密算法的輪變換步驟確定AES IP Core的設計過程,把AES IP Core作為頂層,根據(jù)功能劃分子模塊:字節(jié)代換模塊(SubBytes)、行移變換模塊(ShiftRows)、列混合變換模塊(MixColumns)、密鑰加模塊(AddKey)、密鑰擴展模塊(KeyExpansion)、多路復用模塊(AddKeyMux)和有限狀態(tài)機模塊(Fine State Machine)。其中,有限狀態(tài)機模塊和多路復用模塊為輪變換控制模塊。IP Core設計模塊結(jié)構(gòu)如圖3所示。

        圖3 IP Core設計模塊結(jié)構(gòu)圖

        其中控制信號有:時鐘信號(Clk)、復位信號(Reset)、使能信號(Enable)、功能片選信號(CS)、中斷信號(IRQ)和狀態(tài)信號(State)。其根據(jù)輸入和輸出位寬又可劃分為:

        輸入(位寬):Aavlon總線時鐘信號Clk(1);同步復位信號Reset(1);寫數(shù)據(jù)總線Writedata(32);地址信號Address(5)能表示32個地址;寫使能信號Write(1);讀使能信號Read(1)。

        輸出(位寬):讀數(shù)據(jù)總線Readdata(32);等待信號Writequest(1);中斷信號Irq(1)。

        Nios II嵌入式系統(tǒng)中將Avalon總線的寬度設定為32位(128/4),則一個時鐘周期內(nèi)輸入數(shù)據(jù)端口能傳輸32位分組數(shù)據(jù),對于數(shù)據(jù)長度和密鑰長度較長的配置,完成一組數(shù)據(jù)的加密和解密過程就需要多個時鐘周期,為此,本設計通過接口的地址空間映射、密鑰擴展模塊和有限狀態(tài)機模塊的設計很好地解決了這個問題。

        2.3 有限狀態(tài)機的設計

        有限狀態(tài)機模塊的設計是整個系統(tǒng)中十分重要且較為復雜的部分,它控制著每一輪的加解密操作,IP Core加解密模塊會先對密鑰進行初始化操作,并通過密鑰擴展模塊產(chǎn)生每一輪變換所必須的密鑰,最后和數(shù)據(jù)分組一起傳輸?shù)接邢逘顟B(tài)機完成加解密過程,其狀態(tài)描述如圖4所示。

        圖4 AES IP Core加/解密狀態(tài)機

        如圖4所示,狀態(tài)機先等待初始化以后的密鑰和數(shù)據(jù),如果密鑰有效并且數(shù)據(jù)也穩(wěn)定,進入第一輪輪變換的操作,接著進入輪循環(huán)狀態(tài),等進行到最后一輪時又進入到最后一輪開始狀態(tài),接著指示操作完成。因為AES算法在第一輪中需要做控制密鑰的預變換,而最后一輪不進行列混合變換操作,所以分別列出了第一輪開始和最后一輪開始兩個狀態(tài)來對其輪變換做特殊處理。

        3 系統(tǒng)仿真和性能分析

        3.1 系統(tǒng)仿真

        本設計采用Modelsim仿真工具對系統(tǒng)進行仿真,包括功能仿真和時序仿真兩部分,對于128 bit數(shù)據(jù)長度的明文(密文),配置3種密鑰長度128 bit、192 bit、256 bit。其中128 bit數(shù)據(jù)長度/128 bit密鑰加解密功能仿真圖如圖5、圖6所示。

        圖5 128 bit數(shù)據(jù)長度/128 bit密鑰加密功能仿真圖(截圖)

        由圖5和圖6所示,把128 bit明文和128 bit密鑰作為輸入,經(jīng)過加密功能得到密文,將這個密文作為解密系統(tǒng)的輸入,輸出結(jié)果和明文一致,充分驗證了功能的準確性。

        圖6 128 bit數(shù)據(jù)長度/128 bit密鑰解密功能仿真圖(截圖)

        3.2 性能分析

        系統(tǒng)編譯后性能評估總結(jié)如圖7所示,系統(tǒng)占用的LE(邏輯單元)的數(shù)量為6 661個,占總邏輯單元的10%,內(nèi)存使用量僅為166 784 bit,系統(tǒng)的最大穩(wěn)定頻率為127.29 MHz,滿足時序要求。

        圖7 AES加密系統(tǒng)性能評估圖(截圖)

        為了評估本設計在FPGA硬件設計上的優(yōu)劣,與以往做同類AES加密系統(tǒng)的設計者所設計的系統(tǒng)做橫向?qū)Ρ龋绫?所示。

        通過比較可以看出[7-10],對于使用不同器件并且不同設計者所設計的AES加密系統(tǒng)而言,本設計比那些使用資源相近的設計吞吐量高,而對比與吞吐量較高的設計所用的資源十分稀少,在吞吐量和資源占用量方面達到了很好的平衡。

        4 總結(jié)

        針對AES算法進行了系統(tǒng)設計,用自定義組件的方式,對軟硬件做出合理的劃分,縮小了高級語言和機器指令的差距,實現(xiàn)了復雜的AES指令。通過Modelsim仿真工具成功得到了合理的結(jié)果,通過和其他設計者的設計對比,體現(xiàn)了本設計在速度和資源利用上的優(yōu)勢。

        表2 AES設計性能比較表

        [1]馮登國,裴定一.密碼學導引[M].北京:科學出版社,2001.

        [2]Advanced Encryption Standard(AES)[EB/OL].[2012-12-30].http://csrc.nist.gov/pualications/fips/fips197/fips-197.pdf.

        [3]Data Encryption Standard(DES)[EB/OL].[2012-12-30].http://csrc.nist.gov/pualications/fips/fips46-3/fips46-3.pdf.

        [4]胡冠章.應用近世代數(shù)[M].北京:清華大學出版社,1999.

        [5]龍冬陽,王常吉,吳丹.應用編碼與計算機密碼學[M].北京:清華大學出版社,2005.

        [6]胡予濮,張玉清,肖國鎮(zhèn).對稱密碼學[M].北京:機械工業(yè)出版社,2002.

        [7]VERAAUWHEDE I,SCHAUMONT P,KUO H.Design and performance testing of a 2.29 ga/s Rijndael processor[J].IEEE Journal of Solid-State Circuits,2003,38(3):569-572.

        [8]MUKHOPADHYAY D,ROYCHOWDHURY D.An efficient end to end design of Rijndael crypto system in 0.18μm CMOS[C]//Proc.18th International Conference on VLSI Design.[S.l.]:IEEE Press,2005:405-410.

        [9]MORIOKA S,SATOH A.K 10-gaps full-KES crypto design with K twisted ADD s-aox architecture[J].IEEE Trans.Very Large Scale Integration(VLSI)Systems,2004,12(7):686-691.

        [10]MATHEW S K,SHEIKH F,KOUNAVIS M,et al.53 gaps native GF((24)2)composite-field KES-encrypt/decrypt accelerator for content-protection in 45 nm high-performance microprocessors[J].IEEE Journal of Solid-State Circuits,2011,46(4):767-776.

        猜你喜歡
        狀態(tài)機字節(jié)密鑰
        探索企業(yè)創(chuàng)新密鑰
        No.8 字節(jié)跳動將推出獨立出口電商APP
        密碼系統(tǒng)中密鑰的狀態(tài)與保護*
        基于有限狀態(tài)機的交會對接飛行任務規(guī)劃方法
        No.10 “字節(jié)跳動手機”要來了?
        一種對稱密鑰的密鑰管理方法及系統(tǒng)
        簡談MC7字節(jié)碼
        基于ECC的智能家居密鑰管理機制的實現(xiàn)
        電信科學(2017年6期)2017-07-01 15:45:06
        FPGA設計中狀態(tài)機安全性研究
        黑龍江科學(2011年2期)2011-03-14 00:39:36
        基于反熔絲FPGA的有限狀態(tài)機加固設計
        芒果乱码国色天香| 亚洲国产一区二区av| 亚洲精品国产成人久久av| 国产在线精彩自拍视频| 国产精品无套一区二区久久| 亚洲加勒比久久88色综合| 香港三级精品三级在线专区| 久久99精品久久久久久久清纯| 久久国产av在线观看| 好看的日韩精品视频在线| 欧美精品亚洲精品日韩专区| 亚洲精品你懂的在线观看| 男人的天堂av一二三区| 一区二区在线视频免费蜜桃| 久热国产vs视频在线观看| 国产欧美日产久久| 一区二区三区国产偷拍| 国产自拍偷拍精品视频在线观看| 99亚洲男女激情在线观看| 亚洲欧洲国产日产国码无码| 人妻系列少妇极品熟妇| 亚洲gay片在线gv网站| 夜夜欢性恔免费视频| 亚洲嫩草影院久久精品| 日韩精品一区二区亚洲观看av| 亚洲乱亚洲乱妇无码麻豆| 亚洲精品无码高潮喷水在线| 最新国产精品精品视频| 国产精品高清视亚洲乱码| 久久精品免费观看国产| 色www亚洲| 亚洲av熟女少妇一区二区三区| 少妇粉嫩小泬喷水视频| 国产精品国产三级农村妇女| 成年男人午夜视频在线看| 免费a级毛片18禁网站免费| 人人玩人人添人人澡| 国产亚洲曝欧美不卡精品| 干日本少妇一区二区三区| 88久久精品无码一区二区毛片| 久久露脸国产精品WWW|