https比http多了乙個tls/ssl加密層,不僅對資料進行了加密,還提供了身份驗證的功能
https使用了非對稱加密和對稱加密一起使用的方法。簡單地說,就是其中的一方先生成乙個對稱加密的金鑰,然後通過非對稱加密的方式來傳送這個金鑰,這樣雙方通訊後就可以通過對稱加密來進行加密和解密了
關於ssl/tls。tls的前身是ssl,,位於應用層和傳輸層之間
握手層是用於端對端協商密碼和連線狀態等連線引數,並完成身份認證
記錄層是對資料的封裝,把資料交給傳輸層之前,經過分片,壓縮,認證,加密等操作
https的請求過程:
1.客戶端輸入**,連線到服務端的443埠,傳送自己支援的ssl版本,加密元件等給伺服器
2.伺服器傳送所選擇的連線引數和證書(包括公鑰資訊等)給客戶端。伺服器必須要有一套數字證書,可以自己製作,也可以向組織申請,自己製作的證書需要客戶端驗證通過才可以繼續訪問,而使用受信任的公司的申請證書就不會彈出提示頁面。比如startssl。
3.傳送證書(包括公鑰)
4.客戶端解析證書,通過客戶端的tls完成,會驗證公鑰是否有效,如果發現異常,就會彈警告,如果沒問題,就生成乙個隨機key,用證書的公鑰對其進行加密
5.傳送加密後的隨機key,讓伺服器收到
6.服務端用私鑰解密,獲得隨機的key值
雙方開始用隨機key進行對稱資訊加密,並且傳輸...
最後放一張時序圖:
https 協議傳輸過程學習
服務端儲存一對公鑰與私鑰。是用來進行非對稱加密使用的。私鑰不能將其洩漏,公鑰可以傳輸給任何人。瀏覽器向伺服器發起https請求,向伺服器的443埠鏈結。伺服器將公鑰傳送給瀏覽器!瀏覽器收到公鑰後,將驗證公鑰合法性。如果公鑰不合法,將無法發起https傳輸。換言之,驗證https數字證書。證書合法,瀏...
HTTPS加密傳輸過程
https全稱hyper text transfer protocol over securesocket layer,是以安全為目標的http通道,在http的基礎上通過傳輸加密和身份認證保證了傳輸過程的安全性。https在http的基礎下加入ssl層,https的安全基礎是ssl,因此加密的詳細...
socket傳輸過程
連線過程 根據連線啟動的方式以及本地 套接字要連線的目標,套接字之間的連線過程可以分為三個步驟 伺服器監聽,客戶端請求,連線確認。1 伺服器監聽 是伺服器端套接字並不定位具體的客戶端套接字,而是處於等待連線的狀態,實時監控網路狀態。2 客戶端請求 是指由客戶端的套接字提出連線請求,要連線的目標是伺服...