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

        ?

        基于FPGA的加密算法改進(jìn)及實(shí)現(xiàn)

        2014-11-20 08:18:14郭婷婷
        電視技術(shù) 2014年5期
        關(guān)鍵詞:加密算法解密密鑰

        武 一,郭婷婷

        (河北工業(yè)大學(xué)信息工程學(xué)院,天津300401)

        隨著專(zhuān)用虛擬網(wǎng)絡(luò)的快速發(fā)展,人們對(duì)于通信加密的要求也隨之增高。為解決這一問(wèn)題,通常采用數(shù)據(jù)加密標(biāo)準(zhǔn)(Data Encryption Standard,DES)和高級(jí)加密標(biāo)準(zhǔn)(Advanced Encryption Standard,AES)來(lái)提高信息系統(tǒng)及數(shù)據(jù)的安全性和保密性。目前研究表明,一些ASIC(專(zhuān)用集成電路)和FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)器件可成功實(shí)現(xiàn)DES和AES的多種硬件加密。其中,一部分研究側(cè)重于使用循環(huán)結(jié)構(gòu)來(lái)減小芯片的資源占用,另一部分則側(cè)重于使用流水線結(jié)構(gòu)來(lái)提高吞吐率。對(duì)于DES和AES加密算法來(lái)說(shuō),要想達(dá)到一個(gè)高的吞吐率,在每一輪運(yùn)算中嵌入流水線寄存器是必要的[1]。然而,沒(méi)有相關(guān)的權(quán)衡,一味地嵌入流水線將增加邏輯運(yùn)算復(fù)雜度和硬件占用面積。因此,硬件資源的共享和復(fù)用以及邏輯門(mén)的壓縮是產(chǎn)生一個(gè)加密電路所不可缺少的條件。

        1 數(shù)據(jù)加密

        為了保護(hù)私有信息不被非法竊取,數(shù)據(jù)加密技術(shù)應(yīng)運(yùn)而生。數(shù)據(jù)加密技術(shù)采用相關(guān)的加密算法對(duì)數(shù)據(jù)進(jìn)行屏蔽,使其成為不可讀的代碼,只有指定的用戶(hù)或場(chǎng)合才能解除屏蔽而獲得數(shù)據(jù)。在實(shí)際應(yīng)用中,DES和AES加密算法被普遍用來(lái)實(shí)現(xiàn)敏感的金融數(shù)據(jù)、政府信息和私人交易的加密[2]。

        數(shù)據(jù)加密的實(shí)現(xiàn)方式通常分為軟件實(shí)現(xiàn)和硬件實(shí)現(xiàn)兩種。軟件實(shí)現(xiàn)方式在主機(jī)上運(yùn)行加密軟件,占用主機(jī)資源、處理速度慢、抗攻擊能力差[3]。而硬件實(shí)現(xiàn)方式,基于FPGA或ASIC器件的加密設(shè)計(jì)很難被非法攻破。因此,從本質(zhì)上說(shuō),硬件加密具有更高的物理安全性。另外,硬件加密獨(dú)立于主機(jī)實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)和運(yùn)算,資源占用少,滿(mǎn)足更高的實(shí)時(shí)性要求。

        傳統(tǒng)硬件實(shí)現(xiàn)主要采用ASIC,設(shè)計(jì)成本高、系統(tǒng)擴(kuò)展性差。FPGA器件以其硬件的安全性和高速性以及軟件的靈活性和易維護(hù)性,成為研究和實(shí)現(xiàn)加密算法的理想硬件平臺(tái)。采用FPGA實(shí)現(xiàn)的加解密系統(tǒng)可在保證加解密性能的同時(shí)提供更好的可擴(kuò)展性和通用性[4]。

        文獻(xiàn)[1-3]介紹了DES加密算法的FPGA實(shí)現(xiàn)。這些研究中所設(shè)計(jì)的結(jié)構(gòu)能夠達(dá)到Gbit/s級(jí)的吞吐率。其中最高的吞吐率可達(dá)到6 Gbit/s[2]。文獻(xiàn)[4-6]描述了AES算法的FPGA實(shí)現(xiàn)。文獻(xiàn)[4]中提出了提高吞吐率的可能性方案(不超過(guò)1 Gbit/s),文獻(xiàn)[5]中已經(jīng)能達(dá)到7 Gbit/s的吞吐率。但這些研究工作都集中在吞吐率方面,沒(méi)有權(quán)衡相關(guān)的芯片資源占用。

        因此,本文采用資源優(yōu)先的設(shè)計(jì)方案,在一片F(xiàn)PGA芯片上設(shè)計(jì)實(shí)現(xiàn)了DES、AES加解密系統(tǒng)。通過(guò)分別對(duì)系統(tǒng)的輪函數(shù)及S盒進(jìn)行優(yōu)化設(shè)計(jì),實(shí)現(xiàn)系統(tǒng)的高速率、低占用。

        2 系統(tǒng)設(shè)計(jì)

        2.1 DES加密系統(tǒng)設(shè)計(jì)

        DES加密系統(tǒng)中,輸入的64位明文經(jīng)初始置換后,數(shù)據(jù)移位,明文塊被分成左右兩部分,各32位。其中左半部分依賴(lài)循環(huán)密鑰進(jìn)行邏輯運(yùn)算,右半部分不變,然后交換左右兩部分,并將此過(guò)程循環(huán)進(jìn)行16次。這個(gè)過(guò)程既包含替代又包含移位,數(shù)據(jù)和密鑰在這一階段被結(jié)合在一起。DES加密流程如圖1所示。

        數(shù)據(jù)的安全性取決于密鑰的安全性設(shè)置。每一輪運(yùn)算的關(guān)鍵是初始密鑰的字節(jié)變換和由內(nèi)部密鑰產(chǎn)生器執(zhí)行的左移操作[5]。

        內(nèi)部子密鑰產(chǎn)生器對(duì)輸入的64位的外部密鑰K進(jìn)行奇偶校驗(yàn),剔除奇偶校驗(yàn)位,再經(jīng)置換得到56位有效密鑰,將得到的密鑰分成兩部分,每部分28位,分別輸入到28位的寄存器C0、D0中。

        圖1 加密系統(tǒng)流程圖

        在內(nèi)部子密鑰產(chǎn)生器中,除寄存器(C0,D0)外,還有16 對(duì)寄存器,即(C1,D1),(C2,D2),…,(C16,D16)。C 和 D中的內(nèi)容分別向左移動(dòng)1至2位便可得到加密時(shí)的內(nèi)容,這種移位方式是按循環(huán)移位寄存器方式進(jìn)行的。在16輪左移操作中,第1、2、9、16輪密鑰位數(shù)只左移1位,其余輪密鑰左移2位,共計(jì)向左移動(dòng)了28位,這樣就保證了C16=C0,D16=D0,即(C16,D16)的內(nèi)容和(C0,D0)完全相同。

        合并寄存器C1和D1中存儲(chǔ)的28位數(shù)據(jù),形成56位密鑰,并依據(jù)壓縮置換確定48位的內(nèi)部子密鑰K。如圖2所示。

        圖2 子密鑰產(chǎn)生框圖

        加密過(guò)程中要實(shí)現(xiàn)16輪的變換,才能得到最終密文。若輪函數(shù)采用硬件級(jí)聯(lián)的實(shí)現(xiàn)方式,可得到較快的處理速度,但每個(gè)時(shí)鐘周期都要將數(shù)據(jù)存入寄存器,要占用很大的資源空間[6]。

        考慮到FPGA的硬件資源有限,本設(shè)計(jì)提出重復(fù)調(diào)用一份輪函數(shù)的硬件拷貝,即僅用硬件實(shí)現(xiàn)一套密鑰變換和密鑰加數(shù)據(jù)運(yùn)算輪函數(shù),通過(guò)反復(fù)16次調(diào)用這一硬件結(jié)構(gòu)來(lái)實(shí)現(xiàn)1次DES加密運(yùn)算。以時(shí)間換空間,達(dá)到硬件資源占用的最小化[7]。同時(shí),為了兼顧芯片的處理速度,在輪函數(shù)內(nèi)部設(shè)置一級(jí)流水線來(lái)提高整體處理的速度。

        在硬件上實(shí)現(xiàn)密鑰變換函數(shù)和密鑰加數(shù)據(jù)輪函數(shù)的同步流水線架構(gòu),減少了相鄰流水線級(jí)間的邏輯復(fù)雜度[8]。通過(guò)設(shè)置輪計(jì)數(shù)器對(duì)所進(jìn)行的輪運(yùn)算計(jì)數(shù),控制數(shù)據(jù)選擇器,從而實(shí)現(xiàn)輪函數(shù)復(fù)用。圖3為輪函數(shù)硬件結(jié)構(gòu)電路圖。

        2.2 AES加密系統(tǒng)設(shè)計(jì)

        AES-128加密算法需要運(yùn)行10輪,在每一輪運(yùn)算中,字節(jié)變換是唯一的非線性變換。次變換使用S盒來(lái)獨(dú)立操作狀態(tài)矩陣中的每個(gè)字節(jié)。

        設(shè)計(jì)一個(gè)合適的S盒能夠很大程度上減少AES硬件電路的復(fù)雜度和運(yùn)算量[9]。目前大多采用基于復(fù)合域變換的S盒實(shí)現(xiàn)方法。

        具體操作是將域GF(28)上的元素取逆同構(gòu)線性變換為在GF(24)的取逆。GF(24)上的乘法取逆所消耗的資源相對(duì)較少,可降低資源消耗。不足是增大了硬件設(shè)計(jì)的復(fù)雜性和實(shí)現(xiàn)的時(shí)延[10]。

        為避免執(zhí)行同構(gòu)變換,本設(shè)計(jì)的S盒在GF(24)2上取乘法逆,原S盒的仿射函數(shù)不變。具體選擇GF(2)[x]上不可約的三項(xiàng)式x4+x+1定義GF(24)上的乘法,選擇子GF(24)上的二次不可約多項(xiàng)式x2+x+8定義GF(24)2上的乘法。然后對(duì)所定義的域GF(24)2乘法取逆,并且與AES算法S盒的仿射函數(shù)相復(fù)合生成新的S盒。

        圖3 輪函數(shù)硬件結(jié)構(gòu)電路圖

        實(shí)現(xiàn)過(guò)程如下:

        1)設(shè)AES算法S盒的仿射函數(shù)是z=A×t+0x63,則z=t⊕(t<<1)⊕(t<<2)⊕(t<<3)⊕(t<<4)⊕0x63。

        2)輸入:8 bit向量 y=(y7,y6,…,y0)。

        輸出:8 bit向量 z=(z7,z6,…,z0)。

        令 b=(y7,…,y0),c=(y3,y2,…,y0),將 y=(b,c)看作是域GF(24)2的元素bx+c,取逆:(bx+c)-1=b(b28+bc+c2)-1x+(c+b)(b28+bc+c2)-1;(b28+bc+c2)-1可通過(guò)查表完成。

        3)設(shè)乘法取逆的結(jié)果是dx+e,將之用向量表示為t=(t7,t6,…,t0),再計(jì)算:z=t⊕(t<<1)⊕(t<<2)⊕(t<<3)⊕(t<<4)⊕0x63,并輸出結(jié)果z=(z7,z6,…,z0)。

        經(jīng)變形后的S盒仍滿(mǎn)足AES加密算法提出的設(shè)計(jì)要求,且由于不執(zhí)行同構(gòu)變換,邏輯電路門(mén)數(shù)減少,更易設(shè)計(jì)和實(shí)現(xiàn)。

        在加解密系統(tǒng)中,解密過(guò)程是加密過(guò)程的逆過(guò)程,每一輪包括逆字節(jié)變換ISB,逆行位移運(yùn)算ISR,和逆列混合運(yùn)算IMC。在首輪運(yùn)算開(kāi)始之前,包括一次輪密鑰加運(yùn)算ARK,而最后一輪不包括逆列混合運(yùn)算IMC。加密和解密過(guò)程往往由兩個(gè)電路分開(kāi)實(shí)現(xiàn),這導(dǎo)致硬件資源損耗過(guò)大,且不利于加密和解密的同步優(yōu)化[11]。

        為了彌補(bǔ)這兩個(gè)不足,在設(shè)計(jì)中,解密模塊將分別調(diào)用加密模塊的電路結(jié)構(gòu),利用加密硬件資源的復(fù)用完成解密工作,減少硬件資源損耗[12]。另外,解密時(shí)先執(zhí)行非線性字節(jié)變換,有利于加解密的同步優(yōu)化。

        實(shí)現(xiàn)過(guò)程如下:解密時(shí),首先進(jìn)行數(shù)組矩陣的逆仿射變換,然后調(diào)用加密電路的字節(jié)變換部分,得到逆字節(jié)變換的輸出。輸出結(jié)果執(zhí)行逆行位移運(yùn)算的右移操作。右移后的矩陣乘以系數(shù)矩陣(0E,0B,0D,09),并調(diào)用列混合模塊的電路結(jié)構(gòu)完成逆列混合運(yùn)算。

        加密過(guò)程中,輪密鑰key0~key9由AES算法的密鑰擴(kuò)展基于原始密鑰計(jì)算產(chǎn)生。解密過(guò)程中,輪密鑰加運(yùn)算依次取輪密鑰key9~key0,除去首輪和最后一輪,從RAM中取出的輪密鑰需要先經(jīng)進(jìn)行逆列混合運(yùn)算[13]。加解密流程如圖4所示。

        3 FPGA電路仿真實(shí)驗(yàn)結(jié)果

        本設(shè)計(jì)采用FPGA開(kāi)發(fā)平臺(tái)、Cyclone II系列芯片對(duì)加解密系統(tǒng)進(jìn)行測(cè)試與驗(yàn)證。系統(tǒng)主要包括數(shù)據(jù)輸入、密鑰輸入和狀態(tài)控制信號(hào)線,具有統(tǒng)一的外部時(shí)鐘控制[14]。

        3.1 DES 加密的實(shí)現(xiàn)

        在加密測(cè)試文件中:

        desin:000000000000000

        圖4 AES加/解密系統(tǒng)

        key:0000000000000000

        expout:8ca64de9c1b123a7

        加密后:

        desout:8ca64de9c1b123a7

        由仿真圖(如圖5)可知:經(jīng)16個(gè)時(shí)鐘周期后,加密得到的最終輸出desout與理論值相同,證明加密成功。

        圖5 DES加密仿真波形圖(截圖)

        3.2 AES 加密的實(shí)現(xiàn)

        在加密測(cè)試文件中:

        key:00000000000000000000000000000000

        plain:f34481ec3cc627bacd5dc3fb08f273e6

        ciph:0336763e966d92595a567cc9ce537f5e

        加密后:

        test_out:0336763e966d92595a567cc9ce537f5e

        同步解密后:

        test_out2:f34481ec3cc627bacd5dc3fb08f273e6

        由仿真圖(如圖6)可知:最終得到的密文與理論值相同,證明加密成功。同步解密后,還原了最初的明文,解密成功。

        圖6 AES加密仿真波形圖(截圖)

        4 結(jié)果分析

        結(jié)果表明:DES系統(tǒng)的實(shí)現(xiàn)僅占用了629個(gè)LE,不到整個(gè)硬件資源的6%,處理速度為3.08 Gbit/s。

        AES系統(tǒng)的實(shí)現(xiàn)占用了1 128個(gè)LE,占整個(gè)硬件資源的8%,處理速度達(dá)到了7.04 Gbit/s。

        表1給出了本設(shè)計(jì)的具體實(shí)驗(yàn)結(jié)果。

        表1 實(shí)驗(yàn)結(jié)果

        表2為本設(shè)計(jì)與一些同類(lèi)設(shè)計(jì)的比較結(jié)果。

        表2 本設(shè)計(jì)與一些同類(lèi)設(shè)計(jì)的比較結(jié)果

        由表1可知,在DES加密系統(tǒng)的設(shè)計(jì)中,對(duì)比文獻(xiàn)[1-3],文獻(xiàn)[2]中采用EP1S10芯片實(shí)現(xiàn)DES的硬件加密,占用了4 362個(gè)LE,加密速率為6 Gbit/s,是3個(gè)方案中相對(duì)最好的。而本設(shè)計(jì)選用EP2C35系列芯片,采用改進(jìn)的方法后,硬件資源占用629個(gè)LE,約為文獻(xiàn)[2]的0.144倍,且加密速度為3.08 Gbit/s,總體性能大大提高。

        在 AES加密系統(tǒng)設(shè)計(jì)中,文獻(xiàn)[5]采用 2塊XC2V3000芯片實(shí)現(xiàn)AES的硬件加密,占用了4 817個(gè)LE,加密速度為7.12 Gbit/s,與文獻(xiàn)[4]和文獻(xiàn)[6]相比,文獻(xiàn)[5]性能相對(duì)最佳。而本設(shè)計(jì)的實(shí)現(xiàn)設(shè)備采用EP2C35系列芯片,硬件資源占用了1 128個(gè)LE,約為文獻(xiàn)[5]的0.234 倍,加密速度為7.04 Gbit/s,與文獻(xiàn)[5]基本持平。

        5 總結(jié)

        本設(shè)計(jì)實(shí)現(xiàn)了一個(gè)高性能的DES和AES硬件加密系統(tǒng)。實(shí)驗(yàn)證明此系統(tǒng)能夠節(jié)省90%的硬件存儲(chǔ)資源,同時(shí)具有相同的抗攻擊能力來(lái)保證新一代的IT安全。本設(shè)計(jì)與其他同類(lèi)設(shè)計(jì)的比較結(jié)果顯示,本設(shè)計(jì)可提供較高的吞吐率,并且在硬件資源方面具有明顯的優(yōu)勢(shì),資源占用率遠(yuǎn)低于其他的設(shè)計(jì),實(shí)現(xiàn)了資源優(yōu)先的設(shè)計(jì)目的。

        本設(shè)計(jì)在整體性能方面(吞吐率/面積)具有明顯的優(yōu)越性,使用FPGA來(lái)實(shí)現(xiàn)加密算法將具有良好的發(fā)展前景。

        [1]姚霽,劉建華,范九倫.一種密鑰可配置的DES加密算法的FPGA實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2009,35(7):145-148.

        [2]張峰,鄭春來(lái),耶曉東.DES加密算法的FPGA實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2008,31(7):80-82.

        [3] MCLOONEM,MCCANNY JV.High-performance FPGA implementation of DESusing a novel method for implementing the key schedule[J].IEEE Proc.Circuits Devices Syst.,2003,150(5):373-378.

        [4]徐柏權(quán),王昭順.基于AES算法的FPGA高速實(shí)現(xiàn)[J].信息與電腦,2009(7):98-99.

        [5]周微微.DES算法的跨平臺(tái)研究與實(shí)現(xiàn)[J].中國(guó)高新技術(shù)企業(yè),2010(21):30-31.

        [6]周建欽,何凌云.DES加密算法的密鑰擴(kuò)展[J].科技通報(bào),2011(2):263-267.

        [7]劉明珍.密碼技術(shù)DES和RSA的比較與應(yīng)用[J].煤炭技術(shù),2011(6):176-177.

        [8] YANGXianwen,LIZheng,WANGAn,etal.Design research of the DES against power analysis attacks based on FPGA[J].Microprocessors and Microsystems,2011(35):18-22.

        [9]馮妮,張會(huì)新,盧一男,等.嵌入式AES加密存儲(chǔ)器的硬件實(shí)現(xiàn)[J].電視技術(shù),2013,37(3):59-61.

        [10]胡春燕,易波.基于AES加密算法的S盒優(yōu)化設(shè)計(jì)[J].微計(jì)算機(jī)信息,2012,10(28):358-360.

        [11] JOSM,GRANADO C,MIGUEL A.A new methodology to implement the AES algorithm using partial and dynamic reconfiguration[J].the VLSI journal of Integration,2010(43):72-80.

        [12]劉維杰.基于FPGA的AES加密設(shè)計(jì)[D].太原:中北大學(xué),2012.

        [13]楊曉非,趙婷.基于AES算法改進(jìn)的藍(lán)牙安全機(jī)制研究[J].電視技術(shù),2013,37(5):106-109.

        [14]唐明,張煥國(guó),劉樹(shù)波,等.AES的高性能硬件設(shè)計(jì)與研究[J].計(jì)算機(jī)工程,2006,32(8):257-259.

        猜你喜歡
        加密算法解密密鑰
        探索企業(yè)創(chuàng)新密鑰
        解密“熱脹冷縮”
        解密“一包三改”
        密碼系統(tǒng)中密鑰的狀態(tài)與保護(hù)*
        炫詞解密
        一種對(duì)稱(chēng)密鑰的密鑰管理方法及系統(tǒng)
        基于ECC的智能家居密鑰管理機(jī)制的實(shí)現(xiàn)
        基于小波變換和混沌映射的圖像加密算法
        Hill加密算法的改進(jìn)
        解密“大調(diào)解”
        国产AV无码专区久久精品网站| 国产黄色一区二区在线看| 亚洲女优中文字幕在线观看| 久久久精品一区aaa片| 成人无码区免费a片www| 亚洲无AV码一区二区三区| 开心五月激动心情五月| 99re66在线观看精品免费| 亚洲熟女乱色综合亚洲av| 国产成人精选在线不卡| 男女男在线精品免费观看| 一本色道久久综合亚洲| 国产成人av一区二区三区| 亚洲地址一地址二地址三| 国产免费人成网站在线播放| 青青草高中生在线视频| 成人区人妻精品一区二区不卡网站| 中文字幕喷水一区二区| 日韩人妻系列在线视频| 亚洲高清一区二区三区在线播放| 激情内射日本一区二区三区| 伊人99re| 国产精品又黄又爽又色| 国语自产视频在线| 大香伊蕉国产av| 四虎影视国产884a精品亚洲| 手机av在线播放网站| 欧美大屁股xxxx高潮喷水| 最近中文字幕视频高清| 亚洲va成无码人在线观看| 女同啪啪免费网站www| 女优av福利在线观看| 中文字幕一区二区精品视频| 高潮迭起av乳颜射后入| 亚洲一区二区三区av链接| 亚洲中文高清乱码av中文| 人妻少妇精品久久久久久| 吃奶还摸下面动态图gif| 国产免费人成视频在线观看播放| 亚洲av无吗国产精品| 国产99视频精品免视看7|