自签名CA和自签名证书的区别自签名CA和自签名证书的区别(Difference between se

2019-05-13 08:31发布

我不是一个CA密钥和证书的区别清楚。 是不是CA密钥简单的证书? 让我试着用一个例子阐明。

我有一个客户端和服务器。 我只是想验证我到我的服务器连接,而不是试图建立信任别人,所以我不关心一个真正的CA.签约

选项1:生成自签名CA(SSCA),并用它来签署证书(C)。 然后我安装SSCA到我的客户机和设置我的服务器使用产地证C的根密钥库。

选项2:生成自签名证书(SSC)。 安装SSC到我的客户端上的根密钥库。 设置我的服务器使用证书SSC。

第二个选择似乎是一个简单得多的过程。 如果仍然工作?

Answer 1:

这两个选项都是有效的,选择2更简单。

当你需要多个证书选项1(设置自己的CA)是优选的。 在一个公司,你可以设置自己的CA和所有客户端的根密钥库中安装CA的证书。 然后,这些客户会接受你的CA签名的证书

选项2(自签订无CA证书)更容易。 如果你只需要一个证书,那么这就足够了。 在客户端的密钥库安装它,你就完成了。 但是,当你需要第二个证书,则需要在所有客户端重新安装。

下面是进一步信息的链接: 创建证书颁发机构和自签署的SSL证书



Answer 2:

首先,关于(关于“CA密钥”)​​的密钥和证书之间的区别,也有谈论公钥证书(X.509典型)时使用3个:公钥,私钥和证书。 公钥和私钥组成一对。 您可以登录并用私钥解密,你可以验证(签名),并用公钥加密。 公钥旨在分发,而私钥是为了保密。

一个公开密钥证书是一个公钥和各种信息之间的组合(主要是关于密钥对的主人的身份,谁就控制了私有密钥),这个组合被使用的发行人的私钥签名证书。 X.509证书有一个主题DN和发行人专有名称。 发行人名称是颁发证书的实体的证书的主题名称。 自签名证书,其发放者和对象为同一的一个特例。 通过签署证书的内容(即,发出证书),发行人声称其内容,特别是键,身份(主体)和各种属性(其可以指示使用的意图和范围的对之间的结合证书)。

在此之上,该PKIX规范定义了一个延伸部分(一个给定的证书的一部分),其指示一个证书是否可被用作CA证书,即,是否是可以用作另一个证书的发行者。

从此,你建立的终端实体证书(这是您要验证的商家,用户或服务器)和你信任的CA证书之间的链。 有可能是你的服务的终端实体证书和信任的CA证书的中间CA证书(由其他CA证书颁发)。 你不严格需要在顶部(自签名CA证书)根CA,但通常的情况下(您可以选择信任直接,如果你想中间CA证书)。

对于你的使用情况,如果您为特定业务的自签名证书,它是否有CA标志(基本约束扩展)其实并不重要。 你会需要它是一个CA证书能够发出其他证书(如果你想建立自己的PKI)。 如果您为该服务生成的证书是CA证书,它不应该做任何伤害。 更重要的是重要的是你可以配置你的客户信任证书此特定服务器的方式(浏览器应该让你做出一个明确的异常很容易为例)。 如果配置机制遵循PKI模型(不使用特定的例外),因为不会有必要建立一个链(只有一个证书),你应该能够直接导入证书的信任锚的一部分你的客户,不管它是一个CA证书或没有(但这可能取决于客户端的配置机制)。



Answer 3:

您可以openssl x509 -noout -text -in $YOUR_CERT看到文件的内容之间的差异:

在自签名CA,你可以看到:

    X509v3 extensions:                                                          
        X509v3 Basic Constraints:
            CA:TRUE, pathlen:0

而在你的自签名证书,它是:

    X509v3 extensions:                                                          
        X509v3 Basic Constraints:
            CA:FALSE


Answer 4:

你必须始终有一个根CA,CA有一个可用于签署较低级别的证书,并可以嵌入在客户端上接受根证书和用于验证较低的证书,以检查它们根证书的密钥是有效的。 自签名只是意味着你是你自己的CA. 每当创建创建CA自签名证书,然后签署与CA的网站证书



文章来源: Difference between self-signed CA and self-signed certificate