通过这篇文章了解:
- 在TLS握手过程中到底发生了什么?
- TLS使用什么加密算法来保护数据?
- 客户端和服务器如何交换密匙?
- Diffie-Hellman Ephemeral密钥交换如何工作?
- 为什么我们需要一个数字证书?
- 为什么它需要由证书机构签署?
- 什么是数字签名?它是如何被签署和验证的?
- 完美前向保密意味着什么?
- AEAD、MAC、HKDF、0-RTT如何工作?
- 什么是椭圆曲线加密法?
- 与TLS 1.2相比,TLS 1.3有什么新内容?
一、什么是SSL/TLS?
SSL是安全套接字的缩写,是TLS的前身。
TLS是传输层安全的缩写,是一种加密协议,为计算机网络提供安全通信。
当然,除了传输层安全协议,还有二层隧道技术PPTP\L2TP,三层安全协议IPSec,应用层有安全协议S-HTTP,电子邮件软件加密包PGP,安全的电子交易SET等。
二、SSL/TLS的历史
SSL2.0 在2011年已经废弃。
SSL3.0 在2015年已经废弃。
最近,2020年3月,TLS1.0 和 TLS1.1也已经废弃,所以,现在只有TLS 1.2 和 TLS1.3.
三、TLS用在哪里?
最初,TLS广泛用在web服务。所有使用HTTPS的web服务都是使用TLS。
同样的,使用SMTPS协议的email 实际上就是SMPT 和TLS.
FTPS 也是 FTP + TLS.等等。
四、为什么需要TLS?
因为通过TLS可以帮助我们:
- 认证
○ TLS验证通信双方的身份,通常是客户端和服务器。
○ 在对称加密技术的帮助下,TLS确保我们将进入真实的网站,而不是一个假的网站。
- 保密性
○ TLS使用对称秘钥对数据进行加密传输。
- 诚信
TLS通过检查信息验证码在识别传输过程中的任何改动。
五、TLS如何工作?
TLS由两个阶段/协议组成,
- 握手协议
○ 协商协议版本
○ 选择加密算法(密码套件)
○ 通过非对称加密技术认证彼此
○ 建立共享密码,用于下个阶段的对称加密
- 记录协议
○ 所有发出的消息都使用握手阶段建立的共享秘钥加密。
○ 加密消息传输到另一端。
○ 接收数据者将会验证传输过程中是否有篡改。
○ 如果没有,消息将使用相同的对称秘钥解密。
所以,通过TLS可以实现消息的保密性和完整性。
六、为什么TLS同时使用对称和非对称加密技术?
为什么不只是使用一个呢?
因为对称加密技术无法提供认证。
因为客户端和服务器都只有一个秘钥,对对方一无所知,无法验证。更不用说他们如何在不泄漏给公众的情况下得到相同的秘钥。
那如果只使用非对称技术呢?
因为非对称加密比对称加密慢得多。对称加密速度是非对称加密的100倍甚至1000倍。因此,非对称加密技术不适用于批量加密。
网友评论