共用方式為


MsiDigitalSignature 數據表

MsiDigitalSignature 數據表包含安裝資料庫中每個數位簽名對象的簽章資訊。

從 Windows Installer 2.0 版開始,可以使用 MsiDigitalSignature 和 MsiDigitalCertificate 數據表。

Windows Installer 版本可以使用數位簽名作為偵測損毀資源的方法。 Windows Installer 2.0 只能驗證外部封包的數字簽名,而且只能使用 MsiDigitalSignature 和 MsiDigitalCertificate 數據表。

從 Windows Installer 3.0 開始,Windows Installer 可以使用 MsiPatchCertificate 和 MsiDigitalCertificate 數據表來驗證修補程式 (.msp 檔案) 的數位簽名。 如需詳細資訊,請參閱 撰寫安全安裝用戶帳戶控制 (UAC) 修補的指導方針。

MsiDigitalSignature 數據表具有下列數據行。

類型 鑰匙
桌子 識別碼 Y N
SignObject 文字 Y N
DigitalCertificate_ 識別碼 N N
散列 二進位 N Y

 

數據表

使用 Windows Installer 2.0 版時,此字段中的項目必須是 Media 數據表的 “Media”,。 安裝程式只會驗證外部封包媒體專案上的數字簽名。 此數據行和 SignObject 資料行一起指定數位簽署的資源。

SignObject

數據表數據列所指定數據表主鍵的外鍵。 此數據列和數據表數據行一起指定數位簽署的資源。

DigitalCertificate_

MsiDigitalCertificate 數據表中的外鍵。 這會識別檔案上必須存在的憑證,才能讓相關聯的動作成功。 資源 (或 物件) 一律必須符合 MsiDigitalCertificate 數據表中的此憑證。

哈希

在此欄位中,輸入要根據運行時間取得之資源(或物件)的實際哈希來檢查之資源的參考哈希。 如果只需要驗證憑證,哈希字段可能是 Null。 請注意,哈希的格式取決於正在簽署的資源類型(或物件)。

Hash 數據行包含哈希的二進位表示法。 實際內容是 CRYPT_HASH_BLOB 結構的 pbData 成員,這是 CRYPTOAPI_BLOB 結構的一部分。 呼叫 WinVerifyTrustMsiGetFileSignatureInformation即可取得此專案。

驗證

ICE03
ICE06
ICE29
ICE32
ICE66
ICE81

MsiGetFileSignatureInformation

MsiDigitalCertificate 數據表

數位簽名和 Windows Installer