iT邦幫忙

2023 iThome 鐵人賽

DAY 12
1
Modern Web

那些你可能要知道的前端知識系列 第 12

【day12】HTTP 和 HTTPS 的差別

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20230915/20148303MxKsB8d0Lo.png

HTTP 是什麼

HTTP是「超文本傳輸協定」,是以TCP來做網路資料傳輸的一種方式,舉一個例子,今天要傳送一份文件到雲端給同事下載,流程會是資料上傳 → 透過TCP傳資料到伺服器 → 到達網路 → 同事下載
在早年前使用HTTP來進行這一連串的動作,很有可能被有心人士竊取資料,因為HTTP雖然可以傳送資料,但是沒有完善的安全機制,因此後來才有了HTTPS的出現來改善資料安全的問題

HTTPS 是什麼

HTTPS是「超文本傳輸安全協定」,HTTPS同樣可以用來傳輸資料,但它不同的是在傳輸過程中會加上SSL或TLS憑證,如果資料在途中被竊取,竊取時就只會看到經過加密過後的亂碼


HTTP 如何運作

使用者點擊網址或跟瀏覽器提交資料,瀏覽器會跟伺服器發送HTTP的請求,請求可能會包含(GET/POST)、瀏覽器資料等。伺服器接到資訊以後會進行解析,伺服器會根據解析然後回應請求,同時也會回傳HTTP的狀態碼(例如:200 、 404等...)HTTP狀態碼代表意思可以參考看看MDN,最後瀏覽器收到資訊後會解析,渲染在網頁上讓使用者看到相關的畫面

HTTPS 如何運作

HTTPS是在HTTP的基礎上加上SSL/TLS進行加密協定,當使用者透過瀏覽器發送HTTPS請求後,伺服器會建立安全的連線,並使用SSL/TLS證書,這時候在使用者端會產生一個隨機的對稱金鑰,然後由伺服器的公開金鑰加密之後傳送,再由伺服器的私密金鑰來解析由公開金鑰加密過後的對稱金鑰
因為有了加密的處理,所以在中間萬一被竊取資料,也會難以解讀,因為只有伺服器端的私密金鑰可以解析公開金鑰。

附上一張AWS提供的比較圖表
https://ithelp.ithome.com.tw/upload/images/20230915/20148303kpntyoW7cj.png

參考資料
AWS
為什麼HTTPS比HTTP重要?一次帶你了解兩者的差異和重要性
MDN HTTP狀態碼


上一篇
【day11】Vite是什麼?
下一篇
【day13】CORS是什麼
系列文
那些你可能要知道的前端知識30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言