JWT デコーダー|クレーム・有効期限を解析
使い方
JWTトークンを入力欄に貼り付けると、ヘッダー(アルゴリズムとタイプ)、ペイロード(クレームとデータ)、署名が即座にデコードされます。有効期限は現在時刻と自動的に照合されます。
JWTとは
JSON Web Token (JWT) は、当事者間で安全に情報を伝送するためのコンパクトなURLセーフトークン形式です。ドットで区切られた3つのBase64URLエンコード部分で構成されます:ヘッダー(アルゴリズムメタデータ)、ペイロード(ユーザーID・有効期限・発行者などのクレーム)、署名(暗号学的検証)。OAuth 2.0、OpenID Connect、API認証で広く使用されています。
標準クレーム一覧
- sub (Subject) — トークンの主体(通常はユーザーID)を識別する一意の値
- iss (Issuer) — トークンを発行したサーバーやサービスの識別子
- exp (Expiration Time) — トークンの有効期限(Unixタイムスタンプ)。この時刻を過ぎるとトークンは無効
- iat (Issued At) — トークンが発行された日時(Unixタイムスタンプ)
- nbf (Not Before) — この時刻より前にはトークンを受け入れてはならない
- aud (Audience) — トークンの受信者(対象サービスやアプリケーション)
- jti (JWT ID) — トークンの一意な識別子。トークンの再利用を防止するために使用
プライバシーとセキュリティ
すべてのデコード処理はブラウザ内で完結します。トークンがサーバーに送信・保存・記録されることは一切ありません。注意:このツールはトークンのデコードのみを行い、署名の検証は行いません。機密データを含む本番トークンは信頼できないオンラインツールに貼り付けないでください。
よくある質問
このツールは JWT の署名を検証しますか?
いいえ、本ツールはトークンのデコードのみを行い、署名(HS256, RS256 など)の検証は行いません。署名検証には秘密鍵または公開鍵が必要で、サーバー側または専用ライブラリで行うべきです。
本番環境のトークンを貼り付けても安全ですか?
すべてのデコード処理はブラウザ内で完結し、トークンは外部に送信されません。ただし一般論として、信頼できないオンラインツールに本番トークンを貼り付けるのは推奨されません。テスト用トークンの使用を推奨します。
exp が過去なのに有効と表示されるのはなぜですか?
本ツールは exp(有効期限)クレームを現在のブラウザ時刻と比較します。システム時計がずれていたり、サーバー側で clock skew 許容が設定されている場合、実サーバーの判定とは異なることがあります。
JWT のヘッダーにある alg はどんな値がありますか?
HS256 (HMAC-SHA256)、RS256 (RSA-SHA256)、ES256 (ECDSA-SHA256) などが一般的です。alg: "none" は署名なしを意味し、セキュリティ上は拒否すべき値です。本ツールは alg を表示しますが検証はしません。
JWT と OAuth アクセストークンは同じものですか?
関連しますが同じではありません。JWT は形式の仕様、OAuth はトークン発行・利用の仕組みです。OAuth 2.0 では JWT をアクセストークンの形式として使うことが多いですが、不透明(opaque)なランダム文字列のこともあります。