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

        ?

        淺析AES加密算法

        2009-07-16 09:33:54
        新媒體研究 2009年8期
        關(guān)鍵詞:軟件設(shè)計(jì)加密算法背景

        甘 佺

        [摘要]當(dāng)代主流加密算法AES的研究背景,算法簡介和具體實(shí)現(xiàn)方法,包括對AES標(biāo)準(zhǔn)中運(yùn)行時(shí)間過長的函數(shù)進(jìn)行優(yōu)化,和WINDOWS下AES軟件開發(fā)的簡介。

        [關(guān)鍵詞]AES 加密算法 背景 算法實(shí)現(xiàn) 程序優(yōu)化 軟件設(shè)計(jì)

        中圖分類號:TP3文獻(xiàn)標(biāo)識碼:A文章編號:1671-7597(2009)0420066-01

        一、當(dāng)代加密算法AES

        (一)AES算法簡介

        AES的全稱是Advanced Encryption Standard,即高級加密標(biāo)準(zhǔn)。2000年10月,NIST(美國國家標(biāo)準(zhǔn)和技術(shù)協(xié)會(huì))宣布通過從15種候選算法中選出的一項(xiàng)新的密匙加密標(biāo)準(zhǔn)。Rijndael被選中成為將來的AES。Rijnda

        -el是在1999年下半年,由研究員Joan Daemen和Vincent Rijmen創(chuàng)建的。AES正日益成為加密各種形式的電子數(shù)據(jù)的實(shí)際標(biāo)準(zhǔn)。

        高級加密標(biāo)準(zhǔn)(AES)是美國標(biāo)準(zhǔn)與技術(shù)研究院針對電子數(shù)據(jù)的加密所制定的規(guī)范,它將要成為公認(rèn)的數(shù)字信息(包括財(cái)務(wù)數(shù)據(jù)、電信數(shù)據(jù)和政府?dāng)?shù)據(jù))加密方法。AES是一種可用來保護(hù)電子數(shù)據(jù)的新型加密算法??梢允褂?28、192和256位密鑰的迭代式對稱密鑰塊密碼,并且可以對128位(16個(gè)字節(jié))的數(shù)據(jù)塊進(jìn)行加密和解密。

        (二)AES在現(xiàn)實(shí)中的應(yīng)用

        AES算法標(biāo)準(zhǔn)給出了數(shù)學(xué)說明以及部分程序偽碼,但是程序運(yùn)行效率較低,無法達(dá)到實(shí)際應(yīng)用要求。同時(shí)改進(jìn)后的程序普遍涉及到版權(quán)問題,無法在實(shí)際開發(fā)中直接使用。盡管如此在程序人員對AES程序進(jìn)行自主改進(jìn)后,AES作為新一代的數(shù)據(jù)加密標(biāo)準(zhǔn)的優(yōu)點(diǎn),強(qiáng)安全性、高性能、高效率、易用和靈活等優(yōu)點(diǎn)就完全體現(xiàn)出來,因此AES加密算法成為美國乃至世界新的數(shù)據(jù)加密標(biāo)準(zhǔn)而被廣泛應(yīng)用在各個(gè)領(lǐng)域。

        二、AES加密算法的實(shí)現(xiàn)

        (一)系統(tǒng)結(jié)構(gòu)

        系統(tǒng)結(jié)構(gòu)的文字描述:AES加密算法包括加密和解密2大部分,加密部分具體實(shí)現(xiàn)對數(shù)據(jù)的加密和參數(shù)文件的生成,解密部分具體實(shí)現(xiàn)對已加密文件的解密和參數(shù)文件的刪除,具體實(shí)現(xiàn)過程較為復(fù)雜,在AES的標(biāo)準(zhǔn)式樣書中可以查看具體實(shí)現(xiàn)文檔,由于篇幅原因本文只詳細(xì)介紹在實(shí)現(xiàn)中應(yīng)用AES加密算法最重要的優(yōu)化部分。

        (二)AES加密算法的優(yōu)化

        優(yōu)化原因:按照AES算法的理論設(shè)計(jì)的,在實(shí)際的應(yīng)用中運(yùn)行速度慢,加密10M的文件需要幾十秒的時(shí)間,無法達(dá)到實(shí)際應(yīng)用的要求。所以需要針對標(biāo)準(zhǔn)算法進(jìn)行優(yōu)化。

        優(yōu)化方法:1.將所有的乘除運(yùn)算轉(zhuǎn)換為位運(yùn)算,例如,A*16可以轉(zhuǎn)換為將A左移4位。這種方法根據(jù)客戶的測試的結(jié)論,可以提高50%的運(yùn)行速度。2.修改加密的算法的邏輯,將其中最耗時(shí)的MixColumns函數(shù)改進(jìn)。具體的方法是簡化MixColumns函數(shù)中進(jìn)行的矩陣運(yùn)算。把矩陣運(yùn)算先計(jì)算出來,以數(shù)組方式直接在頭文件中定義,在運(yùn)算時(shí)直接使用這個(gè)數(shù)組。同時(shí),為使用預(yù)先計(jì)算的數(shù)組,需要將四個(gè)函數(shù)的算法統(tǒng)一編寫,形成新的程序結(jié)構(gòu)。

        MixColumns函數(shù)代碼如下:

        void MixColumns(word8 a[4][MAXBC])

        /*Mix the four bytes of every column in a linear way*/

        word8 b[4][MAXBC];

        int i,j;

        for(j=0;j

        for(i=0;i<4;i++)

        b[i][j] = mul(2,a[i][j])

        ^ mul(3,a[(i+1) % 4][j])

        ^ a[(i+2) % 4][j]

        ^ a[(i+3) % 4][j];

        for(i=0;i<4;i++)

        for(j=0;j

        a[i][j] = b[i][j];

        }

        此代碼運(yùn)行時(shí)間過長,先將此矩陣結(jié)果算出后能大大縮短程序運(yùn)行時(shí)間,改進(jìn)后代碼由于篇幅過長無法詳細(xì)列舉。

        (三)基于WINDOWS操作系統(tǒng)的AES加密軟件設(shè)計(jì)

        1.開發(fā)環(huán)境。參數(shù)文件生成程序:運(yùn)行環(huán)境為Windows XP操作系統(tǒng)。使用MSC開發(fā),可以使用MFC,程序要求可以在未安裝VC++的系統(tǒng)中運(yùn)行。解密程序:運(yùn)行環(huán)境為Cygwin。使用ANSI C開發(fā),使用GCC編譯。

        2.參數(shù)文件的定義

        AES加密算法中的參數(shù)文件使用文本形式,主要包含內(nèi)容有:

        (1)密鑰長度:AES提供128、192和256三種密鑰長度可任意選擇。

        (2)密鑰生成方式:有DEFAULT、FILE或INPUT三種方式生成密鑰,DEFAULT表示默認(rèn)方法,F(xiàn)ILE表示通過哈希算法生成密鑰,INPUT表示通過用戶自己輸入密鑰。

        (3)保存密鑰:密鑰生成后保存在參數(shù)文件中。(如果是FILE方式生成密鑰則保存密鑰路徑)。

        (4)輸入路徑:待加密文件路徑。

        (5)輸出路徑:加密后文件輸出路徑。

        3.詳細(xì)式樣設(shè)計(jì)

        (1)加密部分:加密部分主要包含、密鑰生成、密鑰長度選擇、參數(shù)文件生成路徑、輸出和輸入路徑等等。

        ①密鑰長度指定,可以建立一個(gè)下拉菜單,設(shè)置128、192和256三種選項(xiàng)。②密鑰生成:有三項(xiàng)選擇具體為默認(rèn)密鑰生成;用哈希算法產(chǎn)生的密鑰文件作為密鑰;用戶隨機(jī)輸入密鑰。③輸出輸入路徑設(shè)置:輸入路徑為待加密文件路徑,輸出路徑為文件加密后生成的加密文件保存路徑,可以設(shè)置默認(rèn)項(xiàng),也可以由用戶自己設(shè)置。④參數(shù)文件指定:生成參數(shù)文件的保存路徑。

        (2)解密部分:解密部分包含密鑰輸入、參數(shù)文件調(diào)用、待解密文件輸入、解密文件輸出等。

        ①密鑰輸入可以選擇默認(rèn)密鑰和用戶自己輸入加密時(shí)密鑰,還可以放棄輸入密鑰直接調(diào)用參數(shù)文件。②參數(shù)文件調(diào)用:調(diào)用和待解密文件相匹配的參數(shù)文件,參數(shù)文件包含通過哈希算法計(jì)算出來的密鑰,待解密文件路徑等。③路徑選擇:包括待解密文件路徑(如果不輸入路徑可以直接輸入文件名);輸出路徑為文件解密完成后的輸出

        路徑。④解密完成后參數(shù)文件會(huì)被刪除。

        三、結(jié)論

        AES加密算法已經(jīng)在現(xiàn)實(shí)中得到了廣泛的應(yīng)用,學(xué)習(xí)AES加密算法的編程能讓你更加了解當(dāng)代加密算法的具體形式與邏輯,正是因?yàn)锳ES加密算法這樣的為保護(hù)信息安全軟件的產(chǎn)生才能讓IT技術(shù)更加健康的向前發(fā)展,在電子交易,寬帶通信,信息傳輸?shù)鹊确矫娑加蠥ES加密算法的影子,本文已較小的篇幅從幾個(gè)方面簡單地分析了AES加密算法,介紹了AES在WINDOWS下的軟件編寫和詳細(xì)的式樣分析,從幾個(gè)方面簡單的分析了AES加密算法。

        猜你喜歡
        軟件設(shè)計(jì)加密算法背景
        “新四化”背景下汽車NVH的發(fā)展趨勢
        《論持久戰(zhàn)》的寫作背景
        晚清外語翻譯人才培養(yǎng)的背景
        基于STC單片機(jī)的廚房智能安全管控系統(tǒng)的設(shè)計(jì)
        基于STM8S903K3的序列打螺絲夾具的軟件設(shè)計(jì)
        JCI標(biāo)準(zhǔn)下發(fā)送調(diào)配部軟件設(shè)計(jì)及應(yīng)用
        一種VHDL語言代碼重用的方法
        科技視界(2016年20期)2016-09-29 13:33:02
        基于小波變換和混沌映射的圖像加密算法
        Hill加密算法的改進(jìn)
        對稱加密算法RC5的架構(gòu)設(shè)計(jì)與電路實(shí)現(xiàn)
        可以免费在线看黄的网站| 最新无码国产在线播放| 亚洲欧美在线视频| 青青草成人免费播放视频| 开心五月激动心情五月| 国产亚洲精品熟女国产成人| 久久99天堂av亚洲av| 国产日韩厂亚洲字幕中文| 亚洲小说区图片区色综合网| 国产亚洲精品资源在线26u| 国产在线91观看免费观看| 国产一区二区在线观看视频免费| 操老熟妇老女人一区二区| 午夜视频一区二区在线观看| 国产精品日韩av一区二区三区| 亚洲国产美女高潮久久久| 天堂网在线最新版www| 亚洲综合一区二区三区四区五区| 五月丁香六月综合激情在线观看| 亚洲AⅤ男人的天堂在线观看| 高清av一区二区三区在线| 青青草视频在线观看网| 色综合久久88色综合天天| 全球av集中精品导航福利| 欧美z0zo人禽交欧美人禽交| 热re99久久精品国产66热6| 男女后入式在线观看视频| 中文国产乱码在线人妻一区二区| 免费日本一区二区三区视频 | 国产精品日韩经典中文字幕| 国产精品无码一本二本三本色| 国产午夜精品一区二区三区不| 亚洲精品2区在线观看| 久久精品国产亚洲av网在| 亚洲国产精品无码aaa片| 亚洲国产成人久久一区www| 国产在线91观看免费观看| 中文字幕亚洲视频三区| 国产日韩欧美一区二区东京热| 欧美性猛交xxxx乱大交丰满| 淫妇日韩中文字幕在线|