Digital-Trust-Lösungen für:
Unternehmens-IT, PKI und Identitätsmanagement
Code und Software Signierung
Dokumente und e-Signaturen
IoT und vernetzte Geräte
Entdecken Sie auf diesen Seiten, wie DigiCert Unternehmen dabei hilft, digitales Vertrauen aufzubauen, zu verwalten und zu erweitern, um reale Probleme zu lösen.
Lesen Sie, was unsere globale Post-Quantum-Studie darüber herausgefunden hat, wo die Welt im Wettlauf um die Vorbereitung auf das Quantencomputing steht.
Mit Digital-Trust-Lösungen erschließt Acmetek neue Chancen
Branchenstandards für Sicherheit und Vertrauen
Öffentliches Vertrauen und Zertifikate
Was bedeutet „Extended Validation“ (EV) bei TLS/SSL-Zertifikaten?
Welche Validierungsmethoden gibt es für TLS/SSL-Zertifikate?
Worin unterscheiden sich Client-Zertifikate und Serverzertifikate?
Sind TLS/SSL-Zertifikate von DigiCert mit meinem Browser kompatibel?
Was umfasst die 30-tägige Geld-zurück-Garantie von DigiCert?
Welche Art von TLS/SSL-Zertifikaten nutzen Bildungseinrichtungen?
Beim Code Signing wird eine binäre Softwaredatei mit einer digitalen Signatur versehen. Diese digitale Signatur bestätigt die Identität des Herstellers oder Herausgebers der Software und beweist, dass die Datei seit dem Zeitpunkt der Signatur nicht verändert oder manipuliert wurde. Code-Signaturen sind ein Indiz für die Vertrauenswürdigkeit eines Softwareprodukts. Darüber hinaus ist dieses Konzept eine wichtige Abwehrmaßnahme gegen Cyberangriffe auf IT-Umgebungen.
Mögliche Anwendungsbereiche für Code Signing sind Software für den internen oder externen Gebrauch, Patches und Fixes, Testversionen, Software für IoT-Geräte, Computerumgebungen und mobile Apps. Neben Code und Software können auch Anwendungen, Firmware, einzelne Dateien, Nachrichten, XML, Skripte, Container und Images mit Code-Signaturen versehen werden.
Analog zu anderen PKI-Technologien basiert Code Signing auf einem Public-Private-Schlüsselpaar, einer Zertifizierungsstelle und einem digitalen Zertifikat. Der Hersteller erstellt und signiert ein Datenpaket, das die Software, das Code-Signing-Zertifikat und eine digitale Signatur beinhaltet. Das Code-Signing-Zertifikat enthält die Kontaktdaten und den öffentlichen Schlüssel des Herstellers sowie die Signatur der Zertifizierungsstelle zur Bestätigung der Herstelleridentität. Die digitale Signatur ist der signierte Hashwert der Software, der aus dem privaten Schlüssel des Herstellers erzeugt wird. Bei der Auslieferung der Software prüft das System des Benutzers, ob das Zertifikat gültig und echt ist, d. h. ob der Code seit dem Zeitpunkt der Signatur verändert wurde. Dabei wird mit dem öffentlichen Schlüssel des Zertifikats der Hashwert in der digitalen Signatur abgerufen. Anschließend wird der Hashwert in der digitalen Signatur mit dem Hash der Software verglichen. Stimmen die beiden Werte überein, kann der Benutzer sicher sein, dass die Software nicht manipuliert wurde. Beim Code Signing ist die Verwaltung privater Schlüssel ein wichtiger Sicherheitsaspekt. Gelangt der Schlüssel in falsche Hände, kann er missbraucht werden, um Schadcode zu signieren und diesen als Updates in Entwicklungs- und Kundenumgebungen einzuschleusen.
Auf wichtigen Softwareplattformen wie Java und Microsoft sind Code-Signaturen obligatorisch, um die Verbreitung von Malware zu verhindern. Code Signing gehört nicht zuletzt deshalb zu den Best Practices der IT-Sicherheit, weil dadurch Downloads von manipuliertem Code oder von Software aus unbekannten Quellen verhindert werden können. Es ermöglicht die Unterscheidung zwischen Originalsoftware und Computerprogrammen zweifelhafter Herkunft, die möglicherweise täuschend echt verpackt sind. Außerdem werden bei der Installation kommerzieller Produkte oft Warnmeldungen angezeigt, wenn der Code nicht ordnungsgemäß signiert wurde. Bei eigenentwickelter Software für den firmeninternen Einsatz verbessert Code Signing die Transparenz und Kontrolle des Entwicklungsprozesses.
Jede binäre und nicht-binäre Datei kann mit einer Signatur versehen werden. Dazu gehören:
• Anwendungen, die auf Webseiten zum Download bereitgestellt werden
• Interne IT-Applikationen
• Mobile Apps
• XML-Dateien
• Skripte
• Software-Images
• Container
• Treiber und Dienstprogramme
• Firmware
Der Softwarehersteller muss zunächst ein Public-Private-Schlüsselpaar generieren. Danach wendet sich das Unternehmen an eine Zertifizierungsstelle (CA) und beantragt die Ausstellung eines Code-Signing-Zertifikats. Dazu benötigt die CA-Stelle eine Zertifikatsignierungsanforderung (CSR) und den öffentlichen Schlüssel des Antragstellers. Die CA-Stelle überprüft die Identität des Softwareherstellers und authentifiziert die Zertifikatsanforderung. Im Erfolgsfall wird das Code-Signing-Zertifikat ausgestellt. Es enthält die Kontaktdaten des Softwareherstellers, seinen öffentlichen Schlüssel und die Signatur der CA-Stelle. Diese ist insofern wichtig, weil die Zertifizierungsstelle damit als unabhängige und vertrauenswürdige Partei für die Identität des Zertifikatsinhabers bürgt. Das Code-Signing-Zertifikat bestätigt nicht nur die Identität des Herstellers, sondern auch die Integrität der Software. Der Hersteller erstellt und signiert ein Datenpaket, das die Software, das Code-Signing-Zertifikat und eine digitale Signatur enthält.
Darüber hinaus sind für die digitale Signatur folgende Schritte erforderlich:
Code Signing kann manuell erfolgen oder im Rahmen der Softwareentwicklung automatisiert werden, z. B. als Teil eines CI/CD-Prozesses (Continuous Integration/Continuous Delivery).
Der vertrauenswürdigste globale Anbieter von hochsicheren TLS/SSL-, PKI-, IoT- und Signaturlösungen.
©2024 DigiCert, Inc. Alle Rechte vorbehalten.
Rechtliches WebTrust-Audits Nutzungsbedingungen Datenschutz Barrierefreiheit Cookie-Einstellungen