Openssl 如何创建次个人数字证书?

Openssl 如何创建次个人数字证书?,openssl,cryptography,certificate,ssl-certificate,pki,Openssl,Cryptography,Certificate,Ssl Certificate,Pki,我有个人的,CA颁发的数字证书 如何生成将使用此受信任证书签名的子证书 因此,链看起来是这样的:VeriSign您不能生成子证书,因为证书只能由证书颁发机构创建。X509v3 PKIX配置文件定义基本约束证书扩展,该扩展指定证书所有者类型:CA或最终实体。证书扩展缺失或Subject Type=End entity表示您不是CA,不允许签署其他证书 p、 从技术上讲,您可以签署其他证书,但是这些证书永远不会通过链验证逻辑,并且将被永久拒绝 但是,您可以从商业CA购买合格的CA证书,此过程称为证书

我有个人的,CA颁发的数字证书

如何生成将使用此受信任证书签名的子证书


因此,链看起来是这样的:
VeriSign您不能生成子证书,因为证书只能由证书颁发机构创建。X509v3 PKIX配置文件定义基本约束证书扩展,该扩展指定证书所有者类型:CA或最终实体。证书扩展缺失或
Subject Type=End entity
表示您不是CA,不允许签署其他证书

p、 从技术上讲,您可以签署其他证书,但是这些证书永远不会通过链验证逻辑,并且将被永久拒绝


但是,您可以从商业CA购买合格的CA证书,此过程称为证书颁发机构根签名:

要使用您的证书签名证书,您的证书必须具有x509基本约束扩展

这是因为证书基本上是一种身份证明形式,要颁发ID,您需要获得认证,以便所有人都知道,在未检查人员/服务器身份的情况下,您不会向随机人员/服务器颁发证书。这将允许您随时对HTTPS流量执行MITM攻击(只需为域颁发证书即可)

是的,一旦人们看到你这样做,你可能会被撤销,但PKI中的撤销并不完美,主要原因有两个。首先,任何人都可能需要很长时间才能意识到,您正在发布随机证书,因为看起来没有什么问题(忽略证书固定,因为并非所有浏览器都这样做)。第二,即使在证书被撤销后,大多数浏览器在撤销信息上也会失败(这意味着,如果他们无法访问CRLs/OCSP,他们会认为证书没有问题),因此你可以直接拒绝某人


您必须使用自己的CA颁发证书,如果您希望在您的私有域之外信任证书,则必须遵守有关您颁发的证书的严格规则,并定期接受审核,以确保您遵守这些规则。如果您只想让他们在私有域中受信任,那么您甚至不需要与另一个CA交谈,您只需将您的CA安装到该域的信任存储中(或安装到域中的各个计算机上,具体取决于您的设置)。

谢谢!从技术上讲,我不明白为什么这会成为一个问题,从总体上看。我想,不这样做既有经济诱因,也有可能“削弱”对次级证书的信任。我之所以希望这样做,是因为目前的商业智能卡提供商几乎不可能对证书进行任何真正的签名/加密。杰马尔托就是其中之一。(如何将其与Github一起使用?)