Zum Inhalt springen
ecdsa.com

Selbstsigniertes Zertifikat

Ein Zertifikat, dessen Aussteller und Subject identisch sind und dessen Signatur mit dem eigenen privaten Schlüssel erstellt wurde; ihm wird daher nur dort vertraut, wo es als Vertrauensanker installiert ist.
Auch geschrieben alsself signed certificateself-signed certsnake-oil certificate

Jedes Root-CA-Zertifikat ist selbstsigniert; ob es sich um eine vertrauenswürdige Root-CA oder um einen Fehler „self-signed certificate“ handelt, hängt nur davon ab, ob der Verifizierer das Zertifikat in seinem Trust Store hat. Ein selbstsigniertes Serverzertifikat bietet Verschlüsselung gegen passives Mithören, aber keine Authentifizierung, solange Clients es weder pinnen noch installieren; deshalb zeigen Browser NET::ERR_CERT_AUTHORITY_INVALID an und Tools melden self-signed certificate.

Für die Entwicklung eignet sich eine lokale private CA (mkcert, step-ca oder ein paar OpenSSL-Befehle) besser als einzelne selbstsignierte Leaf-Zertifikate: Du installierst ein Root-Zertifikat und stellst für jeden Host ordentliche Zertifikate mit SANs aus. Deaktiviere nie die Prüfung im Code (verify=False, rejectUnauthorized: false, InsecureSkipVerify), nur damit ein solches Zertifikat funktioniert.

Ein nützlicher Befehl: openssl req -x509 -newkey ec -pkeyopt ec_paramgen_curve:P-256 -nodes -keyout key.pem -out cert.pem -days 30 -subj "/CN=localhost" -addext "subjectAltName=DNS:localhost,IP:127.0.0.1".

Standards und Quellen

Alle Begriffe