SSL密码算法 密码算法包含3个: 密钥交换协议 定义了共享对称密钥在客户端及服务器之间是 怎样协商生成的。 对称加密算法 消息摘要(用于创建消息认证码MAc) 17
17 SSL密码算法 • 密码算法包含3个: – 密钥交换协议 • 定义了共享对称密钥在客户端及服务器之间是 怎样协商生成的。 – 对称加密算法 – 消息摘要(用于创建消息认证码MAC)
SSL密钥交换协议 >密钥交换协议是密码协议,允许双方在先前不 知情的情况下在不安全的通信信道上建立一个 共享密钥 >SSL提供了密钥交换协议 RSA(密钥用接收者的RSA公钥加密,这需要接收 者的公钥证书是有效的。) 加固的 Diffie-Hellman,服务器证书包含了 Diffie Hellman协议的公共参数部分,即,两个整数p和g 临时的 Diffie-Hellman 匿名的 Diffie-Hellman Forte2,Us政府使用,类似于U-KEY KEA,密钥交换算法,由US政府所用于密钥交换的 种算法
18 SSL-密钥交换协议 ➢ 密钥交换协议是密码协议,允许双方在先前不 知情的情况下在不安全的通信信道上建立一个 共享密钥 ➢ SSL提供了密钥交换协议 – RSA(密钥用接收者的RSA公钥加密,这需要接收 者的公钥证书是有效的。) – 加固的Diffie-Hellman,服务器证书包含了DiffieHellman协议的公共参数部分,即,两个整数p和g – 临时的Diffie-Hellman – 匿名的Diffie-Hellman – Fortezza,US政府使用,类似于U-KEY – KEA,密钥交换算法,由US政府所用于密钥交换的 一种算法
DH协议 Alice Bob Pick secret, random a Pick secret, random b g mod p Alice Bob Compute k=(g )a=gab mod p Compute k=(gab=gi mod Note: a key of the form ga is called a diffie-Hellman key
19 DH协议
DH协议 个变种 加固DH 服务器要在证书中包含的加固DH参数 客户端或者在证书中提供DH公共参数,或者在密 钥交换信息中提供一次性DH参数 临时DH 服务器和客户端都产生一次性DH参数 服务器使用它的RSA私钥对DH参数签名 客户端会用它的RSA私钥对握手消息的哈希值进 行签名来验证它自己(如果服务器要求的话) 匿名DH 服务器和客户端都产生一次性DH参数 它们无需认证地发送各自的参数
20 DH协议 • 三个变种 – 加固DH • 服务器要在证书中包含的加固DH参数 • 客户端或者在证书中提供DH公共参数,或者在密 钥交换信息中提供一次性DH参数 – 临时DH • 服务器和客户端都产生一次性DH参数 • 服务器使用它的RSA私钥对DH参数签名 • 客户端会用它的RSA私钥对握手消息的哈希值进 行签名来验证它自己(如果服务器要求的话) – 匿名DH • 服务器和客户端都产生一次性DH参数 • 它们无需认证地发送各自的参数
SSL支持的加密算法 DES · Triple-DES Fortezza RC4
21 SSL支持的加密算法 • DES • Triple-DES • Fortezza • RC4