8.6 使用TCP连接安全:SSL
Last updated
Was this helpful?
Last updated
Was this helpful?
安全套接字层(Secure Socket Layer):采用机密性、数据完整性、服务器鉴别和客户鉴别来强化TCP,例如URL使用HTTPS。
运输层安全性(Transport Layer Security,TLS):SSL版本3的强化。
握手:建立TCP连接、认证用户真实性、确定一个主密钥MS(对称密钥)。
密钥导出:从主密钥中提出4个密钥,两个用于加密数据,两个用于验证数据完整性。
数据传输:加密“记录+MAC”。
SSL记录。
SSL握手
客户发送它支持的密码算法列表,连同一个客户的不重数。
从算法列表中,服务器选择一种对称算法、一种公钥算法、一种MAC算法,并将选择好的算法、证书和一个服务器不重数返回给客户。
客户验证证书,提取服务器公钥,生成一个前主密钥(Pre-Master Secret,PMS),用服务器公钥加密该PMS并发送给服务器。
使用相同的密钥导数函数,客户和服务器独立地从PMS和不重数中计算出主密钥(Master Secret,MS),然后MS被切割成两个MAC密钥。
客户发送握手报文的一个MAC。
服务器发送握手报文的一个MAC。
连接关闭
TCP FIN报文段。