什么是HTTPS网站?
HTTPS可以理解为HTTP+TLS,HTTP是互联网中使用最为广泛的协议,目前大部分的WEB应用和网站都是使用HTTP协议传输。
那网站为什么要实现HTTPS?
一言概之,为保护用户隐私和网络安全。通过数据加密、校验数据完整性和身份认证三种机制来保障安全。
https://www.ssllabs.com/ssltest/ bodor.cn
提高HTTPS网站性能和访问速度
如果你认为网站加上TLS证书,就是HTTPS网站了,那你就跟12306犯了同样的错误……
首先,网站在加上TLS证书时,为什么会变慢?这主要又两方面造成:
1. HTTPS比HTTP在通信时会产生更多的通信过程,随之RTT时间就会增加;
2. HTTPS通信过程的非对称和对称加解密计算会产生更多的服务器性能和时间上的消耗。
- HSTS
-
HTTPS网站通常的做法是对HTTP的访问在服务器端做302跳转,跳转到HTTPS。但这个302跳转存在两个问题:
1. 使用不安全的HTTP协议进行通信;
2. 增加一个Round-Trip Time。
而HSTS是HTTP Strict Transport Security的缩写,服务器端配置支持HSTS后,会在给浏览器返回的HTTP Header中携带HSTS字段,浏览器在获取到该信息后,在接下来的一段时间内,对该网站的所有HTTP访问,浏览器都将请求在内部做307跳转到HTTPS,而无需任何网络过程。
- Session Resume
Session Resume即会话复用,这提升HTTPS网站性能最基础也是最有效的方法。
在HTTPS握手阶段,对服务器性能消耗最为严重的是非对称密钥交换计算,而Session Resume通过对已经建立TLS会话的合理复用,节省非对称密钥交换计算次数,可大幅提高服务器的TLS性能。