SSL(Secure Sockets Layer 安全套接字协议),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层与应用层之间对网络连接进行加密。
这是一种通过计算机网络进行安全通信的传输协议。HTTPS经由HTTP进行通信,但利用SSL/TLS来加密数据包。HTTPS开发的主要目的,是提供对网站服务器的身份认证,保护交换资料的隐私与完整性。这个协议由网景公司(Netscape)在1994年首次提出,随后扩展到互联网上,具体SSL协议的技术细节可以参考RFC文档
作用
普通的HTTP通信存在的安全隐患,所有的信息都是明文传输,互联网上的两个设备之间的HTTP通讯存在以下三个风险
数据内容被第三方窃听
因为数据都是明文传输,中间人可以很容易的获取传输内容
内容可能被篡改
中间人可以把内容修改后继续发送给另外一方
身份被冒充
接收方无法明确信息是否真的来自你认为的对方
为了解决这三个问题,由此诞生了互联网安全加密通信协议,也随之诞生了证书颁发机构,HTTPS的信任基于预先安装在操作系统中的证书颁发机构(CA)。因此,与一个网站之间的HTTPS连线仅在这些情况下可被信任:
- 浏览器正确地实现了HTTPS且操作系统中安装了正确且受信任的证书颁发机构;
- 证书颁发机构仅信任合法的网站;
- 被访问的网站提供了一个有效的证书,也就是说它是一个由操作系统信任的证书颁发机构签发的(大部分浏览器会对无效的证书发出警告);
- 该证书正确地验证了被访问的网站(例如,访问https://example.com时收到了签发给example.com而不是其它域名的证书);
- 此协议的加密层(SSL/TLS)能够有效地提供认证和高强度的加密。