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:
- Hashes und digitale Signaturen
- Digitale Zertifikate
- Verwalten von Zertifikaten mit Zertifikatspeichern
- Zertifikatvertrauensprüfung
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. |