我正在尝试使用我自己的 CA 创建一个自签名证书。所有证书和密钥当前都是 PEM 格式。为了让我的 Android 手机接受证书,我需要创建一个CA.crt
二进制 DER 格式的文件。
我确实使用 openssl 创建了这个文件
openssl x509 -in CA-cert.pem -inform PEM -outform DER > CA.crt
但是,CA.crt
在我的 Android 上安装后,一个网站的证书 ( www.example.com-cert.pem
)CA-cert.pem
在 Chrome for Android 中仍然显示为无效。证书(至少据我了解)是正确创建的,并且在转换回来时没有任何区别:
diff -u CA-cert.pem <(openssl x509 -in CA.crt -inform DER -outform PEM)
我在这里想念什么?我是否需要以www.example.com.crt
DER 格式创建另一个版本的网站证书(例如 )?
编辑:不知道这是否应该首先工作,但尝试验证证书CA.crt
失败并出现错误:
$ openssl verify -CAfile CA.crt www.example.com-cert.pem
Error loading file CA.crt
同样适用于 PEM 版本:
$ openssl verify -CAfile CA-cert.pem www.example.com-cert.pem
www.example.com-cert.pem: OK