クライアントサイドのみ

JWT デコーダー

JWT を貼り付けてヘッダ、ペイロード、クレームを確認。デコードはブラウザ内のみで実行 — トークンはサーバーに送信されません。

ブラウザ内でローカルに復号。どこにも送信されません。

デコード完了。有効期限クレームはありません。
sub
1234567890
iat
2018-01-18T01:30:22.000Z (1/18/2018, 1:30:22 AM)

ヘッダ

{
  "alg": "HS256",
  "typ": "JWT"
}

ペイロード

{
  "sub": "1234567890",
  "name": "John Doe",
  "iat": 1516239022
}

署名

SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

署名検証には secret または公開鍵が必要です。本ツールは署名検証せず、デコードのみを行います。

JWT とは?

JSON Web Token (JWT) は、2 者間で主張 (claim) を伝達するためのコンパクトで URL セーフな形式です。ヘッダ、ペイロード、署名の 3 部から成り、ドットで区切られます。ヘッダとペイロードは base64url でエンコードされた JSON です。署名はヘッダで指定されたアルゴリズムと secret または秘密鍵を用いて計算され、受信側がトークンの改ざんを検証できます。JWT は REST API の認証や情報交換で広く使われます。

よく使われる JWT クレーム

issIssuer (発行者)

トークンの発行元 — 通常は認証サーバーの URL。

subSubject (主体)

トークンの対象 — 通常はユーザー ID。

audAudience (対象)

トークンの対象者 — 受け取ることが期待される API またはサービス。

expExpiration (有効期限)

これ以降は受け入れてはならない Unix タイムスタンプ。

nbfNot Before (有効開始時)

これより前は受け入れてはならない Unix タイムスタンプ。

iatIssued At (発行時)

トークン発行時の Unix タイムスタンプ。

jtiJWT ID

トークンの一意な識別子 — リプレイ攻撃対策に有用。

JWT デコーダー FAQ

ここに JWT を貼って安全ですか?

はい。デコードは JavaScript でブラウザ内完結 — サーバーに送信されません。DevTools の Network タブで検証可能です。ただし、本番系にアクセスできるトークンの貼り付けはオンラインデコーダー全般で避けるのが賢明です。

このツールは署名を検証できますか?

いいえ。署名検証には secret または公開鍵が必要で、オンラインツールに貼り付けるべきではありません。検証は自社バックエンドで、発行者の公開鍵 (非対称アルゴリズム) または共有 secret を使って行ってください。

対応アルゴリズムは?

すべて。ツールは base64url JSON 部分を復号するだけなので、任意の署名アルゴリズム (HS256、RS256、ES256、EdDSA 等) で動作します。ヘッダの `alg` を参照してください。

なぜ私のトークンは他より短いのですか?

JWT の長さはペイロード内容 (クレーム数) と署名アルゴリズム (RSA 署名は HMAC より長い) に依存します。HS256 で最小構成なら 200 文字未満も可能。クレーム多数や RSA 署名だと 500 文字超が一般的です。

JWT と JWS/JWE の違いは?

JWS (JSON Web Signature) は署名のみで暗号化されず、誰でもペイロードを読めます。JWE (JSON Web Encryption) はペイロードを暗号化します。一般に流通する "JWT" の多くは実際は JWS — 署名はされるが可視。本ツールは JWS をデコードします。JWE は復号鍵がなければ復号できません。