So wandeln Sie PEM in DER um
- Fügen Sie den PEM-Block in die Eingabe ein oder legen Sie eine
.pem-,.crt-,.key- oder.csr-Datei ab. - Wählen Sie die Ausgabe unter Umwandeln in:
- DER – Base64 in einer Zeile: der PEM-Inhalt ohne Kopfzeilen und Zeilenumbrüche, fertig für ein JSON-Feld oder eine Umgebungsvariable.
- DER – Hex: dieselben Bytes als Hex, für Byte-Arrays und Protokoll-Mitschnitte.
- PEM (64 Spalten) und Öffentlicher Schlüssel (PEM) gibt es für die Gegenrichtung und zum Extrahieren eines öffentlichen Schlüssels.
- Klicken Sie .der herunterladen, um die Binärdatei zu speichern, oder Ausgabe kopieren für die Textform.
Der Konverter erkennt Zertifikate, CSRs, CRLs, öffentliche und private Schlüssel (PKCS#1, PKCS#8, SEC1 EC), Sie müssen also keinen Eingabetyp wählen.
Was die Umwandlung macht
PEM ist eine Texthülle um DER. Nehmen Sie dieses Zertifikat (gekürzt):
-----BEGIN CERTIFICATE-----
MIIBtzCCAV2gAwIBAgIUfX6gOa1S96OttEsj3WbuIdu0cE0wCgYIKoZIzj0EAwIw
...
-----END CERTIFICATE-----
Entfernen Sie die beiden Markierungszeilen, fügen Sie die übrigen Zeilen zusammen und dekodieren Sie das Base64, und Sie haben die DER-Datei: hier 443 Bytes, beginnend mit 30 82 01 b7, dem Header einer ASN.1-SEQUENCE. Das Label in den Markierungszeilen ist die einzige Information, die verloren geht. DER-Dateien tragen kein Label, deshalb müssen Tools, die DER lesen, entweder gesagt bekommen, was die Datei ist, oder es aus ihrer Struktur erraten.
| Form | Größe dieses Zertifikats | Wo sie verwendet wird |
|---|---|---|
| PEM | 656 Bytes | nginx, Apache, HAProxy, die meisten Linux-Tools |
| Einzeiliges Base64-DER | 592 Zeichen | JSON-APIs, x5c-Arrays in JWKs, Umgebungsvariablen |
| DER (binär) | 443 Bytes | Java- und Windows-Tools, Firmware, application/pkix-cert-Downloads |
Wo Sie DER brauchen
- Embedded-Geräte und Firmware: Zertifikate, die als Byte-Array in C einkompiliert werden, sind fast immer DER. Nutzen Sie die Hex-Ausgabe und fügen Sie sie in ein Array ein.
- Apple-Plattformen:
SecCertificateCreateWithDatanimmt DER-Daten an, keinen PEM-Text. - Der Parameter
x5ceines JWK und das Element<ds:X509Certificate>in SAML-Metadaten enthalten Base64-DER ohne PEM-Kopfzeilen. - CA-Issuers-URLs in Zertifikaten liefern meist eine DER-Datei
.cer. - Windows:
.cer-Dateien können in beiden Formen vorliegen, aber manche älteren Importdialoge und Appliances akzeptieren nur DER.
PEM in DER mit OpenSSL, Python und certutil
openssl x509 -in cert.pem -outform der -out cert.der
openssl req -in app.csr -outform der -out app.der
openssl pkey -in key.pem -outform der -out key.der
grep -v -- '-----' cert.pem | tr -d '\n'
Die letzte Zeile gibt das einzeilige Base64-DER einer Datei mit einem einzigen Zertifikat aus. In Python liefert ssl.PEM_cert_to_DER_cert(open("cert.pem").read()) die DER-Bytes eines Zertifikats. Unter Windows entfernt certutil -decode cert.pem cert.der die Markierungen und dekodiert. Mehr unter Base64 mit OpenSSL und Base64 in Python.
Häufige Probleme
- Mehrere Blöcke in einer Datei: Die Textausgaben wandeln jeden Block um, aber .der herunterladen speichert nur das erste Objekt, weil eine DER-Datei genau eines enthält. Teilen Sie die Kette vorher auf, oder laden Sie jedes Zertifikat über seine Karte im Zertifikat-Decoder herunter.
-----BEGIN ENCRYPTED PRIVATE KEY-----: wird problemlos umgewandelt, aber das DER bleibt verschlüsselt. Zum Entschlüsseln braucht man das Passwort, und das geschieht hier nicht.- Header
Proc-Type: 4,ENCRYPTED: Die alte OpenSSL-Verschlüsselung hat keine DER-Form. Führen Sie zuerst mit dem Passwortopenssl pkey -in key.pem -out plain.pemaus. -----BEGIN OPENSSH PRIVATE KEY-----: ist überhaupt kein ASN.1, es gibt also kein DER zu erzeugen. Für den öffentlichen Schlüssel nutzen Sie das SSH-Schlüssel-Tool.
Häufige Fragen
Ist PEM einfach Base64 von DER?
Ja. Eine PEM-Datei enthält die DER-Bytes in Base64, umbrochen nach 64 Zeichen, zwischen einer Zeile -----BEGIN label----- und einer Zeile -----END label-----. Entfernt man diese Zeilen und dekodiert das Base64, erhält man exakt die DER-Datei.
Wie wandle ich einen privaten PEM-Schlüssel in DER um?
Fügen Sie ihn hier ein und wählen Sie DER – Base64 in einer Zeile oder .der herunterladen, oder führen Sie openssl pkey -in key.pem -outform der -out key.der aus. Der Schlüssel verlässt die Seite nie, und seine geheimen Werte werden nicht angezeigt.
Warum ist meine DER-Datei kleiner als die PEM-Datei?
Base64 macht aus je 3 Bytes 4 Zeichen, und PEM fügt Zeilenumbrüche und zwei Kopfzeilen hinzu. Ein DER-Zertifikat mit 443 Bytes wird zu einer PEM-Datei mit 656 Bytes, rund 48 % größer.