国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

AES 加解密算法及其安全性分析

2022-03-02 09:24王亞濤
關(guān)鍵詞:字節(jié)解密密鑰

◆王亞濤

(福建省漳州臺(tái)商投資區(qū) 福建 363107)

加密算法是能夠有效保障網(wǎng)絡(luò)安全的一種技術(shù),計(jì)算機(jī)網(wǎng)絡(luò)的出現(xiàn)和發(fā)展,為各個(gè)行業(yè)和領(lǐng)域提供一種新的發(fā)展途徑。將加密算法應(yīng)用到計(jì)算機(jī)網(wǎng)絡(luò)的運(yùn)行當(dāng)中,能夠有效保障各種信息的傳輸安全。AES 算法是能夠保障網(wǎng)絡(luò)安全的一種技術(shù),在當(dāng)前社會(huì)對(duì)于網(wǎng)絡(luò)安全的重視程度不斷提高的背景下,對(duì)網(wǎng)絡(luò)加解密算法AES 進(jìn)行分析,能夠?yàn)楸U嫌?jì)算機(jī)網(wǎng)絡(luò)的運(yùn)行安全提供借鑒的經(jīng)驗(yàn)。

1 AES 算法

網(wǎng)絡(luò)信息技術(shù)的發(fā)展,改變了許多行業(yè)和領(lǐng)域的發(fā)展方式,各個(gè)行業(yè)對(duì)于計(jì)算機(jī)網(wǎng)絡(luò)的依賴性也在逐漸增強(qiáng)。從當(dāng)前我國(guó)計(jì)算機(jī)網(wǎng)絡(luò)的運(yùn)行和發(fā)展?fàn)顩r來看,許多網(wǎng)絡(luò)應(yīng)用系統(tǒng)還處于不設(shè)防的狀態(tài)。在這種情況下,信息泄漏的風(fēng)險(xiǎn)也比較高。為了能夠保障網(wǎng)絡(luò)的安全運(yùn)行,需要對(duì)其采取網(wǎng)絡(luò)安全技術(shù)。而由于網(wǎng)絡(luò)安全技術(shù)的應(yīng)用是保障網(wǎng)絡(luò)的運(yùn)行安全,因而安全技術(shù)只能夠依靠我國(guó)自主進(jìn)行研發(fā)。在計(jì)算機(jī)網(wǎng)絡(luò)運(yùn)行數(shù)據(jù)和信息數(shù)量逐漸增多、規(guī)模逐漸擴(kuò)展的背景下,原有的DES 算法已經(jīng)很難滿足維護(hù)網(wǎng)絡(luò)信息安全的需要[1]。AES 算法是在DES 算法基礎(chǔ)上出現(xiàn)并發(fā)展起來的,是一種高級(jí)加密的標(biāo)準(zhǔn)算法。該算法能夠應(yīng)用128、192 以及256 位的密鑰,并通過128 位、16 字節(jié)來進(jìn)行分組加密和解密數(shù)據(jù)。在這種算法的應(yīng)用過程中,對(duì)稱密鑰的密碼需要應(yīng)用相同的密鑰加密以及解密數(shù)據(jù)才能夠?qū)崿F(xiàn)信息之間的傳遞。再加上該算法本身在加密過程中體現(xiàn)出來的復(fù)雜性特點(diǎn),能夠有效保障網(wǎng)絡(luò)信息的安全,因而在當(dāng)前越來越重視網(wǎng)絡(luò)信息安全的背景下,AES 算法具有廣闊的發(fā)展前景[2]。

