コンテンツへスキップ

JWT検証ツール

JSONWeb Tokenが本物で、まだ有効かどうかを確認します。トークンとともに、HMACシークレット、PEM公開鍵、証明書、JWK、またはJWKS全体を貼り付けてください。検証ツールはjoseライブラリで署名を確認し、expとnbfを現在時刻および任意の時刻許容差と照合して、デコード済みのヘッダーとクレームの横に明確な判定を表示します。algがnoneのトークンは受け付けません。

リセット

よくある質問

検証ツールでは何を確認しますか?

指定された鍵で署名を確認し、expクレームとnbfクレームを現在時刻と照合します。署名が一致し、どちらの時刻確認にも失敗しなかった場合にのみ、有効と判定されます。iss、aud、subなどのクレームはペイロードに表示されますが、想定値との照合は行われません。

どの鍵を貼り付けられますか?

HS256、HS384、HS512の場合は、共有シークレットをテキストまたはoct JWKとして貼り付けてください。RSA、EC、EdDSAトークンの場合は、PEM公開鍵(SPKIまたはPKCS #1)、X.509証明書、公開または秘密JWK、最大50個の鍵を含むJWKS、または秘密PEM鍵を貼り付けてください。秘密PEM鍵の場合、公開部分のみが使用されます。

JWKSから適切な鍵はどのように選ばれますか?

トークンヘッダーにkidがある場合、セット内で同じkidを持つ鍵が使用され、一致する鍵がないときはエラーにkidが示されます。kidがない場合、セットには鍵がちょうど1つ含まれている必要があります。これは、ほとんどのサーバーがjwks_uriドキュメントから鍵を選ぶ方法と同じです。

アルゴリズムオプションは何をしますか?

「トークンのalgを使用」を選ぶと、アルゴリズムはトークンヘッダーから取得されますが、鍵もそのアルゴリズムに適合している必要があります。そのため、RSA公開鍵をHMACシークレットとして使うことはできません。特定のアルゴリズムを選ぶと、トークンがそのアルゴリズムを使用することも必須になります。これは、サーバーが想定するアルゴリズムを固定する方法です。別のalgを持つトークンは、両方の名前を示して拒否されます。

algがnoneのトークンが拒否されるのはなぜですか?

algがnoneのトークンには署名がないため、検証するものがなく、誰でも作成できてしまいます。このようなトークンを受け入れることは、JWTライブラリでよく知られた脆弱性です。この検証ツールは、有効な結果ではなくエラーとして報告します。

exp、nbf、クロック許容誤差はどのように機能しますか?

expが現在時刻以前の場合、トークンは期限切れと見なされます。nbfが現在時刻より後の場合は、まだ有効ではないと見なされます。0〜3600秒のクロック許容誤差を設定すると、サーバー間の時刻ずれを考慮して両方のチェックに猶予が加わります。存在するクレームが数値でない場合、トークンは無効になります。

署名が無効とはどういう意味ですか?

トークンが指定した鍵で署名されていないか、署名後にヘッダーまたはペイロードが変更されています。一致する公開鍵またはシークレットを、文字を正確に保って貼り付けたことと、トークン全体をコピーしたことを確認してください。デコードされたヘッダーとペイロードは引き続き表示されるので、比較できます。

どのアルゴリズムに対応していますか?

HS256、HS384、HS512、RS256、RS384、RS512、PS256、PS384、PS512、ES256、ES384、ES512、およびEd25519鍵を使うEdDSAに対応しています。RSA鍵は少なくとも2048ビットである必要があります。暗号化トークン(JWE)は復号されません。

トークンや鍵は保存されますか?

いいえ。トークンと鍵はこの検証のためにメモリ上でのみ使用され、ログ記録も保存もされません。公開鍵は共有しても安全ですが、HMACシークレットは慎重に扱い、漏えいした疑いがあるシークレットはローテーションしてください。

トークンと鍵の最大サイズはどれくらいですか?

トークンは最大65,536文字、鍵フィールドは最大262,144文字まで入力でき、大きなJWKSドキュメントにも対応します。トークンはドットで区切られた3つのbase64urlパートで構成され、ヘッダーにはalgメンバーを含むJSON、ペイロードにはJSONオブジェクトが必要です。

OneClick Proについて

OneClick Proは、日々の作業に役立つ150以上のウェブツールを集めた無料コレクションです。画像や単位の変換、コードの整形と検証、ドメインやSEOの確認、テキスト、日付、数値の処理などに利用できます。すべてのツールは登録やサブスクリプションなしで使えます。入力した内容は結果の計算にのみ使用され、保存されることはありません。単発の作業に使える便利なツールボックスとして、または毎日使うツールをブックマークしてご活用ください。