揽阁信息科技(上海)有限公司

行业新闻Security News

您当前所在位置: 主页 > 新闻动态 > 行业新闻

SSL、TLS 和 HTTPS

发布日期:2025-05-28  浏览次数:

SSL、TLS 和 HTTPS(图1)

加密对于网络安全至关重要,因为它可以保护敏感数据免遭未经授权的访问和网络威胁。它确保通信安全,防止数据泄露,并在用户和网站之间建立信任。公钥基础设施 (PKI) 通过SSL/TLS实现身份验证、加密和数据完整性,在这方面发挥着至关重要的作用。TLS 是 SSL 的后继者,目前已成为确保在线交互安全的标准,因为 SSL 因已知漏洞已被弃用。HTTPS 并非一个独立的协议,而是运行在 TLS 之上的 HTTP,它确保浏览器和服务器之间以加密方式传输数据,从而实现安全的网页浏览。


什么是 SSL?

SSL(安全套接字层)是 Netscape 公司在 20 世纪 90 年代中期开发的原始安全协议。它提供了一种加密浏览器和 Web 服务器之间传输数据的方法。在其漏洞暴露之前,SSL 是一种广泛采用的在线通信安全协议,它依赖于一个简单的验证过程。该过程如下:

  1. 您的浏览器请求网站证明其身份。
  2. 网站发送 类似于数字身份证的SSL证书。
  3. 您的浏览器验证证书。
  4. 如果证书有效,则加密通信开始。


由于发现了漏洞,SSL 3.0 的所有版本(1.0、2.0 和 3.0)现在都被视为已过时,并且根据 RFC 7568 的规定,SSL 3.0 已于 2015 年正式弃用。


什么是 TLS?

TLS(传输层安全协议)是当前用于保护网络流量的协议,目前有多个版本:TLS 1.0、TLS 1.1、TLS 1.2 和 TLS 1.3。TLS 是对 SSL 的改进,目前已被广泛采用。虽然“SSL”一词仍然被广泛使用,但大多数现代网站都依赖 TLS 进行加密。值得注意的是,自 2020 年 3 月起,TLS 1.0 和 TLS 1.1 均因其漏洞和过时的加密方法而被弃用。

  • 更强的安全性:TLS 解决了 SSL 和旧版 TLS 中发现的漏洞,使其更能抵御BEAST 和 POODLE 等攻击。
  • 更快的性能:TLS 中的握手过程更快,特别是在TLS 1.3中,它只需要一次往返即可建立安全连接,而 TLS 1.2 中则需要两次往返。
  • 现代加密:它采用先进的加密方法,例如带关联数据的认证加密 (AEAD) 密码,并要求完全前向保密 (PFS),确保会话密钥是唯一的,并在使用后丢弃,以防止解密过去的会话。


什么是 HTTPS?

HTTPS 代表 超文本传输安全协议 ( HTTP)。它是HTTP的安全版本,用于加载网页。HTTPS 使用加密技术来保护浏览器和网站之间交换的数据。虽然人们通常说 HTTPS 使用“SSL/TLS 加密”,但这种说法可能会产生误导。HTTPS 不再使用 SSL;它完全依赖于 TLS(SSL 的现代继承者)。由于存在安全漏洞,所有版本的 SSL 都已弃用,TLS 已取代 SSL 成为保护 Web 通信安全的标准协议。


当您在 URL 中看到“https://”或浏览器中出现挂锁图标时:这表示您的网站使用了 SSL/TLS 加密。您的数据受到保护,不会被任何试图利用数据泄露漏洞的攻击者拦截。然而,了解 HTTPS 如何影响性能至关重要,尤其是在 TLS 握手和会话管理方面。


HTTPS 的性能影响
  • TLS 握手开销:初始 TLS 握手需要额外的往返才能建立安全连接。与 HTTP 相比,这通常需要两次额外的往返,从而可能导致延迟。不过,现代硬件和优化的协议已显著降低了这种开销。
  • 会话恢复:为了提升性能,TLS 支持会话恢复技术,使客户端和服务器能够在后续连接中跳过完整的握手过程。这可以减少延迟并提升加载速度,尤其对于经常访问同一网站的用户而言。
  • HTTP/2 的影响:HTTP/2 的采用通过在单个连接上复用多个请求来降低延迟,进一步增强了 HTTPS 的性能。这最大限度地减少了多次 TLS 握手的需要,使 HTTPS 站点的速度比以往任何时候都更快。
  • 资源消耗:虽然 HTTPS 乍一看似乎更耗费资源,但研究表明,TLS 的 CPU 负载不到 1%,并且每个连接的内存占用极小。因此,对于现代服务器而言,其性能影响通常可以忽略不计。