具體來說,AES 算法在實(shí)際應(yīng)用中主要會(huì)涉及到有限域、狀態(tài)矩陣和密鑰矩陣、擴(kuò)展密鑰等概念。在實(shí)際應(yīng)用AES 算法的過程中,在有限域的條件范圍之內(nèi),將需要被加密的數(shù)據(jù)以及密鑰數(shù)據(jù)劃分成維數(shù)為4×4、4×6 或4×8 的矩陣,被加密數(shù)據(jù)組成的矩陣是狀態(tài)矩陣,而由密鑰數(shù)據(jù)組成的矩陣則是密鑰矩陣[3]。在形成矩陣之后,應(yīng)用不同的密鑰對(duì)數(shù)據(jù)進(jìn)行多輪次的加密,這些用于加密的所有密鑰集合被稱為擴(kuò)展密鑰。

2 網(wǎng)絡(luò)加解密算法AES 的具體分析

與以往應(yīng)用的DES 算法相比,AES 算法更能夠符合當(dāng)前社會(huì)的發(fā)展需求。AES 算法能夠通過復(fù)雜的加密過程,保障計(jì)算機(jī)網(wǎng)絡(luò)的安全運(yùn)行。通過前面的分析可以發(fā)現(xiàn),AES 算法所具有的應(yīng)用優(yōu)勢(shì),使得其在未來的社會(huì)中有著廣闊的發(fā)展前景。在對(duì)網(wǎng)絡(luò)加解密算法AES 進(jìn)行分析時(shí),主要可以從以下幾個(gè)方面來入手:

2.1 加密過程

AES 算法之所以能夠被應(yīng)用到當(dāng)前的計(jì)算機(jī)網(wǎng)絡(luò)運(yùn)行當(dāng)中,最主要的原因就是這種算法本身具有良好的適應(yīng)性,且無需占據(jù)較大的儲(chǔ)存空間,密鑰的靈活性也比較強(qiáng),能夠滿足對(duì)于數(shù)據(jù)信息加密和傳輸?shù)亩喾N要求[4]。而AES 算法之所以能夠體現(xiàn)出這些優(yōu)勢(shì),最主要的原因就是AES 算法應(yīng)用的分組解密算法。

分組解密算法具體包括加密和解密兩個(gè)基本的部分,在應(yīng)用該算法的過程中,能夠通過圈變換的函數(shù)來實(shí)現(xiàn)對(duì)于信息的密碼設(shè)置。圈變換的函數(shù)主要會(huì)受到非線性層、擴(kuò)散層以及密鑰調(diào)度等元素的影響,在應(yīng)用中需要借助非線性替代以及線性混合函數(shù)來滿足分組解密的要求[5]。從本質(zhì)上來說,分組加密算法就是利用多種簡(jiǎn)單的函數(shù)變化,借助密鑰調(diào)度來引入密鑰,從而更好地滿足對(duì)于算法加密效果的要求。在應(yīng)用AES 算法進(jìn)行加密時(shí),首先需要明確AES 算法的主要結(jié)構(gòu)組成。AES 算法是建立在替代/置換網(wǎng)絡(luò)結(jié)構(gòu)基礎(chǔ)上的,由初始圈密鑰、Nr-1 圈變換以及結(jié)尾圈變換三個(gè)主要的部分組成。

舉例來說,在128 位密鑰的加密過程中,在保證整個(gè)加密的過程都在明文分組狀態(tài)的前提下,首先需要輸入處于明文狀態(tài)下的字節(jié)元素。通過前面的分析可以得知,狀態(tài)矩陣以及密鑰矩陣都是由以行數(shù)的固定值為4 的多維數(shù)矩陣呈現(xiàn)出來的,因而在整個(gè)加密過程中,明文分組的狀態(tài)也可以應(yīng)用矩陣陣列圖來表示。用Nk 來表示密鑰數(shù)據(jù)矩陣的列數(shù),用Nb 來表示被加密數(shù)據(jù)矩陣的列數(shù)。由于數(shù)據(jù)在應(yīng)用AES 算法進(jìn)行加密的過程中,需要進(jìn)行Nr+1 輪的加密環(huán)節(jié),在行數(shù)固定的前提下,需要依據(jù)Nk 和Nb 的取值不同,依據(jù)AES 算法的對(duì)照表,列舉出在不同字節(jié)元素情況下的矩陣陣列圖。而這一圖中呈現(xiàn)的多種密碼密鑰,就是能夠?qū)γ魑姆纸M進(jìn)行加密的主要依據(jù)。在得到矩陣陣列圖之后,將明文分組按照矩陣陣列圖中列出的數(shù)據(jù)順序映射到狀態(tài)列陣當(dāng)中,將密碼密鑰也同樣按照矩陣陣列圖中呈現(xiàn)的順序映射到密碼密鑰陣列當(dāng)中。而在完成數(shù)據(jù)信息的加密過程之后,依據(jù)相同的順序進(jìn)行輸出數(shù)據(jù)的分組,從而得到多輪次加密的數(shù)據(jù)。

