JWTデコーダー

JWTデコーダーは、コード整形・検証・変換を1ページで進められるツールです。入力項目の意味、実用例、結果の読み方、注意点まで確認でき、日常と業務の判断に役立ちます。

最終更新: 2026/03/03

JWTデコーダー

JWTトークン入力
署名検証(任意)
すべてのデータはブラウザ内でのみ処理されます
最近の履歴すべて削除
保存された履歴がありません

JWTトークンを入力すると自動的にデコードされます

100%ブラウザ処理: 入力したJWTとSecret Keyはサーバーに送信されません。すべてのデコードと検証はブラウザ内でのみ行われ、ページを閉じるとデータが削除されます。

JWTデコーダーとは?

JWTデコーダーは、JSON Web Token(JWT)を解析してヘッダー、ペイロード、署名を確認し、トークンの有効性を検証するツールです。API認証、OAuth、SSOなどで使用されるJWTトークンを簡単に分析でき、開発およびデバッグに必須です。

トークンを貼り付けるだけで即座にデコードされ、アルゴリズム、有効期限、発行情報などすべてのクレームを視覚的に確認できます。HMACアルゴリズムの場合は、Secret Keyを入力して署名の有効性まで検証できます。

こんな場面で使用してください

  • APIデバッグ – REST API認証トークンの内容を確認し、有効期限の状況をチェックするとき
  • OAuth開発 – OAuth 2.0 / OpenID Connect実装時にaccess_token、id_tokenを分析
  • 認証エラー解決 – “Token expired”、”Invalid signature”などの認証エラーの原因を特定
  • セキュリティレビュー – JWTに含まれる機密情報の確認およびセキュリティ脆弱性のチェック
  • 学習目的 – JWTの構造と動作原理を理解するための実習
  • クライアント開発 – フロントエンドでのトークン解析と有効期限処理ロジックのテスト

主な機能

  • リアルタイムデコード – JWT入力と同時にヘッダー、ペイロード、署名に分離してJSON形式で表示
  • 有効期限検証 – exp、iat、nbfクレームを分析してトークンの有効性と残り時間を表示
  • HMAC署名検証 – HS256、HS384、HS512アルゴリズムの署名をSecret Keyで検証
  • クレーム詳細分析 – iss、sub、audなどの標準クレームを一目で確認
  • 構文強調表示 – JSONのキー、文字列、数値、ブール値を色で区別
  • 履歴保存 – 最近デコードしたJWT 5件をローカルに保存して素早く再利用
  • クリップボードコピー – ヘッダー、ペイロード、署名を個別にコピー
  • サンプルJWT – テスト用サンプルトークンを即座にロードして機能確認

使用方法

  1. JWT入力 – 左側の入力欄に分析したいJWTトークンを貼り付けます。(eyJ…で始まる文字列)
  2. 結果確認 – 右側にHeader(アルゴリズム)、Payload(データ)、Signature(署名)が分離されて表示されます。
  3. 有効期限確認 – 上部の状態カードでトークンの有効性と残り時間を確認します。
  4. 署名検証(任意) – HMACアルゴリズムの場合、Secret Keyを入力すると署名の有効性が表示されます。
  5. コピー/活用 – 各セクションのコピーボタンで必要な部分をクリップボードにコピーします。

JWT構造を理解する

JWTはドット(.)で区切られた3つの部分で構成されます:

構成要素 内容
Header アルゴリズム(alg)とトークンタイプ(typ) {"alg":"HS256","typ":"JWT"}
Payload クレーム(Claims) – トークンに含まれる情報 {"sub":"123","name":"John"}
Signature ヘッダー+ペイロードを秘密鍵で署名した値 HMACSHA256(header.payload, secret)

標準JWTクレーム

クレーム 説明
iss 発行者(Issuer) https://auth.example.com
sub 主体(Subject) – ユーザーID user_12345
aud 対象(Audience) – トークン受信者 my-app
exp 有効期限(Expiration Time) 1735689600(Unixタイムスタンプ)
iat 発行時間(Issued At) 1735686000(Unixタイムスタンプ)
nbf 有効開始時間(Not Before) 1735686000(Unixタイムスタンプ)
jti トークン固有ID(JWT ID) abc123xyz

対応アルゴリズム

  • HS256(HMAC + SHA-256) – 対称鍵アルゴリズム、最も一般的に使用される。Secret Keyで署名検証可能
  • HS384(HMAC + SHA-384) – HS256より長いハッシュ、より高いセキュリティ
  • HS512(HMAC + SHA-512) – 最も長いHMACハッシュ、最高のセキュリティ
  • RS256、RS384、RS512 – RSA非対称鍵アルゴリズム(デコードのみ対応、署名検証未対応)
  • ES256、ES384、ES512 – ECDSA楕円曲線アルゴリズム(デコードのみ対応)

※ RSA、ECDSAアルゴリズムの署名検証には公開鍵が必要であり、現在のバージョンではHMACアルゴリズムのみ署名検証に対応しています。

個人情報保護

このツールは100%ブラウザで動作します。入力したJWTトークンとSecret Keyは絶対にサーバーに送信されず、すべてのデコードと署名検証はユーザーのデバイスでのみ行われます。ブラウザを閉じるとすべてのデータが削除されます。(履歴はローカルストレージに保存され、「すべて削除」でいつでも削除可能)

詳細説明

JWTデコーダーの結果は、入力値と選択条件にもとづいて算出されます。

最終判断が必要な場合は、公式情報や専門家確認とあわせてご利用ください。

よくある質問

JWTのデコードにSecret Keyは必要ですか?

いいえ、JWTのHeaderとPayloadはBase64Urlエンコードされているだけなので、Secret Keyなしでもデコードできます。Secret Keyは署名(Signature)の検証にのみ必要です。したがって、JWTに機密情報を含めてはいけません。

トークンが期限切れと表示されますが、どうすればよいですか?

JWTのexp(有効期限)クレームが現在時刻より過去の場合、期限切れと表示されます。期限切れのトークンはサーバーで拒否されるため、リフレッシュトークンを使用するか、再度ログインして新しいトークンを発行する必要があります。

署名不一致が表示される理由は何ですか?

入力したSecret Keyがトークン発行時に使用されたキーと異なる場合、署名不一致が発生します。また、RSAやECDSAアルゴリズムの場合、このツールではHMACのみ対応しているため「HMACのみ対応」と表示されます。正確なSecret Keyを確認してください。

JWTとセッションベース認証の違いは何ですか?

セッションベース認証は、サーバーがセッション情報を保存し、CookieでセッションIDを管理します。一方、JWTはトークン自体に情報が含まれているため、サーバーが状態を保存する必要がありません(Stateless)。JWTはマイクロサービス、モバイルアプリ、SPAに適しており、セッションは従来のWebアプリケーションに適しています。

JWTにどのような情報を含めてはいけませんか?

JWTのPayloadは暗号化されておらず、エンコードされているだけなので誰でも見ることができます。したがって、パスワード、クレジットカード番号、マイナンバーなどの機密情報を絶対に含めてはいけません。ユーザーID、権限(role)、有効期限など必須情報のみを含めてください。

入力したJWTはサーバーに送信されますか?

いいえ、このツールは100%ブラウザ(クライアント)で動作します。入力したJWTとSecret Keyはサーバーに送信されず、すべてのデコードと検証はJavaScriptでブラウザ内でのみ処理されます。ネットワークタブで直接確認できます。

匿名の意見 1

他の利用者に不快感を与える表現や繰り返し投稿は、運営基準により非表示または削除されることがあります。

残り文字数: 120

まだコメントはありません。最初の意見を残してください。