AES是一種區(qū)塊加密標(biāo)準(zhǔn)算法,它的提出是為了升級(jí)替換原有的DES加密算法。因此它的安全強(qiáng)度高于DES算法。但不應(yīng)片面理解,系統(tǒng)和數(shù)據(jù)的安全不僅與應(yīng)用的加密算法有關(guān),更與加密應(yīng)用方案有關(guān)。和DES算法一樣,AES也屬于對(duì)稱加密算法,對(duì)密鑰的存儲(chǔ)與保護(hù),直接決定了整個(gè)系統(tǒng)的安全。
AES最常見(jiàn)的有3種方案,分別是AES-128、AES-192和AES-256,它們的區(qū)別在于密鑰長(zhǎng)度不同,AES-128的密鑰長(zhǎng)度為16bytes(128bit / 8),后兩者分別為24bytes和32bytes。密鑰越長(zhǎng),安全強(qiáng)度越高,但伴隨運(yùn)算輪數(shù)的增加,帶來(lái)的運(yùn)算開(kāi)銷就會(huì)更大,所以用戶應(yīng)根據(jù)不同應(yīng)用場(chǎng)合進(jìn)行合理選擇。用戶在應(yīng)用過(guò)程中,除了關(guān)注密鑰長(zhǎng)度外,還應(yīng)注意確認(rèn)算法模式。AES算法有五種加密模式,即CBC、ECB、CTR、OCF、CFB,后三種模式因其較為復(fù)雜且應(yīng)用較少,不做詳細(xì)說(shuō)明,僅對(duì)ECB和CBC模式進(jìn)行介紹。
ECB模式的全稱是Electronic Codebook Book,即電碼本模式。這種模式是將整個(gè)明文分成若干個(gè)長(zhǎng)度相同的分組,然后對(duì)每一小組進(jìn)行加密,并將加密結(jié)果拼接為最終結(jié)果,C = C1C2C3......Cn。它與ECB模式的DES算法加密流程基本一致。
CBC模式的全稱是Cipher Block Chaining,這種模式是先將明文切分成若干個(gè)長(zhǎng)度相同的分組(與ECB模式一樣),此時(shí)先利用初始向量IV與第一組數(shù)據(jù)進(jìn)行異或后再進(jìn)行加密運(yùn)算生成C1。將C1作為初始向量與第二組數(shù)據(jù)進(jìn)行異或后再進(jìn)行加密運(yùn)算生成C2。以此類推,當(dāng)最后一組數(shù)據(jù)加密完畢后,將加密結(jié)果拼接為最終結(jié)果,C = C1C2C3......Cn。
綜上,AES192算法與DES算法很相似,均為塊加密算法,密文數(shù)據(jù)以16字節(jié)為單位獨(dú)立存在。若明文長(zhǎng)度為16字節(jié),當(dāng)改變明文的前16字節(jié)時(shí),只會(huì)影響密文的前16字節(jié),密文后16字節(jié)不變。因此,在應(yīng)用AES算法對(duì)線路傳輸數(shù)據(jù)加密過(guò)程中,若想保證密文的整體變化,要保證每塊明文數(shù)據(jù)都是變化的。
希望本文能讓大家對(duì)AES的算法特點(diǎn)有個(gè)更直觀的認(rèn)識(shí),更安全有效的利用AES算法設(shè)計(jì)數(shù)據(jù)加解密的方案,將LKT中自帶的AES算法接口高效利用起來(lái)。
-
AES
+關(guān)注
關(guān)注
0文章
107瀏覽量
33580 -
DES
+關(guān)注
關(guān)注
0文章
65瀏覽量
48779
發(fā)布評(píng)論請(qǐng)先 登錄
藍(lán)牙AES+RNG如何保障物聯(lián)網(wǎng)信息安全
轉(zhuǎn):熟悉AES加密
基于FPGA的可編程AES加解密IP
哪里可以找到AES-192和AES-256的Verilog代碼?
aes加密破解難度
TN404_ELF2 AES加密使用指南
請(qǐng)問(wèn)S32K1系列如何使用AES-128算法進(jìn)行軟件加解密?
愛(ài)特梅爾推出AES-128防盜器和遙控?zé)o匙門禁AVR微控制器
fips-197_ADVANCED ENCRYPTION STANDARD (AES)
嵌入式AES加密IP核設(shè)計(jì)
基于mbedTLS在Apollo3 MCU上實(shí)現(xiàn)AES-256加解密算法
基于FPGA的可編程AES加解密IP

評(píng)論