2.2 密鑰擴(kuò)展

結(jié)合當(dāng)前AES 算法的實(shí)際應(yīng)用情況來看,大部分情況下,AES算法在應(yīng)用中體現(xiàn)出來的加密密鑰長(zhǎng)度都以4Nb(Nr+1)字節(jié)為主。在對(duì)數(shù)據(jù)進(jìn)行加密的過程中,這些加密密鑰都需要依據(jù)4Nk 字節(jié)密碼密鑰的擴(kuò)展算法才能夠得到有效的實(shí)現(xiàn)。而通過前面的分析可以發(fā)現(xiàn),擴(kuò)展密鑰就是對(duì)數(shù)據(jù)進(jìn)行Nr+1 輪次的擴(kuò)展來滿足數(shù)據(jù)信息的加密過程的。在密鑰擴(kuò)展的過程中,如果將密碼密鑰的每一個(gè)列稱為一個(gè)字,在Nr 個(gè)字的加密情況下,往往能夠得到Nb(Nk+1)個(gè)字的加密密鑰。結(jié)合AES 算法中擴(kuò)展算法的實(shí)際應(yīng)用情況,擴(kuò)展算法主要可以被分為Nk≤6 或Nk>6 兩種情況。舉例來說,在Nk≤6 的應(yīng)用情況下,借助函數(shù)SubBytes(w)來進(jìn)行輸出字節(jié)的移位。當(dāng)加密密鑰的前Nk 個(gè)字都是密碼密鑰的情況下,需要對(duì)得到的密碼密鑰進(jìn)行一系列的變換,才能夠更好地滿足密鑰擴(kuò)展算法的應(yīng)用需求。在進(jìn)行密鑰擴(kuò)展的過程中,為了能夠保證AES 加密算法應(yīng)用的準(zhǔn)確性,需要在進(jìn)行函數(shù)的編程過程中仔細(xì)認(rèn)真對(duì)待,減少在編程和應(yīng)用算法中出錯(cuò)的概率,保障AES 算法的實(shí)際應(yīng)用效果。

數(shù)字循環(huán)移位運(yùn)算是密鑰擴(kuò)展功能實(shí)現(xiàn)的主要途徑。在進(jìn)行密鑰擴(kuò)展的過程中,還可以借助Rotword(w)函數(shù)來實(shí)現(xiàn)對(duì)于分組數(shù)據(jù)中數(shù)字循環(huán)左移一位的運(yùn)算。在這個(gè)過程中,需要將數(shù)組中的左端第一個(gè)數(shù)字移動(dòng)到數(shù)組的末端,但在應(yīng)用這種算法進(jìn)行運(yùn)算的過程中,由于數(shù)組中原有的數(shù)字已經(jīng)合并成一個(gè)數(shù)字,因而需要對(duì)數(shù)字進(jìn)行循環(huán)移位運(yùn)算。這樣不僅能夠?qū)υ械臄?shù)據(jù)和密鑰運(yùn)算過程進(jìn)行有效的簡(jiǎn)化,還能夠通過運(yùn)算過程和步驟的簡(jiǎn)化來提高算法的運(yùn)算效率。

