エンコード・デコード
JWTデコーダー
JWTデコーダーツールは、貼り付けた JWT(JSON Web Token)をヘッダー・ペイロード・署名の 3 つに分解し、JSON 形式で読みやすく表示するツールです。「ヘッダー.ペイロード.署名」を「.」で区切った文字列を入力すると、リアルタイムにデコード結果が表示されます。
入力した JWT と秘密鍵はすべてブラウザ内で処理され、サーバーには送信されません。
関連ツール
JWTデコーダーツールとは?
JWTデコーダーツールは、貼り付けた JWT(JSON Web Token)をヘッダー・ペイロード・署名の 3 つに分解し、JSON 形式で読みやすく表示するツールです。「ヘッダー.ペイロード.署名」を「.」で区切った文字列を入力すると、リアルタイムにデコード結果が表示されます。
標準的なクレーム(iat 発行時刻 / exp 有効期限 / nbf 開始時刻)は UNIX 時刻のままだと読みにくいため、お使いの言語設定に合わせて「2026年5月25日 12:34」のような形式に変換し、現在時刻に対する相対表記(「3 日後」「2 時間前」など)も併記します。exp を過ぎている場合は「期限切れ」、nbf がまだ未来の場合は「未開始」とバッジで警告するので、デバッグ中のトークンが有効かどうかを一目で判断できます。
オプションで、秘密鍵を入力すると HMAC 系の署名(HS256 / HS384 / HS512)を検証できます。署名が秘密鍵と一致するかをブラウザ上で確かめられるので、バックエンドが発行したトークンの正当性チェックに便利です。RSA / ECDSA / EdDSA など公開鍵系のアルゴリズム(RS256 / ES256 など)は検証対象外ですが、ヘッダー・ペイロードのデコード自体はどのアルゴリズムでも行えます。
入力した JWT も秘密鍵もすべてお使いのブラウザ内で処理し、外部サーバーへは一切送信しません。本番環境のアクセストークンや本物の秘密鍵を扱う場合も安心して利用できますが、共有 PC では検証後に秘密鍵欄をクリアすることをおすすめします。ブラウザだけで完結します。
使い方
- 入力欄に確認したい JWT(「ヘッダー.ペイロード.署名」を「.」で区切った文字列)を貼り付けます。改行や空白は自動で取り除かれます。
- デコード結果がヘッダー / ペイロード / 署名の 3 つのパネルに表示されます。各パネル右上の「コピー」ボタンで整形済み JSON や署名文字列をコピーできます。
- 標準クレーム(iss / sub / aud / jti / iat / exp / nbf)が含まれている場合は、下部の「標準クレーム」テーブルに人間が読める日時と相対時間で表示されます。
- 署名を検証したい場合は「秘密鍵で署名を検証する」を有効にし、HMAC(HS256 / HS384 / HS512)の秘密鍵を入力します。検証結果が「署名OK」「署名が一致しません」などのバッジで表示されます。
- 別のトークンを試したい場合は「クリア」ボタンで入力欄を空にしてから貼り直してください。
利用シーン
- API デバッグ中に、アクセストークンの中身(iss / sub / aud / カスタムクレーム)を即座に確認したい場合。
- 受け取った JWT の有効期限が切れていないか、いつ発行されたものかをすぐに調べたい場合。
- 認証基盤のドキュメントに記載されたサンプルトークンを読み解いて、どのようなクレームが含まれるかを学習したい場合。
- バックエンドが発行する HS256 署名のトークンが、設定された秘密鍵で正しく署名されているかを手元で検証したい場合。
- OIDC / OAuth2 の ID トークン・アクセストークンの内容(aud / azp / scope など)をローカルで確認したい場合。
注意点
- 入力した JWT も秘密鍵も外部に送信しません。すべての処理はお使いのブラウザ内で完結します。
- 対応する署名検証アルゴリズムは HS256 / HS384 / HS512 のみです。RSA / ECDSA / EdDSA など公開鍵系(RS256 / ES256 / EdDSA など)の検証は対応外ですが、ヘッダー・ペイロードのデコードはどのアルゴリズムでも行えます。
- 標準クレームの時刻(iat / exp / nbf)は RFC 7519 に従い、秒単位の UNIX 時刻として解釈します。
- 期限切れ / 未開始の判定は、お使いの端末のシステム時刻を基準に行います。端末の時刻がずれていると判定もずれる点にご注意ください。
- JWE(暗号化された JWT)には対応していません。本ツールが扱うのは JWS(署名された JWT)形式のみです。
- デコード時、入力中の空白文字(半角スペース・タブ・改行など)は自動的に取り除いてから処理します。複数行に折り返されたトークンもそのまま貼り付けて構いません。