使用OpenSSL生成证书链

时间:2015-10-13 14:41:15

标签: java openssl cryptography ssl-certificate

我尝试通过创建Root证书然后创建两个级别的中间证书来创建证书链。但我没有在认证路径中找到链条细节。

我使用以下命令生成了根证书: -

openssl ecparam -name prime256v1 -out D://Demo//Certificates//SSL//orgCA_RootKey.key -genkey
openssl req -new -x509  -key  D://Demo//Certificates//SSL//orgCA_RootKey.pem  -out  D://Demo//Certificates//SSL//orgCA_RootCertificate.pem -days 3650

中间证书如下: -

openssl ecparam -name prime256v1 -out D://Demo//Certificates//SSL//orgIA_1.key -genkey
openssl req -new  -key D://Demo//Certificates//SSL//orgIA_1.key -out D://Demo//Certificates//SSL//orgIA_1.csr
openssl x509 -req -days 730 -in D://Demo//Certificates//SSL//orgIA_1.csr -CA D://Demo//Certificates//SSL//orgCA_RootCertificate.crt -CAkey D://Demo//Certificates//SSL//orgCA_RootKey.key  -set_serial 01 -out D://Demo//Certificates//SSL//orgIA_1.crt

openssl ecparam -name prime256v1 -out D://Demo//Certificates//SSL//orgIA_a1.key -genkey
openssl req -new  -key D://Demo//Certificates//SSL//orgIA_a1.key -out D://Demo//Certificates//SSL//orgIA_a1.csr
openssl x509 -req -days 730 -in D://Demo//Certificates//SSL//orgIA_a1.csr -CA D://Demo//Certificates//SSL//orgIA_1.crt -CAkey D://Demo//Certificates//SSL//orgIA_1.key -set_serial 02 -out  D://Demo//Certificates//SSL//orgIA_a1.crt

但证书路径不正确。证书路径仅显示issed。链条没有设定。 我正在寻找生成具有以下链的客户证书:(链长3) 根 - > intermediate1 - > intermediate2 - >客户证书。

现在,我的客户端证书仅在链条详细信息中显示。 任何帮助都表示赞赏,因为我是openSSL的新手。

更新 尝试验证intermediate2证书的证书路径。但它无法说无法验证证书路径。是否有任何令人担忧的方式,我正在制定多层次的中间证书。

1 个答案:

答案 0 :(得分:0)

您的证书链不为openssl所知,因为它们是自签名的。 您需要在命令行中包含所有中间件/ Root bundle(-CApath)。