HTPPS是如何保證安全的

一言 2024-04-04 13:49 15次浏览 0 条评论 taohigo.com

 學習《圖解http》筆記。總結一下https方面的內容。 互聯網,是由能連通到全世界的網絡組成的。無論世界哪個角落的服務器在和客戶端通信時,在此通信線路上的某些網絡設備、光纜、計算機等都不可能是個人的私有物,所以不排除某個環節中會遭到惡意窺視行為。

HTTP 主要有這些不足

1.通信使用明文(不加密),內容可能會被竊聽 2.不驗證通信方的身份,因此有可能遭遇偽裝 3.無法證明報文的完整性,所以有可能已遭篡改

HTTPS = HTTP + 加密 + 認證 + 完整性

SSL(Secure Sockets Layer 安全套接層), 及其繼任者傳輸層安全(Transport Layer Security,TLS)是為網絡通信提供安全及數據完整性的一種安全協議。TLS與SSL在傳輸層對網絡連接進行加密。 SSL/TLS協議希望達到: 1)認證用戶和服務器,確保數據發送到正確的客戶機和服務器; 2)加密數據以防止數據中途被竊取; 3)維護數據的完整性,確保數據在傳輸過程中不被改變。 通常,HTTP 直接和 TCP 通信。當使用 SSL時,則演變成先和 SSL通信,再由 SSL和 TCP 通信瞭。簡言之, HTTPS,就是身披SSL協議這層外殼的 HTTP。SSL是當今世界上應用最為廣泛的網絡安全技術。

加密數據如何解密

加密方法

近代的加密方法中加密算法是公開的,而密鑰卻是保密的。通過這種方式得以保持加密方法的安全性。加密和解密都會用到密鑰。沒有密鑰就無法對密碼解密。

公開密鑰加密方法使用一對非對稱的密鑰。一把叫做私有密鑰(private key),另一把叫做公開密鑰(public key)。顧名思義,私有密鑰不能讓其他任何人知道,而公開密鑰則可以隨意發佈,任何人都可以獲得。 使用公開密鑰加密方式,發送密文的一方使用對方的公開密鑰進行加密處理,對方收到被加密的信息後,再使用自己的私有密鑰進行解密。

使用證書證明密鑰正確性

正準備和某臺服務器建立公開密鑰加密方式下的通信時,如何證明收到的公開密鑰就是原本預想的那臺服務器發行的公開密鑰。或許在公開密鑰傳輸途中,真正的公開密鑰已經被攻擊者替換掉瞭。 數字證書認證機構處於客戶端與服務器雙方都可信賴的第三方機構的立場上。數字證書機構會把服務器的公開密鑰進行簽名,發佈一個公鑰證書。多數瀏覽器開發商發佈版本時,會事先在內部植入常用認證機關的公開密鑰。