透過內嵌簽章Release-Signing驅動程式二進位檔
簽署 的類別目錄檔案 就是您必須正確安裝和載入大部分 驅動程式套件的所有專案。 不過,某些案例可能也需要驅動程式套件中某些二進位檔的內嵌簽署。 內嵌簽署是指將數位簽章新增至驅動程式的二進位影像檔本身,而不是依賴類別目錄檔案中的數位簽章。 因此,驅動程式的二進位映射會在驅動程式內嵌簽署時修改。
核心模式二進位檔的內嵌簽署 (例如,每當需要驅動程式和相關聯的.dll檔案) :
驅動程式二進位檔是 開機啟動驅動程式。 在 64 位版本的 Windows Vista 和更新版本的 Windows 中, 核心模式程式碼簽署需求 會指出 開機啟動驅動程式 必須具有內嵌簽章。 不論驅動程式的驅動程式套件是否有數位簽署的類別目錄檔案,都需要這樣做。
驅動程式二進位檔是透過不包含驅動程式套件和類別目錄檔案的方式安裝。
如同 類別目錄檔案, SignTool 工具是用來使用測試憑證,在核心模式二進位檔中內嵌數位簽章。 下列命令列示範如何執行 SignTool 來執行下列動作:
測試簽署 Toastpkg 範例二進位檔的 64 位版本,toaster.sys。 在 WDK 安裝目錄中,此檔案位於 src\general\toast\toastpkg\toastcd\amd64 目錄中。
使用 軟體發行者憑證 (SPC) 由商業憑證授權單位單位 (CA) 所發行。
針對 SPC 使用相容的跨憑證。
透過時間戳記授權單位將時間戳記指派給數位簽章, (TSA) 。
若要測試 簽署toaster.sys 檔案,請執行下列命令列:
Signtool sign /v /fd sha256 /ac MSCV-VSClass3.cer /s MyPersonalStore /n contoso.com /t http://timestamp.digicert.com amd64\toaster.sys
其中:
sign命令會將 SignTool 設定為簽署指定的核心模式二進位檔案, amd64\toaster.sys。
/v選項會啟用詳細資訊作業,其中 SignTool 會顯示成功的執行和警告訊息。
/fd選項會指定要用於建立檔案簽章的檔案摘要演算法。 預設為 SHA1。
/ac選項會指定檔案名,其中包含從 CA 取得的跨憑證 (MSCV-VSClass3.cer) 。 如果跨憑證不在目前的目錄中,請使用完整路徑名稱。
/s選項會指定包含 SPC 的個人憑證存儲名稱, (MyPersonalStore) 。
/n選項會指定安裝在指定憑證存放區中的憑證 (Contoso.com) 名稱。
/t選項會指定 TSA ()
http://timestamp.digicert.com
的 URL,這會為數位簽章加上時間戳記。
重要
包含時間戳記可提供金鑰撤銷的必要資訊,以防簽署者的程式碼簽署私密金鑰遭到入侵。
- amd64\toaster.sys 會指定將內嵌簽署的核心模式二進位檔案名稱。
如需 SignTool 及其命令列引數的詳細資訊,請參閱 SignTool。
如需透過內嵌簽章發行簽署驅動程式的詳細資訊,請參閱 發行簽署驅動程式套件 和 發行簽署驅動程式檔案。