http://example.com
https://google.com
  • HTTP 到底在做什麼?
  • HTTPS 多做了什麼?
  • 為什麼密碼不能用 HTTP?

HTTP 是什麼?(白話版)

HTTP(HyperText Transfer Protocol)其實就是,瀏覽器跟伺服器「講話的規則」

例如:

GET /login
Host: example.com

問題是HTTP 是「明文傳輸」

也就是帳號、密碼、Token,都是直接傳出去的(沒有加密)

HTTPS 多了什麼?

HTTPS = HTTP + TLS(加密)

重點不是 HTTP,是 TLS 加密層

1. 加密(Encryption)

資料會變成亂碼,就算被攔截,也看不懂

password=123456
→ 變成一堆看不懂的字串

2. 身分驗證(Authentication)

瀏覽器會確認,你連的真的是「那個網站」

不是假的 Google,不是釣魚網站

3. 資料完整性(Integrity)

確保傳輸過程中資料沒有被修改

自己觀察 HTTP vs HTTPS

Step 1:打開 HTTP 網站

打開: http://example.com

None

Step 2:打開 DevTools

  • F12
  • 切到 Network
None

Step 3:點一個 request

看右邊的 Request Headers

你會看到:

  • URL 是 http
  • 沒有加密資訊

代表是「明文傳輸」

Step 4:改成 HTTPS

打開:

https://example.com

再看一次 DevTools

Step 5:觀察差異

你會看到:

  • URL 變成 https
  • 有 TLS / SSL 資訊
  • 瀏覽器有小鎖頭

這就是加密連線

None

用 TLS Checker 看網站安全性

你可以用, SSL Labs(Google 搜尋: SSL checker)

輸入任一網站,例如:

  • google.com
  • facebook.com

你會看到:

  • 憑證資訊
  • 加密強度
  • 安全評分(A+)

這是實務上工程師會用的工具

None
None

重點整理

記住這幾件事就好:

HTTP = 明文(不安全) HTTPS = TLS 加密(安全)

HTTPS 做三件事:

  • 加密
  • 身分驗證
  • 防竄改