JWTデコーダ

JSON Web Token(JWT)を貼り付けて、ヘッダーとペイロードを即座にデコード・表示します。HS256、RS256、その他の一般的なアルゴリズムに対応。

ヘッダー

// デコードされたヘッダーがここに表示されます

ペイロード

// デコードされたペイロードがここに表示されます

JSON Web Token (JWT) デコーダ完全ガイド

安全なクライアントサイドJWTデコーダへようこそ。この無料オンラインツールは、現代の認証システムを扱う開発者、セキュリティ専門家、または個人にとって不可欠なユーティリティです。JWT(JSON Web Token)を即座にデコードし、クリーンで人間が読みやすい形式で内容を検査できます。テキストエリアにトークンを貼り付けるだけで、ツールがヘッダーとペイロードを解析し、フォーマットされたJSONとして表示します。

このオンラインJWTデコーダの最も重要な特徴は、そのセキュリティです。すべてのデコードと処理は、ブラウザ内で100%行われます。トークンが当社のサーバーに送信されることはありません。このクライアントサイドのアプローチにより、認証トークン、APIキー、プライベートなユーザーデータなどの機密情報が完全に非公開に保たれます。自信を持ってJWTトークンをデバッグできます。

JSON Web Token (JWT) とは何ですか?

JSON Web Token (JWT) は、RFC 7519で定義された、URLセーフでコンパクトなオープン標準であり、当事者間で情報をJSONオブジェクトとして安全に送信するために使用されます。この情報はデジタル署名されているため、検証可能で信頼できます。JWTはステートレスで自己完結型です。つまり、ユーザーの認証に必要なすべての情報がトークン自体に含まれています。これにより、現代のウェブおよびモバイルアプリケーション、特に認証や情報交換の処理に非常に人気のある選択肢となっています。

JWTは、ドット(.)で区切られた3つのパート構造ですぐに識別できます:header.payload.signature。

JWTの3つのパートの解説

当社のJWTデコーダを使用すると、トークンの最初の2つのパートのデコードされたバージョンを確認できます。

1. ヘッダー (メタデータ)

トークンの最初のパートはJWTヘッダーです。これはBase64UrlエンコードされたJSONオブジェクトです。通常、2つのキーと値のペアで構成されます:

2. ペイロード (クレーム)

トークンの2つ目のパートはJWTペイロードです。このパートもBase64UrlエンコードされたJSONオブジェクトであり、「クレーム(claims)」が含まれています。クレームとは、エンティティ(通常はユーザー)に関する記述と追加データのことです。クレームには3つのタイプがあります:

当社のJWTクレームビューアを使用すると、これらすべてのクレームをひと目で簡単に検査できます。

3. 署名

トークンの3つ目のパートはJWT署名です。これは、エンコードされたヘッダー、エンコードされたペイロード、秘密鍵(または公開鍵アルゴリズム用の秘密鍵)を取得し、指定されたアルゴリズム(alg)を実行することによって作成されます。

署名の目的は、トークンの信頼性を検証することです。トークンが輸送中に改ざんされていないことを保証します。攻撃者がペイロード内の1文字でも変更すると、署名は無効になります。これが、このツールが署名を検証しない、また検証できない理由です。検証には秘密鍵が必要であり、秘密鍵をオンラインツールに共有したり貼り付けたりしてはいけません。

このJWTデコーダツールの使い方

  1. トークンをコピーする:アプリケーション、ブラウザのローカルストレージ、またはAPIレスポンスから完全なJWT文字列(3つのパートすべて)をコピーします。
  2. トークンを貼り付ける:ページ上部のテキストエリアにトークンを貼り付けます。「サンプルを読み込む」ボタンを使用して、有効なトークンを確認することもできます。
  3. 「トークンをデコード」をクリック:ツールが即座にトークンを解析します。
  4. 結果を確認する:ヘッダーとペイロードが下の2つの独立した、わかりやすくフォーマットされたJSONボックスに表示され、すべてのクレームとメタデータを簡単に読み取ることができます。
  5. クリア:「クリア」ボタンをクリックして最初からやり直します。

一般的なデバッグシナリオ

JWTデコーダは主にデバッグツールです。解決できる一般的な問題は以下の通りです:

関連する開発者ツール

JWTは他のウェブ標準に基づいているため、デコーダと併せて以下のツールも役立つ場合があります:

よくある質問

JWTデコーダとは何ですか?

JWTデコーダは、JSON Web Tokenを3つのコンポーネント(ヘッダー、ペイロード、署名)に分解し、ヘッダーとペイロードを人間が読みやすいフォーマット済みのJSON構造で表示するツールです。トークン内に保存されているデータ(クレーム)とメタデータを素早く検査できます。

このJWTデコーダは機密性の高いトークンに使用しても安全ですか?

はい、100%安全です。このツールは、ブラウザ内のクライアントサイドで完全に動作します。トークン、ヘッダー、ペイロードがネットワーク経由で送信されたり、当社のサーバーに記録されたり、保存されたりすることはありません。プライバシーの懸念なしに、機密性の高い認証トークンを安全にデコードできます。

このツールはJWTの署名を検証しますか?

いいえ。このツールはトークンを「デコード」するだけで、「検証」は行いません。署名の検証には、トークンの作成に使用された「秘密鍵」(HS256などの共通鍵アルゴリズムの場合)または「公開鍵」(RS256などの公開鍵アルゴリズムの場合)が必要です。秘密鍵をオンラインツールに貼り付けてはいけません。このデコーダは、トークンの中身(クレーム)を検査するためのものであり、その正当性を検証するためのものではありません。

ヘッダーとペイロードの違いは何ですか?

ヘッダーには通常、トークンのタイプ(typ:通常は「JWT」)や署名アルゴリズム(alg:例「HS256」)などの、トークンに関するメタデータが含まれています。ペイロードには、ユーザーID(sub)、発行者(iss)、有効期限(exp)、およびその他のカスタムデータなどの、実際に送信されるデータまたは「クレーム」が含まれています。

JWTはエンコードされているのですか、それとも暗号化されているのですか?

これはよくある混乱です。標準的なJWT(JWS)は、Base64Urlを使用して「エンコード」され、「署名」されていますが、「暗号化」はされていません。つまり、トークンを持っている人なら誰でも、このツールが示すように内容をデコードして読むことができます。内容を読み取られないように隠す必要がある場合は、JSON Web Encryption(JWE)トークンを使用する必要があります。

JWTの「exp」クレームは何を意味しますか?

exp(有効期限)クレームは、それを過ぎるとJWTを処理の対象として受け入れてはならない時間を定義する登録済みクレームです。これはUnixタイムスタンプ(1970年1月1日からの秒数)です。トークンを受け取ったサーバーは、トークンが期限切れでないことを確認するために、常にこのクレームをチェックする必要があります。

JWTデコーダ:JWTをデコードするための無料・安全なオンラインツール | CoderTab