Freigeben über


Verwenden der XPS Digital-Signatur-API

In diesem Thema werden Überlegungen zur Verwendung der XPS Digital Signature API zum Hinzufügen digitaler Signaturen zu einem XPS-Dokument aufgeführt.

Die XPS Digital Signature API ermöglicht es Anwendungen, Benutzer anzufordern, XPS-Dokumente zu signieren und Signaturen zu überprüfen, die in XPS-Dokumenten gefunden werden. Die XPS Digital Signature API kann auf ein XPS-Dokument angewendet werden, ohne es in ein XPS-OM zu laden, und es kann für XPS-Dokumentendatenströme verwendet werden, die von einem XPS-OM serialisiert werden.

Der Abschnitt zur Programmierung der XPS-API für digitale Signaturen enthält Themen, die beschreiben, wie Sie mit der XPS Digital Signature API programmieren. In diesem Thema werden die folgenden Überlegungen zur Verwendung der XPS-API für digitale Signaturen aufgeführt, wenn einer Anwendung Unterstützung für digitale Signaturen hinzugefügt wird.

Programmieraufgaben der XPS-API für digitale Signaturen

Dieser Abschnitt enthält Themen, die beschreiben, wie Programmieraufgaben mithilfe der XPS Digital Signature API ausgeführt werden.

Initialisieren des Signatur-Managers
Signieren eines Dokuments
Hinzufügen einer Signaturanforderung zu einem XPS-Dokument
Überprüfen von Dokumentsignaturen

Laden eines Zertifikats aus einer Datei
Überprüfen, ob ein Zertifikat eine Signaturmethode unterstützt
Überprüfen, ob das System eine Digestmethode unterstützt
Einbetten von Zertifikatketten in ein Dokument

Spezielle Hinweise zur PROGRAMMIERUNG der DIGITALEN XPS-Signatur-API

Die folgenden Themen erfordern einige besondere Überlegungen, wenn Sie die XPS Digital Signature API verwenden.

Überprüfen digitaler Signaturen in einem XPS-Dokument

IXpsSignature::Überprüfen Sie nur den signierten Inhalt, um festzustellen, dass er seit der Signatur nicht geändert wurde. IXpsSignature::Verify überprüft keine Zertifikate, die zum Signieren des Dokumentinhalts verwendet wurden.

Weitere Informationen zu Zertifikaten und Kryptografie finden Sie unter Informationen zur Kryptografie.

Ein Beispiel zum Überprüfen von Dokumentsignaturen in einem Programm finden Sie unter Überprüfen von Dokumentsignaturen und Zertifikaten.

Signaturrichtlinie für digitale Signaturen

Die Signaturrichtlinie für digitale Signaturen bestimmt, welche Teile eines XPS-Dokuments signiert sind. Eine Signaturrichtlinienoption besteht darin, die Signaturbeziehungen zu signieren, die mit dem Signaturursprungteil beginnen. Da sich die Signaturbeziehungen bei jeder hinzugefügten Signatur ändern, werden Signaturen, die unter dieser Richtlinie vorgenommen werden, beim Hinzufügen neuer Signaturen getrennt. Vergewissern Sie sich, dass Sie sich über die Auswirkungen dieser Richtlinie im Klaren sind, da es sonst zu unerwartetem oder unerwünschtem Verhalten kommen kann.

Weitere Informationen zum Signieren von Richtlinien finden Sie unter XPS_SIGN_POLICY.

Einbetten einer Zertifikatkette

Die Zertifikate, aus denen die Vertrauenskette eines bestimmten Zertifikats besteht, können einem XPS-Dokument hinzugefügt werden. Die Einbettung dieser Zertifikate kann es einer Anwendung in Offline-Szenarien erleichtern, die von einer digitalen Signatur verwendeten Zertifikate zu überprüfen.

Weitere Informationen zum Einbetten von Zertifikaten in ein XPS-Dokument finden Sie unter Einbetten von Zertifikatketten in ein Dokument.

Verwenden der CERT_CONTEXT-Struktur

Die CERT_CONTEXT- und CERT_INFO-Strukturen sind die Standard-Datenstrukturen, die Zertifikatinformationen enthalten. Weitere Informationen zur Verwendung dieser Strukturen finden Sie unter Verwenden einer CERT_INFO-Datenstruktur.

CERT_CONTEXT-Strukturen, die von Crypto-API-Funktionen zurückgegeben werden, müssen freigegeben werden, wenn sie nicht mehr benötigt werden. Rufen Sie zum Freigeben einer CERT_CONTEXT -Struktur die CertFreeCertificateContext -Funktion auf.

Allgemeine Aufgaben bei der Programmierung digitaler Signaturen

Zusätzliche Aufgaben bei der Programmierung digitaler Signaturen

CERT_CONTEXT

CERT_INFO

CertFreeCertificateContext

XPS_SIGN_POLICY

XML Paper Specification