什么是 HTTPS?

HTTPS 是一种在 Web 服务器和 Web 浏览器之间发送数据的安全方式。

学习目标

阅读本文后,您将能够:

  • 定义 HTTPS
  • 探索 HTTPS 的工作方式
  • 了解 HTTPS 的重要性
  • 了解如何在网站上获取 HTTPS

相关内容


想要继续学习吗?

订阅 TheNET,这是 Cloudflare 每月对互联网上最流行见解的总结!

参阅 Cloudflare 的隐私政策,了解我们如何收集和处理您的个人数据。

复制文章链接

什么是 HTTPS?

超文本传输协议安全 (HTTPS) 是 HTTP 的安全版本,HTTP 是用于在 Web 浏览器和网站之间发送数据的主要协议。HTTPS 经过加密,以提高数据传输的安全性。当用户传输敏感数据(例如通过登录银行账户、电子邮件服务或健康保险提供商)时,这一点尤其重要。

任何网站都应使用 HTTPS,尤其是那些需要登录凭据的网站。在现代 Web 浏览器(例如 Chrome)中,未使用 HTTPS 的网站与使用 HTTPS 的网站的标记有所不同。URL 栏中如出现挂锁,则表示该网页是安全的。Web 浏览器非常重视 HTTPS;Google Chrome 和其他浏览器将所有非 HTTPS 网站标记为不安全

Google Chrome 安全示例

HTTPS 如何工作?

HTTPS 使用加密协议对通信进行加密。该协议称为传输层安全性 (TLS),但以前称为安全套接字层 (SSL)。该协议通过使用所谓的非对称公钥基础架构来保护通信。这种类型的安全系统使用两个不同的密钥来加密两方之间的通信:

  1. 私钥 - 此密钥由网站所有者控制,并且如读者所推测的那样,它是私有的。此密钥位于 Web 服务器上,用于解密通过公钥加密的信息。
  2. 公钥 - 所有想要以安全方式与服务器交互的人都可以使用此密钥。用公钥加密的信息只能用私钥解密。
电子书
将安全与性能最大化的 5 种方法
电子书
针对攻击生命周期每一个阶段的 Everywhere Security

HTTPS 为什么很重要?如果网站没有 HTTPS,那会如何?

HTTPS 阻止网站以任何在网络上窥探的人都能轻松查看的方式广播信息。通过常规 HTTP 发送信息时,信息会分解为数据包,使用免费软件即可轻松“嗅探”这些数据包。这使得通过不安全的媒介(例如公共 Wi-Fi)进行的通信极易受到拦截。实际上,所有通过 HTTP 进行的通信都是以纯文本形式进行的,因而能够为任何使用正确工具的人轻松访问,而且容易遭受在途攻击

使用 HTTPS 时,流量会经过加密,即使嗅探到数据包或以其他方式截取数据包,它们也会呈现为无意义的字符。我们来看一个例子:

加密前:

这是完全可读的文本字符串

加密后:

ITM0IRyiEhVpa6VnKyExMiEgNveroyWBPlgGyfkflYjDaaFf/Kn3bo3OfghBPDWo6AfSHlNtL8N7ITEwIXc1gU5X73xMsJormzzXlwOyrCs+9XCPk63Y+z0=

在不使用 HTTPS 的网站中,互联网服务提供商(ISP)或其他中间人有可以在未经网站所有者批准的情况下将内容注入网页。这通常采用广告形式,希望增加收入的 ISP 将付费广告注入其客户的网页中。毋庸置疑,当这种情况发生时,绝不会与网站所有者共享广告的利润和这些广告的质量控制。HTTPS 杜绝了未经审核的第三方将广告注入 Web 内容的可能。

第三方内容注入

图片来自 Ars Technica

有关 HTTPS 提供的完整优势列表,请参阅为什么使用 HTTPS?

注册
所有 Cloudflare 计划中均包含免费 SSL

HTTPS 使用什么端口?

HTTPS 使用 443 端口。这将 HTTPS 与 HTTP 区分开来,后者使用 80 端口。

(在网络中,端口是一个基于软件的虚拟点,网络连接从这里开始和结束。所有连接网络的计算机都暴露出一些端口,使其能够接收流量。每个端口都与一个特定的进程或服务相关,不同的协议使用不同的端口)。

HTTPS 与 HTTP 还有什么不同?

从技术上来讲,HTTPS 并不是独立于 HTTP 的协议。它只是在 HTTP 协议的基础上使用 TLS/SSL 加密。HTTPS 基于 TLS/SSL 证书的传输而发生,该证书验证特定提供商就是他们声称的身份。

当用户连接网页时,该网页将通过其 SSL 证书发送,证书包含启动安全会话所需的公钥。然后,两台计算机(客户端和服务器)将经历一个称为 SSL/TLS 握手的过程,即用于建立安全连接的一系列来回通信。要更深入地了解加密和 SSL/TLS 握手,请阅读 TLS 握手期间会发生什么

网站如何开始使用 HTTPS?

许多网站托管提供商和其他服务提供收费的 TLS/SSL 证书。这些证书通常会在许多客户之间共享。也有更加昂贵的证书,可以单独注册到特定的 Web 资产。

所有使用 Cloudflare 的网站均通过共享证书免费获得 HTTPS(此技术术语为多域 SSL 证书)。设置免费帐户将确保 Web 资产获得不断更新的 HTTPS 保护。您也可以浏览我们的付费计划,以获取个体证书和其他功能。无论哪种情况,Web 资产都可以享受使用 HTTPS 的所有益处。