密码学
研究通信安全保密的学科
密码编码学
- 研究将明文转换成密文的技术
- 寻找生成高强度密码的有效算法
密码分析学
- 研究分析破译密码的方法
- 破译密码、伪造密码,窃取机密信息
密码体制的组成
- 全体明文的集合M——明文空间
- 全体密文的集合C——密文空间
- 全体密钥的集合K——密钥空间
- 加密算法E,由加密密钥控制的加密变换的集合
- 解密算法D,由解密密钥控制的解密变换的集合
密码学的技术基础
Kerckhoff 假设
- 对于所有的密钥,加密和解密算法迅速有效;
- 密码体制的安全性不依赖于算法的保密,而是依赖于密钥的保密
- 当前和今后较长的时间内,密钥仍然是密码体制安全性的关键;
- 密钥的产生、分配和管理是密码技术中重要的研究方向
- 现代密码技术普遍依赖于数学
- 无论是加密/解密技术,还是密码分析技术
密码技术作用
基本功能
- 提供保密性,使非授权用户无法知道信息的真实内容
其他功能
- 鉴别:信息的接收者应能够确认信息的真实来源
- 完整性:信息的接收者应能验证信息在传输过程中有没有发生改变
- 不可否认性:信息的发送方不能否认已发送过的信息
密码分析的主要方法
穷举法
通过试遍所有的明文或密钥来进行破译
- 穷举明文
- 将可能的明文进行加密,将得到的密文同截获的密文进行比对,从而确定正确的明文;
- 穷举密钥
- 用可能的密钥解密密文,直到得到有意义的明文,从而确定正确的明文和密钥
- 对抗手段
- 在明文和密文中增加随机冗余信息
- 增加密钥长度,提高生成密钥的随机性
- 穷举明文
统计分析法
通过分析密文、明文和密钥的统计规律来达到破译密码技术的方法;
- 对抗手段
- 设法使明文的统计特性与密文的统计特性不一样
- 对抗手段
密码技术分析法
根据所掌握的明文、密文的有关信息,通过数学求解的方法找到相应的加解密算法
- 原则上,受密码技术分析破译的密码技术已经不能使用
对抗手段
选用具有坚实数学基础和足够复杂的加解密算法
对密码技术进行攻击的4种情况
- 惟密文攻击
- 密码分析者仅知道一些密文,并试图恢复尽可能多的明文,并进一步推导出加密信息的密钥
- 已知明文攻击
- 分析者不仅知道一些信息的密文,而且还知道与之对应的明文,根据明文和密文试图推导出加密密钥或加密算法
- 选择明文攻击
- 分析者可以选择一些明文,并得到相应的密文,而且可以选择被加密的明文,并试图推导出加密密钥的酸法。
- 选择密文攻击
- 分析者可以选择不同的密文,并能得到相应的明文,并试图推导出加密密钥。
- 其他
- 自适应选择明文攻击、自适应选择密文攻击,…