2.3 解密過程

在應(yīng)用AES 算法對(duì)密鑰進(jìn)行解密的過程中,主要是以被轉(zhuǎn)換的加密算法為基礎(chǔ)的,按照加密過程相反的順序,能夠直接形成AES的解密算法。在這種背景下,AES 算法需要借助輪函數(shù)才能夠?qū)崿F(xiàn)加密和解密的需求,在應(yīng)用輪函數(shù)的基礎(chǔ)上,借助行位移、字節(jié)代替、列混合以及加密鑰四個(gè)計(jì)算部件,能夠有效實(shí)現(xiàn)數(shù)據(jù)的解密過程。

具體來說,仍以128 位密鑰為例,在應(yīng)用AES 算法進(jìn)行解密的過程中,首先需要采取行位移的方式,將狀態(tài)列陣中的各行進(jìn)行循環(huán)移位,而對(duì)于處在不同狀態(tài)下的行來說,具體的循環(huán)位移量也存在一定的差異。在進(jìn)行循環(huán)位移的過程中,從第一行開始向右移動(dòng)C1 個(gè)字節(jié),第二行向右移動(dòng)C2 個(gè)字節(jié),以此類推完成整個(gè)解密過程??紤]被加密數(shù)據(jù)矩陣列數(shù)對(duì)其產(chǎn)生的影響,能夠在一定程度上確保位移量選擇的準(zhǔn)確性。其次,在完成行位移的操作之后,需要進(jìn)行字節(jié)代替來實(shí)現(xiàn)對(duì)于加密密鑰的有效轉(zhuǎn)換。第三,在完成字節(jié)代替的操作之后,還需要應(yīng)用列混合的方式,通過對(duì)明文分組狀態(tài)下矩陣中的每一列進(jìn)行運(yùn)算操作,用以滿足密鑰的解密需求。而在這個(gè)過程中,還需要確保列混合變換的可逆性,以此來實(shí)現(xiàn)對(duì)于加密和解密過程之間的有效轉(zhuǎn)換。最后,通過加密鑰的逆變換來最終實(shí)現(xiàn)對(duì)于數(shù)據(jù)密鑰的解密過程。

2.4 AES 實(shí)現(xiàn)過程

(1)加密處理

在明確AES 算法的實(shí)際應(yīng)用原理之后,結(jié)合以往應(yīng)用AES 算法的實(shí)際經(jīng)驗(yàn),首先需要從加密處理的角度入手。結(jié)合AES 算法應(yīng)用的實(shí)際情況來看,這種算法主要是依據(jù)置換和代替原理來對(duì)數(shù)據(jù)進(jìn)行重新排列和單元數(shù)據(jù)替換的。Rijndael 是AES 算法應(yīng)用的最基本的密碼算法,這種算法應(yīng)用的就是置換的組合架構(gòu)。在應(yīng)用AES 算法對(duì)數(shù)據(jù)信息加密處理的過程中,借助分組加密數(shù)據(jù)的迭代加密形成一個(gè)循環(huán)結(jié)構(gòu),并在該結(jié)構(gòu)的運(yùn)行中完成多次重復(fù)置換和替換輸入數(shù)據(jù)的操作。

具體來說,AES 加密處理的實(shí)現(xiàn)過程,具體包括SubBytes、ShiftRows、MixColumns、AddRoundKey 四個(gè)步驟。SubBytes 主要是指借助非線性的替換函數(shù),以查找表為依據(jù)將其替換成相對(duì)應(yīng)的字節(jié);ShiftRows 主要是指對(duì)矩陣陣列圖中的每個(gè)橫向進(jìn)行循環(huán)移位的過程;MixColumns 主要是指采用線性轉(zhuǎn)換的方式來將矩陣中每行內(nèi)的四個(gè)字節(jié)進(jìn)行混合的過程,以便能夠?yàn)閿?shù)據(jù)的加密提供更加便利的條件。在實(shí)際應(yīng)用AES 算法進(jìn)行加密處理的過程中,有時(shí)可以省略這一步驟;AddRoundKey 則主要是指對(duì)矩陣中的字節(jié)和子密鑰進(jìn)行XOR 運(yùn)算。在實(shí)際進(jìn)行加密處理的過程中,MixColumns 和AddRoundKey之間是可以相互取代的關(guān)系。

