Nachweiszeichen Windows 10+ Treiber

In diesem Artikel wird beschrieben, wie Sie einen Treiber mithilfe der Nachweissignatur signieren. Ausführliche Informationen und Anforderungen für die Nachweissignatur finden Sie unter Windows 10 nachweissignierten Treibern.

Wichtig

Ab dem 1. März 2023 werden nachweissignierte Treiber, die auf Einzelhandelsgruppen abzielen, nicht mehr auf Windows Update veröffentlicht. Nachweissignierte Treiber für Testszenarien werden weiterhin unterstützt, wenn Sie die Optionen CoDev oder TestRegistrierungsschlüssel/Surface SSRK auswählen.

Voraussetzungen

Erstellen der CAB-Datei

In diesem Abschnitt erfahren Sie, wie Sie eine CAB-Dateiübermittlung erstellen. Wir verwenden das Echotreiberbeispiel , um den Prozess zu veranschaulichen.

Eine typische CAB-Dateiübermittlung muss Folgendes enthalten:

  • Der Treiber selbst, z. B. Echo.sys

  • Die Treiber-INF-Datei, die vom Dashboard verwendet wird, um den Signierungsprozess zu vereinfachen.

  • Die Symboldatei, die für Debuginformationen verwendet wird. Beispiel: Echo.pdb. Die PDB-Datei ist für die automatisierten Absturzanalysetools von Microsoft erforderlich.

  • CAT-Katalogdateien sind erforderlich und werden nur für die Unternehmensüberprüfung verwendet. Microsoft generiert Katalogdateien neu und ersetzt alle übermittelten Katalogdateien.

Hinweis

Jeder Treiberordner in Ihrer CAB-Datei muss den gleichen Satz von Architekturen unterstützen. Beispielsweise müssen sie x86, x64 unterstützen, oder alle müssen sowohl x86 als auch x64 unterstützen.

Verwenden Sie keine UNC-Dateifreigabepfade, wenn Sie auf Ihre Treiberspeicherorte verweisen (\\\server\share). Sie müssen einen zugeordneten Laufwerkbuchstaben verwenden, damit die CAB gültig ist.

So erstellen Sie die CAB-Datei:

  1. Sammeln Sie die Binärdateien, die bei einem einzelnen Verzeichnis angemeldet werden sollen. In diesem Beispiel verwenden C:\\Echowir .

  2. Öffnen Sie ein Eingabeaufforderungsfenster als Administrator.

  3. Geben Sie ein MakeCab /? , um die MakeCab-Optionen anzuzeigen:

    C:\Echo> MakeCab /?
    Cabinet Maker - Lossless Data Compression Tool
    
    MAKECAB [/V[n]] [/D var=value ...] [/L dir] source [destination]
    MAKECAB [/V[n]] [/D var=value ...] /F directive_file [...]
    
    source         File to compress.
    destination    File name to give compressed file.  If omitted, the
                   last character of the source file name is replaced
                   with an underscore (_) and used as the destination.
    /F directives  A file with MakeCAB directives (may be repeated). Refer to
                   Microsoft Cabinet SDK for information on directive_file.
    /D var=value   Defines variable with specified value.
    /L dir         Location to place destination (default is current directory).
    /V[n]          Verbosity level (1..3).
    
  4. Bereiten Sie eine DDF-Eingabedatei für eine CAB-Datei vor. Für unseren Echo-Treiber sieht dies in etwa wie folgt aus.

    ;*** Echo.ddf example
    ;
    .OPTION EXPLICIT     ; Generate errors
    .Set CabinetFileCountThreshold=0
    .Set FolderFileCountThreshold=0
    .Set FolderSizeThreshold=0
    .Set MaxCabinetSize=0
    .Set MaxDiskFileCount=0
    .Set MaxDiskSize=0
    .Set CompressionType=MSZIP
    .Set Cabinet=on
    .Set Compress=on
    ;Specify file name for new cab file
    .Set CabinetNameTemplate=Echo.cab
    ; Specify the subdirectory for the files.  
    ; Your cab file should not have files at the root level,
    ; and each driver package must be in a separate subfolder.
    .Set DestinationDir=Echo
    ;Specify files to be included in cab file
    C:\Echo\Echo.Inf
    C:\Echo\Echo.Sys
    
  5. Geben Sie Folgendes ein, um die CAB-Datei zu erstellen.

    C:\Echo> MakeCab /f "C:\Echo\Echo.ddf
    

    Die Ausgabe von MakeCab sollte die Anzahl der Dateien in der erstellten CAB-Datei anzeigen. In diesem Fall sollten zwei Dateien vorhanden sein.

    C:\Echo> MakeCab /f Echo.ddf
    Cabinet Maker - Lossless Data Compression Tool
    
    17,682 bytes in 2 files
    Total files:              2
    Bytes before:        17,682
    Bytes after:          7,374
    After/Before:            41.70% compression
    Time:                     0.20 seconds ( 0 hr  0 min  0.20 sec)
    Throughput:              86.77 Kb/second
    
  6. Suchen Sie die CAB-Datei im Disk1 Unterverzeichnis. Sie können die CAB-Datei in Explorer auswählen, um zu überprüfen, ob sie die erwarteten Dateien enthält.

Signieren der CAB-Datei mit Ihrem EV-Zertifikat

  1. Verwenden Sie den vom EV-Zertifikatanbieter empfohlenen Prozess, um die CAB-Datei mit Ihrem EV-Zertifikat zu signieren. Geben Sie beispielsweise den folgenden Befehl ein, um Ihre CAB-Datei mit einem SHA256 Certificate/Digest Algorithm/Timestamp zu signieren:

    C:\Echo> SignTool sign /ac "C:\MyEVCert.cer" /s MY /n "Company Name" /fd sha256 /tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /td sha256 /v "C:\Echo\Disk1\Echo.cab"
    

    Wichtig

    Denken Sie daran, bewährte Methoden der Branche zu verwenden, um die Sicherheit des E-Codesignierungsprozesses zu verwalten.

