JWTデコーダー
JWTを貼り付けるだけで、Header・Payload・標準claim(iss/sub/aud/exp/nbf/iat/jti)の内容を確認できます。このツールは署名を検証しません。入力はブラウザ内で処理し、サーバーへ送信しません。
デコード結果
JWTを入力して「デコード」を押してください。
このツールでできること
- JWT(
header.payload.signature)を貼り付けて、Header・Payloadの内容をJSONとして確認できます - 標準claim(
iss/sub/aud/exp/nbf/iat/jti)を分かりやすく表示します exp/nbf/iatはNumericDateとUTC日時の両方で表示し、現在時刻との比較(expが期限を経過しているか等)も確認できます(署名は検証しないため、これはJWT全体の有効性判定ではありません)- Header/Payloadの内容をそれぞれコピーできます
- 入力はブラウザ内で処理し、サーバーへ送信しません
使い方
手順を見る
- JWT文字列を貼り付けます(サンプルも利用できます)
- 「デコード」を押します
- Header・Payload・標準claimの内容を確認します
- 必要に応じてHeader/Payloadをコピーします
こんなときに使えます
利用シーンを見る
- APIから返ってきたJWTの中身をすぐに確認したいとき
expがexp時刻を経過していないか手早く確認したいとき- 認証まわりのデバッグでトークンのclaim構成を確認したいとき
技術仕様について
詳しい仕様を見る
内容表示のみで、署名の検証は行いません
本ツールはJWTの内容表示のみを行い、署名の検証は行いません。decodeとverifyは別です。表示された内容の真正性・改ざんの有無は保証されません。
JWS形式のJWTは暗号化されていません
このツールが対象とするJWS形式のJWTでは、Header/Payloadは暗号化されておらず、Base64URLエンコードされているだけです。誰でも内容を読むことができます。JWTにはJWEという暗号化形式もありますが、本ツールでは対象外です。
対応形式はJWS Compact Serialization(3セグメント)のみです
`header.payload.signature`の3セグメントのみに対応しています。暗号化されたJWE(5セグメント)には対応していません。
入力の上限
入力は最大50,000 UTF-16コード単位(JavaScriptの文字列長基準)までです。Base64URL部分に`=`パディングが含まれる入力は不正な形式として扱います(JWS Compact Serializationはunpadded Base64URLを使用するため)。
よくある質問
このツールでJWTの署名は検証されますか?
いいえ。本ツールはdecode専用であり、署名の正当性は検証しません。表示された内容の真正性は保証されません。
JWTは暗号化されていますか?
このツールが対象とするJWS形式のJWTでは、Header/Payloadは暗号化されておらず、Base64URLエンコードされているだけです。誰でも内容を読むことができます。ただしJWTにはJWEという暗号化形式もあり、本ツールはJWEを対象としません。
Payloadに秘密情報を含めても安全ですか?
いいえ。誰でもdecodeして内容を読めるため、パスワードや秘密情報をPayloadに含めるべきではありません。
入力したJWTはサーバーに送信されますか?
いいえ。ブラウザ内で処理し、外部へは一切送信しません。
暗号化されたJWE(5セグメントのトークン)は扱えますか?
いいえ。本ツールが対応するのはJWS(署名付き・非暗号化)のみです。