Toolverse

JWT デコーダー

JSON Web Tokenを貼り付けてヘッダーとペイロードをフォーマットされたJSONとして読みます。タイムスタンプクレームは読みやすいUTC日付で表示されます。デコーディングはブラウザで行われます。

このツールはトークンをデコードするだけです — シグネチャを検証しません。デコード済みトークンを認証の証拠として信用しないでください。

タイムスタンプクレーム(UTC)

iat
2018-01-18T01:30:22.000Z

使い方

JSON Web Tokenをボックスに貼り付けます。JWTは3つのbase64urlセグメントをドットで結合したもの — ヘッダー、ペイロード、シグネチャの順です。ツールはトークンをドットで分割し、最初の2つのセグメントをbase64urlでデコードして読みやすいフォーマット済みJSONにするため、並べて検査できます。 ヘッダーはトークンがどのように作成されたかを説明します。シグネチャアルゴリズム(HS256またはRS256など)とトークンタイプ。ペイロードはクレームを含みます — トークンが行うステートメント。サインインしているユーザーのトークンは通常、サブジェクト(トークンが何についてであるか)、発行者(それを作成した者)、有効期限を示し、アプリケーションが追加したカスタムクレームも含みます。 タイムスタンプクレームは最も誤解される部分です。標準的な時間クレーム — iat(発行時刻)、exp(有効期限)、nbf(有効前)— はUnix epochで秒数として保存されており、一目では読みにくいです。ツールはそれぞれをフォーマット済みUTC日付に変換するため、トークンがすでに期限切れか、まだ有効でないかをすぐに確認できます。 デコーディングは検証ではなく、その違いは重要です。JSON Web Tokenを持っている人は誰でもヘッダーとペイロードを読むことができます。これらの部分は暗号化されていなく、エンコードされているだけだからです。シグネチャだけが — シグネチャキーに対してチェックされます — トークンが真正であり、改ざんされていないことを証明します。このツールは意図的に読み取り専用です。サーバーでシグネチャを検証せずに、デコード済みトークンのクレームをセキュリティ上の決定に信用しないでください。 すべてがブラウザで完全に実行されるため、貼り付けたトークンはアップロードされません。これにより、デコーダは日常的なタスクに安全になります。認証フローのデバッグ、セッションが拒否された理由の検査、またはアイデンティティプロバイダーが発行するクレームの正確な確認。

よくある質問

シグネチャを検証しますか?
いいえ。ヘッダーとペイロードをデコードしてそれらを読むだけです。JWTを検証するにはシグネチャシークレットまたは公開キーが必要ですが、このツールはそれを要求しません。デコード済みトークンを認証されたものとして扱わないでください。
exp、iat、nbfとは何ですか?
これらはUnix epochで秒数での標準的な時間クレームです:iat(発行時刻)、nbf(有効前)、exp(有効期限)。このツールはそれらをUTC日付に変換します。
トークンはどこかに送信されますか?
いいえ。デコーディングはブラウザで完全に実行されます。トークンはアップロードされません。ただし、本番環境のトークンをオンラインツールに貼り付けることは避けてください。
パスワードなしでペイロードを読むことができるのはなぜですか?
JSON Web Tokenはエンコードされており、暗号化されていないからです。ヘッダーとペイロードはbase64urlエンコードされているだけです — 誰でもデコードできる可逆フォーマットです — ため、その内容はキーなしで完全に読み取り可能です。シグネチャはセキュリティレイヤーです。データを非表示にするのではなく、データが改ざんされていないことを証明します。そのため、JWTペイロードにシークレットを入れないでください。その中のすべてを公開として扱ってください。