Übermitteln der E-signierten Cab-Datei mithilfe des Partner Center

  1. Wechseln Sie zu Partner Center-Hardware Dashboard, und melden Sie sich mit Ihren Anmeldeinformationen an.

  2. Wählen Sie Neue Hardware übermitteln aus.

    Screenshot der Liste der übermittelten Hardware.

  3. Geben Sie im Abschnitt Pakete und Signatureigenschaften einen Produktnamen für Ihre Treiberübermittlung ein. Dieser Name kann verwendet werden, um Ihre Treiberübermittlungen zu suchen und zu organisieren.

    Hinweis

    Wenn Sie Ihren Treiber mit einem anderen Unternehmen teilen, wird dieser Name angezeigt.

  4. Lassen Sie beide Testsignaturoptionen deaktiviert.

  5. Wählen Sie für Angeforderte Signaturen aus, welche Signaturen Sie in Ihr Treiberpaket aufnehmen möchten.

    Screenshot, der die Optionen zum Übermitteln des Echotreibers für die Signatur zeigt.

  6. Navigieren Sie nach unten durch die Seite, und wählen Sie Senden aus.

  7. Wenn der Signierungsprozess abgeschlossen ist, laden Sie Ihren signierten Treiber von der Hardware Dashboard herunter.

Überprüfen, ob der Treiber ordnungsgemäß signiert wurde

Führen Sie die folgenden Schritte aus, um sicherzustellen, dass der Treiber ordnungsgemäß signiert wurde.

  1. Nachdem Sie die Übermittlungsdatei heruntergeladen haben, extrahieren Sie die Treiberdatei.

  2. Öffnen Sie ein Eingabeaufforderungsfenster als Administrator.

  3. Geben Sie den folgenden Befehl ein, um zu überprüfen, ob der Treiber wie erwartet signiert wurde.

    C:\Echo> SignTool verify Echo.Sys
    
  4. Geben Sie den folgenden Befehl ein, um zusätzliche Informationen auflisten und signtool alle Signaturen in einer Datei mit mehreren Signaturen überprüfen zu lassen:

     C:\Echo> SignTool verify /pa /ph /v /d Echo.Sys
    
  5. Führen Sie die folgenden Schritte aus, um die EKUs des Treibers zu bestätigen.

    1. Öffnen Sie Windows Explorer, und suchen Sie die Binärdatei. Halten Sie die Datei gedrückt (oder klicken Sie mit der rechten Maustaste darauf), und wählen Sie Eigenschaften aus.

    2. Wählen Sie auf der Registerkarte Digitale Signaturen das aufgelistete Element in der Liste Signatur aus.

    3. Wählen Sie Details und dann Zertifikat anzeigen aus.

    4. Wählen Sie auf der Registerkarte Detailsdie Option Erweiterte Schlüsselverwendung aus.

Wenn der Treiber vom Dashboard wird der folgende Prozess verwendet.

  • Fügt eine eingebettete Microsoft SHA2-Signatur an.
  • Wenn die Treiberbinärdateien eingebettet sind, die vom Kunden mit eigenen Zertifikaten signiert sind, werden diese Signaturen nicht überschrieben.
  • Erstellt und signiert eine neue Katalogdatei mit einem SHA2-Microsoft-Zertifikat. Dieser Katalog ersetzt alle vorhandenen Kataloge, die vom Kunden bereitgestellt werden.

Testen Des Treibers auf Windows 10

Verwenden Sie die folgenden Anweisungen, um den Beispieltreiber zu installieren.

  1. Öffnen Sie ein Eingabeaufforderungsfenster als Administrator. Wechseln Sie zu Ihrem Treiberpaketordner, und geben Sie den folgenden Befehl ein.

    C:\Echo> devcon install echo.inf root\ECHO
    
  2. Vergewissern Sie sich, dass im Treiberinstallationsprozess nicht die Option "Windows kann den Herausgeber dieser Treibersoftware nicht überprüfen" anzeigt. Dialogfeld "Windows-Sicherheit".

Erstellen einer Übermittlung mit mehreren Treibern

So übermitteln Sie mehrere Treiber gleichzeitig:

  1. Erstellen Sie ein Unterverzeichnis für jeden Treiber, wie unten gezeigt.

    Diagramm eines Beispiels für die Verzeichnisstruktur für die Treibersignatur.

  2. Bereiten Sie eine DDF-Eingabedatei für die CAB-Datei vor, die auf die Unterverzeichnisse verweist. Diese Ausgabe sieht ungefähr so aus:

    ;*** Submission.ddf multiple driver example
    ;
    .OPTION EXPLICIT     ; Generate errors
    .Set CabinetFileCountThreshold=0
    .Set FolderFileCountThreshold=0
    .Set FolderSizeThreshold=0
    .Set MaxCabinetSize=0
    .Set MaxDiskFileCount=0
    .Set MaxDiskSize=0
    .Set CompressionType=MSZIP
    .Set Cabinet=on
    .Set Compress=on
    ;Specify file name for new cab file
    .Set CabinetNameTemplate=Echo.cab
    ;Specify files to be included in cab file
    ; First Driver
    .Set DestinationDir=DriverPackage1
    C:\DriverFiles\DriverPackage1\Driver1.sys
    C:\DriverFiles\DriverPackage1\Driver1.inf
    ; Second driver
    .Set DestinationDir=DriverPackage2
    C:\DriverFiles\DriverPackage2\Driver2.sys
    C:\DriverFiles\DriverPackage2\Driver2.inf