[IS] SSL, TLS 和 HTTPS
參考資料
- 👍 SSL, TLS, HTTPS Explained @ ByteByteGo
- 👍 HOW HTTPS WORKS
TL;DR
- 公鑰和私鑰是一對的,被公鑰加密的內容,只能透過該把私鑰解密
- 憑證(certificate)的目的是在證明「這把公鑰真的是這個伺服器的」,避免有人偽裝該伺服器來騙取你的鑰匙
流程
-
server 上有公鑰和私鑰,這副鑰匙是一對的,用來進行「非對稱加密」
-
以此公鑰加密之後,只能透過對應的私鑰進行解密
-
server 向 client 提供「公鑰」
-
-
client 有用來做「對稱加密」的鑰匙
- client 將這把鑰匙以 server 提供的公鑰進行加密
-
server 收到透過公鑰加密過的「由 client 提供的密鑰」後,
-
以 server 自己的私鑰解密
-
解密後可以取得 client 提供的密鑰
-
-
後續 server 和 client 溝通時,都會透過由 client 提供的這把密鑰來進行「對稱式的加解密」
圖片來源:SSL, TLS, HTTPS Explained @ ByteByteGo
參考
- How does HTTPS work? What's a CA? What's a self-signed Certificate? by kubucation @ Youtube
- How HTTPS works @ YouTube
- 什麼是 SSL、TLS 以及 HTTPS? @ digicert
- 深入理解 TLS/SSL 安全加密協定 @ Will 保哥的技術交流中心