HTTP学习笔记05 - 安全的HTTP


为什么HTTP不安全

HTTP作为互联网上应用最为广泛的一种网络协议,目前最常见的版本有HTTP1.0, HTTP1.1和HTTP2。其中HTTP1.0和1.1版本传输为Text,也就是明文传输。而HTTP2传输的是二进制数据。但是如果不对数据进行加密处理的话,不管是二进制还是明文,都会存在很多安全风险,比如:数据篡改,身份伪造,中间人窃听等。

HTTPS (Secure Hypertext Transfer Protocol)

即安全超文本传输协议,它是在基于TLS/SSL的HTTP协议,可以理解为HTTP的安全版。HTTPS的主要作用是:

  1. 对数据进行加密,并建立一个安全信道来保证传输过程中的数据安全。
  2. 通过校验证书对网站服务器进行真实身份认证。
  3. 如果需要,通过客户端证书,也可以让服务端对客户端身份进行校验(双向校验)
  4. 对传输过程中的数据提供数据完整性保护。

由于在传输过程中使用加密套件(cipher suite)对数据进行加密,因此HTTPS能够解决在HTTP明文传输时的一些信息安全问题,比如:

  1. 信息窃听(中间人窃听)
  2. 信息篡改(比如强行给页面加入恶意的js)
  3. 信息劫持(将请求转发到恶意网站)

HTTPS和HTTP的区别是什么

1、HTTPS是加密传输协议,HTTP是名文传输协议;
2、HTTPS需要用到TLS/SSL证书,而HTTP不用;
3、HTTPS比HTTP更加安全,对搜索引擎更友好,利于SEO。
4、HTTPS标准端口443,HTTP标准端口80;
6、 配置正确的HTTPS网站在打开时会在浏览器的导航栏有一个明显的提示而HTTP网站则没有。 7、同一个网站,使用HTTPS的话建立连接的时间会比HTTP的要长,同时CPU的使用量也会更多(加解密和TLS/SSL握手)

总的来说HTTPS比HTTP更加安全,能够有效的保护网站用户的隐私信息安全,这也是为什么现在的HTTPS网站越来越多。