新聞中心
SSL握手有三個目的:客戶端與服務(wù)器需要就一組用于保護數(shù)據(jù)的算法達成一致、它們需要確立一組由那些算法所使用的加密密鑰、握手還可以選擇對客戶端進行認證,下面為大家詳細講解一下SSL握手具體流程。

目前創(chuàng)新互聯(lián)公司已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計、瓊中黎族網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
概述
SSL(Secure Socket Layer)安全套接字協(xié)議是運行在應(yīng)用層和TCP層之間的安全機制。保證上層應(yīng)用數(shù)據(jù)傳輸?shù)谋C苄?、完整性以及傳輸雙發(fā)身份的合法性。1.傳輸加密性:握手協(xié)議定義會話密鑰后,所有傳輸?shù)膱笪谋粫捗荑€加密。2.消息的完整性:傳輸?shù)膱笪闹性黾覯AC(消息認證碼),用于檢測完整性。3.身份驗證:客戶端認證(可選),服務(wù)端認證(強制)
SSL協(xié)議包括:握手協(xié)議(Handshake protocol)、SSLpassword變化協(xié)議(SSL change cipher spec protocol)、警報協(xié)議(Alert protocol)、記錄協(xié)議(Record protocol)。
握手協(xié)議是SSL連接通信的第一個子協(xié)議也是最復(fù)雜的協(xié)議。
SSL握手協(xié)議
通過握手過程,客戶端與服務(wù)端之間協(xié)商會話參數(shù)(包括相互驗證、協(xié)商加密和MAC算法、生成會話密鑰等)。
第一階段:建立安全能力
客戶端-client_hello:1.客戶端可以支持的SSL最高版本號;2.客戶端生成的32字節(jié)的隨機數(shù);3.會話標識符ID;4.客戶端可以支持的密碼套件列表;5.客戶端可以支持的壓縮方法列表。
服務(wù)端-server_hello:1.SSL版本號,取收到的客戶端SSL版本和服務(wù)端支持的最高版本中的較低者;2.服務(wù)端生成的32字節(jié)的隨機數(shù);3.會話標識符ID;4.從收到的客戶端密碼套件列表中選擇一個密碼套件(包含密鑰交換算法、對稱加密算法、摘要算法);5.從收到的客戶端壓縮方法列表中選擇一種壓縮方法。
第二階段:服務(wù)端驗證和密鑰交換
服務(wù)端-certificate:含有公鑰信息的服務(wù)端數(shù)字證書或到CA的完整證書鏈。
服務(wù)端-server_key_exchange:可選,根據(jù)密鑰協(xié)商算法而定,如果傳送給客戶端的服務(wù)端證書數(shù)據(jù)不足以按照第一階段選定的密鑰交換算法協(xié)商密鑰,該步驟不足密鑰協(xié)商元素。
服務(wù)端-certificate_request:可選,請求驗證客戶端證書信息,單向數(shù)據(jù)認證(只認證服務(wù)端)無此步驟。
服務(wù)端-server_hello_done:通知客戶端版本號和加密套件協(xié)商結(jié)束。
第三階段:客戶端驗證和密鑰交換
客戶端-certificate:可選,客戶端數(shù)字證書,雙向數(shù)據(jù)認證中服務(wù)端要求驗證客戶端身份合法性。
客戶端-client_key_exchange:客戶端交換密鑰,視密鑰交換算法而定,密鑰協(xié)商參數(shù)或pre-master key(服務(wù)端公鑰加密)。
客戶端-certificate_verify:可選,客戶端將已交互的握手消息、會話密鑰的摘要值用客戶端私鑰加密發(fā)送給服務(wù)端。
第四階段:完成
客戶端-change_cipher_spec:改變密碼格式信息,告訴服務(wù)端之后的報文消息用會話密鑰加密。
客戶端-finished:向服務(wù)端宣布握手協(xié)議完成。
服務(wù)端-change_cipher_spec:改變密碼格式信息,告訴客戶端之后的報文消息用會話密鑰加密。
服務(wù)端-finished:向客戶端宣布握手協(xié)議完成。
標題名稱:詳解SSL握手具體流程
當前URL:http://www.dlmjj.cn/article/dhhieeg.html


咨詢
建站咨詢
