私は2つのファイルを持っています-CSR.csrとnewkey.key、どちらも次のようにPEM形式であるようです-
-----BEGIN CERTIFICATE REQUEST-----
MIID....
-----END CERTIFICATE REQUEST-----
-----BEGIN RSA PRIVATE KEY-----
MI...
-----END RSA PRIVATE KEY-----
CSR.csrファイルを読み込もうとすると、次のエラーが発生します。
$ openssl x509 -in CSR.csr -text -noout
unable to load certificate
140518720210760:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:698:Expecting: TRUSTED CERTIFICATE
入力ファイルがDER形式のときにこのエラーが発生することを読んだので、次のことを試しました-
$ openssl x509 -inform DER -in CSR.csr -text -noout
しかし今私はエラーを受け取ります-
unable to load certificate
140519053051720:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1320:
140519053051720:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:382:Type=X509
また、このエラーは、入力ファイルがすでにPEM形式であり、DER形式で読み取ろうとしたときに発生するようです。
私はSSLを初めて使用するので、どうすればよいか本当に混乱しました。助けてください!
問題はPEMとDERではなく、証明書が必要な場所で証明書要求を使用していることです。これは、PEMヘッダー-----BEGIN CERTIFICATE REQUEST-----
によって明確に示されます。
証明書リクエストの内容を表示するには
openssl req -in CSR.csr -text
証明書の内容を表示するには
openssl x509 -in CERT.crt -text
私の場合、cerファイルを読み取ろうとして、上記のエラーを受け取りました。
openssl x509 -in CSR.csr -text -nooutが証明書を読み込めません140518720210760:error:0906D06C:PEMルーチン:PEM_read_bio:no start line:pem_lib.c:698:Expecting:TRUSTED CERTIFICATE
Opensslを使用してcrtファイルに変換する必要がありました。
openssl x509 -inform DER -in <certname>.cer -out <certname>.crt
openssl x509 -in <certname>.crt -text
こちら 私が使用したドキュメント。その後opensslを使って読むことができました