458 字
2 分钟
一次一密与完善保密:理论上最安全的加密方案
一次一密(One-Time Pad,OTP)展示了密码学中一个重要结论:只要密钥满足严格条件,密文可以不泄露任何关于明文的信息。
从异或开始
异或满足 ,因此:
OTP 使用同一条密钥流进行加密与解密:
加密:c = m ⊕ k解密:m = c ⊕ k例如,10110010 ⊕ 01101101 = 11011111;将结果再次与相同密钥异或,即可恢复原文。
达到完善保密的三个条件
- 密钥必须真正随机。
- 密钥长度不能短于明文。
- 每个密钥只能使用一次。
重复使用密钥会失效若 、,则 。密钥被抵消,两个明文之间的关系暴露给攻击者。
什么是完善保密
Shannon 对完善保密的表达是:
即攻击者观察到密文 后,对明文 的判断没有获得额外信息。对任意给定的 与 ,OTP 都存在唯一的 ;只要所有等长密钥等概率出现,任何候选明文都同样可能。
理论与现实的差距
OTP 的问题是密钥分发:加密 100 GB 数据,就需要预先安全地共享 100 GB 真随机且从不复用的密钥。这使它只适合少数具备专用密钥分发能力的场景。
| 维度 | 一次一密 | 现代流密码 |
|---|---|---|
| 密钥来源 | 等长真随机密钥 | 短密钥生成伪随机密钥流 |
| 安全性质 | 信息论安全 | 计算安全 |
| 实际可用性 | 密钥管理成本极高 | 适合通用系统 |
OTP 是理解安全上界的好模型;现实中更常见的选择是经过验证的现代流密码或认证加密方案。
一次一密与完善保密:理论上最安全的加密方案
https://blog.xqcherry.top/posts/cryptography/perfect-secrecy-and-otp/