Di Ubuntu, saya tidak berhasil mengkonversi sertifikat menggunakan openssl.
vagrant@dev:/vagrant/keys$ openssl pkcs7 -print_certs -in a.p7b -out a.cer
unable to load PKCS7 object <blah blah>:PEM
routines:PEM_read_bio:no start line:pem_lib.c:696:Expecting: PKCS7
Pernahkah Anda melihat kesalahan ini sebelumnya?
file a.p7b
memberi Anda?Jawaban:
Coba ini:
Jika tidak berhasil, bawa ke mesin Windows dan ekspor ikuti panduan ini .
sumber
-print_certs
dalam perintahnya. Ini berdampak pada format output: dengan itu Anda mendapatkan format PEM (dimulai dengan ----- BEGIN CERTIFICATE -----), dan tanpa itu Anda mendapatkan format PKCS # 7 (----- BEGIN PKCS7-- ---)-inform der
bagian. Perhatikan juga bahwa saat mengekspor kunci dari Windows Cert Manager, DER dan P7B adalah dua opsi berbeda.Jadi untuk menggabungkan jawaban di atas, perintahnya adalah:
openssl pkcs7 -in cert.p7b -inform DER -print_certs -out cert.pem
Diverifikasi untuk bekerja pada Windows, menggunakan OpenSSL-Win64
/ Terima kasih Bogdan telah menemukan kesalahan
sumber
Saya mengikuti panduan ini yang memerintahkan Anda untuk mengubah baris header / footer
untuk
Kemudian jalankan perintah
openssl pkcs7 -in foo.modified.crt -print_certs -out foo.certs
(di manafoo.modified.crt
file tempat Anda menyimpan versi modifikasi). Ini memberi saya hasil yang sama seperti menjalankan melalui ekspor sertifikat Windows seperti yang disarankan dalam jawaban lain.sumber
Sejauh yang saya tahu, berikut ini harus mengkonversi sertifikat pkcs7 ke pem
sumber
solusi cepat dalam kasus saya (banyak file dengan header / footer yang hilang):
base64 -d $FILE | openssl pkcs7 -inform DER -print_certs
sumber
Saya punya masalah ini juga. Saya akan memverifikasi file p7b yang saya salin dari host Win7.
Saya menemukan bahwa gnome keyring dapat mengimpor sertifikat. Dari sana mudah untuk diekspor ke DER
sumber