亚洲免费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无吗国产精品| 开心激情视频亚洲老熟女| 又粗又黄又猛又爽大片app| aaaaa级少妇高潮大片免费看| 2021精品综合久久久久| 亚洲av天堂一区二区| 国产日韩欧美一区二区东京热| 亚洲春色在线视频| 国产福利免费看| 九一成人AV无码一区二区三区| 国产理论亚洲天堂av| 亚洲一区二区三区尿失禁| 中文字幕一区二区三区精华液| 国产国拍亚洲精品福利| 亚洲精品美女中文字幕久久| 无码人妻精品一区二区三区夜夜嗨| 性色av 一区二区三区| 红杏性无码免费专区| 日日高潮夜夜爽高清视频| 亚洲av无码专区亚洲av网站| 精品国产成人亚洲午夜福利| 国产精品亚洲婷婷99久久精品| 九九久久精品国产免费av| 国产精品乱码一区二区三区 | 国产成年女人毛片80s网站| 精品乱码一区二区三区四区| 男女上床视频在线观看| 久久成人永久婷婷99精品| 亚洲日韩在线中文字幕综合| 精品性高朝久久久久久久| 人人妻人人澡av| 美女被男人插得高潮的网站| 天堂资源中文最新版在线一区| 亚洲日本va99在线| 亚洲中文字幕综合网站| 国产三级精品三级| 亚洲熟妇20|