http + 认证 + 加密+ 完整性保护 = HTTPS
其中 SSL 协议就负责完成了 HTTPS 的加密,认证和完整保护的新特性。关于 SSL。
披着SSL外壳的 HTTP 就是 HTTPS。其中SSL就是 Secure Sockets Layer 安全套接层,TLS 是传输层安全 (Transport Layer Security) 的意思,TLS 与 SSL 在传输层对网络连接进行加密。
使用了 SSL 协议后,以前 HTTP 是直接和 TCP 进行通信,现在呢,则是先和 SSL 进行通信。再有 SSL 和 TCP 进行通信。
HTTP 的缺点
- 通信采用明文通信,可能会被窃听
- 不能验证通信方的身份,所以可能遭遇伪装的访问。
- 无法验证报文的完整性,所以接收到的可能已经被修改。
所以针对这三个缺点,HTTPS 出现了,能够完美的解决这三个问题。实现下面的新特性:
1)认证用户和服务器,确保数据发送到正确的客户机和服务器;
2)加密数据以防止数据中途被窃取;
3)维护数据的完整性,确保数据在传输过程中不被改变。
为什么不加密的信息会被窃听?
这是 TCP/IP 协议族的工作机制,通信内容在所有的通信线路上都有可能遭到窥视。因为整个互联网是一个连接到全世界所有网络的巨型网络,在任意的服务器和客户端进行通信时,所经过的通信线路,包括网络设备,光缆,计算机等,都不可能是个人所有,所以每一个通信环节都有可能遭到窥视。
即使经过加密处理的通信,也会被窥视到通信的内容,不过加密后的报文就可能让人无法破解报文中的信息。
不进行认证任何用户都可以发起请求
缺点:
1. 无法确定请求的到了指定的服务器,可能遇到了伪装
2. 无法确定响应到了指定的客户端,可能遇到了伪装。
3. 无法确定通信的对方是否具有访问的权限。
证书可以用来确认通信方,而且从技术上来说,伪造证书是非常难的一件事。所以只要能确定对方的证书就可以判断通信方的意图。
通信信息篡改
在通信的过程中,传输的信息可能已经被篡改,但是接收方是无法察觉到的。
通信的过程中信息被篡改,而用户是无法察觉到这样的攻击的。这样的攻击叫做中间人攻击
。
通常会在购物的结算页面和登录页面使用 HTTPS 通信。保证通信的安全和信息不被泄露。