JWT入力へスキップ

JWTデコーダー - ブラウザでJWTをデコード・検証

// サーバーにデータを送信せずにJWTをデコード

クライアントサイドのみ — データはブラウザを離れません
トークン入力
JWTファイルまたはテキストをここにドロップ

JWTトークンのデコード方法

1

JWTトークンを貼り付け

JSON Web Tokenをコピーして入力フィールドに貼り付けます。JWTデコーダーはBase64URLエンコードされたトークンを即座に自動的に解析・デコードします。

2

デコードされたクレームを表示

デコードされたJWTヘッダーとペイロードを確認します。iss、sub、exp、iatなどのクレームを人間が読めるタイムスタンプ付きのJSONまたはテーブル形式で表示します。

3

JWT署名を検証

秘密鍵または公開鍵を入力してトークンの署名を検証します。署名検証にHS256、HS384、HS512(HMAC)アルゴリズムをサポートしています。

JSON Web Token(JWT)とは?

ヘッダー . ペイロード . 署名

JSON Web Token(JWT)は、コンパクトでURLセーフなJSONオブジェクトとして当事者間で安全に情報を送信するためのオープンスタンダード(RFC 7519)です。JWTは一般的に、モダンなWebアプリケーション、API、シングルサインオン(SSO)システムで認証認可情報交換に使用されます。

ヘッダー

トークンタイプと署名アルゴリズム(例:HS256、RS256、ES256)を含みます。

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

ペイロード

クレームを含みます:登録済み(issexpsub)、公開、プライベートクレーム。

{"sub": "user123", "exp": 1699999999}

署名

トークンが改ざんされていないことを検証する暗号署名。

HMACSHA256(base64(header).base64(payload), secret)

一般的なJWTユースケース

API認証

JWTはREST APIを保護する標準です。ログイン後、サーバーはJWTを発行し、クライアントは後続のリクエストのAuthorization: Bearerヘッダーにそれを含めます。

シングルサインオン(SSO)

JWTは複数のアプリケーション間でシームレスな認証を可能にします。1回のログインで、組織内のすべての接続サービスで機能するトークンが生成されます。

情報交換

当事者間で安全にデータを送信します。署名は送信者の身元と、メッセージが転送中に変更されていないことを保証します。

モバイルアプリ認証

モバイルアプリに最適なステートレス認証。サーバーサイドセッションは不要—JWTには必要なすべてのユーザー情報が含まれています。

よくある質問

このJWTデコーダーは本番トークンに使用しても安全ですか?

はい、このJWTデコーダーは完全に安全です。すべてのデコードと検証はJavaScriptを使用して完全にブラウザ内で行われます。トークンと秘密鍵がサーバーに送信されることはありません。ブラウザの開発者ツールでネットワークリクエストを確認することでこれを確認できます—データはデバイスから送信されません。

JWTのデコードと検証の違いは何ですか?

デコードは、Base64URLエンコードされたヘッダーとペイロードを読み取り可能なJSONに変換するだけです。鍵なしで誰でもJWTをデコードできます。検証は暗号署名をチェックし、トークンが改ざんされておらず、信頼できるソースから発行されたことを確認します。検証には秘密鍵(HMAC用)または公開鍵(RSA/ECDSA用)が必要です。

どのJWT署名アルゴリズムがサポートされていますか?

このツールはどのアルゴリズムで署名されたJWTもデコードできます。署名検証については、現在Web Crypto APIを使用したHMACアルゴリズム(HS256、HS384、HS512)をサポートしています。RSA(RS256、RS384、RS512)およびECDSA(ES256、ES384、ES512)の検証サポートは計画中です。

JWT署名検証が失敗するのはなぜですか?

一般的な理由には以下が含まれます:1) 秘密鍵が間違っている—トークンに署名したものと全く同じ鍵を使用していることを確認してください。2) フォーマットが間違っている—シークレットがBase64エンコードされている場合、UTF-8とBase64を切り替えてみてください。3) アルゴリズムの不一致—ヘッダーのalgクレームが検証方法と一致しているか確認してください。4) トークンが変更された—ヘッダーまたはペイロードへの変更は署名を無効にします。

標準的なJWTクレームの意味は?

RFC 7519で定義された登録済みクレーム:

  • iss (発行者) – トークンを発行した者
  • sub (主題) – トークンが表すユーザーまたはエンティティ
  • aud (対象者) – トークンの意図された受信者
  • exp (有効期限) – トークンの有効期限を示すUnixタイムスタンプ
  • nbf (有効開始時刻) – この時刻より前はトークンは無効
  • iat (発行時刻) – トークンが作成された時刻
  • jti (JWT ID) – トークンの一意の識別子