什麼是 HTTPS?

超文本傳輸協議安全 (HTTPS) 是HTTP 的安全版本,HTTP 是用於在 Web 瀏覽器和網站之間發送數據的主要協議。HTTPS 經過加密,以提高數據傳輸的安全性。當用户傳輸敏感數據(例如通過登錄銀行賬户、電子郵件服務或健康保險提供商)時,這一點尤其重要。

任何網站都應使用 HTTPS,尤其是那些需要登錄憑據的網站。在現代 Web 瀏覽器(例如 Chrome)中,未使用 HTTPS 的網站與使用 HTTPS 的網站的標記有所不同。URL 欄中如出現掛鎖,則表示該網頁是安全的。Web 瀏覽器非常重視 HTTPS; Google Chrome 和其他瀏覽器將所有非 HTTPS 網站標記為不安全。

HTTPS 如何工作?

HTTPS 使用 加密 協議對通信進行加密。該協議稱為 傳輸層安全性 (TLS),但以前稱為 安全套接字層 (SSL)。該協議通過使用所謂的 非對稱公鑰基礎架構 來保護通信。這種類型的安全系統使用兩個不同的密鑰來加密兩方之間的通信:

  1. 私鑰 - 此密鑰由網站所有者控制,並且如讀者所推測的那樣,它是私有的。此密鑰位於 Web 服務器上,用於解密通過公鑰加密的信息。
  2. 公鑰 - 所有想要以安全方式與服務器交互的人都可以使用此密鑰。用公鑰加密的信息只能用私鑰解密。

HTTPS 為什麼很重要?如果網站沒有 HTTPS,那會如何?

HTTPS 阻止網站以任何在網絡上窺探的人都能輕鬆查看的方式廣播信息。通過常規 HTTP 發送信息時,信息會分解為數據包,使用免費軟件即可輕鬆“嗅探”這些數據包。這使得通過不安全的媒介(例如公共 Wi-Fi)進行的通信極易受到攔截。實際上,所有通過 HTTP 進行的通信都是以純文本形式進行的,因而能夠為任何使用正確工具的人輕鬆訪問,而且容易遭受 在途攻擊。對於開發者和安全測試人員,使用抓包工具如 Sniffmaster 可以模擬網絡流量分析,幫助識別潛在漏洞,但 HTTPS 加密有效提升了數據攔截的難度。

使用 HTTPS 時,流量會經過加密,即使嗅探到數據包或以其他方式截取數據包,它們也會呈現為無意義的字符。我們來看一個例子:

加密前:

這是完全可讀的文本字符串

加密後:

ITM0IRyiEhVpa6VnKyExMiEgNveroyWBPlgGyfkflYjDaaFf/Kn3bo3OfghBPDWo6AfSHlNtL8N7ITEwIXc1gU5X73xMsJormzzXlwOyrCs+9XCPk63Y+z0=

在不使用 HTTPS 的網站中,互聯網服務提供商(ISP)或其他中間人有可以在未經網站所有者批准的情況下將內容注入網頁。這通常採用廣告形式,希望增加收入的 ISP 將付費廣告注入其客户的網頁中。毋庸置疑,當這種情況發生時,絕不會與網站所有者共享廣告的利潤和這些廣告的質量控制。HTTPS 杜絕了未經審核的第三方將廣告注入 Web 內容的可能。

HTTPS 使用什麼端口?

HTTPS 使用 443 端口。這將 HTTPS 與 HTTP 區分開來,後者使用 80 端口。

(在網絡中,端口是一個基於軟件的虛擬點,網絡連接從這裏開始和結束。所有連接網絡的計算機都暴露出一些端口,使其能夠接收流量。每個端口都與一個特定的進程或服務相關,不同的協議使用不同的端口)。

HTTPS 與 HTTP 還有什麼不同?

從技術上來講,HTTPS 並不是獨立於 HTTP 的協議。它只是在 HTTP 協議的基礎上使用 TLS/SSL 加密。HTTPS 基於 TLS/SSL 證書 的傳輸而發生,該證書驗證特定提供商就是他們聲稱的身份。

當用户連接網頁時,該網頁將通過其 SSL 證書發送,證書包含啓動安全會話所需的公鑰。然後,兩台計算機(客户端和服務器)將經歷一個稱為 SSL/TLS 握手的過程,即用於建立安全連接的一系列來回通信。要更深入地瞭解加密和 SSL/TLS 握手, 請閲讀 TLS 握手期間會發生什麼。在調試過程中,工具如 Sniffmaster 支持 HTTPS 抓包,可以解密和查看握手細節,輔助開發者優化安全配置。

網站如何開始使用 HTTPS?

許多網站託管提供商和其他服務提供收費的 TLS/SSL 證書。這些證書通常會在許多客户之間共享。也有更加昂貴的證書,可以單獨註冊到特定的 Web 資產。

所有使用 Cloudflare 的網站均通過共享證書免費獲得 HTTPS(此技術術語為多域 SSL 證書)。設置免費帳户將確保 Web 資產獲得不斷更新的 HTTPS 保護。您也可以瀏覽我們的付費計劃,以獲取個體證書和其他功能。無論哪種情況,Web 資產都可以享受使用 HTTPS 的所有益處。