前言
之前面試的時候,面試官問我了解過https的雙向認證嗎?當時,的確不理解,不過沒關系,現在就來補上,
正文
1.單向認證
還是有必要先說下單向認證,單向認證是我剛開始接觸https的時候就了解到的,下面看一下執行流程圖

(圖是網上找的)
再用文字描述下:
首先建立鏈接 -> 驗證服務端身份 -> 用服務端公鑰加密得到后期通信用的密鑰 -> 服務端用私鑰解密,拿到密鑰 - -> 雙方使用密鑰通信
在上面這個程序中,我們可以看到僅僅是驗證了服務端的身份,如果有人冒充了客戶端,那該怎么辦,就是下面要說的雙向認證,
2.https雙向認證
首先看圖

較于單向認證來說,雙向認證多了驗證客戶端身份的這一環節,下面用文字再描述一下:
首先建立連接 -> 驗證服務端身份->驗證客戶端身份->客戶端發送加密方案->服務端用客戶端公鑰加密,選擇方案->客戶端拿到方案,用服務端公鑰加密密文->服務端解密,拿到密文->雙方使用密文通信
(這個方案指的是對稱機密的方案~)
總結
通過上面認證方式,可以發現,雙向認證其實就是驗證雙方的身份,我們還可以發現https驗證身份的時候都是使用非對稱加密,而后期通信程序中使用的對稱加密,
不驕不躁,保持學習
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/500407.html
標籤:其他
上一篇:TFrecord寫入與讀取
下一篇:關于堆疊遷移的那些事兒
