开启极速 HTTPS 体验

/ 0评 / 0

0x01 前言

如果说 HTTP/​2 是当前互联网 Web 发展的讨论热点之一,那么下一个热点应该就是 TLS 1.3 了。
上次加密协议更新至今已有八年多,TLS 1.3 的最终版本现已于 2018 年 8 月发布。


0x02 当前的TLS协议存在问题

老版本的 SSL 协议被公认在完整性校验、密钥协商过程中有重大缺陷,因此,2011 年与 2015 年 IETF 小组相继声明禁止使用 SSL 2.0、3.0。
TLS 协议针对此前披露的漏洞做了相应的处理,但是因为其复杂性,还没有一个版本能真正保证绝对的安全。

目前最新版本的 TLS 1.2 发布距今已有九年时间,在此期间,许多 SSL/​TLS 协议的新漏洞被发现,比如针对其压缩机制的 CRIME 漏洞,针对 CBC 块加密模式的 BEAST 漏洞(主要是针对 SSL 3.0 和 TLS 1.0),早已不再是当初设计者认为的那么安全,人们迫切需要新的协议将其代替。


0x03 TLS 1.3有哪些变化?


0x04 TLS 1.3完整握手工作流


0x05 速度优势

在 Web 性能方面,TLS 和加密连接总是增加了一些开销。HTTP / 2 肯定有助于解决这个问题,但 TLS 1.3 通过 TLS 错误启动和零往返时间(0-RTT)等功能帮助加速加密连接。

简单地说,使用 TLS 1.2,需要两次往返才能完成 TLS hand­shake。使用 1.3 时,它只需要一次往返, 从而将加密延迟减少一半。这有助于这些加密连接感觉比以前更快一点。


0x06 如何为自己站点启用TLS 1.3

演示环境:

修改网站配置文件

//替换
ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:EECDH+ECDSA+3DES:EECDH+aRSA+3DES:RSA+3DES:!MD5;
//替换
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
//增加
add_header Strict-Transport-Security "max-age=31536000";

0x07 开启成功

TIM图片20181216133616.png
TIM图片20181216133616.png

0x08 总结

TLS 1.3 使用了复杂的密钥导出过程,增强了最终使用的密钥的安全性。同时简化了所使用的加密算法,废弃了 RC4、3DES、MD5、SHA1、AES-CBC 等加密算法,删除了压缩、重协商等具有漏洞的机制,大大精简了协议。
因此,TLS 1.3 如果能够得到普及,网络数据的传递将会变得更加安全、隐秘,TLS 1.3 的推广需要每一位开发者、运营者的认可和支持。

目前 TLS 1.3 虽然还在草案阶段,但是其基本原理和思想已经应用在了实际生活中,chrome 等浏览器都已准备好了对其的支持,期待 TLS 1.3 正式成为一个协议规范的那一天。

发表评论