关键信息
- 分类
- 安全与校验
- 输入类型
- select, text, checkbox, textarea
- 输出类型
- html
- 样本覆盖
- 4
- 支持 API
- Yes
概览
本工具是一个多功能的 JWK(JSON Web Key)生成与解析器,支持快速生成 RSA、EC(P-256/P-384/P-521/secp256k1)以及 OKP(Ed25519/Ed448/X25519/X448)格式的密钥对,同时支持解析已有的 JWK 字符串,以便快速查看其内部参数、指纹和元数据信息。
适用场景
- •在配置 OAuth 2.0 或 OIDC 服务时,需要生成符合标准的 JWK 密钥集(JWKS)。
- •需要将现有的 JWK 字符串反序列化,以检查其算法、曲线类型、密钥 ID (kid) 或公钥参数。
- •在开发 JWT 签名与验签功能时,需要快速获取特定曲线(如 Ed25519 或 P-256)的测试密钥。
工作原理
- •选择操作模式为“生成”或“解析”。
- •若选择生成,需指定密钥类型(RSA、EC 或 OKP)、对应的密钥长度或曲线,并可选择性输入密钥 ID (kid) 以及是否仅输出公钥。
- •若选择解析,需在输入框中粘贴已有的 JWK JSON 字符串。
- •点击执行后,系统将即时输出生成的 JWK 密钥数据,或展示解析后的详细密钥参数与指纹信息。
使用场景
用户案例
1. 生成 OIDC 签名所需的 RS256 密钥
安全工程师- 背景原因
- 正在搭建一个内部的 OIDC 认证服务,需要配置一个 RSA 2048 位的 JWK 用于对 JWT 进行签名。
- 解决问题
- 需要快速生成一个带有特定密钥 ID (kid) 的 RSA 密钥对,并获取其公钥和私钥的 JWK 格式。
- 如何使用
- 选择模式为“生成”,密钥类型选择“RSA”,密钥长度选择“2048 位”,在密钥 ID 中输入 `auth-key-v1`,不勾选“仅公钥”,点击生成。
- 示例配置
-
mode=generate, keyType=rsa, keySize=2048, keyId=auth-key-v1, publicOnly=false - 效果
- 成功获得包含私钥参数(d, p, q 等)和公钥参数(n, e)的完整 JWK JSON 数据,可直接用于认证服务的密钥配置。
2. 解析并验证第三方 JWK 公钥
后端开发人员- 背景原因
- 对接第三方 API 时,对方提供了一个 JWK 格式的公钥,但开发人员需要确认该密钥的曲线类型和指纹。
- 解决问题
- 无法直观读取 JWK 字符串中的加密参数和曲线类型。
- 如何使用
- 将模式切换为“解析”,在“待解析 JWK”输入框中粘贴对方提供的 JWK JSON 字符串,点击解析。
- 示例配置
-
mode=parse, jwkInput={"kty":"EC","crv":"P-256","x":"f83OJ3D2xF1Bg8vub9tM1gmp_M95vRP2F6w_cCC7gcg","y":"x_da6tSxVT9scbKgg_t12No_OFM5QCL5jaeUtl821GP"} - 效果
- 页面清晰展示出该密钥为 EC 类型,使用 P-256 曲线,并列出了其公钥坐标参数,便于开发人员进行配置校验。
用 Samples 测试
json, image相关专题
常见问题
这个工具支持哪些非对称加密算法?
支持 RSA(2048/3072/4096 位)、EC(P-256/P-384/P-521/secp256k1)以及 OKP(Ed25519/Ed448/X25519/X448)。
什么是 JWK 中的 "kid" 参数?
"kid" 是密钥 ID(Key ID),用于在密钥集(JWKS)中唯一标识某个特定的密钥,方便接收方匹配正确的验签密钥。
如何只获取公钥而不包含私钥参数?
在生成模式下,勾选“仅公钥”选项,生成的 JWK 将只包含公钥参数(如 RSA 的 n 和 e,或 EC 的 x 和 y)。
解析模式可以识别哪些信息?
解析模式可以读取您输入的 JWK JSON,提取并直观展示其密钥类型(kty)、曲线(crv)、密钥 ID(kid)以及其他具体的数学参数。
生成的密钥安全吗?
所有密钥均在您的浏览器本地安全生成,不会被上传或存储到任何服务器,确保您的私钥安全。