Kryptografietools

Kryptografietools bieten Befehlszeilentools für die Codesignatur, Signaturüberprüfung und andere Kryptografieaufgaben.

Einführung in die Codesignatur

Die Softwareindustrie muss benutzern die Möglichkeit bieten, Code zu vertrauen, einschließlich Code, der im Internet veröffentlicht wird. Viele Webseiten enthalten nur statische Informationen, die mit geringem Risiko heruntergeladen werden können. Einige Seiten enthalten jedoch Steuerelemente und Anwendungen, die heruntergeladen und auf dem Computer eines Benutzers ausgeführt werden sollen. Das Herunterladen und Ausführen dieser ausführbaren Dateien kann riskant sein.

Verpackte Software verwendet Branding und vertrauenswürdige Verkaufsstellen, um den Benutzern ihre Integrität zu gewährleisten, aber diese Garantien sind nicht verfügbar, wenn Code im Internet übertragen wird. Darüber hinaus kann das Internet selbst keine Garantie für die Identität des Softwareerstellers geben. Es kann auch nicht garantieren, dass heruntergeladene Software nach ihrer Erstellung nicht geändert wurde. Browser können eine Warnmeldung anzeigen, die die möglichen Gefahren des Herunterladens von Daten jeglicher Art erläutert, aber Browser können nicht überprüfen, ob Code das ist, was er angeblich sein soll. Es muss ein aktiverer Ansatz verfolgt werden, um das Internet zu einem zuverlässigen Medium für die Verteilung von Software zu machen.

Ein Ansatz, um Garantien für die Authentizität und Integrität von Dateien zu bieten, ist das Anfügen digitaler Signaturen an diese Dateien. Eine an eine Datei angefügte digitale Signatur identifiziert den Verteiler dieser Datei positiv und stellt sicher, dass der Inhalt der Datei nach der Erstellung der Signatur nicht geändert wurde.

Digitale Signaturen können mithilfe der Kryptografie-APIs von Microsoft erstellt und überprüft werden. Hintergrundinformationen zur Kryptografie und den CryptoAPI-Funktionen finden Sie unter Cryptography Essentials.

Ausführliche Informationen zu digitalen Signaturen, Zertifikaten und Zertifikatspeichern finden Sie in den folgenden Themen:

Derzeit unterstützt CryptoAPI Tools die Microsoft Authenticode-Technologie, da Softwareanbieter die folgenden Dateitypen für die Authenticode-Überprüfung signieren können.

Dateinamenerweiterung Inhalte
.appx, .msix, .appxbundle, .msixbundle
Verpackte Windows-Apps.
CAB
Eigenständige Dateien, die für die Installation und Einrichtung der Anwendung verwendet werden. In einer Kabinettdatei werden mehrere Dateien in eine Datei komprimiert. Sie sind häufig auf Microsoft-Softwareverteilungsdatenträgern zu finden.
CAT
Dateien, die digitale Fingerabdrucke mehrerer Dateien enthalten. Eine CAT-Datei kann verwendet werden, um die Integrität der Dateien sicherzustellen, deren Fingerabdruck sie enthält.
.dll
Dateien, die ausführbare Funktionen enthalten.
.exe
Dateien, die ausführbare Programme enthalten.
.js
.vbs
.wsf
Windows-Shelldateien für JScript oder Microsoft Visual Basic Scripting Edition (VBScript).
.msi
MSP
MST
Windows Installer-Dateien.
OCX
Dateien, die Microsoft ActiveX-Steuerelemente enthalten.
PS1
Dateien, die PowerShell-Skripts enthalten.
STL
Dateien, die eine Zertifikatvertrauensliste (Certificate Trust List , CTL) enthalten.
.sys
Dateien, die Treiberbinärdateien enthalten.

 

Informationen zur digitalen Signatur finden Sie in den folgenden Dokumenten:

  • CCITT, Empfehlung X.509, The Directory-Authentication Framework, Konsultationsausschuss, International Telephone and Telegraph, International Telecommunications Union, Genf, 1989.
  • RSA Laboratories, PKCS #7: Kryptografienachrichtensyntax Standard. Version 1.5, November 1993.
  • Schneier, Bruce, Applied Cryptography, 2d ed. New York: John Wiley & Sons, 1996.
  • https://www.rsa.com

Hinweis

Diese Ressourcen sind in einigen Sprachen und Ländern oder Regionen möglicherweise nicht verfügbar.

 

Microsoft-Kryptografietools

Die Veröffentlichungstools und die Signatur-DLL werden im Verzeichnis \Bin Ihrer Microsoft SDK-Installation installiert. Sie enthalten die folgenden Dateien.

Dateiname Bemerkungen
Cert2SPC.exe Erstellt ein Software Publisher Certificate (SPC) nur zu Testzwecken.
CertMgr.exe Verwaltet Zertifikate, CTLs und Zertifikatsperrlisten .
MakeCat.exe Erstellt eine nicht signierte Katalogdatei, die die Hashes einer Gruppe von Dateien zusammen mit den zugeordneten Attributen jeder Datei enthält.
MakeCert.exe Erstellt ein X.509-Zertifikat nur zu Testzwecken.
Pvk2pfx.exe Konvertiert eine Zertifikatdatei des Softwareherausgebers (.spc) oder eine private Schlüsseldatei (PVK) in das PFX-Dateiformat (Personal Information Exchange).
SetReg.exe Legt Registrierungsschlüssel fest, die die Zertifikatüberprüfung steuern.
SignTool.exe Zeichen und Zeitstempel einer Datei. Überprüft außerdem die Signatur einer Datei.