ブラウザで JWT を読み、署名を確認するか、テスト用トークンに署名します。HMAC、RSA、ECDSA に対応します。トークンは送信しません。JWKS で検証を押したときだけ、ブラウザが公開鍵を取りにいきます。
JWKS で検証は、このブラウザがそのアドレスから鍵だけを取得します。トークンはこのページに残ります。相手がブラウザからの取得を許可している必要があります。
HS は秘密鍵を使います。RS、PS、ES は鍵の欄を使います。検証するはトークンを見ます。JWT を作るはヘッダーとペイロードを読みます。
JWT は Base64url の 3 部分です。ヘッダー、ペイロード、署名。ヘッダーとペイロードは JSON で、暗号化されていません。トークンを持っている人は読めます。署名は、HMAC の秘密鍵か公開鍵があるときに、ペイロードが改ざんされていないことを示します。このページはブラウザで読み、検証し、作ります。alg が none、無いまたは過ぎた exp、ミリ秒で書いた時刻、32 バイト未満の HMAC 秘密鍵を知らせます。トークンは送信しません。ハッシュの照合は JWT の署名ではありません。exp は秒の Unix 時刻です。別のゾーンは Unix 時刻 のページで見ます。
exp が今以前なら期限切れです。{"sub":"user-1"} の HS256 トークンを入れ、HMAC の秘密鍵を secret にします。秘密鍵は Base64 はオフのままです。検証すると、署名は一致します。安全チェックは、秘密鍵が 6 バイトで exp が無いと知らせます。短いのは見本のためです。iat と exp を変えません。1 時間を選んで作ると、今からの秒で両方を書きます。テンプレートのユーザーは sub 1234567890、name John Doe、email [email protected] を入れます。アクセスは sub user-1 と scope read を入れます。HS256、HS384、HS512 は秘密鍵を使います。32 バイト未満でも署名できますが、安全チェックが警告します。秘密鍵そのものが Base64 のときだけ、秘密鍵は Base64 をオンにします。RS256、RS384、RS512、PS256、PS384、PS512、ES256、ES384、ES512 は PEM か JWK です。公開鍵は検証に使います。PKCS#8 の秘密鍵は作成に使います。RSA の秘密鍵は公開の半分を含むので、検証にも使えます。SPKI(BEGIN PUBLIC KEY)、PKCS#8(BEGIN PRIVATE KEY)、PKCS#1 の RSA を貼れます。証明書は拒否します。BEGIN EC PRIVATE KEY の EC 鍵も拒否します。PKCS#8 で書き出してください。alg が none のトークンは有効にしません。検証はヘッダーの alg に従います。HMAC の秘密鍵で RSA は確認しません。exp、nbf、iat は秒です。13 桁は警告するだけで、変換しません。JWKS は鍵の集合か、鍵 1 つです。複数あって kid が無いとエラーです。ヘッダーかペイロードが配列だと、JWT を作るは止まります。
sub と exp を読む。いいえ。Base64url です。パスワードや番号は入れないでください。
トークンには点が 2 つ、JSON が 2 つ必要です。ヘッダーの alg は、このページが知っているものです。HS は署名したときと同じ秘密鍵で、秘密鍵は Base64 のチェックも保存の仕方と合わせます。RSA と EC は証明書ではなく公開鍵です。過ぎた exp は安全チェックの警告で、署名の不一致ではありません。
HS256 は共有の秘密鍵 1 つです。RS256 は秘密鍵で署名し、公開鍵で確認します。HMAC の秘密鍵を他のサービスに渡さないでください。渡すなら公開鍵です。
ヘッダーが、署名は無いと言っています。このページはそのトークンを有効にしません。
できません。発行側で exp を短くするか、失効リストを持ってください。
検証はブラウザの中です。JWKS で検証だけが通信で、取るのは鍵であり、トークンは送りません。それでも、有効な本番トークンを共有のパソコンに貼らないでください。時刻が数時間ずれて見えるときは、数値は UTC で、ペイロードの下の行はこのパソコンの時計です。