1. ECDSA 与 RSA 证书的选型中生成性能、握手性能、浏览器与合规兼容性如何权衡
ECDSA 与 RSA 证书如何选型?生成性能、握手性能与兼容性如何权衡?
- RSA 兼容性最好但密钥长度大、握手开销相对高
- ECDSA 密钥短、握手性能好、生成快
- 浏览器与现代客户端兼容性(ECDSA 已被广泛支持)
RSA 证书兼容性最广,几乎所有客户端与旧系统(如旧版 Windows、老 Android)都支持,但密钥长(2048/4096 位)、握手时 ServerKeyExchange 与签名开销大,生成也慢。ECDSA 使用 P-256 等短密钥(256 位),签名与握手性能高、生成快,现代浏览器与客户端(Chrome/Firefox/Safari 近年)都支持。选型权衡:公网面向现代用户优先 ECDSA(或 ECDSA 为主、RSA 为备的 dual-cert),内网/合规/老系统强制 RSA 或同时支持。合规场景(如某些监管要求)可能指定 RSA 或特定算法。生成性能上 ECDSA 明显快于 RSA。
核心权衡是"兼容性 vs 性能"。RSA 兼容最广但开销大,ECDSA 性能好但要求客户端支持。现代选型多用 ECDSA 或双证书,老系统才保留 RSA。
# RSA 生成
openssl genrsa -out rsa.key 2048
# ECDSA 生成
openssl ecparam -genkey -name prime256v1 -out ecdsa.key