网络攻防学习笔记 Day28
SSL 握手协议是客户端和服务器用 SSL 连接通信时使用的第一个子协议,在开始传输上层应用数据之前使用,也是 SSL 中最复杂的协议。该协议允许服务器和客户端相互验证,协商加密算法和 MAC 算法以及加密密钥,用来保护在 SSL 记录协议中发送的数据。
会话标志(session ID):一个变长的标志符。非 0 值表示客户端想更新现有连接的参数,或为此会话创建一条新的连接;0 值表示客户端想在新会话上创建一条新连接。
TLS 记录协议格式与 SSL 记录协议格式完全相同,且各字段意义也完全一致。唯一不同的是版本号。TLS 1.0 的主版本为 3,次版本为 1,而与之对应的 SSL 3.0 的主版本为 3,次版本为 0。TLS1.1 的主版本为 3,次版本为 2。
TLS 中使用的另一种密钥交换方式是基于 Diffie-Hellman 协议的匿名 Diffie-Hellman 交换和瞬时 Diffie-Hellman 交换。在 Diffie-Hellman 协议中,客户端和服务器都会创建一个公私钥对,由此作为开始,然后将公钥部分发送给另一方。当每一方都收到了对方的公钥,使用各自的私钥将其组合,并以相同的值作为结尾,即 pre-master secret。然后服务器使用数字签名来保证交换的数据没有被篡改。
TLS1.3 已经删除了 RSA 密钥交换算法,保留了瞬时 Diffie-Hellman 作为唯一的密钥交换机制。
TLS 1.3 中允许的唯一认证加密方法是 AEAD(AuthenticatedEncryption with Additional Data),它将机密性和完整性整合到一个无缝操作中。建议用 SHA-2,不建议使用安全性较弱的 MD5 和 SHA-1。
由于 IPsec VPN 是在网络层实现加密通信,因此 IPsec VPN 主要应用于需要将远程终端或分支机构网络与机构内部网络安全连接起来的场合,而 SSL VPN 则主要用于远程终端通过 Web 浏览器访问内部网络中的应用服务器(如 Web 服务器、电子邮件服务器等)这一场合。
版权声明: 本文为 InfoQ 作者【穿过生命散发芬芳】的原创文章。
原文链接:【http://xie.infoq.cn/article/d4b2cd82b651254b95f95efe6】。文章转载请联系作者。
评论