热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

浅谈TLS1.3

本文主要从TLS1.3的优势、部署和时间发展线介绍了这上篇文章回顾:浅谈DHCP协议

浅谈 TLS 1.3

本文主要从TLS 1.3的优势、部署和时间发展线介绍了这 种用于为计算机网络通信提供安全性的密码协议TLS

上篇文章回顾:浅谈DHCP协议

TLS简介

按照维基百科的定义,TLS 是一种用于为计算机网络通信提供安全性的密码协议,其前身安全套接层(SSL)想必很多人都听说过。TLS 被广泛应用于基于 IP 的网络协议,如 HTTP、SMTP、FTP 等。最近几年内,Let's Encrypt 提供的免费证书服务、浏览器只对 HTTPS 站点启用 HTTP/2 和把未使用 HTTPS 而要求输入密码的网站标记为不安全等因素强力推动了 HTTPS 的部署,国际上 HTTPS 的部署率现已超过 50%。在各种因素的推动下,国内站点和应用也在大力推广 TLS 等密码协议的使用。

浅谈 TLS 1.3

Figure 1: 数据来自谷歌 Transparency Report,2018年9月14日获取

 TLS 1.3的优势

安全保护

TLS 1.3 移除了很多过时的密码学原型和功能(例如压缩、重协商),强制要求完美前向安全。TLS 1.2 支持了很多加密算法(包括 3DES、静态 DH 等),这导致了 FREAK、Logjam、Sweet32 等攻击的出现。TLS 1.3 缩紧了对加密原型的限制,避免了因服务器启用不安全的算法导致协议的安全性受到影响。在这方面的简化也使得运维和开发者配置 TLS 变得更容易,不再容易误用不安全的配置。

TLS 1.3 之前,整个握手环节都是没有加密保护的,这泄漏了很多信息,包括客户端和服务器的身份。TLS 1.3 对握手的绝大部分信息进行了加密,这保护了用户隐私,也在一定程度上防止了协议僵化问题。

性能提升

虽然电脑越变越快,但在互联网上传输数据耗费的时间依然受限于光速,所以两个节点间来回传输一次的时间(RTT)成为了限制协议性能的因素之一。TLS 1.3 只需要一个 RTT 就能完成握手,相比 TLS 1.2 省去了一个 RTT。并且 TLS 1.3 支持 “0-RTT” 模式,在该模式下客户端可以在握手的同时发送数据,极大地加快了页面的加载速度。TLS 1.3 还增加了 ChaCha20/Poly1305 支持,在不支持 AES 硬件指令的老设备上能提升加、解密性能。

浅谈 TLS 1.3

浅谈 TLS 1.3

TLS 1.3的部署

Tengine 2.2.2 / nginx 1.13.0 提供了 TLS 1.3 支持,和 OpenSSL 1.1.1 配合即可将网站升级到 TLS 1.3。在配置文件里将 TLSv1.3 加到 ssl_protocols 中就可以启用 TLS 1.3 支持了。Qualys 的  SSL 服务器测试 [1] 是很方便的 TLS 配置测试工具,可以很方便地检测公网站点的 TLS 配置及其安全性。

协议僵化问题

当一个互联网协议长时间不发生变化时,基于该协议开发的设备就可能无视其预留的变通手段而对其特性作出超出标准的假设,这就是协议僵化现象。在 TLS 1.3 的完善过程中,新的协议因协议僵化问题而不得不模拟老协议的一些行为,这大大拖慢了 TLS 1.3 标准化的进度。尽管在制定 TLS 1.3 标准时工作组针对很多实际测试时出现的问题进行了处理,但我们部署到线上环境还是需要注意可能出现的兼容性问题。

 TLS 1.3发展时间线

  • 2017年4月25日,nginx 1.13.0 发布,增加了 TLS 1.3 支持。

  • 2018年3月21日,IESG 批准了 TLS 1.3 草案。

  • 2018年4月17日,Chrome 66 默认开启了对 TLS 1.3 草案的支持。

  • 2018年5月9日,Firefox 60 默认开启了对 TLS 1.3 草案的支持。

  • 2018年8月10日,IETF 发布了 TLS 1.3 标准。

  • 2018年9月11日,OpenSSL 1.1.1 (LTS) 版本发布,提供 TLS 1.3 支持。TLS 1.3 超过 TLS 1.0 成为 Cloudflare 上使用率排名第二的 TLS 版本。

  • 2018年10月16日,Chrome 70 支持 TLS 1.3 正式标准。

  • 2018年10月23日,Firefox 63 支持 TLS 1.3 正式标准。

