JWTデコーダー – トークンのデコードと検証をオンラインで
JWTデコーダーはJSON Web Tokenを3つのbase64urlパートに分離し、ヘッダーとペイロードをJSONとしてデコード、署名を16進数で表示します。また、iat, nbf, expクレームを読みやすい日付に変換し、期限切れ・有効バッジを表示します。共有シークレットを使ってHMAC署名(HS256/384/512)を任意で検証できます。RS*/ES*/PS*のトークンはデコードできますが、検証には鍵が必要です。
JWTデコーダーは、JSON Web Tokenをデコードして内容を調べるブラウザベースのツールです。JWTを3つのbase64urlパートに分割し、ヘッダーとペイロードをJSONとしてデコード、署名を16進数で表示します。自分で分離・デコードすることなく、トークンの各要素を読みやすい形で確認できます。
このデコーダーはiat, nbf, expの時間クレームも認識し、人間が読める日付として表示するとともに、期限切れ・有効バッジを表示します。署名を確認したい場合は、HMACアルゴリズムのHS256、HS384、HS512で共有シークレットを任意で使用できます。RS*、ES*、PS*のアルゴリズムのトークンはデコードできますが、検証には鍵が必要です。デコードはトークンの内容を表示するもので、署名の検証とは別物であることに注意してください。
JWTはエンコードされたパートからなるコンパクトなトークンであり、JSONは読みやすいオブジェクトや値を表す構造化データ形式です。JWTのデコードは、JSONのヘッダーとペイロードを調べたり、時間クレームを理解したり、開発やトラブルシューティング中にトークンを調査したりする際に便利です。署名はJSONの内容ではなく16進数として表示されます。
JWTデコーダーは完全にブラウザ上で動作します。入力はデバイス上で処理され、アップロード、保存、サーバーへの送信は行われません。ページの読み込み後は、サーバー接続なしでオフラインでも動作します。受け取ったトークンの調査、トークン関連の問題のデバッグ、対応するHMAC署名の確認を、トークンデータを外部に送信することなく行いたい開発者やDevOpsエンジニアに利用できます。
手順1: 調べたいJWTの値をツールに貼り付けるかドロップします。
手順2: デコードを実行してJWTを3つのbase64urlパートに分離します。ヘッダーとペイロードはJSONで表示され、署名はhexで表示されます。
手順3: デコードされたヘッダーとペイロードを確認します。iat, nbf, expクレームは読みやすい日付で表示されます。期限切れ・有効バッジがトークンの時間的な状態の解釈に役立ちます。
手順4: HMAC署名を確認するには、対応するHS256、HS384、HS512トークンの共有シークレットを指定します。RS*/ES*/PS*のトークンはデコードできますが、検証には鍵が必要です。
用途: トークンを運ぶチャネル経由で受け取ったJWTを調べます。デコードするとヘッダーとペイロードが読みやすいJSON形式で明らかになります。
用途: 誰かから送られたJWTのヘッダーとペイロードのデータを復元・確認します。各パートを手動で分離することなくトークンを理解できます。
用途: トークンのiat, nbf, expの値が想定する日付に対応しているか確認します。読みやすいタイムスタンプと期限切れ・有効バッジで時間クレームを確認しやすくなります。
用途: アプリケーションが受け付けないトークンをトラブルシューティングします。デコードされたクレームを調べ、対応するHMACアルゴリズムについては共有シークレットで署名を任意で検証します。
用途: トークンの使われ方を調べる前に、JWTヘッダーのアルゴリズムやその他のメタデータを確認します。デコードされたJSONでヘッダーが読みやすくなります。
用途: トークンを使用・共有する前に、JWTペイロードに想定した情報が含まれているか確認します。デコーダーはペイロードをJSONとして公開し、検査できます。