(1)http 和 https 的基本概念
http: 超文本傳輸協議(Hyper Text Transfer Protocol),是互聯網上應用最爲普遍的一種網絡協議,是一個客戶端和服務器端請求和應答的標準(TCP),用於從 WWW 服務器傳輸超文本到本地瀏覽器的傳輸協議,它可使瀏覽器更加高效,使網絡傳輸減小。
HTTP是一個基於TCP/IP通訊協議來傳遞數據(HTML 文件, 圖片文件, 查詢結果等)
https: 是以安全爲目標的 HTTP 通道,簡單講是 HTTP 的安全版,即 HTTP 下加入 SSL
層,HTTPS 的安全基礎是 SSL,所以加密的詳細內容就須要 SSL。
https 協議的主要做用是:創建一個信息安全通道,來確保數組的傳輸,確保網站的真實
性。
(2)http 和 https 的區別?
http 傳輸的數據都是未加密的,也就是明文的,網景公司設置了 SSL 協議來對 http 協議
傳輸的數據進行加密處理,簡單來講 https 協議是由 http 和 ssl 協議構建的可進行加密傳
輸和身份認證的網絡協議,比 http 協議的安全性更高。
主要的區別以下:
Https 協議須要 ca 證書,費用較高。
http 是超文本傳輸協議,信息是明文傳輸,https 則是具備安全性的 ssl 加密傳輸協議。
使用不一樣的連接方式,端口也不一樣,通常而言,http 協議的端口爲 80,https 的端口爲
443
http 的鏈接很簡單,是無狀態的;HTTPS 協議是由 SSL+HTTP 協議構建的可進行加密傳
輸、身份認證的網絡協議,比 http 協議安全。
(3)https 協議的工做原理
客戶端在使用 HTTPS 方式與 Web 服務器通訊時有如下幾個步驟,如圖所示。
web
客戶使用 https url 訪問服務器,則要求 web 服務器創建 ssl 連接。
web 服務器接收到客戶端的請求以後,會將網站的證書(證書中包含了公鑰),返回或
者說傳輸給客戶端。
客戶端和 web 服務器端開始協商 SSL 連接的安全等級,也就是加密等級。
客戶端瀏覽器經過雙方協商一致的安全等級,創建會話密鑰,而後經過網站的公鑰來加
密會話密鑰,並傳送給網站。
web 服務器經過本身的私鑰解密出會話密鑰。
web 服務器經過會話密鑰加密與客戶端之間的通訊。
(4)https 協議的優勢
使用 HTTPS 協議可認證用戶和服務器,確保數據發送到正確的客戶機和服務器;
HTTPS 協議是由 SSL+HTTP 協議構建的可進行加密傳輸、身份認證的網絡協議,要比
http 協議安全,可防止數據在傳輸過程當中不被竊取、改變,確保數據的完整性。
HTTPS 是現行架構下最安全的解決方案,雖然不是絕對安全,但它大幅增長了中間人攻
擊的成本。
谷歌曾在 2014 年 8 月份調整搜索引擎算法,並稱「比起同等 HTTP 網站,採用 HTTPS
加密的網站在搜索結果中的排名將會更高」。
(5)https 協議的缺點
https 握手階段比較費時,會使頁面加載時間延長 50%,增長 10%~20%的耗電。
https 緩存不如 http 高效,會增長數據開銷。
SSL 證書也須要錢,功能越強大的證書費用越高。
SSL 證書須要綁定 IP,不能再同一個 ip 上綁定多個域名,ipv4 資源支持不了這種消耗。算法