文档介绍:《网络信息安全》
dae_meng
dae_meng
复习
对称加密算法
1 DES算法
2 IDEA算法
dae_meng
第二章信息加密技术(3)
本节学习目标:
掌握常用加密算法及其相关知识
对称加密算法:DES、IDEA
非对称加密算法:RSA
dae_meng
非对称密码算法原理
对称密钥密码系统的缺陷
密钥必须经过安全的信道分配
无法用于数字签名
密钥管理复杂 O(n2)
76年Diffie和Hellman发表了“密码学的新方向”,奠定了公钥密码学的基础
公钥技术是二十世纪最伟大的思想之一,是密码学历史上唯一的一次真正的革命
改变了密钥分发的方式
可以广泛用于数字签名和身份认证服务
基于数学函数而不是代替和换位
dae_meng
每个通信实体有一对密钥(公钥,私钥)。公钥公开,用于加密和验证签名,私钥保密,用作解密和签名
A向B 发送消息,用B的公钥加密
B收到密文后,用自己的私钥解密
PlainText
加密
算法
解密
算法
A
B
cipher
PlainText
B的私钥
C的公钥
B的公钥
任何人向B发送信息都可以使用同一个密钥(B的公钥)加密
没有其他人可以得到B的私钥,所以只有B可以解密
公钥密码系统的加密原理
dae_meng
A向B 发送消息,用A的私钥加密(签名)
B收到密文后,用A的公钥解密(验证)
PlainText
加密
算法
解密
算法
cipher
PlainText
A
B
A的私钥
A的公钥
公钥密码系统的签名原理
dae_meng
公钥密码算法的表示
对称密钥密码
密钥:会话密钥(Ks)
加密函数:C= EKs[P]
对密文C,解密函数:DKs[C],
公开密钥
(KUa,KRa)
加密/签名:C= EKUb[P],EKRa[P]
解密/验证:P= DKRb[C],DKUa[C]
dae_meng
X
加密
(签名)
加密
解密
解密
(验证)
X
Y
Z
Y = EKRa (X), Z= EKUb[Y] = EKUb [ EKRa (X)]
Y = DKRb (Z), X= DKUa[Y] = DKUa [ DKRb (Z)]
A
B
产生密钥对
产生密钥对
KRa
KUa
KRb
KUb
数字签名和加密同时使用
Y
dae_meng
基本思想和要求
涉及到各方:发送方、接收方、攻击者
涉及到数据:公钥、私钥、明文、密文
公钥算法的条件:
产生一对密钥是计算可行的
已知公钥和明文,产生密文是计算可行的
接收方利用私钥来解密密文是计算可行的
对于攻击者,利用公钥来推断私钥是计算不可行的
已知公钥和密文,恢复明文是计算不可行的
(可选)加密和解密的顺序可交换
dae_meng
如何设计一个公钥算法
公钥和私钥必须相关,而且从公钥到私钥不可推断
必须要找到一个难题,从一个方向走是容易的,从另一个方向走是困难的
如何把这个难题跟加解密结合起来
计算可行和不可行的界