999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于AES加密算法的消息系統(tǒng)設(shè)計(jì)

2009-02-11 10:02:34
新媒體研究 2009年1期
關(guān)鍵詞:網(wǎng)絡(luò)安全

沈 俊

[摘要]AES是一種對(duì)稱(chēng)分組密碼算法,它是廣泛應(yīng)用的新標(biāo)準(zhǔn)。首先介紹AES加密算法的基本操作和流程。隨后討論AES加密算法的實(shí)現(xiàn)。最后,闡述一個(gè)基于AES加密算法的消息系統(tǒng)的設(shè)計(jì)方案。

[關(guān)鍵詞]AES加密 消息系統(tǒng) 網(wǎng)絡(luò)安全

中圖分類(lèi)號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-7597(2009)0110052-02

一、引言

美國(guó)國(guó)家標(biāo)準(zhǔn)技術(shù)協(xié)會(huì)(NIST)在2001年發(fā)布了高級(jí)加密標(biāo)準(zhǔn)(AES)。AES是一種對(duì)稱(chēng)分組密碼算法,用以取代DES的商業(yè)應(yīng)用,從而成為廣泛使用的新標(biāo)準(zhǔn)。其分組長(zhǎng)度為128位,密鑰長(zhǎng)度為128位,192位或256位,其中128位的密鑰長(zhǎng)度最常用。以下各節(jié)介紹了一個(gè)基于AES加密算法的消息系統(tǒng)的設(shè)計(jì)。

二、AES加密算法簡(jiǎn)介

AES加密算法1、2中128位密鑰是最常用的,故以128位密鑰為例介紹。AES加密算法有四種基本的操作:

1.字節(jié)代換:用一個(gè)S盒完成分組中的按字節(jié)代換。

2.行移位:一個(gè)簡(jiǎn)單的基于行的置換。

3.列混淆:一個(gè)利用在域GF(28)上算術(shù)特性的代換。

4.輪密鑰加:用當(dāng)前分組和擴(kuò)展密鑰的一部分進(jìn)行按位異或。

AES加密、解密算法的流程如圖1所示:

圖1中,輸入的密鑰將被擴(kuò)展成由44個(gè)32位字組成的數(shù)組W[i],在每輪加解密過(guò)程中有四個(gè)字(128位)的密鑰。

AES加密算法的詳細(xì)內(nèi)容請(qǐng)參考文獻(xiàn)[1]。

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

AES加密算法中,S盒的初始化和列混淆變換都要用到有限域GF(28)上的運(yùn)算乘法和加法。因此先闡述有限域GF(28)上運(yùn)算的實(shí)現(xiàn),再介紹AES加密算法的實(shí)現(xiàn)。

(一)有限域GF(28)上運(yùn)算實(shí)現(xiàn)

一個(gè)專(zhuān)門(mén)的GF2NOP_1B類(lèi)被用來(lái)進(jìn)行一字節(jié)(8位)的加法、乘法和循環(huán)左右移位運(yùn)算,類(lèi)的主要方法在AES加密算法中會(huì)被調(diào)用。

1.加法

GF(28)上的加法實(shí)際上就是按位異或運(yùn)算。代碼如下:

GF2NOP_1B GF2NOP_1B::operator+(ubyte ubV)//typedef unsigned

char ubyte;

{

GF2NOP_1B gfR;

gfR = this->ubValue ^ ubV; //XOR

return gfR;

}

2.乘法

乘法要稍微復(fù)雜一些,不能只用簡(jiǎn)單的異或運(yùn)算。但是可以使用一種合理而容易實(shí)現(xiàn)的技巧,原理請(qǐng)見(jiàn)參考文獻(xiàn)[2],這里只給出實(shí)現(xiàn):

GF2NOP_1B GF2NOP_1B::operator * (ubyte ubV)

{

GF2NOP_1B gfR = 0;

ubyte ubMulN = ubV;

ubyte ubMN = (ubyte)iMODNUM_8; //iMODNUM_8 = 00011011b

ubyte ubTmp;

int i;

for (i = 0; ubMulN; ubMulN >>= 1, i++) {

if (i == 0)

ubTmp = this->ubValue;

else {

if (ubTmp &0x80) {

ubTmp <<= 1;

ubTmp ^= ubMN;

}

else

ubTmp <<= 1;

}

if (ubMulN & 1) {

gfR = gfR + ubTmp;

}

}

return gfR;

}

代碼中還有一個(gè)類(lèi)GF2NOP_4B是實(shí)現(xiàn)有限域GF(28)上4字節(jié)的運(yùn)算,使得AES算法在32位機(jī)上用32位字操作會(huì)更緊湊更高效。

(二)AES加解密算法及實(shí)現(xiàn)

