[資訊安全] AES 是什麼?快速理解筆記
Topic:AES 是什麼?
AES(Advanced Encryption Standard) 是一種 對稱式加密演算法,被廣泛應用於現代資訊安全系統中。
一、什麼是對稱加密?
對稱加密(Symmetric Encryption) 只使用 一把金鑰:
- 加密與解密
- 都使用 相同的金鑰
又稱為 單鑰加密(Single-key Encryption)
常見用途
- 檔案加密
- 即時通訊
- VPN 傳輸
優缺點
- ✅ 優點:速度快,適合大量資料加密
- ❌ 缺點:金鑰分發不安全(需事先安全共享)
二、AES 與非對稱加密比較
| 比較項目 | 對稱加密(AES) | 非對稱加密(RSA) |
|---|---|---|
| 金鑰數量 | 1 把 | 2 把(公鑰 + 私鑰) |
| 加解密速度 | 快 | 慢 |
| 加密大量資料 | 適合 | 不適合 |
| 金鑰交換難度 | 高(需先共享) | 低(公鑰可公開) |
| 支援簽章驗證 | 否 | 是 |
| 常見用途 | 檔案加密、VPN | 金鑰交換、數位簽章 |
三、AES 的運作原理
AES 是一種 區塊加密(Block Cipher),其特點如下:
區塊大小
- 固定為 128 bits(16 bytes)
- 與金鑰長度無關
支援的金鑰長度
- 128 bits
- 192 bits
- 256 bits
加密輪數(Rounds)
| 金鑰長度 | 加密輪數 |
|---|---|
| AES-128 | 10 輪 |
| AES-192 | 12 輪 |
| AES-256 | 14 輪 |
四、AES 加密流程(簡化版)
AES 每一輪(Round)會對 State(4×4 byte 矩陣) 執行以下操作:
SubBytes
- 使用 S-box 對每個 byte 做非線性替換
- 提供 混淆性(Confusion)
ShiftRows
- 每一列進行循環左移
- 增加 擴散性(Diffusion)
MixColumns
- 在 GF(2⁸) 上進行欄混合運算
- 強化資料擴散效果
AddRoundKey
- State 與 Round Key 做 XOR 運算
🔹 最後一輪不執行 MixColumns
五、AES 加密模式(Modes of Operation)
AES 通常會搭配「加密模式」使用:
| 模式 | 特性 | 備註 |
|---|---|---|
| ECB | 每個區塊獨立加密 | ❌ 不安全,會洩漏資料結構 |
| CBC | 與前一區塊 XOR 後再加密 | ✅ 常見、安全 |
| CFB / OFB | 適合串流資料 | ✅ 可處理非整數倍資料 |
| GCM | 同時提供加密與驗證 | ✅ 現代主流、安全性高 |
六、AES 的安全性來自哪裡?
AES 的安全基礎來自:
- 替代(Substitution)
- 轉換(Permutation)
- 多輪 混淆(Confusion)與擴散(Diffusion)
安全性現況
- 目前 尚無實用破解方式
- 被美國政府、金融機構、雲端服務廣泛採用
- AES-128 / 192 / 256 皆非常安全
- AES-256 常用於軍事與政府等高安全需求場景
✅ 只要金鑰未外洩,AES 非常可靠
七、混合加密(Hybrid Encryption)應用場景
實務上常搭配使用:
- 伺服器產生 AES 金鑰
- 使用 RSA 公鑰 加密 AES 金鑰
- 傳送給對方
- 雙方使用 AES 進行高速加密通訊
👉 同時兼具:
- 速度(AES)
- 金鑰安全性(RSA)
八、總結
| 項目 | 說明 |
|---|---|
| 加密類型 | 對稱式加密 |
| 金鑰數量 | 1 把 |
| 金鑰長度 | 128 / 192 / 256 bits |
| 加密速度 | 快,適合大量資料 |
| 常見用途 | 資料加密、VPN、儲存 |
| 安全基礎 | S-box + 多輪混淆與擴散 |
📌 一句話總結:
AES 是現代最重要、最安全、也是最常用的對稱式加密標準。
本部落格所有文章除特別聲明外,均採用CC BY-NC-SA 4.0 授權協議。轉載請註明來源 YD's 學習筆記!