So öffnen Sie .P7C-Dateien unter Android
Um .P7C-Dateien unter Android zu öffnen, android bietet im Allgemeinen keine benutzerorientierten Tools zur Überprüfung von PKCS#7-Zertifikatcontainern. Übertragen Sie die .p7c-Datei auf einen Desktop und verwenden Sie OpenSSL, um die Zertifikate anzuzeigen/zu extrahieren.
Schritt-für-Schritt-Anleitung
- Android bietet im Allgemeinen keine benutzerorientierten Tools zur Überprüfung von PKCS#7-Zertifikatcontainern. Übertragen Sie die .p7c-Datei auf einen Desktop und verwenden Sie OpenSSL, um die Zertifikate anzuzeigen/zu extrahieren.
Häufige Probleme
OpenSSL kann die Datei nicht analysieren (ASN.1- oder „falsches Tag“-Fehler)
.p7c-Container können als DER (binär) oder PEM (Base64-Text) codiert werden. Wenn OpenSSL die falsche Codierung vermutet, schlägt das Parsen fehl.
- Versuchen Sie, DER zu erzwingen: openssl pkcs7 -inform DER -in file.p7c -print_certs -text
- Wenn dies fehlschlägt, versuchen Sie, PEM zu erzwingen: openssl pkcs7 -inform PEM -in file.p7c -print_certs -text
Es wurde eine „Zertifikatsdatei“ erwartet, aber die App sagt, dass es sich nicht um ein einzelnes Zertifikat handelt
.p7c enthält oft mehrere X.509-Zertifikate (eine Kette) und ist möglicherweise eine Nur-Zertifikate-SignedData-Struktur und kein einzelnes Zertifikat.
- Alle eingebetteten Zertifikate auflisten: openssl pkcs7 -in file.p7c -print_certs -text
- Extrahieren Sie sie zur separaten Verarbeitung nach PEM: openssl pkcs7 -in file.p7c -print_certs > chain.pem
Die .p7c-Datei enthält nicht das, was Sie erwartet haben (kein privater Schlüssel).
Ein PKCS#7-Container nur für Zertifikate enthält normalerweise nur Zertifikate. Es ist nicht dazu gedacht, einen privaten Schlüssel zu enthalten.
- Bestätigen Sie den Inhalt mit: openssl pkcs7 -in file.p7c -print_certs -text
- Wenn Sie einen privaten Schlüssel für TLS oder zum Signieren benötigen, besorgen Sie ihn separat von dem System/Schlüsselspeicher, in dem er generiert wurde (normalerweise liegt er nicht in einer .p7c-Datei vor).
Sicherheitshinweis
.p7c-Dateien können neues Vertrauensmaterial (Zertifikate/CA-Ketten) einführen. Der Import von Zertifikaten, denen Sie nicht vollständig vertrauen, kann Man-in-the-Middle-Angriffe ermöglichen, indem Ihr System einer böswilligen Zertifizierungsstelle vertraut.