一個(gè)AESCrypt類(lèi)被用來(lái)實(shí)現(xiàn)AES加解密,其主要方法有:密鑰擴(kuò)展、輪密鑰加、字節(jié)代換、行移位、列混淆。其中,字節(jié)代換是用查表法實(shí)現(xiàn)的,列混淆是矩陣的乘法實(shí)現(xiàn)的,其它幾個(gè)方法也比較容易實(shí)現(xiàn)。

圖1所示AES加密算法和解密算法不同,采取兩處改進(jìn)[2]可以使解密算法的結(jié)構(gòu)和加密算法的結(jié)構(gòu)一致。分別是,在解密輪中,交換逆向行移位和逆向字節(jié)代換,交換輪密鑰加和逆向列混淆。

逆向行移位影響字節(jié)的順序,但不更改字節(jié)的內(nèi)容,也不依賴(lài)字節(jié)的內(nèi)容來(lái)進(jìn)行它的變換。逆向字節(jié)代換影響字節(jié)的內(nèi)容,但不更改字節(jié)的順序同時(shí)也不依賴(lài)字節(jié)的順序來(lái)進(jìn)行它的變換。因此,這兩個(gè)操作可以交換。如對(duì)一個(gè)給定的State Si:

逆向行移位[逆向字節(jié)代換(Si)]=逆向字節(jié)代換[逆向行移位(Si)] (1)

類(lèi)似的第二處改進(jìn)也可以用一個(gè)算式表示,即對(duì)給定的State Si和給定的輪密鑰wj:

InvMixColumns(Si^wj)= [InvMixColumns(Si)]^[InvMixColumns(wj)] (2)

其中“^”符號(hào)表示異或,上式的證明見(jiàn)文獻(xiàn)[2]。至此,加、解密的輪函數(shù)已經(jīng)統(tǒng)一起來(lái)了,輪函數(shù)的C++聲明如下:

int AESCrypt::RoundFun(int iRound, int iEDFlag);

參數(shù)iRound是輪數(shù),加密時(shí)是1到10,解密時(shí)是9到0;iEDFlag是加、解密標(biāo)志,真值為解密。輪函數(shù)的UML[3]活動(dòng)圖如圖2所示:

圖2清楚地描繪了AES加、解密算法的輪函數(shù),圖中最后一個(gè)分支處當(dāng)解密并且iRound!=0時(shí)有三步操作:ExpandKey[iRound]列逆混淆、輪密鑰加、ExpandKey[iRound]列混淆。第一、二步與前面的States[iRound]列逆混淆完成了上述式(2)等號(hào)右邊的運(yùn)算,而第三步則是為了還原ExpandKey[iRo

und]。

四、消息系統(tǒng)的設(shè)計(jì)

這里設(shè)計(jì)的消息系統(tǒng)是C/S結(jié)構(gòu)的,客戶端通過(guò)服務(wù)器與另一個(gè)客戶端聯(lián)系。服務(wù)器端的主要功能是:接受管理客戶端的連接請(qǐng)求,存儲(chǔ)轉(zhuǎn)發(fā)客戶端的消息。其UML構(gòu)件圖如圖3。

TCP/IP接口構(gòu)件是對(duì)Socket API的封裝,為上層構(gòu)件提供接口;數(shù)據(jù)庫(kù)接口構(gòu)件是對(duì)數(shù)據(jù)庫(kù)訪問(wèn)操作的封裝,為上層構(gòu)件提供接口??蛻舳诉B接請(qǐng)求到達(dá)時(shí),經(jīng)由AES加解密構(gòu)件解密后由連接管理構(gòu)件管理,并反饋以密鑰生成構(gòu)件隨機(jī)生成的密鑰;當(dāng)有消息到達(dá)時(shí),AES加解密構(gòu)件對(duì)其解密后,由消息處理構(gòu)件進(jìn)行處理,由消息存檔構(gòu)件存入數(shù)據(jù)庫(kù),并由消息分發(fā)構(gòu)件向連接管理構(gòu)件查詢目標(biāo)地址后交由TCP/IP接口構(gòu)件發(fā)送。

客戶端程序比較簡(jiǎn)單,主要的流程如圖4的UML活動(dòng)圖。

圖4中請(qǐng)求連接時(shí)的請(qǐng)求數(shù)據(jù)是用默認(rèn)密鑰進(jìn)行加密的,服務(wù)器響應(yīng)后會(huì)返回新密鑰,以后的會(huì)話都使用新密鑰進(jìn)

行。監(jiān)聽(tīng)和等待發(fā)送是由兩個(gè)線程同時(shí)執(zhí)行的。這兩個(gè)線程一般都是在等待睡眠中,所以CPU占用率很低。

五、結(jié)束語(yǔ)

