2020-11-18
SSL(Secure Socket Layer)安全套接字協(xié)議是運(yùn)行在應(yīng)用層和TCP層之間的安全機(jī)制。保證上層應(yīng)用數(shù)據(jù)傳輸?shù)谋C苄浴⑼暾砸约皞鬏旊p發(fā)身份的合法性。

傳輸加密性:握手協(xié)議定義會(huì)話密鑰后,所有傳輸?shù)膱?bào)文被會(huì)話密鑰加密。
消息的完整性:傳輸?shù)膱?bào)文中增加MAC(消息認(rèn)證碼),用于檢測(cè)完整性。
身份驗(yàn)證:客戶端認(rèn)證(可選),服務(wù)端認(rèn)證(強(qiáng)制)
SSL協(xié)議包括:握手協(xié)議(Handshake protocol)、SSLpassword變化協(xié)議(SSL change cipher spec protocol)、警報(bào)協(xié)議(Alert protocol)、記錄協(xié)議(Record protocol)。
握手協(xié)議是SSL連接通信的第一個(gè)子協(xié)議也是最復(fù)雜的協(xié)議。
SSL分層結(jié)構(gòu)
SSL握手協(xié)議
通過(guò)握手過(guò)程,客戶端與服務(wù)端之間協(xié)商會(huì)話參數(shù)(包括相互驗(yàn)證、協(xié)商加密和MAC算法、生成會(huì)話密鑰等)。

SSL握手協(xié)議過(guò)程
第一階段:建立安全能力
客戶端-client_hello:
客戶端可以支持的SSL最高版本號(hào);
客戶端生成的32字節(jié)的隨機(jī)數(shù);
會(huì)話標(biāo)識(shí)符ID;
客戶端可以支持的密碼套件列表;
客戶端可以支持的壓縮方法列表。
服務(wù)端-server_hello:
SSL版本號(hào),取收到的客戶端SSL版本和服務(wù)端支持的最高版本中的較低者;
服務(wù)端生成的32字節(jié)的隨機(jī)數(shù);
會(huì)話標(biāo)識(shí)符ID;
從收到的客戶端密碼套件列表中選擇一個(gè)密碼套件(包含密鑰交換算法、對(duì)稱加密算法、摘要算法);
從收到的客戶端壓縮方法列表中選擇一種壓縮方法。
第二階段:服務(wù)端驗(yàn)證和密鑰交換
服務(wù)端-certificate:
含有公鑰信息的服務(wù)端數(shù)字證書或到CA的完整證書鏈。
服務(wù)端-server_key_exchange:
可選,根據(jù)密鑰協(xié)商算法而定,如果傳送給客戶端的服務(wù)端證書數(shù)據(jù)不足以按照第一階段選定的密鑰交換算法協(xié)商密鑰,該步驟不足密鑰協(xié)商元素。
服務(wù)端-certificate_request:
可選,請(qǐng)求驗(yàn)證客戶端證書信息,單向數(shù)據(jù)認(rèn)證(只認(rèn)證服務(wù)端)無(wú)此步驟。
服務(wù)端-server_hello_done:
通知客戶端版本號(hào)和加密套件協(xié)商結(jié)束。
第三階段:客戶端驗(yàn)證和密鑰交換
客戶端-certificate:
可選,客戶端數(shù)字證書,雙向數(shù)據(jù)認(rèn)證中服務(wù)端要求驗(yàn)證客戶端身份合法性。
客戶端-client_key_exchange:
客戶端交換密鑰,視密鑰交換算法而定,密鑰協(xié)商參數(shù)或pre-master key(服務(wù)端公鑰加密)。
客戶端-certificate_verify:
可選,客戶端將已交互的握手消息、會(huì)話密鑰的摘要值用客戶端私鑰加密發(fā)送給服務(wù)端。
第四階段:完成
客戶端-change_cipher_spec:
改變密碼格式信息,告訴服務(wù)端之后的報(bào)文消息用會(huì)話密鑰加密。
客戶端-finished:
向服務(wù)端宣布握手協(xié)議完成。
服務(wù)端-change_cipher_spec:
改變密碼格式信息,告訴客戶端之后的報(bào)文消息用會(huì)話密鑰加密。
服務(wù)端-finished:
向客戶端宣布握手協(xié)議完成。
【參考來(lái)源:51cto】
責(zé)任編輯:中山網(wǎng)站建設(shè)
【網(wǎng)訊網(wǎng)絡(luò)】國(guó)家高新技術(shù)企業(yè)》十二年專注軟件開發(fā),網(wǎng)站建設(shè),網(wǎng)頁(yè)設(shè)計(jì),APP開發(fā),小程序,微信公眾號(hào)開發(fā),定制各類企業(yè)管理軟件(OA、CRM、ERP、OMS訂單管理系統(tǒng)、WMS進(jìn)銷存管理軟件等)!服務(wù)熱線:0760-88610046、13924923903,http://www.denorpool.com
*請(qǐng)認(rèn)真填寫需求,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。