JWTデコーダー(中身と有効期限の確認)
JWT を貼り付けると、中身(ヘッダー・ペイロード)と有効期限を表示します。「Bearer 」付きのままでも読めます。
JWT
ヘッダー
ペイロード
your-256-bit-secret 入力したデータは送信も保存もしません。悪用することも一切ありません。くわしく
JWT(JSON Web Token)とは
JWT は、ログインした人の情報や権限を、改ざんできない形で受け渡すためのトークンです。
OAuth 2.0 / OpenID Connect の ID トークンやアクセストークン、API の認証(Authorization: Bearer ...)などで広く使われています。
見た目は長い英数字の文字列ですが、ヘッダー.ペイロード.署名 の3つをドット(.)でつないだもので、
ヘッダーとペイロードは JSON を Base64URL で符号化しただけなので、デコードすれば中身を読めます。
「API が 401 を返す」「ログインがすぐ切れる」といったトラブルのときは、まずトークンの中身を見て、有効期限(exp)が切れていないか、 受け取り手(aud)や発行者(iss)が想定どおりかを確認するのが近道です。
よく出てくるクレーム(項目)
| クレーム | 意味 |
|---|---|
iss | 発行者(issuer) |
sub | 対象のユーザーなど(subject) |
aud | 受け取り手(audience) |
exp | 有効期限(expiration) |
nbf | この日時より前は無効(not before) |
iat | 発行日時(issued at) |
jti | トークンのID(JWT ID) |
exp・nbf・iat は UNIX 時間(1970年1月1日からの秒数)で書かれています。このツールでは日本時間に直して表示し、 今の時刻と比べて「期限切れ」「あと◯時間」を表示します。サーバーとクライアントの時計が数分ずれていると、期限ぎりぎりのトークンが弾かれることもあります。
アルゴリズム(alg)の違い
| alg | 方式 | 検証に使う鍵 |
|---|---|---|
HS256 | HMAC + SHA-256(共通鍵) | 発行側と同じ秘密鍵 |
RS256 | RSA 署名 + SHA-256 | 公開鍵(JWKS で配布されることが多い) |
ES256 | 楕円曲線 ECDSA + SHA-256 | 公開鍵 |
none | 署名なし | —(受け付けてはいけない) |
よくある質問
トークンを貼り付けても安全ですか?
このツールはトークンをブラウザの中だけでデコードし、どこにも送信・保存しません。とはいえ、本番環境の有効なトークンはパスワードと同じくらい大切な情報です。確認が終わったら入力欄を消し、チャットやチケットに貼らないようにしましょう。
署名の検証はできますか?
HS256・HS384・HS512(共通鍵)の場合は、秘密鍵(シークレット)を入れると署名が正しいかを確かめられます。RS256・ES256 など公開鍵の方式は検証に対応しておらず、中身の表示だけです。
JWT の中身は暗号化されていますか?
いいえ。一般的な JWT(JWS)のヘッダーとペイロードは Base64URL で符号化されているだけで、誰でも読めます。改ざんを防ぐのは署名の役目です。そのため、パスワードや個人情報など秘密にすべき情報をペイロードに入れてはいけません。
変換・計算の結果は正確さに努めていますが、すべての入力での動作を保証するものではありません。 業務で使う場合は、重要なデータは結果を確認してからご利用ください。詳しくは免責事項をご覧ください。