对于 SSL/TLS,我们需要两件事:
1) client needs to authenticate the server.
2) client and server need to compute a symmetric session key.
两者兼得的几种方法:
最常见:TLS_RSA_WITH_AES_...
RSA is used for both 1 (authentication) and 2 (computing symmetric key).
首选:TLS_DHE_RSA_WITH_AES_... 或 TLS_ECDHE_RSA_WITH_AES_...
RSA is used for 1 (authentication) and for signing the DHE keys.
DHE is used for 2 (computing symmetric key).
首选,因为您获得完美前向安全性 (PFS)
不常见:DH_RSA_...(这是 OP 问题中的非临时 DH)
DH is used for both 1 (Authentication) and 2 (computing symmetric key).
您所指的情况是第 3 个(“不常见”),如您所见,RSA 既不用于 1(身份验证)也不用于 2(计算对称密钥),因此不存在 RSA 私钥被泄露的问题. DH_RSA 中的 RSA 可能会产生误导,但正如 Tom Leek 所提到的,服务器的管理员将向 CA(证书颁发机构)提供凭据及其 DH 公钥,然后 CA 将使用 CA 的 RSA 私钥签署 DH 公钥。