1
6
除了加密网络流量外,HTTPS通常用于对服务器进行身份验证。也就是说,为了向客户提供关于谁拥有服务器的可靠信息,等等。为了使服务器工作,客户需要检查服务器发布的证书中的信任链。为了使这种情况自动发生,客户机应该安装一个描述颁发服务器证书的证书颁发机构的证书。通常,此类证书在您的计算机上的一个名为“受信任根证书颁发机构”的存储中找到,大多数操作系统都附带一组已安装的通用CA。 此外,许多Web服务器提供了一个特性,客户机可以通过提供客户机证书向服务器进行身份验证。Web服务器能够检查来自客户端的证书,并将其映射到服务器上的一组权限上。这种“客户机身份验证”对于工作的HTTPS会话是不必要的,但是它只是一个选项。 简而言之,你实际上 需要 客户机上的任何证书,但您可能 希望 拥有根CA证书以验证服务器的身份。如果您没有该证书,您将无法信任服务器(除非您有其他充分的理由这样做),但您可以选择与它交换数据。 |
2
2
如果您希望了解更多关于HTTPS握手和协商内容的信息,我完全建议您查看Moserware上的这篇优秀文章。 http://www.moserware.com/2009/06/first-few-milliseconds-of-https.html |
3
1
只有当服务器需要客户端证书时,才需要客户端证书。客户机证书允许服务器对客户机进行身份验证,但只有当服务器具有所有授权客户机的列表时,这才有用。Web服务器通常不是这样,因此很少需要客户机证书。 当存在时,客户端证书不影响安全通道的建立。(只有服务器的证书是必需的,并且在混合中添加客户端证书不会改变过程。)一旦建立了安全通道,服务器将使用客户端证书对客户端进行身份验证(通常通过将客户端的公钥或名称与授权客户端列表进行比较)。 |
4
0
您不需要证书来建立HTTPS连接,但是如果您想知道与谁通信,则需要证书。 |
user826955 · 使用节点。js使用CA证书验证X509证书 6 年前 |
NineBerry · 使用pure生成并签署证书请求。net框架 7 年前 |
user1115980 · Sylog ng证书问题 7 年前 |
Michel · 未安装分发证书/私钥 7 年前 |
Thomas Schneiter · 信任来自IIS的自签名证书 7 年前 |
kdragon · VBA-https响应文本解密 7 年前 |
Gulumal · WCF中基于证书的身份验证 7 年前 |