虽然 HTTPS 由于 TLS 握手而引入了一些开销,但 HTTP/2 等技术和协议的进步已显著减轻了这些影响,确保使用 HTTPS 的安全优势远远超过任何轻微的性能影响。


SSL、TLS 和 HTTPS 如何协同工作?

  • SSL/TLS是在传输过程中加密数据的协议。
  • HTTPS使用这些协议来保护网络流量。HTTPS 是在 TLS 上运行的 HTTP,握手是 TLS 过程的一部分,用于在浏览器和服务器之间建立安全连接。
  • 当您访问 HTTPS 网站时,您的浏览器和服务器会执行“SSL/TLS 握手”以建立安全连接。


HTTPS 的采用率激增,得益于浏览器的一系列举措,尤其是谷歌 Chrome 决定将 HTTP 网站标记为“不安全”。此警告最初适用于收集敏感信息的网站,现已扩展到所有 HTTP 页面,促使网站所有者优先考虑安全性。因此,顶级网站的 HTTPS 使用率显著提升,目前超过 75% 的 Chrome 流量受到 HTTPS 的保护。


常见误解

许多人所说的“SSL 证书”或“TLS 证书”实际上是 X.509 数字证书,用于验证网站身份并启用加密连接。


X.509 证书在 TLS 的运行中起着至关重要的作用。当您使用 HTTPS 访问网站时,服务器会在 TLS 握手期间提供其 X.509 证书。此证书包含有关网站的信息以及用于加密数据的公钥。您的浏览器会根据受信任的组织(即证书颁发机构 (CA))验证证书,以确保其有效性并属于正确的网站。验证完成后,连接将变得安全,保护您的数据免遭拦截,并确保您与目标网站进行通信。


“SSL 证书” 与 “TLS 证书”

尽管 TLS 已经取代了 SSL,但“ SSL 证书”这一术语在业内仍被广泛用于营销目的。这主要是因为该术语已深入人心,许多人对它比对“ TLS 证书 ”更为熟悉。因此,尽管从技术角度来看,“ SSL 证书 ”并不准确,因为现在所有现代证书都支持 TLS,但公司仍在继续使用“ SSL 证书 ”来吸引更广泛的受众。


TLS握手详解

TLS握手是指客户端和服务器在传输加密数据之前,通过协商加密设置、相互验证以及交换密钥来建立安全连接的过程。在此过程中,浏览器和服务器会协商加密方法,使用服务器证书验证服务器身份,并生成用于加密数据的会话密钥。在 TLS 1.3 中,握手速度更快、更安全,因为消息会被立即加密,从而缩短了连接时间并保护敏感信息免遭攻击者窃取。


TLS 握手步骤
  • 客户端问候:客户端(您的浏览器)向服务器发送支持的加密方法(密码套件)和随机值。
  • 服务器 Hello:服务器以其选择的加密方法、随机值和 SSL/TLS 证书进行响应。
  • 身份验证:客户端验证服务器的证书以确保其合法性。
  • 密钥交换:客户端生成一个预主密钥(随机字符串),并使用服务器证书中的公钥对其进行加密。不过,TLS 1.3 不再支持 RSA 密钥交换;取而代之的是临时 Diffie-Hellman 密钥交换,从而确保完美的前向保密性。这意味着即使会话密钥被泄露,过去的通信仍然安全。
  • 会话密钥生成:客户端和服务器都使用预主密钥来创建用于对称加密的会话密钥。
  • 建立安全连接:在交换使用会话密钥加密的最终消息后,所有进一步的通信都将被加密。


通过使用临时 Diffie-Hellman,TLS 1.3 为每个会话生成不依赖于长期密钥的唯一密钥,从而增强了安全性,使其更能抵御未来的潜在攻击。

SSL、TLS 和 HTTPS(图2)    

TLS握手过程


TLS 握手的类型

  • TLS 1.2握手

    在 TLS 1.2 中,握手需要客户端和服务器之间进行两次往返通信,然后才能开始加密。它支持较旧的加密方法,例如 RSA,但由于其漏洞,现在被认为安全性较低。虽然 TLS 1.2 仍然被广泛使用,但与较新的版本相比速度较慢。例如,TLS 1.2 中使用的常见密码套件是 TLS_RSA_WITH_AES_128_CBC_SHA,它依赖 RSA 进行密钥交换,并依赖 AES 进行加密,但缺少前向保密等功能。


  • TLS 1.3 握手

    TLS 1.3 通过将握手过程简化为一次往返来提升性能,从而减少延迟并加快连接速度。它用椭圆曲线 Diffie-Hellman (ECDH) 等现代密钥交换方法取代 RSA 等过时算法,从而增强了安全性,确保了完美的前向保密性。此外,它对更多握手过程进行了加密,并支持高效的密码套件(例如TLS_AES_128_GCM_SHA256),从而同时提升了速度和安全性。


  • 0-RTT 握手(TLS 1.3 功能)

    TLS 1.3 的一个显著特性是 0-RTT(零往返时间)握手,它允许先前连接到服务器的客户端立即恢复会话,而无需等待响应。这消除了往返次数并显著降低了延迟。然而,0-RTT 并不提供完全的前向保密性,因为它依赖于先前会话的预共享密钥,而这些密钥可能会被破解。


