Advertisement
JWT デコーダーとは?
本ツールは、Webアプリの開発や認証機能の実装で広く使われるJWT(JSON Web Token)を、誰でも読める形式にデコード(解析)するための開発者向けオンラインツールです。 通常、Base64でエンコードされているJWTを貼り付けるだけで、含まれている「ヘッダー」と「ペイロード」を瞬時に表示します。 署名の検証を行わず、単に中身を確認したいデバッグ作業において、最も高速かつ安全に動作するように設計されています。
こんなシーンで便利です
認証エラーのデバッグ
「なぜか認証が通らない」という時、トークン内のクレーム(expやscope)が期待通りか、発行日時に異常がないかをすぐに確認できます。
有効期限(exp)の即時判定
UNIXタイムスタンプ形式で書かれたexpを日本時間(JST)に自動変換。トークンがいつ切れるのかを一目で把握できます。
アルゴリズムの強度確認
HS256やRS256など、意図した署名アルゴリズムが指定されているか、セキュリティリスクのある「none」になっていないかを確認可能です。
OAuth2/OpenID Connectの実装
IDトークンやアクセストークンの中身を解析し、バックエンドへ渡す前のペイロード構造を把握するのに最適です。
使い方は簡単 3ステップ
- 「JWT を入力」欄にデコードしたいトークンを貼り付けます。
- 即座に解析が始まり、下部に「ヘッダー」「ペイロード」「有効期限の解析結果」が表示されます。
- 必要に応じて、各セクション右上のアイコンからJSONデータをコピーします。
※解析はすべてブラウザ上で行われるため、トークンが外部に送信されることはありません。
ご利用時の注意点
- 署名の検証は行いません:本ツールはデコード専用です。改ざんの有無(署名の有効性)を確認する機能はありません。
- 機密情報の取り扱いに注意:デコードした中身にパスワードを含めることは推奨されません。不要な情報が含まれていないかチェックしてください。
- Base64形式のみ対応:標準的な「header.payload.signature」形式のJWTに対応しています。
Advertisement
JWTの構造と主要クレーム(属性)解説
デコードされたペイロードに含まれる一般的な標準クレームの意味と用途です。
| 項目 (Claim) | 名称 | 内容・用途 |
|---|---|---|
| iss | Issuer | トークンの発行者。認証サーバーのURLなどが入ります。 |
| sub | Subject | トークンの対象者。ユーザーIDなどが識別子として入ります。 |
| aud | Audience | トークンの利用先。受け取り側のクライアントIDなど。 |
| exp | Expiration Time | 有効期限。この日時を過ぎるとトークンは無効になります。 |
| iat | Issued At | トークンが発行された日時(UNIXタイムスタンプ)。 |
| nbf | Not Before | この日時より前には、トークンを利用してはいけません。 |
| jti | JWT ID | トークンの一意識別子。再利用攻撃(Replay Attack)防止に。 |
| typ | Type | トークンの種類。通常は「JWT」が指定されます。 |
| alg | Algorithm | 署名アルゴリズム(HS256, RS256など)。ヘッダーに含まれます。 |
【セキュリティに関する補足】
JWTは「エンコード(符号化)」されているだけで、「暗号化」されているわけではありません。 本ツールでデコードできるように、Base64の知識があれば誰でも中身を閲覧可能です。 そのため、ペイロード内にパスワード、個人情報、機密データを含めないことがセキュリティの鉄則です。
【デバッグのTips】
「Invalid Token」エラーが出る場合、多くは exp(有効期限)切れか、alg(アルゴリズム)の不一致が原因です。 本ツールでデコードし、UNIXタイムスタンプが現在の時刻より未来になっているか、発行元(iss)が正しいかを確認してください。
よくある質問(FAQ)
Q.入力したJWTがサーバーのログに残る心配はありませんか?
A. 一切ありません。すべての処理をブラウザ上で完結させているため、トークン文字列がサーバーに送信されることは構造上あり得ません。
Q.ローカル環境(オフライン)でも動作しますか?
A. はい。一度ページを読み込めば通信は不要なため、社内ネットワーク等の制限がある環境下でも安全にご利用いただけます。
Q.有効期限(exp)の判定基準は何ですか?
A. お使いのデバイスの現在時刻と比較して判定しています。サーバー時刻とのズレがある場合は結果が異なる可能性があるため、目安としてご活用ください。
あなたの声で、
このツールをより鋭く。
「こんな機能が欲しい」「ここを直してほしい」といったご意見や、新しいツールのリクエストを募集しています。エンジニアが直接目を通し、開発の参考にさせていただきます。