天天看點

對稱加密及AES加密算法

1、對稱加密:

加密和解密使用同一個密鑰的加密方式

2、對稱加密的優點:

加密計算量小、速度塊,适合對大量資料進行加密的場景

3、AES加密算法

(1)Advanced Encryption Standard,進階加密标準

(2)替代之前的DES加密算法

4、AES采用分組密碼體制

每個分組資料的長度為128位16個位元組

密鑰長度可以是128位16個位元組、192位24位元組 或256位32位元組

通常采用128位16個位元組初始向量IV的CBC模式

五個關鍵詞

1、分組密碼體制

AES加密會首先把明文切成一段一段的,而且每段資料的長度要求必須是128位16個位元組,如果最後一段不夠16個位元組了,就需要用Padding來把這段資料填滿16個位元組,然後分别對每段資料進行加密,最後再把每段加密資料拼起來形成最終的密文。

2、Padding

Padding就是用來把不滿16個位元組的分組資料填滿16個位元組用的

(1)PKCS5

(2)PKCS7

(3)NoPadding

我們開發通常采用PKCS7 Padding模式。

3、密鑰

AES要求密鑰的長度可以是128位16個位元組、192位或者256位

通常采用128位16個位元組的密鑰

4、初始向量IV

定為128位16個位元組,初始向量的來源為随機生成

5、四種加密模式

(1)ECB(電子密碼本模式)

(2)CBC(密碼分組連結模式)需要參數iv

(3)CFB

(4)OFB

我們一般使用的是CBC模式

注意:

服務端和我們用戶端必須使用一樣的:

密鑰、初始向量IV、加密模式、Padding模式參考

第二篇:對稱加密及AES加密算法

繼續閱讀