Was ist Code Signing?
In jüngster Zeit sind viele Technologieunternehmen vermehrt Ziel von Hackerangriffen geworden, die den Quellcode manipulieren und beschädigen wollen. Diese Angriffe schädigen den Ruf der Unternehmen erheblich und führen zu enormen Verlusten. Um diesem Problem zu begegnen, kann die Codesignatur eingesetzt werden. Sie schützt die Integrität des Codes und gewährleistet die Authentizität des Autors gegenüber dem Endnutzer durch digitale Signaturen. Codesignatur ermöglicht eine sichere und vertrauenswürdige Softwareverteilung und verhindert Manipulation, Beschädigung und Fälschung. Sie stärkt das Vertrauen der Endnutzer in die Integrität der Software bzw. des Codes und die Authentizität des Absenders.
Um mehr über die „ Top 5 Vorteile der Codesignierung “ zu erfahren, lesen Sie bitte den Blogartikel: www.encryptionconsulting.com/code-signing-top-5-benefits
Code Signing-Architektur:
Die Code Signing Architecture bietet eine detaillierte Erklärung zur Funktionsweise des Code Signing-Prozesses und seiner Komponenten. Im Folgenden werden die vier wichtigsten Unterscheidungskomponenten der Code Signing Architecture erläutert.
- Code-Signatursystem (CSS)
- Zertifizierungsstelle (CA)
- Zeitstempelbehörde (TSA)
- Verifizierer

Diese vier Komponenten zusammen ermöglichen den vollständigen Abschluss des Code-Signaturprozesses. Jede Komponente verfügt über einen definierten Arbeitsprozess, der im Folgenden ausführlich erläutert wird.
Code Signing System (CSS):
Das Code Signing System (CSS) ist die erste und wichtigste Komponente der Code Signing Architecture. Es signiert den übermittelten Code mit einer digitalen Signatur und authentifiziert den Autor. Die digitale Signatur wird von CSS mithilfe eines privaten Signaturschlüssels und Zertifikaten generiert. Es ist äußerst wichtig, den privaten Signaturschlüssel und das Zertifikat vor Missbrauch und unbefugtem Zugriff zu schützen.
Zertifizierungsstelle (CA):
Entwickler oder Quellcode-Herausgeber sollten Zertifikate von authentischen Zertifizierungsstellen (CA) verwenden, da diese die Authentifizierung der Quelle ermöglichen. Von authentischen Zertifizierungsstellen ausgestellte Zertifikate müssen Standard-Zertifikatsrichtlinien wie dem NIST Interagency Report 7924 entsprechen, der die Anforderungen an CAs bei der Ausstellung von Zertifikaten festlegt. Entwickler, die das Zertifikat von authentischen CAs anfordern, müssen außerdem unterstützende Validierungsdokumente vorlegen, die vor der Ausstellung des Zertifikats überprüft werden. Die CA befolgt dabei die Richtlinien von Standardagenturen wie dem CA-Sicherheitsrat, dem CA/Browser-Forum usw.
Zeitstempelbehörde (TSA)
Eine optionale, aber wichtige Komponente der Code Signing Architecture ist die Time Stamp Authority (TSA). Die Zeitstempelung bewahrt die Quellzeit der Signatur und ermöglicht die Akzeptanz von Software durch das Betriebssystem und andere Client-Geräteplattformen auch nach Ablauf des Zertifikats. Signierte Software wird anhand der Quellzeit der Signatur des Zertifikats und nicht anhand der aktuellen Uhrzeit validiert. Daher ist es immer ratsam, beim Code Signing die Zeitstempeltechnik zu verwenden. Digital signierter Code wird zur Zeitstempelung an die TSA gesendet. Die TSA versieht die Signatur mit dem gültigen Quellzeitstempel. Die TSA ist unabhängig vom Code Signing System und synchronisiert ihre Uhr mit einer maßgeblichen Zeitquelle.
Verifizierer
Der Endnutzer, der den vom Herausgeber digital signierten Code verwendet, initiiert zunächst die Signaturprüfung. In der Regel werden hierfür Verifizierer eingesetzt, die die Signaturen und gegebenenfalls den Zeitstempel validieren. Diese Verifizierer nutzen Vertrauensanker, um die Signatur des signierten Codes zu überprüfen. Vertrauensanker sind üblicherweise die öffentlichen Schlüssel von Stammzertifizierungsstellen (CAs), die sicher auf der Prüfplattform installiert sind. Stammzertifizierungsstellen verwenden in der Regel Standardarchitekturen wie den X.509-Standard. Wenn Ihre Organisation die Implementierung von Codesignaturen anstrebt , kontaktieren Sie uns bitte unter [email protected] für weitere Informationen.
