完美解釋https

HTTPS(數字證書機制)

上面,無論數據加密還是簽名,我們發現最重要的就是加密方法和加密密鑰。

對於兩臺服務器交互,可能不用太擔心,但是如果是webapp或者原生app,不法分子反編譯前端代碼後,就有可能拿到加密方法和加密key,怎麼辦呢?

這就屬於HTTPS要解決的事情:

在加密算法中,有一種叫做非對稱加密的算法,有公鑰和私鑰組成,他有個特點:公鑰加密的數據,只有私鑰能解密;私鑰加密的數據,只有公鑰能解密。

HTTPS 就是需要讓客戶端與服務器端安全地協商出一個對稱加密算法。剩下的就是通信時雙方使用這個對稱加密算法進行加密解密。

①客戶端啓動,發送請求到服務端,服務端通過非對稱加密算法(如RSA)生成公鑰pubkey1和私鑰prikey1。

②服務端將公鑰pubkey1發給客戶端,客戶端用自己的非對稱加密算法也生成一套公鑰pubkey2和私鑰prikey2,並將公鑰pubkey2通過pubkey1加密後返回服務端。

③服務端用私鑰prikey1解密後拿到pubkey2,並將確定好的未來交互的對稱加密算法和密鑰通過pubkey2加密,返回客戶端。

④客戶端用私鑰pubkey2解密數據,拿到服務器給定的加密算法和密鑰,雙方開始用其數據通信。

這樣仍有一個問題,如何證明公鑰pubkey1加密的這串數字是客戶端來的,即證明他就是他。。。

這就是HTTPS的數字證書,相當於網絡中心的部分,證明他就是他。數字證書就是來幹這個的。
 

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