跳至 JWT 輸入欄位

JWT 解碼器 - 在瀏覽器中解碼和驗證 JWT

// 無需將資料傳送到伺服器即可解碼 JWT

僅在客戶端處理 — 您的資料永不離開瀏覽器
Token 輸入
將 JWT 檔案或文字拖放到此處

如何解碼 JWT Token

1

貼上您的 JWT Token

複製您的 JSON Web Token 並貼到輸入欄位。JWT 解碼器會自動即時解析和解碼 Base64URL 編碼的 token。

2

檢視解碼的聲明

檢查解碼的 JWT 標頭和載荷。以 JSON 或表格格式檢視 iss、sub、exp 和 iat 等聲明,並附有易讀的時間戳記。

3

驗證 JWT 簽章

輸入您的密鑰或公鑰來驗證 token 的簽章。支援 HS256、HS384、HS512 (HMAC) 演算法進行簽章驗證。

什麼是 JSON Web Token (JWT)?

標頭 . 載荷 . 簽章

JSON Web Token (JWT) 是一種開放標準(RFC 7519),用於以緊湊、URL 安全的 JSON 物件形式在各方之間安全傳輸資訊。JWT 常用於現代 Web 應用程式、API 和單一登入 (SSO) 系統中的身份驗證授權資訊交換

標頭

包含 token 類型和簽章演算法(例如 HS256、RS256、ES256)。

{"alg": "HS256", "typ": "JWT"}

載荷

包含聲明:已註冊聲明(issexpsub)、公開聲明和私有聲明。

{"sub": "user123", "exp": 1699999999}

簽章

驗證 token 未被篡改的加密簽章。

HMACSHA256(base64(header).base64(payload), secret)

常見的 JWT 使用案例

API 身份驗證

JWT 是保護 REST API 的標準。登入後,伺服器發放 JWT,客戶端在後續請求中將其包含在 Authorization: Bearer 標頭中。

單一登入 (SSO)

JWT 實現跨多個應用程式的無縫身份驗證。一次登入產生的 token 可在您組織中所有連接的服務上使用。

資訊交換

在各方之間安全傳輸資料。簽章確保發送者的身份以及訊息在傳輸過程中未被更改。

行動應用程式身份驗證

適合行動應用程式的無狀態身份驗證。不需要伺服器端 session—JWT 包含所有必要的使用者資訊。

常見問題

這個 JWT 解碼器可以安全地用於正式環境的 token 嗎?

是的,這個 JWT 解碼器完全安全。所有解碼和驗證都完全在您的瀏覽器中使用 JavaScript 進行。您的 token 和密鑰永遠不會傳送到任何伺服器。您可以透過檢查瀏覽器開發者工具中的網路請求來驗證這一點—沒有任何資料離開您的裝置。

解碼和驗證 JWT 有什麼區別?

解碼只是將 Base64URL 編碼的標頭和載荷轉換回可讀的 JSON。任何人都可以在沒有金鑰的情況下解碼 JWT。驗證會檢查加密簽章,以確保 token 未被篡改且由可信來源發放。驗證需要密鑰(用於 HMAC)或公鑰(用於 RSA/ECDSA)。

支援哪些 JWT 簽章演算法?

此工具可以解碼使用任何演算法簽署的 JWT。對於簽章驗證,我們目前支援使用 Web Crypto API 的 HMAC 演算法(HS256、HS384、HS512)。RSA(RS256、RS384、RS512)和 ECDSA(ES256、ES384、ES512)驗證支援正在規劃中。

為什麼我的 JWT 簽章驗證失敗?

常見原因包括:1) 密鑰錯誤—確保您使用的是與簽署 token 時完全相同的金鑰。2) 格式錯誤—如果您的密鑰是 Base64 編碼的,請嘗試在 UTF-8 和 Base64 之間切換。3) 演算法不匹配—檢查標頭中的 alg 聲明是否與您的驗證方法匹配。4) Token 已被修改—對標頭或載荷的任何更改都會使簽章無效。

標準 JWT 聲明是什麼意思?

RFC 7519 中定義的已註冊聲明:

  • iss (發行者) – 誰發放了 token
  • sub (主體) – token 代表的使用者或實體
  • aud (受眾) – token 的預期接收者
  • exp (過期時間) – token 過期的 Unix 時間戳記
  • nbf (生效時間) – 在此時間之前 token 無效
  • iat (發放時間) – token 建立的時間
  • jti (JWT ID) – token 的唯一識別碼