ブラウザ内で完結する開発者ツール

JWT デコーダー

JSON Web Token をすぐにデコードして中身を確認します。ヘッダー、ペイロード、claims、有効期限を、トークンを外部 API に送らずに読めます。

100% ブラウザ内処理。 JWT はこのブラウザタブ内でデコードされ、デコード API へ送信されたり、このツールに保存されたりしません。

ブラウザ内処理

デコードは現在のブラウザタブ内で実行します。

秘密鍵は不要

署名付き JWT のヘッダーとペイロードは検証鍵なしで読めます。

時間 claims を確認

exp、iat、nbf を読みやすい日時に変換します。

デコード ≠ 検証

読めたことを署名の真正性とは扱いません。

JWT デコーダーとは?

JWT デコーダーは、Base64URL でエンコードされたヘッダーとペイロードを読みやすい JSON に戻すツールです。一般的な署名付き JWT は header.payload.signature の 3 セグメントで構成されます。

認証の不具合を調べるときは、alg、kid、iss、aud、scope、role、exp などを最初に確認します。通常の署名付き JWT は暗号化ではなくエンコードなので、claims を読むためだけなら署名シークレットは必要ありません。

ただし、読めることと信用できることは別です。受け入れる前に、信頼できる鍵で署名を検証し、アプリが要求する issuer、audience、時間条件を検証します。

JWT claims の見方

payload に含まれる値のうち、認証・認可でよく見る登録済み claim を先に確認すると、原因を絞り込みやすくなります。

iss

Issuer

JWT を発行した主体を示します。

sub

Subject

トークンが表す主体を示します。

aud

Audience

JWT の対象となる受信者を示します。

exp

Expiration

この時刻以降は受け入れないことを示します。

nbf

Not Before

この時刻より前は受け入れないことを示します。

iat

Issued At

トークンが発行された時刻です。

デコード・validation・署名検証は別の作業です

デコード

Base64URL のヘッダーとペイロードを JSON として読みます。

Validation

構造、exp、nbf、issuer、audience など、アプリ側の受け入れ条件を確認します。

JWT Validator を開く →

署名検証

信頼する秘密鍵または公開鍵で署名が signed data と一致するか暗号学的に確認します。

署名検証ツールを開く →

JWT デコーダー FAQ

秘密鍵なしで JWT をデコードできますか?

できます。通常の JWT/JWS の header と payload は Base64URL エンコードなので読めます。秘密鍵や公開鍵が必要なのは署名を検証するときです。

デコードできれば JWT は有効ですか?

いいえ。JSON として読めても真正性は証明できません。署名と exp、nbf、iss、aud などを別に確認します。

JWT を検証
貼り付けた JWT はサーバーへ送信されますか?

デコーダーはブラウザ側で動作し、トークン本文をデコード API に送信したり localStorage、Cookie、URL に意図的に保存したりしません。

exp、iat、nbf は何ですか?

exp は有効期限、iat は発行時刻、nbf は利用開始時刻です。NumericDate を読みやすい時刻に変換して確認できます。

有効期限を確認
読める JWT でも 401 になるのはなぜですか?

期限切れ、まだ有効でない、署名鍵違い、issuer/audience 不一致、必要な scope/role 不足などが考えられます。

JWT をデバッグ

セキュリティ上、再現にテスト用または伏せ字のトークンで足りるなら、本番の access token を貼り付けないでください。ブラウザ内処理でも、端末上の拡張機能やマルウェアまでは防げません。