在相互认证中,如果已知客户端证书,是否需要 CA 签名以防止 MITM 攻击?

在相互认证中,如果已知客户端证书,是否需要 CA 签名以防止 MITM 攻击?

举个例子:提供商设置了一个 API。双方(提供商和客户)相互信任。提供商需要相互认证。客户端生成 SSL 证书并通过 SFTP 将其发送给提供商。该客户端证书是否需要 CA 签名以提高安全性(如防止 MITM 攻击)?

答案1

不,不要签署证书,因为它不会增加安全性。

如果有的话,它会稍微降低安全性,因为还有一个私钥需要保护(CA私钥)。

两种方式都要求使用单独的机制对初始客户端联系进行身份验证,这一点不会改变。

两种方式都需要将 CN 字段与客户端的身份进行匹配,以便可信客户端 Bob 无法冒充可信客户端 Alice。

证书会随着时间而过期。CA 签名的主要动机是避免将续订的证书重新分发给多个受托人,并且我假设您只有一个受托人(即所有客户端只有一个服务器)。也许令人惊讶的是,我的理由对于服务器证书同样适用:如果您只有一个客户端,那么通过 CA 签名服务器证书不会给您带来太多好处。

相关内容