📖 对称密钥密码体制
🎯 课程摘要:对称密钥密码体制是指加密密钥与解密密钥相同的密码体制。本节介绍 DES(对称加密算法) 的基本概念与加密过程、其 56 位密钥的安全性局限、三重 DES 的改进方案,以及 AES(对称加密算法) 的优势,对比 DES 与 AES 的参数差异。
📝 详细笔记
1. 对称密钥密码体制概述
- 概念定义:对称密钥密码体制是指加密密钥与解密密钥相同的密码体制。
- 模型:在数据加密一般模型中,将解密密钥 Kb 改为与加密密钥 Ka 相同,通信双方使用的就是对称密钥。
2. DES(对称加密算法)
- 全称:Data Encryption Standard,数据加密标准。
- 研制:由 IBM 公司研制,1977 年被美国定为联邦信息标准;国际标准化组织曾把 DES 作为数据加密标准。
- 地位:对称密钥密码体制的典型代表。
2.1 DES 加密过程
| 步骤 | 操作 |
|---|---|
| 1 | 将整个明文数据划分成若干个 64 比特长的数据块 |
| 2 | 使用由 56 比特密钥和 8 比特奇偶校验构成的 64 比特密钥,分别对每一个 64 比特的数据块进行加密处理 |
| 3 | 产生若干个相应的 64 比特的密文 |
| 4 | 将这些 64 比特的密文串接起来,得出整个密文 |
- 分组密码:明文分组 64 比特,密文分组 64 比特。
- ⚠️ 重点/考点:DES 的保密性仅取决于对密钥的保密和密钥的长度,而算法是公开的。
2.2 DES 的安全性
- DES 经过了世界上无数优秀学者几十年的密码分析,除 56 比特密钥长度太短外,没有发现任何大的设计缺陷。
- 56 比特密钥的破译时间估算:
- 密钥数量为 2^56
- 假设一台计算机 1 微秒执行一次 DES 加密,平均只需搜索密钥空间的一半即可找到密码
- 破译 DES 要超过 1000 年
- 随着技术发展,56 比特密钥变得太短:
| 破译条件 | 搜索时间 |
|---|---|
| 1999 年,专用计算机(成本 < 25 万美元),互联网合作 | 约 22 小时 |
| 100 万美元机器 | 3.5 小时 |
| 1000 万美元机器 | 21 分钟 |
- 结论:现在对 56 比特 DES 密钥的搜索已成常态,56 比特 DES 已不再被认为是安全的。
3. 三重 DES(3DES)
- 目的:解决 56 比特 DES 密钥太短的问题。
- 标准化:1985 年成为美国的一个商用加密标准。
- 原理:使用三个密钥执行三次 DES 算法。
加密过程:明文 → DES 加密(K1) → DES 解密(K2) → DES 加密(K3) → 密文
解密过程:密文 → DES 解密(K3) → DES 加密(K2) → DES 解密(K1) → 明文
- 兼容性:三重 DES 仍使用原有的 DES 算法;当三个密钥 K1、K2、K3 都相同时,等效于 DES,有利于将 DES 逐步推广为三重 DES。
- 局限性:IBM 最初设计 DES 时主要考虑用硬件实现,因此 DES 和三重 DES 的软件实现较慢。
- 现状:三重 DES 目前正在被 2001 年发布的 AES 替代。
4. AES(对称加密算法)
- 全称:Advanced Encryption Standard,高级加密标准。
- 发布:2001 年发布。
- 支持的密钥长度:128 比特、192 比特、256 比特。
- 分组长度:128 比特。
- 优势:
- 用硬件和软件都可以快速实现
- 不需要太多内存,适用于小型移动设备
4.1 AES vs DES 安全性对比
- 美国国家标准与技术研究院(NIST)估计:
- 若用一秒即可破解 56 比特密钥 DES 的计算机来破解 128 比特密钥长度的 AES
- 要用大约 149 万亿年的时间才有可能完成破解
5. DES vs AES 对比
| 对比项 | DES | AES |
|---|---|---|
| 全称 | 数据加密标准 | 高级加密标准 |
| 发布年份 | 1977 | 2001 |
| 密钥长度 | 56 比特(+8 比特奇偶校验 = 64 比特) | 128 / 192 / 256 比特 |
| 分组长度 | 64 比特 | 128 比特 |
| 安全性 | 56 比特已不安全,可被快速破译 | 128 比特密钥破解约需 149 万亿年 |
| 实现方式 | 主要考虑硬件实现,软件实现较慢 | 硬件和软件都可快速实现 |
| 资源需求 | - | 内存需求小,适用于小型移动设备 |
| 现状 | 已被替代(经三重 DES 过渡) | 当前主流对称加密标准 |
- ⚠️ 重点/考点:
- DES 密钥 56 比特、分组 64 比特;AES 密钥 128/192/256 比特、分组 128 比特。
- DES 保密性取决于密钥保密和密钥长度,算法公开。
- 三重 DES 三密钥相同时等效于 DES(兼容性设计)。
- AES 是 DES/三重 DES 的替代者,安全性更高、实现更快。
💡 核心总结
- 对称密钥密码体制:加密密钥 = 解密密钥。
- DES:56 位密钥 + 64 位分组,算法公开,保密靠密钥;56 位密钥现已不安全。
- 三重 DES:三个密钥三次 DES 运算,三密钥相同时兼容 DES;软件实现较慢,正被 AES 替代。
- AES:128/192/256 位密钥 + 128 位分组,硬软件都快、内存小、适合移动设备;128 位密钥破解需约 149 万亿年,是当前主流对称加密标准。
❓ 课后思考 / 经典考题
- 什么是对称密钥密码体制?其加密密钥与解密密钥的关系是什么?
- 简述 DES 的加密过程,其明文分组、密文分组和密钥长度各是多少比特?
- 为什么说 DES 的 56 比特密钥已不再安全?
- 三重 DES 是如何工作的?当三个密钥相同时等效于什么?
- 对比 DES 和 AES 在密钥长度、分组长度、安全性和实现效率上的差异。
- 为什么 AES 比 DES 更适合现代应用(尤其是移动设备)?