3

我想这是不可能的,但如果是这样,我想知道为什么。

假设我从周围的官方证书颁发机构之一获得了 example.com 的 SSL 证书。假设我正在运行 a.example.com 和 bcdexample.com 并希望为它们提供 SSL 证书。

我可以使用 example.com 证书自己为 a.example.com 和 bcdexample.com 颁发证书吗?它们会被用户的浏览器识别吗?如果不是,为什么不呢?

(我猜测它无法完成是因为它会破坏非常有利可图的通配符证书商业模式,不是吗?)

澄清:我不能使用我获得官方证书的密钥对充当“自签名”证书颁发机构,并简单地将我的官方证书添加到验证链中吗?

4

2 回答 2

3

您不能使用您的证书颁发其他证书,因为证书的用途已编码在您的证书中,并且“证书颁发机构”当然不包含在该列表中。

Web 浏览器检查从您的证书开始的“证书链”、用于签署它的证书、该证书的签署者等。

您的证书必须与当前用例(主要是“识别网站”)匹配,并且所有签名证书都必须包含“证书颁发机构”标志。浏览器必须知道最后一个证书(根证书)。

正如您已经猜到的那样,通配符证书可能对您的情况有所帮助。

于 2012-05-28T16:10:53.943 回答
1

你是对的,你不能从certificate. 您需要证书颁发机构来颁发证书。

证书颁发机构的全部意义在于它们是受信任的第 3 方。大多数浏览器默认信任像 Verisign 这样的 CA,因此您不必手动接受来自它们的证书。他们拥有所谓的可信根证书

如果您创建自己的证书颁发机构并开始分发证书,那么 Web 浏览器将不认识您并且不会信任您。将提示用户。

于 2012-05-28T16:09:22.210 回答