JWT解碼器

即時解碼JWT令牌,查看標頭、載荷和簽名。提供HMAC簽名驗證、有效期檢查和歷史記錄儲存功能。

最後更新: 2026/02/28

JWT解碼器

JWT令牌輸入
簽名驗證(選填)
所有資料僅在瀏覽器中處理
最近歷史全部刪除
沒有儲存的歷史記錄

輸入JWT令牌後將自動解碼

100%瀏覽器處理: 您輸入的JWT令牌和Secret Key不會傳送至伺服器。所有解碼和驗證作業均在瀏覽器中執行,關閉頁面後資料將被刪除。

JWT解碼器是什麼?

JWT解碼器是一款分析JSON Web Token (JWT)的工具,可檢視標頭(Header)、有效載荷(Payload)、簽名(Signature),並驗證令牌的有效性。JWT廣泛用於API認證、OAuth、SSO等場景,本工具能輕鬆分析令牌結構,是開發和除錯的必備工具。

只需貼上令牌,即可立即解碼並直觀檢視演算法、過期時間、簽發資訊等所有聲明(Claims)。若使用HMAC演算法,可輸入Secret Key進行簽名有效性驗證。

適用情境

  • API除錯 – 確認REST API認證令牌內容及過期狀態
  • OAuth開發 – 實作OAuth 2.0 / OpenID Connect時分析access_token、id_token
  • 認證錯誤排除 – 釐清「Token expired」、「Invalid signature」等認證錯誤原因
  • 安全性檢查 – 確認JWT內含的敏感資訊並檢測安全性弱點
  • 學習目的 – 實作練習以理解JWT結構與運作原理
  • 前端開發 – 測試前端令牌解析與過期處理邏輯

主要功能

  • 即時解碼 – 輸入JWT後立即分解為標頭、有效載荷、簽名並以JSON格式顯示
  • 過期時間驗證 – 分析exp、iat、nbf聲明,顯示令牌有效性與剩餘時間
  • HMAC簽名驗證 – 使用Secret Key驗證HS256、HS384、HS512演算法簽名
  • 聲明詳細分析 – 一目了然檢視iss、sub、aud等標準聲明
  • 語法高亮 – JSON鍵、字串、數字、布林值以顏色區分
  • 歷史紀錄儲存 – 本地儲存最近5筆解碼的JWT,方便快速重用
  • 剪貼簿複製 – 可個別複製標頭、有效載荷、簽名
  • 範例JWT – 立即載入測試用範例令牌以確認功能

使用方法

  1. 輸入JWT – 在左側輸入欄貼上要分析的JWT令牌(以eyJ…開頭的字串)
  2. 確認結果 – 右側顯示Header(演算法)、Payload(資料)、Signature(簽名)
  3. 確認過期 – 從上方狀態卡片檢視令牌有效性與剩餘時間
  4. 簽名驗證(選填) – 若為HMAC演算法,輸入Secret Key後顯示簽名有效性
  5. 複製/應用 – 使用各區段的複製按鈕將所需部分複製至剪貼簿

理解JWT結構

JWT由點(.)分隔的三個部分組成:

組成要素 內容 範例
Header 演算法(alg)與令牌類型(typ) {"alg":"HS256","typ":"JWT"}
Payload 聲明(Claims)- 令牌包含的資訊 {"sub":"123","name":"John"}
Signature 以密鑰簽署標頭+有效載荷的值 HMACSHA256(header.payload, secret)

標準JWT聲明

聲明 說明 範例
iss 簽發者(Issuer) https://auth.example.com
sub 主體(Subject)- 使用者ID user_12345
aud 受眾(Audience)- 令牌接收者 my-app
exp 過期時間(Expiration Time) 1735689600(Unix時間戳記)
iat 簽發時間(Issued At) 1735686000(Unix時間戳記)
nbf 生效時間(Not Before) 1735686000(Unix時間戳記)
jti 令牌唯一ID(JWT ID) abc123xyz

支援的演算法

  • HS256(HMAC + SHA-256) – 對稱金鑰演算法,最常用。可用Secret Key驗證簽名
  • HS384(HMAC + SHA-384) – 比HS256更長的雜湊,安全性更高
  • HS512(HMAC + SHA-512) – 最長的HMAC雜湊,最高安全性
  • RS256、RS384、RS512 – RSA非對稱金鑰演算法(僅支援解碼,不支援簽名驗證)
  • ES256、ES384、ES512 – ECDSA橢圓曲線演算法(僅支援解碼)

* RSA、ECDSA演算法的簽名驗證需要公鑰,目前版本僅支援HMAC演算法的簽名驗證。

個人資訊保護

本工具100%於瀏覽器中運作。您輸入的JWT令牌與Secret Key絕不會傳送至伺服器,所有解碼與簽名驗證僅在您的裝置上進行。關閉瀏覽器後所有資料將被刪除。(歷史紀錄儲存於本地儲存空間,可隨時使用「全部刪除」移除)

詳細說明

JWT解碼器的結果會根據輸入值與所選條件計算。

若需最終決策,請搭配官方標準或專業意見交叉檢核。

常見問題

JWT解碼需要Secret Key嗎?

不需要。JWT的Header與Payload僅經Base64Url編碼,無需Secret Key即可解碼。Secret Key僅用於簽名(Signature)驗證。因此請勿在JWT中存放敏感資訊。

令牌顯示已過期該怎麼辦?

若JWT的exp(過期時間)聲明早於目前時間,則顯示為已過期。已過期的令牌會被伺服器拒絕,需使用Refresh Token或重新登入以取得新令牌。

為什麼會出現簽名不符?

若您輸入的Secret Key與簽發令牌時使用的金鑰不同,就會發生簽名不符。此外,若為RSA或ECDSA演算法,本工具僅支援HMAC,會顯示「僅支援HMAC」。請確認正確的Secret Key。

JWT與基於Session的認證有何不同?

基於Session的認證由伺服器儲存Session資訊,並以Cookie管理Session ID。而JWT本身包含資訊,伺服器無需儲存狀態(Stateless)。JWT適合微服務、行動應用程式、SPA,Session適合傳統網頁應用程式。

JWT不應包含哪些資訊?

JWT的Payload並未加密,僅經編碼,任何人都可檢視。因此絕對不應包含密碼、信用卡號、身分證字號等敏感資訊。僅應包含使用者ID、權限(role)、過期時間等必要資訊。

輸入的JWT會傳送至伺服器嗎?

不會。本工具100%於瀏覽器(用戶端)中運作。您輸入的JWT與Secret Key不會傳送至伺服器,所有解碼與驗證均由JavaScript在瀏覽器中處理。您可透過網路檢測工具直接確認。

匿名意見 1

可能讓其他使用者感到不適的內容或重複留言,可能會依照營運規則被隱藏或刪除。

剩餘字數: 120

目前還沒有留言,歡迎留下第一則意見。