JWTデコーダー

JSON Web トークン (JWT) を即座にデコードして、ヘッダー、ペイロード、およびクレームを検証なしで表示します。この無料のオンライン JWT デコーダーは、開発者が認証トークンをデバッグし、OAuth トークンを検査し、トークンの構造を理解するのに役立ちます。注:このツールはトークンをデコードしますが、セキュリティ目的の署名は検証しません。

よくある質問

JWT(JSON Web Token)は、当事者間の認証と情報交換に使用される、コンパクトでURLセーフなトークンです。JWTをデコードすると、ヘッダー(トークンのタイプとアルゴリズム)、ペイロード(クレームとユーザーデータ)、署名を見ることができます。開発者はJWTをデコードすることで、認証の問題をデバッグしたり、ユーザー権限を検査したり、開発中にトークンの内容を理解したりすることができます。

JWTトークンを入力フィールドに貼り付け、「Decode JWT」をクリックするだけです。ツールは直ちにトークンを解析し、ヘッダーとペイロードを読みやすいJSON形式で表示します。トークンに保存されているすべてのクレーム、有効期限、発行者情報、カスタムデータが表示されます。

いいえ、このデコーダーはJWTのヘッダーとペイロードの内容を表示するだけで、署名の検証は行いません。署名の検証には秘密鍵または公開鍵が必要ですが、これは決して共有したりオンラインツールに入力したりしてはいけません。セキュリティのため、JWTの検証は常にサーバーサイドで適切なライブラリを使用し、秘密鍵を使って行ってください。

デコードされたJWTは通常、ヘッダーにトークン・タイプと署名アルゴリズム、ペイロードに'iss'(発行者)、'sub'(対象者)、'aud'(オーディエンス)、'exp'(有効期限)、'iat'(発行時)、およびカスタム・クレームを表示します。これらの情報は、トークンの発行者、有効期限、トークンに含まれる権限やデータを理解するのに役立ちます。

JWTは誰でも読めるように設計されているため、クライアントサイドでJWTをデコードすることは一般的に安全です。しかし、非常に機密性の高いデータを含むJWTを、公開されているオンラインツールを使ってデコードすることは絶対に避けてください。このツールは、データをサーバーに送信することなく、完全にブラウザ内でトークンを処理しますが、機密情報を含む本番トークンでの使用は避けてください。

JWTは、Base64エンコードされた3つの部分(header.payload.signature)をドットで区切った標準的な構造になっています。ヘッダーはトークンのタイプとアルゴリズムを記述し、ペイロードはクレームとデータを含み、署名はトークンが改ざんされていないことを保証する。この構造により、JWTはセキュリティを維持しながら、コンパクトでURLセーフになります。

デコードされたJWTは、Unixタイムスタンプである'exp'(有効期限)クレームを含む。このタイムスタンプを現在時刻と比較し、現在時刻がexpの値より大きければ、トークンは期限切れです。デコーダはこのタイムスタンプを読み取り可能な形式で表示し、トークンの有効性を確認するのに役立ちます。

iat' (issued at)はトークンがいつ作成されたかを、'exp' (expiration time)はトークンの有効期限を、'nbf' (not before)はトークンがいつ有効になるかを示します。これらのタイムスタンプは、トークンのライフサイクルを管理し、異なる期間でのトークンの再利用を防ぐのに役立ちます。

はい!OAuth 2.0のアクセストークンやOpenID ConnectのIDトークンは、しばしばJWT形式を使用します。これらをデコードすると、スコープ、パーミッション、ユーザー識別子、認証の詳細が明らかになります。これは、認証フローのデバッグ、付与されたパーミッションの検証、統合に関する問題のトラブルシューティングに非常に役立ちます。

algorithm: none」を持つJWT(安全でないJWTとも呼ばれる)は、署名検証を持たない。これは本番では危険であり、多くの場合セキュリティの脆弱性を示している。正当なJWTはRS256、HS256、ES256のようなアルゴリズムを使うべきです。もし'none'と表示されたら、セキュリティ上の問題を示している可能性があるので、直ちに調査してください。