此外,0-RTT 容易受到重放攻击,攻击者会重新发送截获的早期数据,诱使服务器处理重复请求。为了降低此风险,服务器会实施反重放机制,例如要求每个请求使用唯一标识符、对数据有效性设置时间限制以及对敏感操作进行更严格的检查。虽然 0-RTT 可以提升性能,但应谨慎使用以确保安全。


SSL 与 TLS 的比较

特征SSLTLS
安全较旧且不太安全更新、更安全
速度握手过程较慢更快的握手过程
加密方法使用过时的算法使用高级加密
今日使用情况已弃用积极使用(TLS 1.2 和 1.3)


HTTP 与 HTTPS 的比较

特征HTTPHTTPS
安全无加密使用 SSL/TLS 加密
信任指标标记为“不安全”显示挂锁图标
数据保护易受攻击保护敏感数据
SEO 优势没有排名提升更高的搜索引擎排名


检查证书示例

SSL、TLS 和 HTTPS(图3)

为了更好地了解 SSL/TLS 证书的工作原理,请查看图中提供的 www.line-gate.com 的证书详细信息。


证书详细信息

  • 发给:
    • 通用名称(CN):www.line-gate.com
    • 组织(O):(不属于证书的一部分)
    • 组织单位(OU): (不属于证书的一部分)
  • 由...发出:
    • 通用名称(CN):GlobalSign GCC R3 DV TLS CA 2020
    • 组织 (O):Google Trust Services
    • 组织单位(OU):(不属于证书的一部分)
  • 有效期:
    • 发布日期:2024年5月9日星期四 10:36:19
    • 到期时间:2025年6月10日星期二 10:36:18
  • SHA-256 指纹:此证书上还有 SHA-256 指纹,包括证书和公钥详细信息。
这些细节告诉我们什么?
  • 通用名称 (CN):此字段指定颁发证书的域名。在本例中,证书颁发给www.line-gate.com

  • 颁发者(GlobalSign):这表示该证书是由受信任的证书颁发机构 (CA) 颁发的。浏览器信任由知名 CA 颁发的证书。

  • 有效期:证书有效期为 2025 年 3 月 11 日至 2025 年 6 月 9 日。务必在证书到期前进行续订,以免收到安全警告。证书过期可能会危及安全通信,触发浏览器警告(例如“不安全”),从而削弱用户信任并影响网站可访问性。

  • SHA-256 指纹:这些是唯一的证书和公钥标识符。它们可用于验证证书的完整性。


这与 HTTPS 有何关系?

当您使用 HTTPS 访问www.line-gate.com时,您的浏览器将:

  • 从服务器接收此证书。

  • 验证证书是否有效(即未过期并由受信任的证书颁发机构颁发,例如 GlobalSign)。

  • 证书链验证: 浏览器通过检查从服务器证书到受信任的根 CA 路径中的每个证书来验证证书链。这涉及确保每个证书都由链中下一个证书的私钥签名,从根证书开始,该根证书存储在浏览器的受信任根证书库中。如果此链中的任何证书无效或不受信任,则连接将被标记为不安全。

  • 使用证书中的公钥建立安全连接。

  • 最后,您的浏览器和服务器之间交换的所有数据都经过加密,确保传输过程中的隐私和安全。


如何在您的网站上设置 SSL/TLS?

在你的网站上设置 SSL/TLS 可能听起来很专业,但其实比你想象的要简单!具体操作方法如下:


步骤 1:选择 SSL/TLS 证书

证书主要有三种类型:

  • DV(域名验证):验证域名所有权的基本安全措施。

  • OV(组织验证):通过验证域所有权和组织身份来增强安全性。

  • EV(扩展验证):最高信任级别;在浏览器栏中显示公司名称。

  • 您可以从受信任的证书颁发机构 (CA)(例如 GlobalSign)购买证书,也可联系CA机构授权代理(例如:天威诚信、亚洲诚信、沃通等)购买证书。

步骤 2:生成证书签名请求 (CSR)
  • CSR 包含有关您的域和组织的信息,这些信息将包含在您的证书中。

  • 登录您的主机控制面板或服务器终端。

  • 使用 OpenSSL 等工具生成 CSR 文件。

