基于AES算法實(shí)現(xiàn)對(duì)數(shù)據(jù)的加密
MixColumns是一個(gè)代替操作,它用State字節(jié)列的值進(jìn)行數(shù)學(xué)域加和域乘的結(jié)果代替每個(gè)字節(jié)。
AddRoundKey(輪密鑰加),用密鑰調(diào)度表中的前4行對(duì)State矩陣實(shí)行一個(gè)字節(jié)一個(gè)字節(jié)的異或(XOR)操作,并用輪密鑰表w[e,r]異或輸入的State[r.c]。SubBytes、ShiftRows、MixColumns和AddRoundKev 4個(gè)操作在一個(gè)執(zhí)行Nr次的循環(huán)里被調(diào)用,Nr為給定密鑰大小的輪數(shù)減l。加密算法使用的輪數(shù)或是10,12,或是14,這依賴于種子密鑰長(zhǎng)度是128位、192位還是256位。在這里,因?yàn)镹r等于12,則這4個(gè)操作被調(diào)用11次。該迭代完成后,在拷貝State矩陣到輸出參數(shù)前,加密算法調(diào)用SubBytes、ShiftRows和AddRoundKey后結(jié)束。
AES加密算法的核心有4個(gè)操作,AddRoundKey使用從種子密鑰值中生成的輪密鑰代替4組字節(jié)。SubBytes替換用一個(gè)代替表替換單個(gè)字節(jié)。ShiftRows通過(guò)旋轉(zhuǎn)4字節(jié)行的4組字節(jié)進(jìn)行序列置換。MixColumns用域加和域乘的組合來(lái)替換字節(jié)。
本文引用地址:http://m.butianyuan.cn/article/188789.htm
4 結(jié)語(yǔ)
相對(duì)DES算法,AES算法的實(shí)現(xiàn)更簡(jiǎn)單.同時(shí)由于AES算法具備很強(qiáng)的擴(kuò)散性能,最終形成的密碼有很高的隨機(jī)性,抗分析攻擊能力強(qiáng)。在軟件工程中,更便于制作成通用的加密對(duì)象類型或加密標(biāo)準(zhǔn)組件,在不降低安全性能的條件下,極大的簡(jiǎn)化數(shù)據(jù)加密程序的開(kāi)發(fā)難度。
AES算法的實(shí)現(xiàn)程序,對(duì)處理器性能、內(nèi)存的需求量等方面的要求低,可以廣泛的應(yīng)用到智能卡、衛(wèi)星通信、數(shù)字電視、流式媒體、加密鍵盤、ATM、CDM等智能設(shè)備中,可提供很高的安全性能,因此,AES將在今后很長(zhǎng)時(shí)間內(nèi)具備廣闊的應(yīng)用前景。
評(píng)論