網路安全-->淺談HTTPS協議
阿新 • • 發佈:2019-08-24
簡介
HTTPS,安全的HTTP,也被稱為HTTP over TLS,TLS的前身是SSL。HTTPS的安全基礎是SSL。SSL協議位於TCP/IP協議與各種應用層協議之間, 為資料通訊提供安全支援。 SSL協議: SSL記錄協議--建立在可靠的傳輸協議之上,為高層協議提供資料封裝,壓縮、加密等基本功能。 SSL握手協議--建立在SSL記錄協議之上,使用者在實際的資料傳輸開始前,通訊雙方進行身份認證、協商加密演算法、交換加密祕鑰。 1、HTTPS協議需要到證書頒發機構CA申請證書。 2、客戶端無法內建所有證書,所以需要服務端將證書傳送給客戶端 3、證書包含: 證書資訊:過期時間和序列號 所有者資訊:姓名等 所有者公鑰 4、客戶端放著證書偽造,所以在服務端傳送證書到客戶端後,客戶端需要驗證接收到的證書 5、客戶端通過數字簽名驗證證書有效性
HTTPS基本原理
HTTPS其實是由兩部分組成:HTTP + SSL/TLS,在HTTP上加以一層處理加密資訊的模組。 1、客戶端發起HTTPS請求,連線到服務端的443埠 2、服務端配置。採用HTTPS協議的伺服器必須有一套數字證書,可以自己製作或者向組織申請。自己製作的需要客戶端驗證通過才可以訪問。這套證書其實 就是公鑰和私鑰。 3、服務端向客戶端傳送證書,這個證書其實就是公鑰,包含證書的辦法機構、過期時間等資訊 4、客戶端驗證公鑰是否有效,有異常則彈框提示,沒問題則生成一個隨機值,然後用證書對該隨機值進行加密 5、客戶端將上一步驟生成的加密後的隨機值傳送給服務端,以後客戶端和服務端就用這個隨機值來進行加密解密。 6、服務端用私鑰解密客戶端傳送過來的加密隨機值,這個隨機值就是客服端和服務端之間的私鑰。服務端把響應內容通過該值就行對稱加密。 7、服務端將對稱加密後的資料傳送給客戶端。 8、客戶端用之前生成的私鑰(隨機值)解密服務端傳過來的資訊。
HTTPS缺點
1、HTTPS協議握手階段比較費時
2、連線快取不如HTTP高效
3、SSL證書需要花錢
4、SSL證書需要繫結IP,不能再同一IP上繫結多個域名,IPv4資源無法支撐
5、HTTPS協議的加密範圍有限,無法保證絕