JWT Decoder

JWTを貼り付けると、header、payload、claimsがデコードされます。すべてブラウザで実行されるため、トークンはサーバーに送信されません。

動作方法: 下のJWTトークンを貼り付けると、headerとpayloadが即座にデコードされます。このツールは有効期限のステータスをハイライトし、すべてのクレームを読みやすい形式で表示します。データはサーバーには送信されません。

23h 59mの間有効· 1h 0m前に発行
Header
{
  "alg": "HS256",
  "typ": "JWT"
}
Payload
{
  "sub": "1234567890",
  "name": "John Doe",
  "email": "john@example.com",
  "role": "admin",
  "iat": 1779891019,
  "exp": 1779981019,
  "iss": "https://auth.example.com",
  "aud": "https://api.example.com"
}
ClaimValue
sub1234567890
nameJohn Doe
emailjohn@example.com
roleadmin
iat1779891019 (2026-05-27T14:10:19.000Z)
exp1779981019 (2026-05-28T15:10:19.000Z)
isshttps://auth.example.com
audhttps://api.example.com
Signature

SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

JWTとは

JSON Web Token (JWT)は、2つのパーティ間でクレームを表現するためのコンパクトなURL安全な方法です。ドットで区切られた3つの部分で構成されています:header、payload、signature。headerは使用されるアルゴリズムを指定し、payloadはクレーム(データ)を含み、signatureはトークンの完全性を検証します。JWTはWeb APIの認証と認可に広く使用されています。

JWT構造の説明

JWTの各部分はBase64URLエンコードされたJSONです。headerには通常、アルゴリズム(HS256、RS256)とトークンタイプが含まれます。payloadには、sub(サブジェクト)、iat(発行時刻)、exp(有効期限)、カスタムデータなどのクレームが含まれます。signatureは、secretまたは秘密鍵を使用してheaderとpayloadに署名して作成されます。

一般的なJWTクレーム

標準クレームには、iss(発行者)、sub(サブジェクト)、aud(オーディエンス)、exp(有効期限)、nbf(有効開始時刻)、iat(発行時刻)、jti(JWT ID)が含まれます。カスタムクレームには、ユーザーロール、権限、プロフィール情報など、任意のJSONデータを含めることができます。トークンの有効期限が切れているかを確認するために、常にexpクレームを検証してください。

セキュリティ上の考慮事項

  • JWTペイロードに機密データを保存しないでください — エンコードされているだけで暗号化されていません
  • サーバー側で常に署名を検証してください
  • 短い有効期限とリフレッシュトークンを使用してください
  • 公開APIではHS256よりRS256を推奨します
  • クライアント側のコードで署名秘密鍵を公開しないでください
  • トークンの横取りを防ぐためHTTPSを使用してください