Ich wollte die in einem PKCS12-Keystore gespeicherten Zertifikate auflisten.
Der Keystore hat die Erweiterung .pfx
certificate
ssl-certificate
keystore
pkcs#12
David García González
quelle
quelle
.p12
) funktionieren ? Ich bekommejava.io.IOException: Invalid keystore format
Sie können auch verwenden
openssl
, um dasselbe zu erreichen:quelle
Sie können die Einträge (Zertifikatsdetails) mit dem Keytool auflisten, und selbst Sie müssen den Speichertyp nicht erwähnen.
quelle
Was in der Frage und allen Antworten fehlt, ist, dass Sie möglicherweise die Passphrase benötigen, um öffentliche Daten aus dem PKCS # 12 (.pfx) -Schlüsselspeicher zu lesen. Ob Sie eine Passphrase benötigen oder nicht, hängt davon ab, wie die PKCS # 12-Datei erstellt wurde. Sie können die ASN1-Struktur der Datei überprüfen (indem Sie sie über einen ASN1-Parser ausführen, OpenSL oder Certutil können dies auch), wenn die PKCS # 7-Daten (z. B. OID-Präfix 1.2.840.113549.1.7) als "verschlüsselt" oder "verschlüsselt" aufgeführt sind Mit einer Verschlüsselungsspezifikation oder wenn sich die Position der Daten im asn1-Baum unter einem verschlüsselten Knoten befindet, können Sie sie ohne Kenntnis der Passphrase nicht lesen. Dies bedeutet, dass Ihr Befehl 'openssl pkcs12' mit Fehlern fehlschlägt (Ausgabe hängt von der Version ab). Für diejenigen, die sich fragen, warum Sie möglicherweise an dem Zertifikat eines PKCS # 12 interessiert sind, ohne die Passphrase zu kennen. Stellen Sie sich vor, Sie haben viele Schlüsselspeicher und viele Phassphrasen und sind wirklich schlecht darin, sie organisiert zu halten. Sie möchten nicht alle Kombinationen testen. Das Zertifikat in der Datei kann Ihnen dabei helfen, herauszufinden, um welches Kennwort es sich handelt. Oder Sie entwickeln Software zum Migrieren / Erneuern eines Schlüsselspeichers und müssen im Voraus entscheiden, welches Verfahren basierend auf dem enthaltenen Zertifikat ohne Benutzerinteraktion initiiert werden soll. Die letzteren Beispiele funktionieren also abhängig von der PKCS # 12-Struktur ohne Passphrase. Oder Sie entwickeln Software zum Migrieren / Erneuern eines Schlüsselspeichers und müssen im Voraus entscheiden, welches Verfahren basierend auf dem enthaltenen Zertifikat ohne Benutzerinteraktion initiiert werden soll. Die letzteren Beispiele funktionieren also abhängig von der PKCS # 12-Struktur ohne Passphrase. Oder Sie entwickeln Software zum Migrieren / Erneuern eines Schlüsselspeichers und müssen im Voraus entscheiden, welches Verfahren basierend auf dem enthaltenen Zertifikat ohne Benutzerinteraktion initiiert werden soll. Die letzteren Beispiele funktionieren also abhängig von der PKCS # 12-Struktur ohne Passphrase.
Ich wollte das nur hinzufügen, weil ich selbst keine Antwort gefunden habe und viel Zeit damit verbracht habe, es herauszufinden.
quelle
quelle