Share via


Digitale Signaturen

Digitale Signaturen basieren auf der Infrastrukturtechnologie für öffentliche Schlüssel von Microsoft, die auf Microsoft Authenticode in Kombination mit einer Infrastruktur vertrauenswürdiger Zertifizierungsstellen (Certification Authorities, CAs) basiert. Authenticode, das auf Branchenstandards basiert, ermöglicht es Anbietern oder Softwareverlagen, entweder eine Datei oder eine Sammlung von Dateien (z. B . ein Treiberpaket) zu signieren, indem sie ein digitales Codesignaturzertifikat verwenden, das von einer Zertifizierungsstelle ausgestellt wird.

Windows verwendet eine gültige digitale Signatur, um Folgendes zu überprüfen:

  • Die Datei oder die Sammlung von Dateien ist signiert.

  • Der Signierer ist vertrauenswürdig.

  • Die Zertifizierungsstelle, die den Signierer authentifiziert hat, ist vertrauenswürdig.

  • Die Sammlung von Dateien wurde nach der Veröffentlichung nicht geändert.

Dieser Signaturprozess für ein Treiberpaket umfasst beispielsweise Folgendes:

  • Ein Herausgeber ruft ein digitales X.509-Zertifikat von einer Zertifizierungsstelle ab. Ein Authenticode-Zertifikat wird auch als Signaturzertifikat bezeichnet. Ein Signaturzertifikat ist ein Satz von Daten, der einen Herausgeber identifiziert und erst von einer Zertifizierungsstelle ausgestellt wird, nachdem die Zertifizierungsstelle die Identität des Herausgebers überprüft hat. Eine Zertifizierungsstelle kann eine Microsoft-Zertifizierungsstelle, eine kommerzielle Drittanbieterzertifizierungsstelle oder eine Unternehmenszertifizierungsstelle sein.

    Das Signaturzertifikat wird verwendet, um die Katalogdatei eines Treiberpakets zu signieren oder eine Signatur in eine Treiberdatei einzubetten. Zertifikate, die vertrauenswürdige Herausgeber und vertrauenswürdige Zertifizierungsstellen identifizieren, werden in Zertifikatspeichern installiert, die von Windows verwaltet werden.

  • Das Signaturzertifikat enthält einen privaten Schlüssel und einen öffentlichen Schlüssel, der als Schlüsselpaar bezeichnet wird. Der private Schlüssel wird zum Signieren der Katalogdatei eines Treiberpakets oder zum Einbetten einer Signatur in eine Treiberdatei verwendet. Der öffentliche Schlüssel wird verwendet, um die Signatur der Katalogdatei eines Treiberpakets oder einer in eine Treiberdatei eingebetteten Signatur zu überprüfen.

  • Um eine Katalogdatei zu signieren oder eine Signatur in eine Datei einzubetten, generiert der Signaturprozess zunächst einen kryptografischen Hash oder Fingerabdruck der Datei. Beim Signieren wird dann der Dateifingerabdruck mit einem privaten Schlüssel verschlüsselt und der Datei der Fingerabdruck hinzugefügt.

    Der Signaturprozess fügt auch Informationen zum Herausgeber und der Zertifizierungsstelle hinzu, die das Signaturzertifikat ausgestellt hat. Die digitale Signatur wird der Datei in einem Abschnitt der Datei hinzugefügt, der beim Generieren des Dateifingerabdrucks nicht verarbeitet wird.

  • Um die digitale Signatur einer Datei zu überprüfen, extrahiert Windows die Informationen über den Herausgeber und die Zertifizierungsstelle und verwendet den öffentlichen Schlüssel, um den verschlüsselten Dateifingerabdruck zu entschlüsseln.

    Windows akzeptiert die Integrität der Datei und die Authentizität des Herausgebers nur, wenn Folgendes zutrifft:

Weitere Informationen zur Verwendung der digitalen Signatur der Katalogdatei eines Treiberpakets bei der Plug & Play-Geräteinstallation (PnP) finden Sie unter Installation von digitalen Signaturen und PnP-Geräten.

Weitere Informationen zur Infrastrukturtechnologie für öffentliche Schlüssel von Microsoft, zur Codesignatur und zu digitalen Signaturen finden Sie unter Einführung in bewährte Methoden für die Codesignatur und Codesignatur.