共用方式為


使用 XPS 數位簽章 API

本主題列出使用 XPS 數位簽章 API 將數位簽章新增至 XPS 檔的考慮。

XPS 數位簽章 API 可讓應用程式要求使用者簽署 XPS 檔,以及驗證 XPS 檔中找到的簽章。 XPS 數位簽章 API 可以套用至 XPS 檔,而不需要將它載入 XPS OM,而且可以在從 XPS OM 序列化的 XPS 檔資料流程上使用。

XPS 數位簽章 API 程式設計工作 一節包含主題,描述如何使用 XPS 數位簽章 API 進行程式設計。 本主題列出將數位簽章支援新增至應用程式時,使用 XPS 數位簽章 API 的下列考慮。

XPS 數位簽章 API 程式設計工作

本節包含主題,描述如何使用 XPS 數位簽章 API 來執行程式設計工作。

初始化簽章管理員
簽署檔
將簽章要求新增至 XPS 檔
驗證檔簽章

從檔案載入憑證
確認憑證支援簽章方法
確認系統支援 Digest 方法
在檔中內嵌憑證鏈結

XPS 數位簽章 API 程式設計的特殊注意事項

當您使用 XPS 數位簽章 API 時,下列主題需要一些特殊考慮。

驗證 XPS 檔中的數位簽章

IXpsSignature::Verify 只會檢查已簽署的內容,以判斷它自簽署後尚未變更。 IXpsSignature::Verify 不會驗證用來簽署檔內容的任何憑證。

如需憑證和密碼編譯的詳細資訊,請參閱 關於密碼編譯

如需如何驗證程式中檔簽章的範例,請參閱 驗證檔簽章和憑證

數位簽章簽署原則

數位簽章簽署原則會決定 XPS 檔的哪些部分已簽署。 一個簽署原則選項是從簽章來源部分開始簽署簽章關聯性。 由於簽章關聯性會隨著每個新增的簽章而變更,因此在此原則下所做的簽章將會在新增簽章時中斷。 請確定您已清楚瞭解設定此原則的含意和效果;否則,可能會造成非預期或不想要的行為。

如需簽署原則的詳細資訊,請參閱 XPS_SIGN_POLICY

內嵌憑證鏈結

組成特定憑證信任鏈結的憑證可以新增至 XPS 檔。 內嵌這些憑證可讓應用程式更輕鬆地在離線案例中驗證數位簽章所使用的憑證。

如需如何在 XPS 檔中內嵌憑證的詳細資訊,請參閱 在檔中內嵌憑證鏈結

使用 CERT_CONTEXT 結構

CERT_CONTEXT CERT_INFO 結構是保存憑證資訊的主要資料結構。 如需使用這些結構的詳細資訊,請參閱 使用CERT_INFO資料結構

CERT_CONTEXT密碼編譯 API 函式所傳回的結構,在不再需要它們時必須釋放。 若要釋放 CERT_CONTEXT結構,請呼叫 CertFreeCertificateCoNtext 式。

常見的數位簽章程式設計工作

其他數位簽章程式設計工作

CERT_CONTEXT

CERT_INFO

CertFreeCertificateCoNtext

XPS_SIGN_POLICY

XML 紙張規格