SSL的主要目的是在兩個(gè)通信應(yīng)用程序之間提供私密信和可靠性。這個(gè)過(guò)程通過(guò)3個(gè)元素來(lái)完成:
1、握手協(xié)議。
握手協(xié)議負(fù)責(zé)協(xié)商被用于客戶機(jī)和服務(wù)器之間會(huì)話的加密參數(shù)。當(dāng)一個(gè)SSL客戶機(jī)和服務(wù)器第一次開始通信時(shí),它們?cè)谝粋€(gè)協(xié)議版本上達(dá)成一致,選擇加密算法,選擇相互認(rèn)證,并使用公鑰技術(shù)來(lái)生成共享密鑰。
SSL握手過(guò)程步驟:
步驟1:SSL客戶機(jī)連接到SSL服務(wù)器,并要求服務(wù)器驗(yàn)證它自身的身份。
步驟2:服務(wù)器通過(guò)發(fā)送它的數(shù)字證書證明其身份。這個(gè)交換還可以包括整個(gè)證書鏈,直到某個(gè)根證書權(quán)威機(jī)構(gòu)(CA)。通過(guò)檢查有效日期并確認(rèn)證書包含有可信任CA的數(shù)字簽名,來(lái)驗(yàn)證證書。
步驟3:服務(wù)器發(fā)出一個(gè)請(qǐng)求,對(duì)客戶端的證書進(jìn)行驗(yàn)證。但是,因?yàn)槿狈€體系結(jié)構(gòu),當(dāng)今的大多數(shù)服務(wù)器不進(jìn)行客戶端認(rèn)證。
步驟4:協(xié)商用于加密的消息加密算法和用于完整性檢查的哈希函數(shù)。通常由客戶機(jī)提供它支持的所有算法列表,然后由服務(wù)器選擇最安全的加密算法。
步驟5:客戶機(jī)和服務(wù)器通過(guò)下列步驟生成會(huì)話密鑰:
a. 客戶機(jī)生成一個(gè)隨機(jī)數(shù),并使用服務(wù)器的公鑰(從服務(wù)器的證書中獲得)對(duì)它加密,然后發(fā)送到服務(wù)器上
b. 服務(wù)器用更加隨機(jī)的數(shù)據(jù)(從客戶機(jī)的密鑰可用時(shí)則使用客戶機(jī)密鑰;否則以明文方式發(fā)送數(shù)據(jù))響應(yīng)。
c. 使用哈希函數(shù),從隨機(jī)數(shù)據(jù)生成安全密鑰。
2、記錄協(xié)議。
記錄協(xié)議用于交換應(yīng)用層數(shù)據(jù)。應(yīng)用程序消息被分割成可管理的數(shù)據(jù)塊,還可以壓縮,并應(yīng)用一個(gè)MAC(消息認(rèn)證代碼);然后結(jié)果被加密并傳輸。接受方接受數(shù)據(jù)并對(duì)它解密,校驗(yàn)MAC,解壓縮并重新組合它,并把結(jié)果提交給應(yīng)用程序協(xié)議。
3、警告協(xié)議。這個(gè)協(xié)議用于指示在什么時(shí)候發(fā)生了錯(cuò)誤或兩個(gè)主機(jī)之間的會(huì)話在什么時(shí)候終止。
SSL協(xié)議的工作流程:
服務(wù)器認(rèn)證階段:1)客戶端向服務(wù)器發(fā)送一個(gè)開始信息“Hello”以便開始一個(gè)新的會(huì)話連接;2)服務(wù)器根據(jù)客戶的信息確定是否需要生成新的主密鑰,如需要?jiǎng)t服務(wù)器在響應(yīng)客戶的“Hello”信息時(shí)將包含生成主密鑰所需的信息;3)客戶根據(jù)收到的服務(wù)器響應(yīng)信息,產(chǎn)生一個(gè)主密鑰,并用服務(wù)器的公開密鑰加密后傳給服務(wù)器;4)服務(wù)器恢復(fù)該主密鑰,并返回給客戶一個(gè)用主密鑰認(rèn)證的信息,以此讓客戶認(rèn)證服務(wù)器。
云專線將網(wǎng)絡(luò)解耦為核心網(wǎng)絡(luò)、邊緣網(wǎng)絡(luò)、最后1km三部分。用戶可根據(jù)使用情況,靈活配置核心網(wǎng)絡(luò)、邊緣網(wǎng)絡(luò)、最后1km帶寬。打破了傳統(tǒng)帶寬利用率不均衡問題,造成的高成本問題。
用戶認(rèn)證階段:在此之前,服務(wù)器已經(jīng)通過(guò)了客戶認(rèn)證,這一階段主要完成對(duì)客戶的認(rèn)證。經(jīng)認(rèn)證的服務(wù)器發(fā)送一個(gè)提問給客戶,客戶則返回(數(shù)字)簽名后的提問和其公開密鑰,從而向服務(wù)器提供認(rèn)證。