排错指南

RSA 密钥长度不足:为什么现在才被提醒

证书的 RSA 密钥长度低于 2048 位。

2048 位是 RSA 的现行下限,低于它的证书公开 CA 已经不再签发。你还能看到一张 1024 位的证书,通常意味着它是很多年前签的、私钥一直没换过——续期只换证书不换密钥,长度就会一直带着。

修法只有一个:用新的、更长的密钥重新签发。这件事免费,而且顺手可以换成 ECDSA。

为什么现在才提醒

浏览器对已经签发的旧证书大多仍然接受,不会拦截。所以它不会以故障的形式暴露出来——直到某天某个客户端收紧策略,或者密钥真的被破解。这属于「现在没坏,但不该继续」的一类。

密钥状态
RSA 1024已不安全,公开 CA 早已停止签发
RSA 2048当前主流,足够用
RSA 3072 / 4096更保守,握手开销更大
ECDSA P-256安全强度约等于 RSA 3072,密钥和握手都更小

重新签发时怎么选

  • 没有特殊要求就用 ECDSA P-256:更短的密钥、更快的握手、更小的证书。现代客户端全面支持。
  • 需要兼容很老的客户端(十年前的安卓、老 Java)就用 RSA 2048
  • 不建议直接上 RSA 4096:安全收益有限,而每次握手的计算开销明显更高,高并发下能感觉到。

关键是生成新的私钥,不是拿旧私钥重签。密钥长度是私钥的属性,不换私钥,签多少次都还是原来的长度。

生成新私钥
openssl ecparam -genkey -name prime256v1 -out privkey.pem   # ECDSA P-256
openssl genrsa -out privkey.pem 2048                        # RSA 2048

常见问题

检测一下你自己的域名

免登录,一次真实的 TLS 握手,直接给出结论:还有多少天到期、证书链是否完整、是否包含这个域名。

需要一张新证书?本站提供基于 Let's Encrypt 的免费签发,支持泛域名。

了解免费证书

其他排错指南

Last updated on