公開金鑰 JWT 驗證
JWKS Validator
使用信任的 JSON Web Key Set 驗證 JWT。讀取 kid、選擇相容 JWK,並在瀏覽器驗證公開金鑰簽章。
alg
—
kid
—
iss
—
簽章驗證在瀏覽器執行。遠端載入只會請求你輸入的 JWKS URL;JWT 不會傳送到該 endpoint 或驗證 API。
此工具不會自動追蹤權杖中的 jku 或 x5u。JWKS 來源應視為信任設定,而不是由未驗證權杖決定。
使用 JWKS 驗證 JWT 的流程
先讀取 header 的 alg 與 kid,再使用已經信任、屬於預期 issuer 的 JWKS。不要讓尚未驗證的 JWT 自己決定金鑰來源。
RFC 7517 的 JWK Set 包含 keys 陣列,而 kid 常用於 key rotation 時選擇金鑰。kid 符合仍不代表一切正確,還要確認 alg、key use 與 issuer trust。
1. 讀取 alg + kid
查看未驗證 header,但不把它當作信任設定。
2. 選擇信任 JWK
依 kid,並在可用時檢查 kty、alg、use、key_ops。
3. 驗證簽章 + claims
簽章通過後再檢查 exp/nbf 以及需要的 issuer/audience。
支援演算法
支援 RS256/384/512、PS256/384/512、ES256/384/512,使用瀏覽器 Web Crypto API。公開 JWKS 不應暴露共享 HMAC secret,因此不支援 HS 系列。
為什麼不自動追蹤 jku 或 x5u
直接跟隨權杖控制的 URL 可能造成 SSRF 與信任邊界問題。此工具只載入你明確輸入的 JWKS URL。