🔑 JWTデコーダー

JSON Web Tokenをデコード — ヘッダー、ペイロード、有効期限を確認できます

✓ ずっと無料 · ✓ 登録不要 · ✓ アップロード不要 · ✓ オフライン対応

🔒 データがデバイスの外に出ることはありません。 すべての処理はJavaScriptによるBase64デコードを使用してブラウザ内でローカルに行われます。アップロード、サーバー、追跡は一切ありません。

特長

  • トークンを丸ごと確認 — あらゆるJWTトークンのヘッダー・ペイロード・署名をデコードして表示します。
  • 有効期限チェック — 発行日時・有効開始・有効期限をお使いのタイムゾーンの日付で表示し、有効/期限切れ/まだ有効でない、をリアルタイムでカウントダウン。
  • クレームの表示 — すべてのクレームをトークンに書かれたとおりに表示。長い数値 ID も桁が欠けず、重複したキーは知らせます。
  • 完全オフライン — デコードはブラウザ内で行われます。トークンがサーバーに送られることはありません。

仕組み

  1. JWTを貼り付け — 入力欄にJSON Web Tokenを貼り付けます。
  2. デコード結果を確認 — ヘッダー(アルゴリズム、タイプ)、ペイロード(クレーム、タイムスタンプ)、署名を確認します。
  3. 有効期限をチェック — トークンがまだ有効か、期限切れかを確認します。

活用例

  • JWTのクレームを確認して認証まわりの問題をデバッグ
  • トークンの有効期限・有効開始・発行者を確認
  • API開発やテスト中にトークンの中身をチェック
  • 実際のトークンを見ながらJWTの構造を学ぶ

よくある質問

JWT の署名を検証しますか?

いいえ。トークンをデコードして中身を表示するだけで、署名は確認しません。どのトークンの下にもそう表示されます。検証には発行者の秘密鍵または公開鍵が必要で、サーバー側で行うものです。きれいにデコードできたからといって中身を信用しないでください。

JWT をここに貼り付けても安全ですか?

トークンはこのタブの JavaScript でデコードされ、どこにも送信も保存もされません。Network タブを開いて、貼り付けても通信が起きないことを確認できます。ただし有効なトークンはパスワードと同じなので、できればテスト用か期限切れのトークンを使ってください。

どの JWT 形式に対応していますか?

一般的な 3 部構成 header.payload.signature の署名付き JWT(JWS)で、署名のない alg "none" のトークンも含みます。"Authorization: Bearer …" の行ごと、引用符付きの文字列、改行で折り返されたトークンも貼り付けられます。余分な部分は取り除き、何を取り除いたか表示します。暗号化トークン(JWE、5 部構成)は受信者の鍵がないと読めません。貼り付けた場合はそう表示します。

ほかのデコーダーでは 12345678901234567000 なのに、ここでは 12345678901234567890 と表示されるのはなぜ?

トークンにそう書かれているからです。JavaScript の数値は約 16 桁までしか正確に扱えないため、JSON を解析して出力し直すデコーダーは長い ID を変えてしまい、1.10 を 1.1 にし、重複したキーを落とします。ここではトークン自身のテキストをインデントし直すだけで、それ以外は何も変えません。

iat、nbf、exp とは?

それぞれ発行日時、有効開始、有効期限で、1970 年 1 月 1 日(UTC)からの秒数です。お使いのタイムゾーンの日付で表示し、リアルタイムでカウントダウンします。ミリ秒の値は、ライブラリが何千年も先の日付として扱うため注意を表示します。

関連ガイド

関連ツール

💬 バグ、アイデア、ご挨拶など? Milo 🐨 に連絡 · [email protected]