各个层次的安全性
安全电子邮件
Alice需要发送机密的报文m给Bob
Alice
- 产生随机的对称秘钥, K s K_s Ks
- 使用 K s K_s Ks对报文进行加密(为了效率)
- 对 K s K_s Ks使用Bob的公钥进行加密
- 发送 K s ( m ) K_s(m) Ks(m)和 K B ( K S ) K_B(K_S) KB(KS)给Bob
Bob
- 使用自己的私钥解密 K S K_S KS
- 使用 K S K_S KS解密 K S ( m ) K_S(m) KS(m)得到报文
Alice数字签署文件
发送报文(明文)和数字签名
Alice 需要提供源端的报文完整性和可认证性
Alice加密:
- Alice 数字签署文件(采用自己的私钥签署报文的散列)
- 发送报文(明文)和数字签名
Bob解密: - Bob使用散列函数计算报文的散列 H(m)
- 使用Alice的公钥解密报文的散列 K A + ( K A − ( m ) ) K_A^+(K_A^-(m)) KA+(KA−(m))
- 比较 H(m) = K A + ( K A − ( m ) ) K_A+(K_A^-(m)) KA+(KA−(m))?
- 如果相等,说明m就是正确的
- 能采用Alice的公钥解密,说明是用Alice的私钥加密的,保证了源端可认证性
- 采用散列比较,保证了报文完整性(如果报文被修改,得到的散列也会被修改)
Alice 需要提供机密性,源端可认证性和报文的完整性
Alice使用了3个keys:自己的私钥,Bob的公钥,新产生出的对称式密钥
Pretty good privacy(PGP)
- Internet e-mail加密方案,事实上的标准.
- 使用前面讲述的:对称密钥加密,公开密钥加密,散列函数和数字签名.
- 能够提供机密性,源端的可认证性和报文完整性.
- 发明者, Phil Zimmerman, 是3年的犯罪调查的目标
/*A PGP signed message: */
---BEGIN PGP SIGNED MESSAGE---
Hash: SHA1
Bob:My husband is out of town tonight.Passionately yours, Alice
---BEGIN PGP SIGNATURE---
Version: PGP 5.0
Charset: noconv
yhHJRHhGJGhgg/12EpJ+lo8gE4vB3
mqJhFEvZP9t6n7G6m5Gw2
---END PGP SIGNATURE---
Secure sockets layer(SSL)
- 为使用SSL服务的、基于TCP的应用提供传输层次的安全性
- e.g.在Web的浏览器和服务器之间进行电子商务的交易(shttp)
- 所提供的安全服务:
- 服务器的可认证性,数据加密,客户端的可认证性(可选)
SSL三个阶段
握手
- Bob和Alice建立TCP连接
- 通过AC签署的证书认证Alice的身份
- 创建、加密(采用Alice的公钥),传输主密钥给Alice
- 不重数交换没有显示
密钥导出
- Alice,Bob采用共享的MS产生4个keys
- E B E_B EB:Bob -> Alice 数据加密key
- E A E_A EA:Alice -> Bob 数据加密key
- M B M_B MB:Bob -> Alice MAC(报文鉴别编码) key
- M A M_A MA:Alice -> Bob MAC key
- 加密和MAC算法在Bob,Alice之间协商
- 为什么要4个keys?
- 更安全
数据传输
IPsec:网络层次的安全性
- 网络层次的机密性
- 发送端主机IP数据报中的数据进行加密
- 数据:TCP或者UDP的段;ICMP和SNMP报文
- 网络层次的可认可性
- 目标主机可以认证源主机的IP地址
- 2个主要协议
- 认证头部(AH)协议
- 封装安全载荷 encapsulation security payload(ESP) 协议
- 不管AH还是ESP,源和目标在通信之前要握手
- 创建一个网络层次的逻辑通道:安全关联 security assocication(SA)
- 每一个SA都是单向
- 由以下元组唯一确定
- 安全协议(AH 或 ESP)
- 源IP地址
- 32bit连接ID
Authentication Header(AH)协议
- 提供源端的可认证性,数据完整性,但是不提供机密性
- 在IP头部和数据字段之间插入AH的头部
- 协议字段:51
- 中间的路由器按照常规处理这个数据报
AH头部包括
- 连接ID
- 认证数据:对原始数据计算报文摘要,使用源端的私钥进行数字签名
- 下一个字段定义了数据的类型(e.g. TCP,UDP,ICMP)
ESP协议
- 提供机密性,主机的可认证性,数据的完整性
- 数据和ESP尾部部分被加密
- next header字段在ESP尾部
- ESP认证的头部与AH类似
- 协议号 = 50