以上由介紹AES加密算法開(kāi)始闡述了一個(gè)基于AES加密算法的消息系統(tǒng)的設(shè)計(jì)。這里介紹的這個(gè)系統(tǒng)是一個(gè)初步的雛形,尚只在局域網(wǎng)內(nèi)應(yīng)用。此系統(tǒng)存在的缺陷是用默認(rèn)的AES密鑰加密來(lái)傳輸AES新密鑰,很容易被黑客破解。為了使系統(tǒng)更安全,下一步的工作是將AES密鑰用RSA算法加密后再傳輸。

參考文獻(xiàn):

[1]Deamen,j.and Rijmen,V.“Rijndael: The Advanced Encryption Standard.”Dr.Dobb's Journal, March 2001.

[2]孟慶樹(shù)、王麗娜、傅建明等譯,William Stallings.密碼編碼學(xué)與網(wǎng)絡(luò)安全:原理與實(shí)踐[M].第四版.北京:電子工業(yè)出版社,2006:66-125.

[3]李洋、鄭龑等譯,Larman,C.UML和模式應(yīng)用[M].第三版.北京:機(jī)械工業(yè)出版社,2006.

作者簡(jiǎn)介:

沈俊,男,浙江省湖州人,同濟(jì)大學(xué)碩士研究生,主要從事網(wǎng)絡(luò)化測(cè)試平臺(tái)通信安全的研究。

猜你喜歡
網(wǎng)絡(luò)安全
網(wǎng)絡(luò)安全(上)
網(wǎng)絡(luò)安全知多少?
新量子通信線路保障網(wǎng)絡(luò)安全
網(wǎng)絡(luò)安全
網(wǎng)絡(luò)安全人才培養(yǎng)應(yīng)“實(shí)戰(zhàn)化”
上網(wǎng)時(shí)如何注意網(wǎng)絡(luò)安全?
網(wǎng)絡(luò)安全與執(zhí)法專(zhuān)業(yè)人才培養(yǎng)探索與思考
設(shè)立網(wǎng)絡(luò)安全專(zhuān)項(xiàng)基金 促進(jìn)人才培養(yǎng)
網(wǎng)絡(luò)安全監(jiān)測(cè)數(shù)據(jù)分析——2015年11月
打造信息網(wǎng)絡(luò)安全的銅墻鐵壁
主站蜘蛛池模板: 国产精品成人久久| 欧美一区二区人人喊爽| 亚洲婷婷在线视频| 久久99精品久久久大学生| jizz国产视频| 99久久国产综合精品2020| 国产一级在线播放| 亚洲天堂日本| 国产成人一区在线播放| 欧美在线网| 国产另类乱子伦精品免费女| 最新无码专区超级碰碰碰| 成年人久久黄色网站| 国国产a国产片免费麻豆| 国产三级精品三级在线观看| 91在线一9|永久视频在线| 亚洲精品不卡午夜精品| 在线日韩日本国产亚洲| 国产欧美中文字幕| 亚洲天堂在线免费| 在线精品亚洲国产| 国产99视频在线| 亚洲高清资源| 国产精品亚洲一区二区三区在线观看| 亚洲中文字幕av无码区| 91精品国产自产在线老师啪l| 欧美日韩成人| 欧美 亚洲 日韩 国产| 久久男人资源站| 亚洲人成在线精品| 亚洲欧美日韩综合二区三区| 国产在线91在线电影| 精品日韩亚洲欧美高清a| 国产JIZzJIzz视频全部免费| 国产在线第二页| 成人精品午夜福利在线播放| 91无码网站| 亚洲v日韩v欧美在线观看| 久久久精品无码一区二区三区| 国产三级毛片| 亚洲综合专区| 国产亚洲一区二区三区在线| 国产成人精品一区二区不卡 | 久久这里只精品热免费99| 久久香蕉国产线看观看精品蕉| 米奇精品一区二区三区| 色精品视频| 9丨情侣偷在线精品国产| 深爱婷婷激情网| 人妻无码AⅤ中文字| 久久亚洲精少妇毛片午夜无码| 91区国产福利在线观看午夜 | 成年免费在线观看| 亚洲制服丝袜第一页| 99国产精品国产| 欧美va亚洲va香蕉在线| 国产美女精品在线| 91九色视频网| 97一区二区在线播放| 欧美一区二区福利视频| 丝袜美女被出水视频一区| 亚洲综合网在线观看| 亚洲天堂网2014| 精品国产Av电影无码久久久| 精品成人一区二区三区电影| 国产男女XX00免费观看| 青青青国产视频| 99视频精品在线观看| 国产精品成人免费综合| 无码精品国产dvd在线观看9久| 免费高清a毛片| 国产欧美日韩免费| 亚洲欧美另类中文字幕| 中文字幕 日韩 欧美| 67194亚洲无码| 国产精品制服| 伊人国产无码高清视频| 中文成人无码国产亚洲| 欧美区一区二区三| 中文字幕在线日韩91| 亚洲日本韩在线观看| 亚洲伊人电影|