說一說HTTPS?

在這裏插入圖片描述

1.HTTPS

HTTPS (Hyper Text Transfer Protocol over SecureSocket Layer),是以安全爲目標的 HTTP 通道
HTTPS 在HTTP 的基礎下加入 安全協議層 採用身份驗證和數據加密保證網絡通信的安全和數據的完整性
HTTPS 通過證書配合多種加密手段,採用身份驗證和數據加密保證網絡通信的安全和數據的完整性

2.加密算法

對稱加密:加密解密都用一個祕鑰
非對稱加密:加密的祕鑰和解密的祕鑰是不同的
哈希算法:將任意長度的信息進行計算,得到一個不可逆的固定值
數字證書:CA爲持有公鑰方簽發的證書,用於校驗身份
數字簽名:數字簽名技術是用哈希算法和非對稱加密算法來實現的

數字簽名過程						
祕鑰生成:服務端生成兩個祕鑰,公鑰和私鑰,私鑰服務端自己保存,公鑰分發給客戶端
公私鑰加密:私鑰加密公鑰解密 或 公鑰加密私鑰解密

簽名: 把內容 "發送內容" 進行哈希計算得到一串不可逆的字符串 "不可逆字符串"  
	  把密文 "發送內容""不可逆字符串" 放到一起,用祕鑰加密得到密文 "youcanyouup....."  
	  將密文 "youcanyouup....."  發送給接收方

驗籤: 把密文  "youcanyouup....."   用公鑰解密得到 "發送內容""不可逆字符串" 
	  將內容  "發送內容"  進行哈希計算得到一串不可逆的字符串  "不可逆字符串"  
	  比較 收到的和計算得到的兩個 "不可逆字符串"  是否一致,即可驗證數據的合法性

發送和接收是相對的,即簽名可以是雙向的
服務端將數據用私鑰簽名後發送給客戶端 或 客戶端將數據用公鑰簽名後發送給服務端

3.傳輸流程

客戶端訪問服務器時,客戶端將自身支持的加密算法發送給服務器
服務器選擇一套加密算法,用證書的形式發給客戶端
證書中包含:CA證書頒發機構 , 證書有效期,公鑰,證書所有者等,可在瀏覽器中查看
瀏覽器會去查詢證書的可靠性,不合法時會給出提示
在這裏插入圖片描述

客戶端 校驗證書合法後,生成 對稱加密祕鑰,將祕鑰用公鑰簽名後發送給服務器
服務器 使用私鑰驗籤後,用私鑰簽名握手信息返回給客戶端
客戶端 使用公鑰驗籤後,雙方開始使用客戶端生成的 對稱加密祕鑰 進行數據的加密傳輸

4.HTTP與HTTPS

HTTP不需要證書,HTTPS需要CA機構頒發證書
HTTP數據明文傳輸,HTTPS數據密文傳輸(前提是不能同意抓包工具,在你電腦上安裝證書,否則看到的全是明文)
HTTP默認端口80,HTTPS默認端口443

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章