采用單鑰密碼系統的加密方法,同一個密鑰可以同時用作資訊的加密和解密,這種加密方法稱為對稱加密,也稱為單密鑰加密,
基于“對稱密鑰”的加密演算法主要有DES、3DES(TripleDES)、AES、RC2、RC4、RC5和Blowfish等,當前最為安全的是 AES 加密演算法,
密鑰
AES支持三種長度的密鑰:128位,192位,256位,它們區別在于加密的輪數,除去初始輪,各種密鑰長度對應的輪數如下:
| 密鑰長度 | 加密輪數 |
|---|---|
| 128位 | 10 |
| 192位 | 12 |
| 256位 | 14 |
填充
密碼學中,塊密碼的作業模式(英語:mode of operation)允許使用同一個塊密碼密鑰對多于一塊的資料進行加密,并保證其安全性,
部分模式(ECB和CBC)需要最后一塊在加密前進行填充,塊密碼自身只能加密長度等于密碼塊長度的單塊資料,
CFB,OFB和CTR模式不需要對長度不為密碼塊大小整數倍的訊息進行特別的處理,因為這些模式是通過對塊密碼的輸出與明文進行異或作業的,最后一個明文塊(可能是不完整的)與密鑰流塊的前幾個位元組異或后,產生了與該明文塊大小相同的密文塊,流密碼的這個特性使得它們可以應用在需要密文和明文資料長度嚴格相等的場合,也可以應用在以流形式傳輸資料而不便于進行填充的場合,
流密碼:將明文訊息按字符逐位進行加密,
分組密碼(Block Cipher):明文訊息分組(每組有多個字符),逐組進行加密,
作業模式
AES的作業模式,體現在把明文塊加密成密文塊的處理程序中,AES加密演算法提供了五種不同的作業模式:ECB、CBC、CTR、CFB、OFB,
ECB模式(默認):電碼本模式 Electronic Codebook Book
CBC模式:密碼分組鏈接模式 Cipher Block Chaining
CTR模式:計算器模式 Counter
CFB模式:密碼反饋模式 Cipher FeedBack
OFB模式:輸出反饋模式 Output FeedBack
ECB模式
ECB模式(Electronic Codebook Book)是最簡單的作業模式,在該模式下,每一個明文塊的加密都是完全獨立,互不干涉的,

缺點:相同的明文塊經過加密會變成相同的密文塊,因此安全性較差,
CBC模式
在CBC模式中,每個平文塊先與前一個密文塊進行異或后,再進行加密,在這種方法中,每個密文塊都依賴于它前面的所有平文塊,同時,為了保證每條訊息的唯一性,在第一個塊中需要使用初始化向量,
初始化向量(IV)
初始化向量(IV,Initialization Vector)是許多作業模式中用于隨機化加密的一塊資料,因此可以由相同的明文,相同的密鑰產生不同的密文,而無需重新產生密鑰,避免了通常相當復雜的這一程序,

缺點:加密無法并行計算(解密時可以),性能上不如ECB,引入初始化向量IV,增加復雜度,
AES加密器
所有的作業模式的差別只是在宏觀上(明文塊之間的聯系),而AES加密器的內部處理流程是相同的

不同階段有不同的處理步驟
初始輪只有一個步驟:
- 加輪密鑰(AddRoundKey)
普通輪有四個步驟:
-
位元組代替(SubBytes)
-
行移位(ShiftRows)
-
列混淆(MixColumns)
-
加輪密鑰(AddRoundKey)
最終輪有三個步驟:
-
位元組代替(SubBytes)
-
行移位(ShiftRows)
-
加輪密鑰(AddRoundKey)
加密的安全性不僅取決于加密演算法本身,密鑰管理的安全性更是重要,因為加密和解密都使用同一個密鑰,如何把密鑰安全地傳遞到解密者手上就成了必須要解決的問題,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/228806.html
標籤:訊息安全
上一篇:Snort的安裝以及使用實驗
