Code-Signing-Zertifikat

Code-Signing-Zertifikat

Ein Code-Signing-Zertifikat ist eine digitale Urkunde, mit der Softwareentwickler ihre Programme elektronisch unterschreiben. Betriebssysteme und App-Stores nutzen diese Unterschrift, um zu prüfen, ob eine Datei wirklich vom angegebenen Hersteller stammt und seit dem Signieren nicht verändert wurde.

Ein Code-Signing-Zertifikat ist eine digitale Urkunde, die ein Softwareentwickler oder ein Unternehmen bei einer vertrauenswürdigen Stelle beantragt. Mit ihr lässt sich ein Programm elektronisch „unterschreiben“. Das Betriebssystem — also zum Beispiel Windows oder macOS — prüft diese Unterschrift, bevor es die Software startet. Stimmt sie, weiß das System: Die Datei kommt tatsächlich von diesem Hersteller, und niemand hat sie seitdem heimlich verändert. Stimmt sie nicht, erscheint eine Warnung — oder die Software wird gar nicht erst gestartet.

Warum Code-Signing-Zertifikate für die Softwaresicherheit entscheidend sind

Ohne eine solche Unterschrift könnte jeder eine Datei unter falschem Namen in Umlauf bringen. Ein Angreifer lädt eine manipulierte Version eines bekannten Programms hoch und behauptet, sie stamme vom Original-Hersteller. Ohne Signierung hat das Betriebssystem kein Mittel, diese Lüge zu erkennen.

Zertifikate lösen dieses Problem, indem sie Vertrauen über eine Kette absichern. Am Ende dieser Kette steht eine sogenannte Zertifizierungsstelle — ein Unternehmen wie DigiCert oder Sectigo, das Identitäten prüft, bevor es ein Zertifikat ausstellt. Windows und macOS kennen diese Stellen und vertrauen ihnen grundsätzlich. Wer also ein gültiges Zertifikat hat, hat bewiesen, wer er ist.

Für Nutzer bedeutet das konkret: Sie müssen einem Entwickler nicht blind vertrauen. Das System übernimmt die Prüfung automatisch. Für Unternehmen, die Software verkaufen, ist ein gültiges Zertifikat heute keine Option mehr, sondern Pflicht — ohne es landet das Produkt in vielen App-Stores gar nicht erst.

Wie das Signieren und Prüfen technisch abläuft

Das Verfahren beruht auf asymmetrischer Verschlüsselung. Dabei existieren zwei zusammengehörige Schlüssel: ein privater, den nur der Entwickler kennt, und ein öffentlicher, den jeder einsehen kann. Der Entwickler errechnet aus der fertigen Programmdatei einen kurzen Fingerabdruck — einen sogenannten Hash — und verschlüsselt diesen mit seinem privaten Schlüssel. Das Ergebnis ist die digitale Signatur.

Wer die Software später installiert, macht den Vorgang rückwärts: Das Betriebssystem entschlüsselt die Signatur mit dem öffentlichen Schlüssel und errechnet den Fingerabdruck der Datei selbst noch einmal. Passen beide Werte zusammen, ist zweierlei bewiesen: Erstens hat der Inhaber des privaten Schlüssels die Datei signiert. Zweitens wurde die Datei seitdem kein einziges Bit verändert — denn jede Änderung würde den Fingerabdruck verfälschen.

Das Zertifikat selbst enthält den öffentlichen Schlüssel, den Namen des Inhabers und eine Ablaufzeit — meist ein bis drei Jahre. Es ist von der Zertifizierungsstelle seinerseits signiert, sodass eine durchgehende Vertrauenskette entsteht: vom Entwickler über die Zertifizierungsstelle bis zum Betriebssystem.

Wo Code-Signing-Zertifikaten im Alltag und in den News begegnen

Wer auf Windows eine heruntergeladene Datei ausführt und der Dialog „Windows hat den PC geschützt“ erscheint, sieht Code-Signing direkt in Aktion. Die Meldung bedeutet meistens: Das Programm ist unsigniert oder das Zertifikat ist unbekannt. Seriöse Hersteller wie Adobe, Mozilla oder Valve signieren ihre Installer selbstverständlich — deren Software startet ohne Warnung.

In den Nachrichten taucht das Thema häufig im Zusammenhang mit Cyberangriffen auf. Wenn Angreifer an ein gestohlenes Zertifikat gelangen, können sie Schadsoftware damit signieren — und diese wirkt für das Betriebssystem auf den ersten Blick vertrauenswürdig. Bekannte Beispiele sind der Angriff auf SolarWinds im Jahr 2020, bei dem Angreifer signierten Code in Updates einschleusten, und der 3CX-Angriff 2023, bei dem eine legitim signierte Desktop-App als Einfallstor diente.

Auch für App-Entwickler auf Mobilgeräten ist Code-Signing unverzichtbar. Apple und Google verlangen für alle Apps im App Store beziehungsweise im Play Store ein gültiges Entwicklerzertifikat. Eine App ohne Zertifikat kann auf einem iPhone gar nicht installiert werden — das System verweigert es auf Systemebene, nicht erst durch eine Warnung.

Aktuální zprávy

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.