目录
第九章:公钥密码学与RSA
一、公钥密码学
1.公钥密码的提出
- 对称密码体制的密钥分配问题
- ①需要安全密钥传输信道
- ②多用户网络中密钥数目巨大虚拟网络交互需要数字签名功能
因此,需要另外一种密码体制:公钥密码体制
注意:对称密码体制和公钥密码体制关系是互补,不是替代
2.公钥密码的特征
公钥/双钥/非对称密码都是指使用两个密钥:
- 公钥:可以公开的密钥
- 私钥:只能由接收者私存
- 两个密钥配对使用
- 公钥加密信息,私钥解密信息
- 私钥签名信息,公钥验证签名
- 参与方不对等,所以是非对称的
基于数学函数而非基于替换和置换
3.公钥密码系统的组成和应用
1.组成
组成:明文+加密算法+公钥+私钥+解密算法+密文
2.应用
- 应用1:发送 消息给接收方:发送方用接收方的公钥加密消息
- 应用2:发送方对消息进行数字签名:发送方用自己的私钥加密消息
- 应用3:发送方和接收方密钥交换
4.公钥密码的要求
- 公私钥对产生在计算上容易;
- 加密在计算上容易;
- 解密在计算上容易;
- 已知公钥,求私钥在计算上不可行;
- 已知公钥和密文,恢复明文计算上不可性。
- 加密和解密函数的顺序可以交换(附加条件)
5.公钥密码安全分析
一样存在穷举攻击
- 从安全性考虑,使用的密钥一般都非常大(>512bits )
- 为了便于实现加解密,明文又必须足够短。
- 公钥密码目前仅限与密钥管理和签名中。
另外一种攻击方法:从给定的公钥计算出私钥的方法。
- 到目前为止,还未在数学上证明对一特定公钥算法这种攻击是不可行的。(包括RSA)
公钥体制特有的攻击
- 穷举消息攻击
二、RSA算法
1.RSA算法的安全性原理
安全性基于大整数的素数因子分解的困难性
2.RSA算法描述
1.RSA 密钥的生成
2.RSA的加密、解密过程
3.RSA的数学原理
RSA举例
1.RSA密钥生成
2.RSA 的加密、解密过程
RSA安全性分析
攻击RSA可能的方法有:
- 穷举搜索 (对于给定的数字规模是不可行的)
- 数学攻击 (基于计算ø(n)的困难性, 模n的因子分解的困难性)
- 计时攻击 (基于解密的运行情况)
- 选择密文攻击(RSA的已知特性)