SSL雙向認(rèn)證過(guò)程是怎樣的?SSL(安全套接層)工作于TCP層之上,向應(yīng)用層提供了兩個(gè)基本安全服務(wù):認(rèn)證和保密。雙向認(rèn)證 SSL 協(xié)議的具體過(guò)程:
① 瀏覽器發(fā)送一個(gè)連接請(qǐng)求給安全服務(wù)器。
② 服務(wù)器將自己的證書(shū),以及同證書(shū)相關(guān)的信息發(fā)送給客戶瀏覽器。
③ 客戶瀏覽器檢查服務(wù)器送過(guò)來(lái)的證書(shū),是否由自己信賴的 CA 中心所簽發(fā)的。如果是,就繼續(xù)執(zhí)行協(xié)議;如果不是,客戶瀏覽器就給客戶一個(gè)警告消息:警告客戶這個(gè)證書(shū)不可以信賴,詢問(wèn)客戶是否要繼續(xù)。
④ 接著客戶瀏覽器比較證書(shū)里的消息,例如域名和公鑰,與服務(wù)器剛剛發(fā)送的相關(guān)消息是否一致,如果是一致的,客戶瀏覽器認(rèn)可這個(gè)服務(wù)器的合法身份。
⑤ 服務(wù)器要求客戶發(fā)送客戶自己的證書(shū)。收到后,服務(wù)器驗(yàn)證客戶的證書(shū),如果沒(méi)有通過(guò)驗(yàn)證,拒絕連接;如果通過(guò)驗(yàn)證,服務(wù)器獲得用戶的公鑰。
⑥ 客戶瀏覽器告訴服務(wù)器自己所能夠支持的通訊對(duì)稱密碼方案。
⑦ 服務(wù)器從客戶發(fā)送過(guò)來(lái)的密碼方案中,選擇一種加密程度最高的方案,用客戶的公鑰加過(guò)密后通知瀏覽器。
⑧ 瀏覽器針對(duì)這個(gè)密碼方案,選擇一個(gè)通話密鑰,接著用服務(wù)器的公鑰加過(guò)密后發(fā)送給服務(wù)器。
⑨ 服務(wù)器接收到瀏覽器送過(guò)來(lái)的消息,用自己的私鑰解密,獲得通話密鑰。
⑩ 服務(wù)器、瀏覽器接下來(lái)的通訊都是用對(duì)稱密碼方案,對(duì)稱密鑰是加過(guò)密的。
常見(jiàn)的HTTPS傳輸,不需要進(jìn)行客戶端認(rèn)證,也就是單向認(rèn)證。這時(shí)就不需要?jiǎng)?chuàng)建客戶端的私鑰和公鑰。服務(wù)器端也只要配置一下服務(wù)器端的私鑰即可。
以上是域名頻道對(duì)于ssl雙向認(rèn)證過(guò)程的介紹