解析結果
3
/3
2
鍵
5
claim
// header
{
"alg": "HS256",
"typ": "JWT"
}
// payload
{
"sub": "1234567890",
"name": "John Doe",
"admin": true,
"iat": 1753960000,
"exp": 1900000000
}工具頁摘要
Browser-side JWT (RFC 7519) decoder — splits header.payload.signature, base64url-decodes (RFC 7515 §2), parses claims, shows exp countdown. Six-band algorithm judgement (none / weak HS256 / RS256 / ES256 / EdDSA / expired) per RFC 8725 BCP and OWASP JWT Cheat Sheet. Tokens never leave the browser.
分類:開發工具 / Developer。正式路徑:/tools/developer/jwt-decoder。狀態:GOLD。本頁提供可直接閱讀的工具用途、輸入情境、結果解讀、FAQ、信任聲明與相關資源摘要,協助讀者在使用前了解適用情境與限制。
本工具提供一般資訊與估算輔助,計算結果會受輸入值、假設條件與資料更新影響。財務、健康或法律相關結果不應視為專業建議;做出重大決策前,請依實際情況查核來源並諮詢合格專業人士。
中文摘要:JWT 解碼器 是 Formula Universe 收錄於 開發工具 / Developer 分類的工具頁,包含工具用途、輸入指引、結果解讀、FAQ、資料來源、限制說明與責任參考。
最後更新:2026年6月12日
本頁面由 Formula Universe 編輯團隊審核並維護。我們定期更新工具內容、驗證計算邏輯和資料來源準確性,以確保提供讀者最新、最可靠的資訊。
開發工具 · JWT 解碼 · RFC 7519
瀏覽器端解析 JSON Web Token 三段內容,並以六格演算法安全等級判讀
本工具完全在瀏覽器以 base64url(RFC 7515 §2)解析 JWT 三段(header.payload.signature),呈現 JSON header 與 payload claims;依 RFC 7519、RFC 7515、RFC 8725(JWT Best Current Practices)為基準,把演算法落入「未簽名」「對稱弱簽」「業界主流 RS256」「現代 EdDSA」等六格判讀,並自動偵測 exp 過期。本工具不驗證簽名,僅做解碼與展示。
範例 → 計算機
先用範例理解 header.payload.signature 三段結構,再貼上自己的 token。
解析結果
3
/3
2
鍵
5
claim
// header
{
"alg": "HS256",
"typ": "JWT"
}
// payload
{
"sub": "1234567890",
"name": "John Doe",
"admin": true,
"iat": 1753960000,
"exp": 1900000000
}結果解讀
L7 固定六格,把目前 alg 與 exp 狀態放進 RFC 8725 推薦等級;這是演算法選型參考,不是合規認證或法律建議。
alg = none 表示未簽名 JWT,僅作為信封使用;RFC 8725 §2.1 與 OWASP JWT Cheat Sheet 明確列為高風險,生產環境必須拒絕;曾於 2015 年 jsonwebtoken 套件爆出簽名繞過 CVE。
HS256 / HS384 / HS512 採對稱密鑰(同一 secret 簽與驗);若 secret 短於 256 bit 或被 client 看到,等於沒有簽章;RFC 7518 §3.2 要求 secret ≥ key length。
RS256 採 RSA-SHA256 非對稱簽章,公鑰可廣播、私鑰只在簽發者持有;適合多方驗證(JWKS 公開金鑰端點);AWS Cognito、Auth0、Firebase 預設皆採 RS256。
ES256 採 ECDSA P-256 + SHA-256 簽章,key 與 signature 皆比 RS256 短;適合行動裝置與 IoT;NIST FIPS 186-4 與 RFC 7518 §3.4 規範,效能優於 RS256 且密鑰更短。
EdDSA(Ed25519 / Ed448)由 RFC 8037 + 8032 規範,於 RFC 8725 §3.3 列為「現代 JWT 推薦」;固定時序執行、不需安全 RNG、抗側信道攻擊;Cloudflare、SSH 8.0+、Tor 已預設採用。
exp claim 已過(現在時間 > exp);依 RFC 7519 §4.1.4,合規驗證器必須拒絕;若您看到「JWT 過期」是預期行為,client 應自動 refresh 或重新登入,不應信任過期 token。
情緒與轉換層
L9 連動目前 token,顯示演算法、過期狀態與 claim 數量,協助判斷該 token 是否仍可信、是否需要 refresh、是否該升級到 RS256/EdDSA。
演算法洞察卡
動力卡
儲存 / 分享
重新貼上 token 或切換展示模式時自動重算,協助比較不同 token 的演算法、有效期與 claim 結構,作為認證設計的選型依據。
下一步行動
決策路徑
貼上完整三段(header.payload.signature)
依 RFC 7515 §2 base64url 解出 header 與 payload
檢查 alg、exp、iss、aud,並拒絕 alg=none
若驗章成功才信任 claim,否則 refresh 或拒絕
知識
JSON Web Token(JWT)是 IETF RFC 7519 規範的 token 格式,由三段以點分隔的 base64url 字串組成:header.payload.signature。Header 描述演算法,payload 攜帶 claim,signature 由 RFC 7515 JWS 或 RFC 7516 JWE 規範。
JWT = base64url(header) + "." + base64url(payload) + "." + base64url(signature)。其中 signature = HMAC_SHA256(header.payload, secret) (HS256) 或 RSA_SHA256(...)(RS256) 或 ECDSA_P256(...)(ES256)。exp claim 為 Unix epoch 秒,RFC 7519 §4.1.4 規定到期即拒絕。
本工具不驗證簽章(verify 需要對應公鑰/secret)、不解密 JWE(加密 JWT)、不檢查 iss / aud / nbf claim 是否符合預期、不偵測 algorithm confusion 攻擊;生產驗證請使用 jose、jsonwebtoken 等已審計套件。
看到 alg=none → 立即拒絕(已知 CVE 攻擊);看到 alg=HS* 但 secret 在 client → 等於沒有簽章;看到 alg=RS256/ES256/EdDSA → 業界主流;看到 exp 已過 → refresh 或重新登入;看到 iat 在未來 → 時鐘漂移或攻擊。
JWT 在 OAuth 2.0、OpenID Connect、AWS Cognito、Firebase Auth、Auth0 等認證系統廣泛使用;但因 alg confusion、none 攻擊、過期 token replay 多個 CVE,RFC 8725(2020)發布 JWT Best Current Practices,建議優先採用 EdDSA 或 RS256/ES256,並嚴格驗 alg。
header = {alg:"HS256",typ:"JWT"}、payload = {sub:"1234567890",name:"John Doe",admin:true,iat:1753960000,exp:1900000000};經 base64url 編碼 + secret 簽章後變成三段 token。本工具的範例使用 placeholder 簽名,不會通過任何 verify 流程。
常見問題
alg=none 表示「沒有簽章」,任何人都能偽造 token;2015 年多個套件(jsonwebtoken、pyjwt 早期版本)未過濾 alg=none 導致 CVE-2015-9235;RFC 8725 §2.1 與 OWASP 都明確要求生產驗證器必須拒絕。
不會。verify 簽章需要對應的 secret(HS*)或公鑰(RS* / ES* / EdDSA);在瀏覽器側無法安全持有 server secret,且每個應用驗證的 issuer / audience 不同。生產驗證請使用 jose 或 jsonwebtoken,並從 JWKS endpoint 拉取公鑰。
不會。本工具完全在瀏覽器以 atob + TextDecoder + JSON.parse 解析;頁面關閉後即消失。可在 DevTools Network 面板驗證:點解析後沒有任何 outbound request。但仍建議避免貼上含真實 secret 或 PII 的生產 token。
常見原因:① 不是三段、② 中間混入空白或換行、③ 把 base64 與 base64url 混用(JWT 必須用 base64url:- _ 取代 + /)、④ payload 不是合法 JSON。RFC 7515 §2 規定必須 base64url 不帶 padding。
RFC 7519 §2 規定 NumericDate = UTC Unix epoch 秒(允許小數)。設計理由:跨語言相容(C/Go/Rust/JS 都能讀)、避免時區歧義。如要顯示為人類可讀,需用 new Date(exp * 1000).toISOString() 轉換。
依 OWASP 指引:① 短期 access_token 存記憶體(JS 變數)、② 長期 refresh_token 存 HttpOnly Secure Cookie、③ 不要存 localStorage(易受 XSS 偷取)、④ 行動 app 用安全儲存(Keychain / Keystore)。本工具不替代 OAuth 流程,只做 decode 展示。
推薦工具
* 可能包含站內或聯盟推薦;若透過部分連結購買,我們可能獲得佣金。
解鎖 JWKS 公鑰自動拉取、本地 verify(jose)、JWE 解密、algorithm confusion 偵測、JWT 簽發與測試。
信任聲明 · 相關工具 · 參考資料
本工具僅在瀏覽器以 atob + JSON.parse 解析 JWT 三段,不驗證簽章、不解密 JWE、不送往伺服器;不取代 jose / jsonwebtoken 等驗證套件,亦不取代 OAuth 2.0 / OIDC 流程稽核。
Hash 生成器 · Base64 編碼器 · JSON 格式化器 · Diff 比對器
IETF RFC 7519 (Jones et al., 2015) JSON Web Token;RFC 7515 JSON Web Signature;RFC 7518 JSON Web Algorithms;RFC 8725 (Sheffer et al., 2020) JWT Best Current Practices;OWASP JWT Cheat Sheet (2023);CVE-2015-9235 jsonwebtoken alg=none signature bypass。