参考资料

[1] https://www.ssllabs.com/ssltest/

[2] https://tools.ietf.org/html/rfc8446

[3] https://en.wikipedia.org/wiki/Transport_Layer_Security

[4] https://blog.mozilla.org/security/2018/08/13/tls-1-3-published-in-firefox-today/

[5] https://ietf.org/blog/tls13/

[6] https://kinsta.com/blog/tls-1-3/

浅谈 TLS 1.3


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 我们


推荐阅读
  • 本文档详细介绍了在 Kubernetes 集群中部署 ETCD 数据库的过程,包括实验环境的准备、ETCD 证书的生成及配置、以及集群的启动与健康检查等关键步骤。 ... [详细]
  • 本文回顾了2017年的转型和2018年的收获,分享了几家知名互联网公司提供的工作机会及面试体验。 ... [详细]
  • 远程过程调用(RPC)是一种允许客户端通过网络请求服务器执行特定功能的技术。它简化了分布式系统的交互,使开发者可以像调用本地函数一样调用远程服务,并获得返回结果。本文将深入探讨RPC的工作原理、发展历程及其在现代技术中的应用。 ... [详细]
  • 2017-2018年度《网络编程与安全》第五次实验报告
    本报告详细记录了2017-2018学年《网络编程与安全》课程第五次实验的具体内容、实验过程、遇到的问题及解决方案。 ... [详细]
  • HTTPS与TLS/SSL协议详解:握手及记录协议
    HTTPS,即HTTP over TLS/SSL,通过在HTTP通信层引入安全协议,确保数据传输的安全性。本文将深入探讨TLS/SSL协议的基本概念、HTTPS的必要性,以及TLS握手和记录协议的工作原理。 ... [详细]
  • Redis安全防护深入解析
    本文详细探讨了如何通过指令安全、端口管理和SSL代理等措施有效保护Redis服务的安全性。 ... [详细]
  • 本文详细介绍了虚拟专用网(Virtual Private Network, VPN)的概念及其通过公共网络(如互联网)构建临时且安全连接的技术特点。文章探讨了不同类型的隧道协议,包括第二层和第三层隧道协议,并提供了针对IPSec、GRE以及MPLS VPN的具体配置指导。 ... [详细]
  • 本文将详细介绍如何在ThinkPHP6框架中实现多数据库的部署,包括读写分离的策略,以及如何通过负载均衡和MySQL同步技术优化数据库性能。 ... [详细]
  • 深入解析SSL Strip攻击机制
    本文详细介绍了SSL Strip(一种网络攻击形式)的工作原理及其对网络安全的影响。通过分析SSL与HTTPS的基本概念,探讨了SSL Strip如何利用某些网站的安全配置不足,实现中间人攻击,以及如何防范此类攻击。 ... [详细]
  • 本文详细介绍了在不同操作系统中查找和设置网卡的方法,涵盖了Windows系统的具体步骤,并提供了关于网卡位置、无线网络设置及常见问题的解答。 ... [详细]
  • 本文将详细介绍通过CAS(Central Authentication Service)实现单点登录的原理和步骤。CAS由耶鲁大学开发,旨在为多应用系统提供统一的身份认证服务。文中不仅涵盖了CAS的基本架构,还提供了具体的配置实例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 本文深入探讨了JavaScript中实现继承的四种常见方法,包括原型链继承、构造函数继承、组合继承和寄生组合继承。对于正在学习或从事Web前端开发的技术人员来说,理解这些继承模式对于提高代码质量和维护性至关重要。 ... [详细]
  • 全能终端工具推荐:高效、免费、易用
    介绍一款备受好评的全能型终端工具——MobaXterm,它不仅功能强大,而且完全免费,适合各类用户使用。 ... [详细]
  • 本文详细介绍了Linux操作系统中的cp和scp命令,包括它们的基本使用方法、常见选项以及如何通过scp命令安全地在不同主机之间传输文件。 ... [详细]
  • 本文详细介绍了如何使用 PHP 编程语言输出 99 乘法表,包括使用不同的循环结构如 do-while、for 循环等方法,并提供了具体的代码示例。 ... [详细]
author-avatar
手机用户2502934505
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有