如何手动解决我的证书链订单?

比方说,我从一个证书开始。

使用openssl我可以像这样打印出来:

openssl x509 -in cert.pem -text -noout 

我会得到一些输出,如ValidityIssuerSubject以及Authority Key IdentifierSubject Key Identifier

如何使用这些字段来计算链中的下一个证书?

然后,一旦我获得下一个证书,计算出下一个证书应该是什么等等。

基本上我想要制定完整的链条,并按照EC2负载平衡器的正确顺序进行操作。 由于networking解决scheme似乎不只是给你一个捆绑工程。 他们给你个人的证书,我已经尝试了很多不同的EC2订单,但仍然没有得到它的工作。 我最后一个打赌是尝试openssl,并手动工作,而不是猜测。

子密钥的openssl输出中的X509v3 Authority Key Identifier将与签名密钥的X509v3 Subject Key Identifier匹配。

例如,对于本网站的SSL证书及其父证书:

 # openssl x509 -text -noout -in subject.pem ... Subject: C=US, ST=NY, L=New York, O=Stack Exchange, Inc., CN=*.stackexchange.com ... X509v3 Authority Key Identifier: keyid:51:68:FF:90:AF:02:07:75:3C:CC:D9:65:64:62:A2:12:B8:59:72:3B X509v3 Subject Key Identifier: 5A:C1:42:63:C2:62:13:B3:9D:94:84:AA:32:1E:17:CB:6D:A3:86:7B # openssl x509 -text -noout -in parent.pem ... Subject: C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert SHA2 High Assurance Server CA ... X509v3 Subject Key Identifier: 51:68:FF:90:AF:02:07:75:3C:CC:D9:65:64:62:A2:12:B8:59:72:3B X509v3 Authority Key Identifier: keyid:B1:3E:C3:69:03:F8:BF:47:01:D4:98:26:1A:08:02:EF:63:64:2B:C3 

51:68:FF:90:AF:02:07:75:3C:CC:D9:65:64:62:A2:12:B8:59:72:3B是什么证书,你应该能够使用它来find正确的权威证书。

请注意,中间证书并非特定于您的域或证书,这一点很重要。 所以,每一份和你一样的证书都有相同的中间证书。

你可以认为他们有点像你的支票上的路由号码。 路由号码是必要的,但是对于你的银行来说真的比谈到你更多。 在这种情况下,您的帐号或您的证书是您独有的。

由于中级证书的通用性,有这样的网站:

https://www.ssl2buy.com/wiki/ssl-intermediate-and-root-ca-bundle

对于不同的证书颁发者,所有的中间证书都已经预先捆绑(以正确的顺序)。