跳到主要内容
ecdsa.com

密钥对

为某一种非对称算法一起生成、在数学上相互关联的一对私钥和公钥,理想情况下只用于一种用途,例如签名或密钥协商。
其他写法keypairasymmetric key pair

生成方式因算法而异:椭圆曲线只需一个随机标量和一次点乘(耗时以微秒计);Ed25519 或 ML-DSA 需要一个随机种子;RSA 则要搜索两个大素数,在 Apple M4 Max 的单个核心上使用 OpenSSL 3.6.5 时,2048 位平均约需 26 毫秒,4096 位约需 250 毫秒,且波动很大。所有算法都需要密码学安全的随机数生成器;随机数生成器质量不佳,就会生成弱密钥或重复的密钥。

良好实践:在使用密钥的地方生成密钥(HSM、Secure Enclave 或服务器内部),而不是复制过去;把算法和用途与密钥一起记录下来(JWK 的 alg 和 use、X.509 密钥用法);每种用途使用单独的密钥对(SP 800-57 第 1 部分 §5.2);从第一天起就规划密钥轮换。

要确认证书、CSR 或 JWK 是否属于某个私钥,应比较公钥,而不是比较文件名:密钥与证书匹配检测可以在本地完成这项比较。

标准与参考资料

全部术语