totonoe

ITを整える

中級

JWTをデコードを整える

= JWTを貼ると中身を読める(署名は確認しません)

JWT(JSON Web Token)を貼ると、中身(header と payload)を整形 JSON で読みやすく表示します。iat / exp / nbf などの時刻は日本時間に直し、有効期限切れかも判定。トークンはこの端末から一切出ません(送信ゼロ)だから、本番のトークンも安全に覗けます。※署名の検証はしません(鍵なしのデコードのみ)。

i

TLDR — 30秒で分かる

JWTを貼ると中身を整形JSONで表示。時刻クレームを日本時間に直し期限切れも判定。送信ゼロ・署名検証なし

主な機能を見る
  • header / payload を整形JSON表示(Base64URL→UTF-8)
  • iat / exp / nbf を JST・UTC・相対時間に変換
  • exp<now で期限切れ判定(nbf 未到来も検知)
  • alg / typ / kid / iss / sub / aud / jti の意味を一言
  • 送信ゼロ=本番トークンも安全に覗ける
  • 壊れたBase64・非JSONに優しいエラー
JWT を貼り付け 貼ると即デコード(送信ゼロ)
前後の空白・改行・「Bearer 」接頭辞は自動で除去します

⚠ JWT は「秘密情報」です

  • このツールは送信ゼロ。貼ったトークンはあなたのブラウザの中だけで処理し、totonoe を含めどこにも送りません。だから本番のトークンも安全に覗けます。
  • 他人のトークンを勝手に貼らない。有効な JWT はそのままログインできる「鍵」と同じで、なりすましに使えます。
  • 本物のトークンをスクショ・チャット・課題管理ツールに貼らない。payload は誰でもデコードできる=中身は暗号化されていません。
よく使うクレーム・ヘッダの早見表
alg header 署名アルゴリズム。HS256(共通鍵)/ RS256・ES256(公開鍵)/ none(署名なし)。
typ header トークンの型。ふつうは "JWT"。
kid header 鍵 ID。検証側が「どの公開鍵で確かめるか」を選ぶ目印。
iss payload 発行者。このトークンを発行したサービス。
sub payload 主体。トークンが指すユーザー/対象の ID。
aud payload 対象者。このトークンを受け取るべき相手(API など)。
jti payload JWT ID。トークンを一意に識別する値(再利用検知に)。
iat payload 発行時刻(Unix 秒)。いつ作られたか。
nbf payload 有効化時刻(Unix 秒)。この時刻より前は無効。
exp payload 有効期限(Unix 秒)。この時刻を過ぎると無効。

JWT の仕組み・4つ

「読める」けれど「書き換えられない」── 署名が守るのは中身ではなく改ざん。

  1. 1

    3つの部分を「.」でつなぐ

    JWT は header(型・署名方式).payload(中身).signature(署名) の3部構成。それぞれ Base64URL でエンコードされているだけで、暗号化はされていません。だから誰でも中身を読めます。

  2. 2

    payload に「主張(クレーム)」が並ぶ

    誰のトークンか(sub)、誰が発行したか(iss)、いつまで有効か(exp)などが入ります。サーバはこれを読んで「このユーザーは誰で、何が許されているか」を判断します。

  3. 3

    署名は「改ざん検知」のためのもの

    payload を書き換えると署名が合わなくなり、サーバが弾きます。署名は中身を隠すためではなく、勝手な書き換えを防ぐため。検証には鍵が要るので、このツール(鍵なしデコード)では行いません。

  4. 4

    時刻は Unix 秒(NumericDate)

    iat / nbf / exp は「1970年1月1日からの秒数」で入ります。人間には読みづらいので、このツールが 日本時間(JST)と UTC に変換し、exp が現在より前なら「期限切れ」と判定します。

🔒 デコードはすべてあなたのブラウザの中(純 JavaScript・Base64URL → UTF-8 → JSON)で完結します。貼り付けたトークンはサーバに送られません(送信ゼロ)。署名の検証は行いません(鍵が要るデコードのみ)。

よくある質問

Q. 貼ったJWTはどこかに送信されますか?
A. いいえ。デコードはすべてブラウザ内(純JavaScript)で完結し、どこにも送信しません(送信ゼロ)。だから本番トークンも安全に確認できます。
Q. 署名が正しいか検証できますか?
A. できません。署名検証には鍵(共通鍵または公開鍵)が必要で、本ツールは鍵を扱わないデコード専用です。中身を読むためのツールです。
Q. payloadは暗号化されていますか?
A. いいえ。Base64URLでエンコードされているだけで暗号化ではありません。誰でもデコードして読めるため、機密はpayloadに入れません。
Q. exp が「期限切れ」と出ました。どういう意味ですか?
A. exp(有効期限・Unix秒)が現在時刻より前であることを示します。そのトークンはすでに失効しています。
Q. 「Bearer 」付きで貼っても大丈夫ですか?
A. はい。先頭の「Authorization:」「Bearer 」や前後の空白・改行は自動で除去してからデコードします。
Q. 他人のトークンを貼ってもいいですか?
A. 避けてください。有効なJWTはログインできる「鍵」と同等で、なりすましに使えます。本物のトークンはスクショ・チャット等への貼り付けも厳禁です。

入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。

RELATED TOOLS

続けて整える

KOINOBORI ECOSYSTEM

私たちが運営するサイト