步骤3:安装证书

安装 SSL/TLS 证书主要有两种方法:

  • 使用您的主机控制面板:大多数主机提供商都提供一键安装证书的服务。如果您使用的是第三方证书颁发机构 (CA),请上传您的证书文件。

  • 使用 WordPress 插件:安装“Really Simple SSL”等插件来实现自动安装。

步骤4:配置HTTPS
  • 将您网站上的所有内部链接从 http:// 更新为 https://。

  • 设置 301 重定向以确保访问者自动定向到您页面的 HTTPS 版本。

步骤5:测试您的配置
  • 使用 SSL Labs 等工具来验证您的证书是否正确安装。

  • 确保禁用较旧的协议(例如 TLS 1.0 和 1.1),并启用 TLS 1.3 以提高安全性和性能。

  • 此外,您可以考虑使用 ACME 协议和 Let's Encrypt 等服务来实现证书自动续订。该系统简化了 SSL/TLS 证书的续订流程,确保证书无需人工干预即可保持有效。通过自动续订,您可以避免证书过期导致的潜在停机或安全警告,从而轻松确保网站的安全性和合规性。


保护网站安全的其他提示

首先启用 HTTP 严格传输安全 (HSTS) 来增强您网站的安全性。这可确保浏览器通过 HTTPS 连接到您的网站,防止攻击者强制建立不安全的连接。HSTS 通过强制浏览器完全通过 HTTPS 连接到网站来防止协议降级攻击。它会自动将所有 HTTP 请求升级到 HTTPS,防止攻击者拦截并将用户重定向到不安全的连接。启用后,浏览器会记住 HSTS 策略,以便在以后的访问中确保所有通信保持加密和安全。


您可以通过将以下标头添加到 Web 服务器配置来实现 HSTS:


标头始终设置 Strict-Transport-Security“max-age=31536000;includeSubDomains” 


另一个重要步骤是确保启用服务器名称指示 (SNI) 支持。SNI 允许在同一 IP 地址上托管多个 SSL/TLS 证书,因此企业在单个服务器下管理多个域名或子域名至关重要。启用 SNI 后,客户端发起连接时,会在 TLS 握手中包含要访问的域名。这使服务器能够识别要提供的 TLS 证书,从而确保每个域名使用正确的证书。如果没有 SNI,每个 IP 地址只能提供一个证书,这会导致兼容性问题,并可能造成连接不安全。


SNI 支持在单个 IP 上使用多个证书,从而降低了成本并简化了网站托管服务提供商的管理,使他们能够安全地托管多个网站,而无需为每个网站分配专用的 IP 地址。这种灵活性对于高效利用资源和维护跨多个域名的持久安全性至关重要。


最后,定期监控和更新您的 SSL/TLS 证书,以防止出现安全警告或网站宕机。设置自动提醒或使用证书管理工具来跟踪证书到期日期并及时续订。保持证书更新可以维护安全性并确保符合行业标准。


HTTPS 为何重要?

使用 HTTPS 有多种好处:

  • 数据安全在传输过程中对敏感信息(例如密码或付款详细信息)进行加密。

  • 可信度:浏览器将使用 HTTPS 的网站标记为安全,而 HTTP 网站可能会显示“不安全”等警告。

  • SEO 优势:Google 对 HTTPS 网站的排名高于 HTTP 网站。

  • 合规性:许多法规(例如 GDPR)都要求通过加密来安全处理数据。

  • 现代 Web 兼容性:HTTPS 对于利用 Service Worker 和 HTTP/2 等现代 Web 技术至关重要。主流浏览器仅支持基于安全连接的 HTTP/2,这意味着如果没有 HTTPS,网站就无法利用该协议带来的性能提升。


揽阁信息如何提供帮助?

揽阁信息与众多国际知名企业合作,如:Thales、GlobalSign、Digicert等,为您提供SSL、TLS、HTTPS中所需要的数字证书,以及证书密钥安全解决方案,可帮助您快速实现证书的部署,以及相应的安全合规要求。


结论

总结一下我们到目前为止所学到的知识。

  • SSL 是用于保护在线通信的原始协议,但由于其更好的安全功能而被 TLS 取代。

  • TLS 可以更有效地加密数据,目前几乎用于所有安全连接。

  • HTTPS 确保网站使用 SSL/TLS 加密来保护浏览期间的用户数据。

  • 现在您知道这些技术如何协同工作,在您的网站上设置 SSL/TLS 将有助于保护用户的数据,同时提高可信度和搜索排名!


揽阁信息 · 值得您信赖的信息安全顾问!

服务热线

服务热线

13524448503

微信咨询
返回顶部
X

截屏,微信识别二维码

微信号:13524448503

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!