Unter Ubuntu kann ich mit openssl kein Zertifikat erfolgreich konvertieren.
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
Haben Sie diesen Fehler schon einmal gesehen?
file a.p7b
gibst du?Antworten:
Versuche dies:
Wenn es nicht funktioniert, bringe es zu einem Windows-Rechner und exportiere nach dieser Anleitung.
quelle
-print_certs
in seinem Befehl hatte. Dies wirkt sich auf das Ausgabeformat aus: Damit erhalten Sie ein PEM-Format (beginnend mit ----- BEGIN CERTIFICATE -----) und ohne dieses Format erhalten Sie ein PKCS # 7-Format (----- BEGIN PKCS7-- ---)-inform der
Teil fallen lasse. Beachten Sie auch, dass DER und P7B beim Exportieren eines Schlüssels aus Windows Cert Manager zwei unterschiedliche Optionen sind.Um die obigen Antworten zu kombinieren, lautet der Befehl:
openssl pkcs7 -in cert.p7b -inform DER -print_certs -out cert.pem
Es wurde bestätigt, dass es unter Windows mit OpenSSL-Win64 funktioniert
/ Danke Bogdan, dass du den Fehler entdeckt hast
quelle
Ich habe diesen Leitfaden befolgt , der Sie anweist, die Kopf- / Fußzeilen von zu ändern
zu
Führen Sie dann den Befehl aus
openssl pkcs7 -in foo.modified.crt -print_certs -out foo.certs
(wofoo.modified.crt
befindet sich die Datei, in der Sie die geänderte Version gespeichert haben). Dies ergab die gleichen Ergebnisse wie das Ausführen eines Windows-Zertifikatexports, wie in anderen Antworten vorgeschlagen.quelle
Soweit ich weiß, sollte das Folgende ein pkcs7-Zertifikat in ein pem konvertieren
quelle
schnelle Lösung in meinem Fall (viele Dateien mit fehlender Kopf- / Fußzeile):
base64 -d $FILE | openssl pkcs7 -inform DER -print_certs
quelle
Ich hatte auch dieses Problem. Ich wollte eine p7b-Datei überprüfen, die ich von einem Win7-Host kopiert habe.
Ich fand heraus, dass der Gnome-Schlüsselring das Zertifikat importieren kann. Von dort ist es einfach, nach DER zu exportieren
quelle