入力したデータはサーバーへ送信・保存されません。すべての処理はお使いのブラウザ内で完結します。

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の内容をそれぞれコピーできます
  • 入力はブラウザ内で処理し、サーバーへ送信しません

使い方

手順を見る
  1. JWT文字列を貼り付けます(サンプルも利用できます)
  2. 「デコード」を押します
  3. Header・Payload・標準claimの内容を確認します
  4. 必要に応じて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(署名付き・非暗号化)のみです。