深入理解https進行SSL單向認證的全過程

snca發表於2022-06-28

HTTPS是如何進行SSL單向認證的?帶著這個問題我們來了解HTTPS原理:

HTTPS是工作於SSL層之上的HTTP協議,SSL(安全套接層)工作於TCP層之上,嚮應用層提供了兩個基本安全服務:認證和保密。SSL有三個子協議:握手協議,記錄協議和警報協議。其中握手協議實現伺服器與客戶端的認證與金鑰交換,記錄協議進行資料加密並保證資料的完整性,警報協議則規定了錯誤型別和處理機制。

深入理解https進行SSL單向認證的全過程

客戶端通訊過程

1.客戶端向伺服器請求HTTPS連線

2.伺服器確認並返回證照(證照含有公鑰)

3.客戶端驗證伺服器發來的證照

4.確認成功,生成隨機金鑰A,用公鑰進行加密後發給伺服器

5.伺服器用私鑰解密出隨機金鑰A,併發出確認,握手完成

使用握手時協商好的共享金鑰進行保密通訊

使用握手時協商好的共享金鑰進行保密通訊

單向認證 SSL 協議不需要客戶擁有CA證照。雙方具體的通訊內容,是加過密的資料,如果有第三方攻擊,獲得的只是加密的資料,第三方要獲得有用的資訊,就需要對加密的資料進行解密,這時候的安全就依賴於密碼方案的安全。而幸運的是,目前所用的密碼方案,只要通訊金鑰長度足夠的長,就足夠的安全。這也是我們強調要求使用128位加密通訊的原因。

 一般Web應用都是採用SSL單向認證的,原因很簡單,使用者數目廣泛,且無需在通訊層對使用者身份進行驗證,一般都在應用邏輯層來保證使用者的合法登入。但如果是企業應用對接,情況就不一樣,可能會要求對客戶端(相對而言)做身份驗證。這時就需要做SSL雙向認證。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70017559/viewspace-2903088/,如需轉載,請註明出處,否則將追究法律責任。

相關文章