2013-07-09 24 views
5

Ich habe ein SSL-Zertifikat, das ich in einem .pem, .crt, .der Format gekauft habe. Ich habe mich gefragt, wie ich die Schlüsseldatei aus dem Zertifikat bekomme. Gibt es eine Möglichkeit, dies zu tun?Wie kann ich einen Schlüssel aus einem SSL-Zertifikat extrahieren?

+1

Sprechen Sie vom * privaten * Schlüssel? – Bruno

+0

Warum? Sie haben bereits den privaten und den öffentlichen Schlüssel. Dort hast du angefangen. Sie haben ein Schlüsselpaar erstellt, eine CSR erstellt, sie signiert, jetzt haben Sie das signierte Zertifikat. Wenn du das Schlüsselpaar verloren hast, mit dem du begonnen hast, wirst du sowieso abgespritzt, du musst neu anfangen. – EJP

Antwort

10

Sie können den öffentlichen Schlüssel extrahieren. Dies hat begrenzte Nützlichkeit. Vielleicht verwenden Sie den gleichen Schlüssel mit einem anderen Tool wie SSH oder PGP, das keine Zertifikate verwendet.

Mit OpenSSL:

openssl x509 -pubkey -noout <cert.pem> pubkey.pem 

Sie können nicht den privaten Schlüssel aus einem Zertifikat abzuleiten. Das würde das Ganze ziemlich sinnlos machen, oder?

+0

Ich erhalte eine Fehlermeldung, wenn Sie den Befehl ausführen: 'openssl rsa -pubout key.pem' ' nicht mehr Private Key 99.416 laden: Fehler: 0906D06C: PEM-Routinen: PEM_read_bio: keine Startlinie:/SourceCache /OpenSSL098/OpenSSL098-47.1/src/crypto/pem/pem_lib.c:648:Execting: ANY PRIVATE KEY ' – nkcmr

+1

@nkcmr Ich entschuldige mich. Ich dachte, ich würde den Befehl auf einem Zertifikat testen, aber es war eigentlich eine Datei, die ich für 's_server' erstellt habe. In diesem Format wird der private Schlüssel an das Zertifikat angehängt, und das Vorhandensein dieses privaten Schlüssels ermöglicht, dass das Dienstprogramm "rsa" funktioniert. Bitte benutze meine korrigierte Antwort. – erickson