握手協議執行過程
第一階段
客戶端向服務端發hello資訊,包含協議版本、隨機數、會話id、密碼套件等資訊;服務端向客戶端發hello資訊,包含協議版本、隨機數、會話id、密碼套件等資訊。
第二階段
伺服器發證書給客戶端;包含伺服器自身相關證書、數字簽名、引數等。
第三階段
客戶端發證書給服務端;包含客戶端自身證書、簽名、主金鑰等。
第四階段
客戶端和服務端均根據主金鑰生成各類金鑰,如:訊息鑑別金鑰、分組加密初始向量iv、分組加密金鑰等。
第五階段
服務端和客戶端分別傳送握手協議結束申明。
問題q1:ssl提供怎樣的安全性?
身份鑑別(當客戶端有證書時)、傳輸加密、完整性保護、金鑰交換。
可通過「ssl+口令」的方式來進行身份鑑別。
q2:ssl使用dh金鑰協商能否抵抗中間人攻擊?
可以,因為此時傳送的不僅有引數g,p
,gxg,p,g^x
g,p,gx
,還有這些引數的簽名。
q3:ssl協議與數字信封(如pgp協議)的區別是什麼?
數字信封每個包都要提供數字簽名,以保證資料原發正確性。
ssl協議是乙個以通訊安全為主的協議,握手協議後,不再採用數字簽名,理論上,服務端和客戶端均可偽造發包。
q4:ssl協議最大的安全威脅來自什麼?
對客戶端和服務端的木馬入侵,金鑰的安全性。
SSL協議之握手協議
一 握手協議 握手協議是客戶機和伺服器用ssl連線通訊時使用的第乙個子協議,握手協議包括客戶機與伺服器之間的一系列訊息。ssl中最複雜的協議就是握手協議。該協議允許伺服器和客戶機相互驗證,協商加密和mac演算法以及保密金鑰,用來保護在ssl記錄中傳送的資料。握手協議是在應用程式的資料傳輸之前使用的。...
SSL協議之握手協議
2.第一步 客戶端向伺服器傳送clienthello clienthello中涉及到的訊息具體如下 客戶端版本,按優先順序列出客戶端支援的協議版本,首選客戶端希望支援的最新協議版本。客戶端隨機數random 會話id session id 如果客戶端第一次連線到伺服器,那麼這個欄位就會保持為空。上圖...
SSL的握手協議
1.使用者瀏覽器將其ssl版本號 加密設定引數 與session有關的資料以及其它一些必要資訊傳送到伺服器。2.伺服器將其ssl版本號 加密設定引數 與session有關的資料以及其它一些必要資訊傳送給瀏覽器,同時發給瀏覽器的還有伺服器的證書。如果配置伺服器的ssl需要驗證使用者身份,還要發出請求要...