背景
有一個版本,客戶端在某個手機上拉取不到服務器信息,說是要把網址改成 https。當時不太清楚 http 和 https 有什么區別,今天有空,翻翻資料記錄下。
什么是 https
https 在 http 和 tcp 中間加了 SSL/TSL 協議。
https 采用對稱加密和非對稱加密結合的混合加密。
在通信建立前采用非對稱加密,通信過程中采用對稱加密。
萬字長文,一文搞懂TCP、IP和HTTP、HTTPS
區別
- 安全性不同:http 沒有用於數據加密和數據完整性校驗的安全機制,而 https 用數字證書來保障雙方的通信。
- 監聽端口不同:http 監聽80端口,https 監聽443端口。
- 傳輸內容不同:http 以純文本明文格式傳輸,https 以密文格式傳輸。
- 協議頭不同:http 的URL以“http://”開頭,https 以“https://”開頭。
https 工作原理
客戶端找服務端建立連接,服務端發送數字證書給客戶端,客戶端通過預置的證書非對稱公鑰驗證並得到服務端提交到CA的非對稱公鑰,客戶端隨機生成對稱密鑰,並通過服務端的非對稱公鑰加密,發給服務端,服務端用非對稱私鑰解析得到客戶端發送的對稱密鑰,后續數據通過對稱密鑰來通信。
http和https的區別是什么呢?