目前任務:Microsoft 在 Win 7 上簽署驅動程式。
每次我認為我可能錯過了某個步驟或其他內容時,我都會對我的驅動程式包進行 3 次簽署。但是,我似乎無法擺脫 Windows 安全性錯誤訊息「Windows 無法驗證此驅動程式軟體的發布者」。使用此驅動程式套件時,我不斷出現Windows 安全性對話框,這是我遵循的過程 -
使用 INF2CAT 工具建立一個新的 cat 檔案。
使用 Versign 3 類公共主要憑證授權單位 - G5.cer 對驅動程式進行自簽署。
使用使用此驅動程式的裝置在 DTM 伺服器和用戶端上執行 Microsoft 測試。
建立WLK提交包。
自簽名 cab 文件。
提交包以進行認證。
成功通過測試後傳回的目錄檔案顯示簽署者名稱「Microsoft Windows Hardware Comptibility Publisher」。當我使用SignTool檢查簽名的有效性時,它說簽名有效。但是,當我嘗試使用新簽署的目錄檔案安裝驅動程式時,Windows 會抱怨。
有任何想法嗎?
答案1
謝謝你的幫助,尤金。是的。我之前確實簽署了另外兩個驅動程式包。其中之一是WinUSB驅動程式的修改版本。我使用的憑證與幾個月前簽署這兩個驅動程式套件時使用的憑證相同。每次與 Microsoft 簽約的費用為 250 美元。我認為如果證書錯誤,微軟在認證過程中會抱怨。我使用以下命令對 CAT 檔案進行自簽名。我不必指定證書名稱,因為目錄中只有一個證書 -
Signtool 簽名 /v /a /n 公司名稱 /thttp://timestamp.verisign.com/scripts/timestamp.dll 我們的目錄檔.cat
以下是 Microsoft 簽署的 OutCatalogFile.cat 上執行驗證指令的結果
C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\x64>signtool verify /v "C:\User s\logotest\Documents\serialdriversigning\OurCatalogFile.cat"
正在驗證:C:\Users\logotest\Documents\serialdriversigning\OurCatalogFile.cat」檔案雜湊 (sha1):BDDF39B1DD95881B462164129758A7FFD54F47D9
簽署憑證鏈: 核發給:Microsoft 根憑證授權單位 核發者:Microsoft 根憑證授權單位 過期:2021 年 5 月 9 日星期日 18:28:13 SHA1 雜湊:CDD4EEAE6000AC7F40C3802C171E30148030C072
Issued to: Microsoft Windows Hardware Compatibility PCA
Issued by: Microsoft Root Certificate Authority
Expires: Thu Jun 04 16:15:46 2020
SHA1 hash: 8D42419D8B21E5CF9C3204D0060B19312B96EB78
Issued to: Microsoft Windows Hardware Compatibility Publisher
Issued by: Microsoft Windows Hardware Compatibility PCA
Expires: Wed Sep 18 18:20:55 2013
SHA1 hash: D94345C032D23404231DD3902F22AB1C2100341E
簽署的時間戳記為: 2012 年11 月6 日星期二11:26:48 時間戳驗證者: 發給: Microsoft 根權限頒發者: Microsoft 根權限過期: 2020 年12 月31 日星期四02:00:00 SHA1哈希: A43489159A520F0D93D032CCAF37E7FE20A8B419
Issued to: Microsoft Timestamping PCA
Issued by: Microsoft Root Authority
Expires: Sun Sep 15 02:00:00 2019
SHA1 hash: 3EA99A60058275E0ED83B892A909449F8C33B245
Issued to: Microsoft Time-Stamp Service
Issued by: Microsoft Timestamping PCA
Expires: Tue Apr 09 16:53:56 2013
SHA1 hash: 1895C2C907E0D7E5C0292B92C6EA8D0E236F525E
已成功驗證:C:\Users\logotest\Documents\serialdriversigning\OurCatalogFile.cat”
成功驗證的檔案數量:1 警告數量:0 錯誤數量:0
謝謝你!
回答
當我製作軟體包時,我的軟體包中的一個檔案正在修改。我將其替換為我在簽署驅動程式時使用的那個,並且沒有收到錯誤訊息。我發現以下文件很有用 -Windows® 驅動程式的數位簽名,作者:Scott M. Johnson 專案經理 Windows 硬體品質實驗室 Microsoft Corporation