【发布时间】:2015-03-11 20:02:09
【问题描述】:
我想知道通常如何在 SSL 连接建立中检查自签名证书。
让我们看看self-signed certificates:
客户端和服务器提供
self-signed certificate及其私钥(例如使用 OpenSSL 创建)当
server收到来自client的"ClientHello"消息时,他正在向客户端传输他的证书。-
ServerHelloDone消息发送给客户端,客户端需要验证证书。
客户端在收到服务器证书时,验证这个证书的步骤是什么?
我知道通常不应该使用自签名证书,事实上没有第三方实例(CA) 可供检查。
客户端是直接接受服务器证书而没有任何进一步的步骤,还是客户端在建立连接之前已经提供了服务器“根”证书?
【问题讨论】:
-
您的最后一个子问题在自签名证书的上下文中没有真正意义(不确定您将谈论什么“根”)。另外,
CertificateVerify消息仅用于客户端证书认证,与验证服务器证书无关。 -
这是一个如何验证自签名证书的想法。当我谈论服务器“根”证书时,我将其视为 CA 证书的根证书的替代品(在非自签名证书环境中)。很抱歉关于
CertificateVerify消息的错误;-) 并感谢您的建议。 -
这个问题似乎离题了,因为它与编程或开发无关。也许你应该问Super User 或Information Security Stack Exchange
-
感谢您的参考!!!信息安全堆栈交换似乎是一个完美的地方:)
标签: ssl openssl certificate x509