什么是 AES-GCM加密算法
AES是一種對稱加密算法,它的相關(guān)概念在此不贅述。
GCM ( Galois/Counter Mode) 指的是該對稱加密采用Counter模式,并帶有GMAC消息認(rèn)證碼。
在詳細(xì)介紹AES-GCM之前,我們先了解一些相關(guān)概念。
下文中出現(xiàn)的符號:
Ek | 使用秘鑰k對輸入做對稱加密運算 |
XOR | 異或運算 |
Mh | 將輸入與秘鑰h在有限域GF(2^128)上做乘法 |
當(dāng)我們有一段明文,需要對其進(jìn)行AES加密時,需要對明文進(jìn)行分組,分組長度可為128,256,或512bits。采用ECB模式的分組密碼算法加密過程如下圖:
由上圖可以看出,明文中重復(fù)的排列會反映在密文中。
并且,當(dāng)密文被篡改時,解密后對應(yīng)的明文分組也會出錯,且解密者察覺不到密文被篡改了。也就是說,ECB不能提供對密文的完整性校驗。
因此,在任何情況下都不推薦使用ECB模式。
在計數(shù)器模式下,我們不再對密文進(jìn)行加密,而是對一個逐次累加的計數(shù)器進(jìn)行加密,用加密后的比特序列與明文分組進(jìn)行 XOR得到密文。過程如下圖:
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。