1

独自の CA を使用して自己署名証明書を作成しようとしています。現在、すべての証明書とキーは PEM 形式です。Android フォンから証明書を受け入れるにはCA.crt、バイナリ DER 形式のファイルを作成する必要があります。

openssl を使用してこのファイルを作成しました

openssl x509 -in CA-cert.pem -inform PEM -outform DER > CA.crt

しかし、CA.crtAndroid にインストールした後、Web サイトの証明書 ( www.example.com-cert.pem) で署名された Web サイトの証明書CA-cert.pemが、Chrome for Android で無効として表示されます。証明書は(少なくとも私が理解している限り)正しく作成されており、元に戻すときに違いはありません。

diff -u CA-cert.pem <(openssl x509 -in CA.crt -inform DER -outform PEM)

ここで何が欠けていますか?Web サイトの証明書 (例: ) の別のバージョンをwww.example.com.crtDER 形式で作成する必要がありますか?

編集:これが最初に機能するかどうかはわかりませんが、証明書を検証しようとすると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
4

0 に答える 0