Tools

JWT Viewer

JWTトークンをデコードしてHeaderとPayloadを確認します。

Input
Ln:1 Col:1
Output
JWTトークンを入力してデコードボタンを押してください。
Decoded

JWT Decoderについて

JSON Web Token(JWT)はステートレスな認証と認可の業界標準です。RFC 7519で定義されたJWTは、OAuth 2.0フロー、OpenID Connect、API認証ヘッダー(Bearerトークン)、ほぼすべての現代のウェブアプリケーションとマイクロサービスアーキテクチャのセッション管理に使用されています。

JWT 構造リファレンス

JWTはドットで区切られた3つのBase64URLエンコードされた部分で構成されます:Header(アルゴリズムとトークンタイプ、例:{"alg":"HS256","typ":"JWT"})、Payload(ユーザー/エンティティに関するクレーム)、Signature(トークンが改ざんされていないことを検証するため)。標準の登録済みクレームには、iss(発行者)、sub(主体)、aud(対象者)、exp(有効期限)、iat(発行時刻)、nbf(有効開始時刻)が含まれます。

重要なセキュリティ注意事項:JWTペイロードは暗号化ではなくBase64URLエンコードです。トークンを傍受した人は誰でも秘密鍵なしにペイロードをデコードして読むことができます。JWTクレームにパスワードや個人情報などの機密データを保存しないでください。トークンを信頼する前に必ずexpクレームを検証してください。機密ペイロードの場合はJWE(JSON Web Encryption、RFC 7516)を代わりに使用してください。

よくある質問

JWTは暗号化されますか?
基本的なJWT(JWS)は署名のみで、ペイロードはBase64でエンコードされるだけで暗号化されません。誰でもデコードして内容を閲覧できるため、機密情報を含めないでください。暗号化が必要な場合はJWE(JSON Web Encryption)を使用してください。
JWTのexpクレームはどの形式ですか?
Unixタイムスタンプ(秒単位)です。例:1700000000は2023-11-14T22:13:20Z。ミリ秒ではなく秒単位である点に注意してください。
署名検証なしでデコードしても安全ですか?
デコード自体は安全ですが、署名検証なしでペイロードを信頼してはいけません。サーバーでは必ず署名を検証してからデータを使用してください。このツールはクライアント側のデコード専用です。