← 返回 CaseShift
教學

JWT 解碼唔離機:點解 token 唔應該貼上別人網站

# JWT 解碼唔離機:點解 token 唔應該貼上別人網站

**Slug:** `jwt-decode-no-upload`
**Date:** 2026-10-19
**CTA:** https://toolbookly.com/zh/jwtly

---

搜「jwt decoder」或者「jwt decode online」會出一大堆貼上框。好多網站會將你個 token **送到伺服器**先幫你排版。JWT 好多時係 **bearer 憑證**——有條字串嘅人,喺過期前可以當你嚟用。呢篇講清楚 JWT 係咩、點解伺服器端解碼係錯預設,同埋點樣喺瀏覽器安全睇 claims。

一分鐘講 JWT

Compact JWT 有三段 base64url,用句點隔開:

`header.payload.signature`

  • **Header** — 通常有 `alg`(HS256、RS256、ES256…)同 `typ`

  • **Payload** — claims,例如 `sub`、`iss`、`aud`,同時間欄 `exp`、`iat`、`nbf`

  • **Signature** — 用你信任嘅 key 簽過(你驗簽先證明)
  • 解 header/payload 只係 base64url → JSON。**任何人**有條字串都可以睇到呢啲 claims。驗簽係另外一步:用 shared secret(HS*)或者 public key(RS*/ES*)核對簽名。

    點解「貼去別人網站」有風險

    如果 decoder 喺別人伺服器跑:

  • 完整 token 可能落入 access log、錯誤追蹤、分析工具

  • 「分享結果」或者歷史 URL 可能喺你關頁之後仲留住

  • 你同網站之間嘅網絡觀察者會見到一段根本唔使離機嘅憑證

  • 你核實唔到後端存咗啲咩、留幾耐
  • 將 production access token 當密碼處理。你唔會將密碼貼去隨便一個「格式化」網站;JWT 同理——SSO、API gateway、mobile app 出嚟嘅都係。

    Token 亦唔應該寫入 URL

    有啲工具將 JWT 放進 query string,令「結果」可以 bookmark。咁樣 token 會落入:

  • 瀏覽紀錄

  • 你撳出站連結時嘅 Referrer

  • 記低完整 URL 嘅 proxy/CDN log
  • 安全嘅 decoder 只將 token 留喺本地文字框(或者記憶體)——唔好當 query 參數,亦唔好為咗「pretty print」POST 去 API。

    解碼之後要睇咩

    JSON 喺你部機讀得明之後:

  • **`exp`** — 係咪已經過期?

  • **`nbf`** — 係咪未生效?

  • **`iat`** — 幾時發出?

  • **`alg`** — 同服務預期一唔一致?(`none` 或者離奇算法要停手)

  • **Claims** — `sub`、`iss`、`aud`、角色、tenant —— 解釋點解 request 失敗
  • 可選嘅**簽名驗證**確認 token 係用你嘅 secret 或 public key 簽。淨解碼**唔等於**證明真偽;只係顯示 bearer 字串聲稱嘅內容。

    用任何線上 JWT decoder 之前嘅清單

  • 優先標明 **client-side/瀏覽器內**、斷網都用得嘅工具

  • 唔好將 live production token 貼去一定要上傳先解得嘅網站

  • 拒絕將 JWT 寫入 **URL**,或者有「儲存/分享歷史」嘅工具

  • 淨係要截圖開 ticket,就用 disposable token 或者先 redact

  • 驗簽只用你已經控制嘅 key —— 而且只喺本地做
  • 私隱替代:用 Jwtly 喺瀏覽器解碼

    Jwtly 係 ToolBookly 嘅 JWT 解碼/檢查工具。佢喺瀏覽器拆同排版 header/payload,顯示易讀嘅 `exp`/`iat`/`nbf` 同有效期標記,亦可以選擇用你貼上嘅 secret 或 PEM 驗 HS*/RS*/ES* —— **唔上傳、唔中轉**。Token 唔會送到 ToolBookly 伺服器,亦唔會寫入頁面 URL。

    **典型流程:**

  • 打開 Jwtly

  • 貼上 JWT

  • 睇 header/payload JSON 同 claim 時間

  • 可選貼 secret 或 public key 驗簽 —— 仍然本地
  • 英文介面:Jwtly

    要重新排版大份 payload,或者驗證獨立 JSON(設定檔、API 回應、含機密嘅 dump)?用 JSONly——ToolBookly 嘅瀏覽器端 JSON 格式化/驗證工具。同樣唔上傳:美化、minify、sort keys、樹狀檢視,文件唔會送到伺服器。

    邊種情況伺服器端 decoder 仍然 OK

    教學用、RFC 例子嘅**假** token。完全冇真實憑證嘅公開 sample。你願意公開貼去 gist 嘅嘢。

    Staging 或者 production identity provider 出嘅 token,解碼同驗簽都應該留喺**你部裝置**。

    Debug `Authorization: Bearer` 嘅 401?睇 Bearer token 點樣解碼:唔洩露 token 睇 aud、exp、scope。

    結語

    要你將 token 交去伺服器先解得嘅 JWT decoder,等於為咗排版分享 bearer 憑證。優先瀏覽器端解碼——唔上傳、唔寫入 URL、claim 時間清楚、可選本地驗簽。

    用 Jwtly 安全解碼 JWT(唔離機)→