Https的簡單原理

前提知識

1、對稱加密只有一個祕鑰,同一個祕鑰加密同一個祕鑰解密,優點是效率高,缺點是服務器和客戶端(也可稱作瀏覽器)沒法商定祕鑰,如果明文發送祕鑰容易泄露。

2、非對稱加密有有一個公鑰和一個私鑰,公鑰加密只能私鑰解密,同時私鑰加密只能公鑰解密,缺點是效率低,優點是不需要商定祕鑰,即使明文發送公鑰也沒有安全問題。

3、http不安全的地方在於兩處:報文文明文傳輸,截獲就能知曉內容;黑客可能冒充服務器。

https的原理

一、解決明文傳輸問題

顯而易見,如果使用非對稱加密,瀏覽器生成一對公鑰和私鑰,把公鑰明文發給客戶端,之後通過公私鑰傳遞信息即可。但是非對稱加密效率低,於是可以綜合兩者的使用:服務器先用非對稱加密和客戶端建立聯繫,之後傳輸對稱加密的祕鑰,此後的通信全部通過對稱加密。簡單思考可知,黑客無法截獲對稱加密的祕鑰。

二、解決假冒服務器

一階段的實現有一個致命的缺點:黑客一開始就冒充服務器,導致客戶端發送的信息全部發給黑客並被解密。單純的加解密機制無法解決假冒身份的問題,需要引入第三方認證機構提供幫助,即CA:CA機構有自己的CA公鑰和CA私鑰,CA私鑰自己存儲,CA公鑰內置在客戶端或者操作系統中(徹底消滅網絡黑客的操作空間),服務器也有自己的服公鑰和服私鑰,服務器把服公鑰和服務器的一些信息交給CA機構,CA機構用CA私鑰生成一個加密簽名,服務器把帶有加密簽名的證書發給客戶端,客戶端用內置的CA公鑰解密簽名進行確認,無誤後取出服公鑰,再執行一階段的步驟。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章