💻 開発者ツール

JWTデコード

JWT(JSON Web Token)を貼ると、ヘッダーとペイロードを整形したJSONで表示します。exp・iat・nbf は読みやすい日時に変換。処理は端末内で完結し、入力はサーバーに送信されません。

例(クリックで試す)

「.」で区切られた3つの部分(ヘッダー・ペイロード・署名)のうち、最初の2つをデコードします。署名の検証は行いません。

(JWTを貼るとヘッダーが表示されます)
(JWTを貼るとペイロードが表示されます)

JWTデコードの使い方

はじめての方は、まず入力欄の上にある「例(クリックで試す)」のチップを押してみてください。よく知られたサンプルトークンが入り、ヘッダーとペイロードがすぐに表示されます。慣れている方は、自分のトークンを上のテキストエリアに貼り付けるだけで即座にデコードされます(入力するたびに自動更新)。

  1. 確認したいJWT文字列eyJ... のような3つの部分が「.」でつながった文字列)を貼り付けます。
  2. ヘッダーペイロードがそれぞれ整形JSONで表示されます。
  3. ペイロードに expiatnbf があれば、UNIX時間を人間が読めるローカル日時に変換して併記します。
  4. 各ブロックのコピーボタンで、表示中のJSONをそのままコピーできます。

具体例:このトークンを貼ると

JWTは3つの部分「ヘッダー.ペイロード.署名」(例: eyJhbGci….eyJzdWIi….SflKxwRJ…)が「.」でつながった文字列です。例えば次のトークンを貼り付けると:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

ヘッダーは { "alg": "HS256", "typ": "JWT" }、ペイロードは { "sub": "1234567890", "name": "John Doe", "iat": 1516239022 } と表示され、iat15162390222018年1月18日 10:30:22 のようにローカル日時で併記されます。なお、このツールは署名の検証は行わず、ヘッダーとペイロードのデコード表示のみを行います(3つ目の署名部分が正しいかどうかは判定しません)。

こんな場面で便利です

  • APIのアクセストークンやIDトークンの中身(subscope など)をすぐ確認したいとき
  • トークンの有効期限(exp)が切れていないか、発行時刻(iat)を見たいとき
  • OAuth・OpenID Connect の動作確認やデバッグで、クレームの中身を見比べたいとき
  • 署名アルゴリズム(ヘッダーの alg)やキーID(kid)を確認したいとき

よくある質問

入力したJWTはサーバーに送信されますか?
いいえ。デコード処理はすべてお使いのブラウザ内で完結し、入力したトークンが外部に送信・保存されることはありません。アクセストークンなどの機密情報も安心してご利用いただけます。
署名の検証はできますか?
いいえ。このツールはヘッダーとペイロードをデコードして表示するだけで、3つ目の署名部分の検証は行いません。トークンが改ざんされていないか・有効かを確かめるには、発行側の秘密鍵や公開鍵を使ったサーバー側での検証が必要です。
exp や iat の数字は何を表していますか?
exp は有効期限、iat は発行日時、nbf は有効になる開始日時を表し、いずれもUNIX時間(1970年1月1日からの秒数)で記録されています。本ツールではこれらを検出すると、お使いの端末のローカル日時に変換して併記します。