(2)AES 密鑰調(diào)度

從AES 密鑰調(diào)度的角度來看,AES 算法在實(shí)際應(yīng)用中具體包括密鑰擴(kuò)展以及輪密鑰選取兩個(gè)具體的部分,在將原始的密碼密鑰擴(kuò)展成一個(gè)擴(kuò)展密鑰之后,經(jīng)過多輪次的計(jì)算,將計(jì)算得到的結(jié)果呈現(xiàn)在輪密鑰調(diào)度表中,然后按照擴(kuò)展密鑰的Nb 個(gè)4 字節(jié)的順序,將輪密鑰從擴(kuò)展密鑰中取出。結(jié)合當(dāng)前AES 算法的實(shí)際應(yīng)用情況來看,10輪循環(huán)能夠滿足大部分?jǐn)?shù)據(jù)應(yīng)用加密算法的要求,是當(dāng)前能夠有效保障網(wǎng)絡(luò)運(yùn)行安全的最為普遍的一種算法。

3 AES 的安全性分析

結(jié)合AES 算法的加密過程、密鑰擴(kuò)展以及解密過程來看,盡管這種算法在實(shí)際應(yīng)用中仍然能夠滿足對(duì)于數(shù)據(jù)信息的加密處理和保障信息傳輸安全的需求,但這種算法仍然存在一定的缺陷和不足。與以往應(yīng)用的DES 算法相比,盡管AES 的加密算法能夠體現(xiàn)出更加安全的性能,但要想更好的保障AES 算法應(yīng)用的安全性,還需要對(duì)AES算法的破解方法進(jìn)行仔細(xì)的研究和分析。結(jié)合AES 算法的應(yīng)用原理和實(shí)踐經(jīng)驗(yàn),在對(duì)AES 算法進(jìn)行破解時(shí),主要可以應(yīng)用到以下幾種方法:

首先,采用最簡(jiǎn)單的暴力破解的方法,無論是針對(duì)128 位的密鑰還是256 位的密鑰來說,都無法對(duì)應(yīng)用了AES算法的密碼進(jìn)行解密。而在密鑰長(zhǎng)度越復(fù)雜的情況下,應(yīng)用暴力破解方法實(shí)現(xiàn)AES 破解的難度更大,消耗的時(shí)間也越來越長(zhǎng)。

其次,應(yīng)用時(shí)間選擇攻擊的方法,是最可能對(duì)AES 算法進(jìn)行破解的方法之一。在應(yīng)用這種方法對(duì)AES 密碼進(jìn)行攻擊時(shí),需要應(yīng)用不同的密鑰來對(duì)加密例程運(yùn)行所消耗的時(shí)間進(jìn)行精確的測(cè)量。在加密例程編碼不完善的情況下,應(yīng)用這種方法能夠讓執(zhí)行時(shí)間更依賴于密鑰值,進(jìn)而為推導(dǎo)密鑰的相關(guān)信息創(chuàng)造良好的條件。而針對(duì)這種破解方法,在應(yīng)用AES 算法的過程中,一方面需要保證加密例程編碼的完整性,另一方面也可以采取加入虛指令或?qū)⒂虺藚R總為一個(gè)查詢表的方式,保證AES 算法的實(shí)際應(yīng)用安全。

第三,采用旁道攻擊的方法,是現(xiàn)階段唯一成功實(shí)現(xiàn)AES 破解的方法。在應(yīng)用這種方法對(duì)AES 密碼進(jìn)行破解的過程中,通過攻擊實(shí)際作用于不安全系統(tǒng)上的加密系統(tǒng),能夠比攻擊密碼本身獲得更加理想的效果。

