オンラインJWTデコーダー

ヘッダー・ペイロード・署名

JWT を貼り付けて Base64URL のヘッダーとペイロードを整形済み JSON としてデコードします。署名検証なしでクレーム、ロール、有効期限を確認できます。

デコードはクレーム表示のみで、署名検証ではありません。トークンはブラウザ内に留まり、アップロードされません。

  • セグメント0/3

このツールについて

JWT のヘッダーとペイロードを Base64URL デコードし、整形 JSON で表示します。OAuth/OIDC アクセストークンや API 認可のデバッグに使います。

デコードは確認用です。JWKS 取得や iss/aud 検証は行いません。詳細パネルで HMAC シークレットによる HS256/HS384/HS512 の任意検証のみ可能で、本番用の完全な検証器ではありません。

クレーム形状、kid、ロール/スコープ、exp/iat/nbf をサーバーへ送らず確認したいときに使います。

よくある用途

  • API が Bearer を拒否する原因調査(期限切れ exp、想定外の alg)
  • OAuth/OIDC 連携中の IdP クレーム確認
  • アプリの JWKS 検証前にヘッダー kid を確認

使い方

  1. コンパクト JWT を貼り付けます。Bearer は自動除去され、結果は即時更新されます。
  2. セグメント数、alg、時刻クレームバッジを確認します。
  3. ヘッダー / ペイロードをそれぞれコピーします。
  4. 必要なら詳細で HS* のみ検証します。信頼判断はライブラリと JWKS で行ってください。

例

入力 / 設定出力メモ
Sample (HS256)alg: HS256 と時間クレーム詳細検証シークレット: utill-sample-secret
alg=none警告付きデコード無署名 — 信頼しない
Bearer eyJ…接頭辞除去後に同じ結果Authorization 貼り付け用
過去の expJSON + 期限切れバッジ期限切れでも検査可能

実務での落とし穴

  • デコード ≠ 検証。整形 JSON は真正性を証明しません。
  • alg=none やアルゴリズム混同に備え、本番では許可アルゴリズムを固定してください。
  • 既定はデコードのみ、HS* 検証は折りたたみにして混同を減らしています。
  • 本番アクセストークンを共有 URL に載せないでください。

参考資料

最終更新: 2026-07-26

よくある質問

デコードと署名検証の違いは?
デコードは Base64URL のヘッダーとペイロードを JSON 表示するだけです。署名検証は鍵で署名を確認する別工程で、 既定 UI はデコードのみです(詳細で HS* HMAC のみ任意検証)。
alg=none はなぜ危険ですか?
署名がないため誰でもクレームを偽造できます。本番の検証器は無署名 JWT を拒否してください。
Authorization ヘッダーの Bearer 付きでも使えますか?
はい。`Bearer ` 接頭辞は自動で除去してからデコードします。
期限切れトークンも確認できますか?
はい。`exp`/`iat`/`nbf` をローカル・相対時刻とバッジで表示します。