當我們網上購物或銀行業務時,為了安全起見,我們希望看到網站的地址欄上有“HTTPS”和安全鎖圖標。但是這個“HTTPS”和鎖定圖標實際上意味著什么?要回答這些問題,我們需要了解 HTTPS、SSL 協議和 SSL 證書。
關于HTTPS、SSL和SSL證書
安全超文本傳輸協議(HTTPS)是HTTP的安全版本,它對計算機網絡之間的通信進行加密。在HTTPS中,通信使用安全套接字層(SSL)或現在稱為傳輸層安全性(TLS)進行加密。因此,HTTPS也稱為HTTPoverSSL(或HTTPoverTLS)。任何具有HTTPS網址的網站都使用SSL。
具體來說,SSL或TLS是一種通過實施SSL證書在通信設備之間創建安全連接的協議。SSL證書是由證書頒發機構(CA)頒發的Web服務器數字證書,托管在Web服務器上,然后安裝在Web瀏覽器上。CA是受信任的第三方組織,負責生成并向網站所有者頒發SSL證書。
SSL證書在瀏覽器和Web服務器之間建立信任方面發揮著關鍵作用,它通過執行兩個功能來實現這一點:
1)通過驗證網絡服務器和網站的身份;
2)通過加密網絡瀏覽器和網絡服務器之間傳輸的數據。
本質上,SSL證書使網站能夠使用HTTPS,這是一種更安全的協議。它還允許兩方之間進行私人對話,以保護敏感用戶數據(例如,用戶名、密碼、電子郵件地址、銀行信息等),并降低從假版本網站竊取或篡改敏感數據的風險。
以下是SSL證書中包含的信息和數據:
-
已認證的域名
-
相關子域名
-
擁有域的個人、組織或設備
-
證書頒發機構
-
證書頒發機構的數字簽名
-
證書頒發日期
-
證書有效期
-
公鑰和私鑰
SSL 證書的類型
SSL 證書有多種類型,可以根據身份驗證級別和覆蓋的域數量對它們進行分類。
A. 驗證級別
-
域驗證 (DV) 證書– 這是在申請人證明對域有一定控制權后頒發的 X.509 公鑰證書。這是最常見的證書類型。DV 證書的唯一標準是對域名的 whois 記錄、DNS 記錄、電子郵件或網絡托管帳戶的控制證明。基本上,DV證書可以在沒有任何人為干預的情況下頒發,這使得它具有以下優點:
-
它們通常很便宜(每年 10 美元)甚至免費,例如Let's Encrypt。
-
它們可以在沒有任何文檔的情況下生成和驗證。
-
其中大多數可以通過自動化發行過程的特殊工具在一分鐘左右的時間內發行。
Web 瀏覽器將顯示安全鎖圖標,但不顯示任何法律實體。點擊該標志只會顯示“該網站不提供所有權信息”。
-
組織驗證 (OV) 證書– 這是當申請人滿足以下條件時頒發的 X.509 公鑰證書:
-
域名的控制權(類似于DV證書);
-
網站所有者的實際存在;
-
每年費用在 50 至 100 美元之間。
Web 瀏覽器將顯示安全鎖圖標,但不顯示任何法律實體,類似于 DV 證書。
-
擴展驗證 (EV) 證書– 這是 CA 驗證控制域的合法組織后頒發的 X.509 公鑰證書。這是最值得信賴的證書類型。驗證內容包括:
-
域名的控制權(類似于DV證書);
-
網站所有者的實際、運營和合法存在;
-
政府業務記錄,以確保公司已注冊且活躍;
-
獨立的企業名錄,如黃頁、Dunn and Bradstreet、Salesforce的data.com等;
-
檢查證書中的所有域名;
-
每年費用在 150 至 300 美元之間。
Web 瀏覽器將顯示安全鎖定圖標,并具有顯示證書的 EV 狀態和經過驗證的合法身份(即網站的注冊公司)名稱的菜單。單擊該標志將顯示有關該組織的詳細信息,例如名稱和地址。
B. 涵蓋的領域數量
-
單域– 這是最常見的證書類型。它保護一個有效的域名或子域名,例如 example.com 或 www.example.com。
-
多域 (UCC/SAN) – 此類證書也稱為統一通信證書 (UCC) 或主題備用名稱 (SAN) 證書。它不限于單個域,您可以覆蓋最多一定數量的多個域。您可以混合不同的域和子域,只要它們是相關的網站即可。
-
通配符域– 這種類型的證書涵蓋主域以及通配符格式內無限數量的子域,例如 *.example.com 涵蓋 example.com、www.example.com、mail.example.com、neo。 example.com 等
SSL證書如何工作?
假設用戶想要連接到 Mlytics 網絡服務器,當用戶輸入https://www.gworg.com然后按 Enter 鍵時,將會發生以下情況。
-
瀏覽器將啟動 TCP 握手,然后從 Mlytics 網絡服務器請求安全頁面 (HTTPS)。
-
Mlytics 服務器發送 SSL 證書(由 CA 數字簽名)。嘗試與 Web 服務器通信的設備將需要 SSL 證書來驗證服務器的身份并獲取 Web 服務器的公鑰。私鑰在網絡服務器中保密且安全。
-
一旦瀏覽器獲得 SSL 證書,瀏覽器將檢查證書的數字簽名,以確保其有效或來自正確的網絡服務器。數字簽名由CA的私鑰創建,瀏覽器將參考其安裝的CA的公鑰來驗證SSL證書的數字簽名。
-
一旦SSL證書的簽名被驗證,它將獲得網絡服務器的公鑰。此時,安全鎖圖標將出現在瀏覽器的地址欄上。鎖圖標可用于指示證書可以信任,并且瀏覽器確實正在與正確的網絡服務器通信,而不是來自冒名頂替者。
-
下一步是瀏覽器共享秘密。瀏覽器將創建一對對稱密鑰或共享密鑰。它保留一個密鑰,并將另一個密鑰提供給網絡服務器。然而,瀏覽器以純文本形式發送秘密并不安全,因此這就是網絡服務器的公鑰發揮作用的地方。網絡服務器公鑰是一長串字符,用于將秘密從純文本加密為密文。一旦機密副本被加密,瀏覽器就會將此加密的機密發送到 Web 服務器。
-
當網絡服務器獲得加密密鑰時,它將使用私鑰對其進行解密。網絡服務器的私鑰是一長串字符,用于將秘密從密文解密為純文本。用公鑰加密的數據只能用私鑰解密。解密后,網絡服務器和瀏覽器現在獲得了共享密鑰(對稱密鑰)的相同副本。
-
從現在開始,瀏覽器和網絡服務器之間的所有流量都將使用對稱密鑰進行加密和解密。
從這個例子中我們還描述了非對稱密鑰算法和對稱密鑰算法的工作原理。非對稱密鑰算法(公鑰和私鑰)用于驗證網絡服務器的身份并在瀏覽器和網絡服務器之間建立信任。連接建立后,對稱密鑰算法(共享密鑰)用于加密和解密瀏覽器和網絡服務器之間的所有流量。