昨天我們談到HTTP,今天我們來看比它多了一個s的協定HTTPS是什麼?它是怎麼做到「安全」的?
HTTPS(HyperText Transfer Protocol Secure)就是HTTP + TLS/SSL的安全版本
它在 HTTP 的基礎上,透過加密層(TLS,Transport Layer Security)讓資料在瀏覽器和伺服器之間加密,使傳輸時不會被竊聽或竄改
知道HTTPS如何運作前我們先來了解一下密鑰的概念
加密方式主要分為兩種:
圖片來源:https://www.geeksforgeeks.org/computer-networks/what-is-asymmetric-encryption/
HTTPS基於上方兩種加密方式結合,讓網頁能安全,也可以快速的交換資訊
HTTPS的混合加密(Hybrid Encryption)
握手階段用非對稱加密
→ 安全地交換密鑰,即使在不安全網路中也不怕被攔截
資料傳輸階段用對稱加密
→ 速度快,適合大量傳輸,同時保護內容不被竄改
HTTPS大致流程是這樣👇
伺服器出示憑證(Certificate)
如果檢查失敗,你會看到常見的 「您的連線不是私人連線」 警告頁
TLS 握手(建立安全通道)
握手的目的是交換金鑰和確認加密方式,讓後續資料都能安全傳輸。
流程大概就是像這樣:
安全傳輸
下面是依我的理解畫的整個流程圖(僅供參考)
https://www.geeksforgeeks.org/computer-networks/what-is-asymmetric-encryption/
https://www.cloudflare.com/zh-tw/learning/ssl/what-is-https/
https://zh.wikipedia.org/zh-tw/超文本传输安全协议
https://youtu.be/j9QmMEWmcfo?si=GviHB9-xzFhpEfe-