第四,能量攻擊法是一種針對(duì)硬件加密方法的破解方法。從當(dāng)前計(jì)算機(jī)網(wǎng)絡(luò)的運(yùn)行和發(fā)展?fàn)顩r來看,由于硬件加密本身具有更高的運(yùn)行速度以及更強(qiáng)的保密性等特點(diǎn),因而能夠?qū)崿F(xiàn)對(duì)多種數(shù)據(jù)信息的有效加密。而能量攻擊法在實(shí)際的應(yīng)用過程中,主要是借助硬件加密法在運(yùn)行中消耗能量所產(chǎn)生的電流或電壓變化來檢測(cè)設(shè)備運(yùn)行狀態(tài)的。從能量耗散以及電磁輻射等角度,借助能量消耗來實(shí)現(xiàn)對(duì)于密鑰的破解,具有成本消耗更低的特點(diǎn)。

第五,基于AES 算法的應(yīng)用原理,在對(duì)該算法進(jìn)行破解時(shí),還可以從算法本身具有的對(duì)稱性入手,以逆序碰撞攻擊的原理來對(duì)AES 算法的應(yīng)用過程進(jìn)行分析。結(jié)合AES 算法的實(shí)際應(yīng)用情況來看,該破解方法的應(yīng)用效率較高,但由于最終的破解結(jié)果存在較大的不確定性,因而破解AES 算法的實(shí)際效果并不明顯。

綜上所述,網(wǎng)絡(luò)加解密算法AES 的應(yīng)用,能夠?qū)ΡU暇W(wǎng)絡(luò)的運(yùn)行安全起到重要的作用。結(jié)合當(dāng)前計(jì)算機(jī)網(wǎng)絡(luò)行業(yè)發(fā)展的情況可以看出,維護(hù)網(wǎng)絡(luò)的運(yùn)行安全是最為重要的一項(xiàng)工作。從加密過程、密鑰擴(kuò)展、解密過程以及算法的實(shí)現(xiàn)過程等方面來看,將AES 算法應(yīng)用到計(jì)算機(jī)網(wǎng)絡(luò)的運(yùn)行當(dāng)中,能夠?qū)S護(hù)計(jì)算機(jī)網(wǎng)絡(luò)的運(yùn)行安全起到重要的作用,能夠?yàn)楫?dāng)前計(jì)算機(jī)網(wǎng)絡(luò)的運(yùn)行發(fā)展創(chuàng)造良好的條件。

猜你喜歡
字節(jié)解密密鑰
幻中邂逅之金色密鑰
No.8 字節(jié)跳動(dòng)將推出獨(dú)立出口電商APP
炫詞解密
解密“一包三改”
密碼系統(tǒng)中密鑰的狀態(tài)與保護(hù)*
炫詞解密
No.10 “字節(jié)跳動(dòng)手機(jī)”要來了?
基于MSP430的四旋翼飛行器的S-BUS通信協(xié)議的設(shè)計(jì)與實(shí)現(xiàn)
TPM 2.0密鑰遷移協(xié)議研究
一種對(duì)稱密鑰的密鑰管理方法及系統(tǒng)
都江堰市| 福鼎市| 阿瓦提县| 山东省| 新乡县| 东港市| 泾川县| 延津县| 巴青县| 沁源县| 永川市| 磐石市| 竹溪县| 阳泉市| 东安县| 革吉县| 昌江| 康保县| 汾阳市| 科技| 东安县| 山东省| 连云港市| 苏尼特右旗| 阳江市| 长寿区| 宁德市| 竹北市| 福泉市| 广饶县| 察隅县| 资溪县| 兰西县| 黄平县| 卓资县| 津市市| 北辰区| 河间市| 多伦县| 庆城县| 黄陵县|