我正在使用OpenSSL(v1.1.1c)生成CA,服务器和客户端证书。它们全部成功生成。我在OpenSSL上使用了以下命令来生成CA(密钥和证书),服务器(密钥和证书),客户端(密钥和证书)。
openssl genrsa -des3 -out ca.key 4096
openssl req -new -x509 -days 365 -key ca.key -out ca.crt
openssl genrsa -des3 -out server.key 2048
openssl req -new -key server.key -out server.csr
copy server.key server.key.org
openssl rsa -in server.key.org -out server.key
openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt
openssl genrsa -des3 -out client.key 2048
openssl req -new -key client.key -out client.csr
copy client.key client.key.org
openssl rsa -in client.key.org -out client.key
openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt
但是,当尝试生成P12证书时,证书已成功生成。但是,当尝试在我的android设备上安装相同证书时,我没有看到证书包含CA证书,而是仅包含客户端密钥和证书。 以下是我在OpenSSL中运行的命令:
openssl pkcs12 -export -out <givename>.p12 -inkey client.key -in client.crt -certfile ca.crt
由于缺少CA证书,因此在移动设备和服务器之间未进行验证。 任何人都可以重新验证我使用的命令是否有效吗?