核心结论
DES 规定密钥总长固定 64 比特,但每8位里抽1位做奇偶校验,8组校验位一共占用 8 位,所以真正参与加密运算的有效密钥 = 56 位。教材讲密码强度、密钥空间时,统一用56位有效位。
1. 具体规则(逐字节拆解)
DES 密钥按 8 字节(64 bit) 组织:
- 1 字节 = 8 个二进制位
- 对每个字节:前7位 = 真正密钥位,第8位 = 奇偶校验位
作用:
- 奇偶校验位:只用来检错(传输/存储时判断密钥是否损坏、出错),不参与任何加密、轮函数运算。
- 8 个字节 → 总共 8 个校验位。
- 总长度:(8 \times 8 = \boldsymbol{64}\ \text{bit})
- 有效密钥位:(8 \times 7 = \boldsymbol{56}\ \text{bit})
- 校验位总数:(64 - 56 = 8\ \text{bit})
2. 为什么教材只提 56 位?
-
密钥安全强度只看有效位 校验位不增加密钥复杂度、不提升安全性,攻击者破解时只需要穷举 56 位,和8个校验位无关。 所以讨论密钥空间、破解难度、安全等级,一律用 56 位。
-
标准定义区分
- 工程/协议/硬件实现:说 64 位密钥(指物理存储、传输的完整长度)。
- 密码学理论、安全分析、考题/教材:说 56 位密钥(指密码学有效位数)。
3. 补充小知识点
- 奇偶校验一般是奇校验:保证每个8位字节里
1的个数为奇数。 - 这8位校验位可以由前56位直接推导,不是独立随机位。
- 现代视角:DES 56位有效密钥强度已不足,容易被暴力破解,现在基本只用 3DES/AES 替代。
注意:本文归作者所有,未经作者允许,不得转载