JWTデコーダー

JWTのヘッダーとクレームを読み取り、有効期限と署名を確認

デコード結果

JWTを貼り付けると、ヘッダー・ペイロード・署名のデコード結果がここに表示されます

JWTデコーダーとは#

JWTデコーダーは、JSON Web Tokenの中身を読みやすく表示するツールです。トークンを貼り付けると、入力に合わせてヘッダー・ペイロード・署名に分割されます。

ヘッダーとペイロードはbase64urlから整形されたJSONに変換されます。expやiat、issなどの登録クレームは、ローカル時刻・UTC時刻・Unixタイムスタンプを添えた表にまとまり、有効期限の状態もひと目で分かります。HMAC署名は、ブラウザ内でシークレットと照合できます。

使い方#

  1. JWTを入力欄に貼り付けます。BearerプレフィックスやAuthorization:ヘッダ、値全体を囲む引用符、改行は自動で除去されます。
  2. デコードされたヘッダーとペイロードを確認します。
  3. クレーム表で有効期限や各種時刻を確認します。
  4. HS256・HS384・HS512のトークンでは、シークレットを貼り付けて署名を検証します。

確認できること#

  • ヘッダーとペイロード: デコードされたJSON。登録されていないプライベートクレームも含みます。
  • 登録クレーム: iss、sub、aud、exp、nbf、iat、jtiを一覧できます。時刻クレームにはローカル時刻、UTC時刻、Unixタイムスタンプが並び、各クレームの値は個別にコピーできます。
  • 有効期限: トークンが有効か、期限切れか、まだ有効でないかを、残り時間または経過時間とともに確認できます。
  • サイズ: トークン全体と各パートの文字数・バイト数を確認できます。

署名を検証する#

HMAC署名(HS256・HS384・HS512)の署名検証に対応しています。シークレットを入力すると、署名の照合結果が自動で表示されます。照合はブラウザ内で行われ、入力したシークレットが送信・保存されることはありません。

RSやESなど、HMAC以外のアルゴリズムを使ったトークンもデコードできますが、署名の検証には対応していません。

デコードで分かるのは、トークンがそう主張している内容だけです。ペイロードは誰でも自由に作れます。クレームを信用する前に、シークレットとの照合かサーバー側での検証を行ってください。

活用シーン#

  • APIが401や403を返すときに、expの切れやaud・issの不一致を確認する。
  • 認証まわりの不具合を調べる前に、フロントエンドが保存しているトークンの中身を読む。
  • ヘッダーのalgなどの項目は、署名方式を変えるときに事前に確認する。

よくある質問#

注意点#

  • base64urlはエンコード方式で、暗号化ではありません。ヘッダーとペイロードは、トークンを手に入れた人なら誰でも読めます。
  • 対応するのは3つの部分からなるJWSのみです。5つの部分からなる暗号化トークン(JWE)はデコードできません。
  • デコード
  • 分析

最終更新:

関連ツール