SSL安全證書(shū)的工作原理是怎樣的
掃描二維碼
隨時(shí)隨地手機(jī)看文章
(文章來(lái)源:SSL網(wǎng)站安全)
自從Google宣布chrome68會(huì)將所有的HTTP網(wǎng)站標(biāo)記為不安全,之后我們?cè)L問(wèn)沒(méi)有HTTP類(lèi)型網(wǎng)站的網(wǎng)站都會(huì)被提示“紅色不安全”的提示。隨后掀起一陣網(wǎng)站要安裝SSL證書(shū)的風(fēng)潮,那么,到底什么是SSL證書(shū)?它是如何保障網(wǎng)站的安全呢?
什么是SSL?SSL是一種使用TCP / IP在兩個(gè)通信應(yīng)用程序之間提供隱私和完整性的協(xié)議,對(duì)在客戶端和服務(wù)器端之間來(lái)回傳遞的數(shù)據(jù)進(jìn)行加密。SSL證書(shū)的工作原理:SSL連接始終由客戶端啟動(dòng)。在SSL會(huì)話開(kāi)始時(shí),將執(zhí)行SSL握手。此握手生成會(huì)話的加密參數(shù)。如圖顯示了如何處理SSL握手的簡(jiǎn)要概述。此示例假定在Web瀏覽器和Web服務(wù)器之間建立SSL連接。
1.客戶端發(fā)送“hello”消息,列出客戶端的加密功能(按客戶端首選項(xiàng)順序排序),例如SSL的版本,客戶端支持的密碼套件以及客戶端支持的數(shù)據(jù)壓縮方法。 該消息還包含一個(gè)28字節(jié)的隨機(jī)數(shù)。
2.服務(wù)器響應(yīng)服務(wù)器“hello”消息,該消息包含加密方法(密碼套件)和服務(wù)器選擇的數(shù)據(jù)壓縮方法,會(huì)話ID和另一個(gè)隨機(jī)數(shù)。
3.服務(wù)器發(fā)送其數(shù)字證書(shū)。
4.服務(wù)器發(fā)送服務(wù)器“hello done”消息并等待客戶端響應(yīng)。
5.在收到服務(wù)器“hello done”消息后,客戶端(Web瀏覽器)驗(yàn)證服務(wù)器的數(shù)字證書(shū)的有效性,并檢查服務(wù)器的“hello”參數(shù)是否可接受。
客戶端發(fā)送“客戶端交換密鑰”消息。如果客戶端向服務(wù)器發(fā)送了數(shù)字證書(shū),則客戶端會(huì)發(fā)送使用客戶端私鑰簽名的“數(shù)字證書(shū)驗(yàn)證”消息。 通過(guò)驗(yàn)證此消息的簽名,服務(wù)器可以明確驗(yàn)證客戶端數(shù)字證書(shū)的所有權(quán)。
6.客戶端使用一系列加密操作將預(yù)主密鑰轉(zhuǎn)換為主密鑰,從中獲取加密和消息認(rèn)證所需的所有密鑰材料。 然后客戶端發(fā)送“更改密碼規(guī)范”消息,使服務(wù)器切換到新協(xié)商的密碼套件。 客戶端發(fā)送的下一條消息(“已完成”消息)是使用此密碼方法和密鑰加密的第一條消息。
7.服務(wù)器以“更改密碼規(guī)范”和自己的“已完成”消息進(jìn)行響應(yīng)。
8.SSL握手結(jié)束,可以發(fā)送加密的應(yīng)用程序數(shù)據(jù)。
也就是說(shuō),網(wǎng)站通過(guò)安裝SSL證書(shū)將之前的http協(xié)議升級(jí)為https加密協(xié)議,通過(guò)https協(xié)議對(duì)客戶端與服務(wù)器端進(jìn)行信息傳輸?shù)倪^(guò)程加密處理,防止數(shù)據(jù)信息的泄露,保證了雙方傳遞信息的安全性,還能驗(yàn)證他所訪問(wèn)的網(wǎng)站是否是真實(shí)可靠。