驅動程式程式代碼簽署需求
您必須先使用憑證簽署驅動程式,才能將驅動程式提交至硬體儀錶板。 您的組織可以將任意數目的憑證與其儀錶板帳戶產生關聯,而且每個提交的憑證都必須與其中任何一個憑證簽署。 與貴組織相關聯的憑證數目(同時延長驗證 (EV) 和標準數目沒有任何限制。
本文提供驅動程式可用程式代碼簽署類型的一般資訊,以及這些驅動程式的相關需求。
如需驅動程序簽署需求的詳細資訊,請參閱下列頁面:
取得程式代碼簽署憑證的位置
程式代碼簽署憑證可以從下列其中一個證書頒發機構單位購買:
EV 憑證簽署的驅動程式
您的 硬體開發人員中心 儀錶板帳戶必須至少有一個相關聯的 EV 憑證,才能提交二進位檔以進行證明簽署,或提交 HLK 認證的二進位檔。
適用的規則如下:
- 在提交時,已註冊的 EV 憑證必須有效。
- 雖然Microsoft強烈建議您使用 EV 憑證簽署個別提交,但您也可以使用也註冊至合作夥伴中心帳戶的 Authenticode 簽署憑證簽署提交。
- 所有憑證都必須是SHA2,並使用SignTool命令行參數簽署
/fd sha256
。
如果您已經有來自證書頒發機構單位的已核准 EV 憑證,您可以使用它來建立合作夥伴中心帳戶。 如果您沒有 EV 憑證,請選擇 證書頒發機構單位 ,並遵循其購買指示。
一旦證書頒發機構單位確認您的連絡資訊,並核准您的憑證購買,請遵循其指示來擷取憑證。
HLK 測試和儀錶板簽署的驅動程式
已通過 HLK 測試的儀錶板簽署驅動程式可在 Windows Vista 和更新版本上運作,包括 Windows Server 版本。 HLK 測試是驅動程式簽署的建議方法,因為它會簽署所有OS版本的驅動程式。 HLK 測試驅動程式示範製造商會嚴格測試其硬體,以符合所有Microsoft可靠性、安全性、電源效率、服務性和效能的需求,以提供絕佳的 Windows 體驗。 測試包括符合業界標準,並遵循技術特定功能的Microsoft規格,協助確保正確安裝、部署、連線和互操作性。 若要瞭解如何為您的儀錶板提交建立 HLK 測試的驅動程式,請參閱 Windows HLK 用戶入門。
測試案例的 Windows 10 證明簽署驅動程式
Windows 裝置安裝會使用數位簽名來驗證驅動程式套件的完整性,以及提供驅動程式套件的軟體發行者身分識別。
僅供測試之用,您可以提交驅動程式以進行證明簽署,而不需要 HLK 測試。
證明簽署具有下列限制和需求:
已簽署的驅動程式無法發佈至零售物件的 Windows Update。 若要將驅動程式發佈至零售物件的 Windows Update,您必須透過 Windows 硬體相容性計畫 (WHCP) 提交驅動程式。 選取 [CoDev] 或 [測試登錄機碼/ Surface SSRK] 選項,即可將已簽署的驅動程式發佈至 Windows Update 以進行測試。
證明簽署僅適用於 Windows 10 Desktop 和更新版本的 Windows。
證明簽署支援 Windows 10 桌面核心模式和使用者模式驅動程式。 雖然使用者模式驅動程式不需要由 windows 10 的 Microsoft 簽署,但相同的證明程式可用於使用者和核心模式驅動程式。 針對需要在舊版 Windows 上執行的驅動程式,您應該 提交 HLK/HCK 測試記錄以進行 Windows 認證。
證明簽署不會針對 ELAM 或 Windows Hello PE 二進位檔傳回適當的 PE 層級。 這些二進位檔必須測試並提交為 .hlkx 套件,才能接收額外的簽章屬性。
證明簽署需要使用延伸驗證 (EV) 憑證,將驅動程式提交至合作夥伴中心 (硬體開發人員中心 儀錶板)。
證明簽署需要驅動程式資料夾名稱,才能包含任何特殊字元、沒有 UNC 檔案共享路徑,且長度少於 40 個字元。
當驅動程式收到證明簽署時,它不是 Windows 認證。 來自 Microsoft 的證明簽章表示 Windows 信任驅動程式。 但是,由於驅動程式尚未在 HLK Studio 中進行測試,因此沒有關於相容性、功能等的保證。 接收證明簽署的驅動程式無法透過 Windows Update 發佈到零售物件。 如果您想要將驅動程式發佈至零售物件,您必須透過 Windows 硬體相容性計畫 (WHCP) 提交您的驅動程式。
DUA (驅動程式更新可接受的) 不支援使用證明簽署的驅動程式。
您可以透過證明處理下列 PE 層級和二進位檔:
- PeTrust
- DrmLevel
- 哈爾
- .exe
- .cab
- .dll
- .ocx
- .msi
- .xpi
- .xap
如需如何為 Windows 10+ 驅動程式建立證明簽署驅動程式的詳細資訊,請參閱 證明簽署 Windows 10+ 驅動程式。
Windows Server 簽署的驅動程式
- Windows Server 2016 和更新版本不接受證明的裝置和篩選驅動程式簽署提交。
- 儀錶板只會簽署成功通過 HLK 測試的裝置和篩選驅動程式。
- Windows Server 2016 和更新版本只會載入成功通過 HLK 測試的儀錶板簽署驅動程式。
Windows Defender 應用程式控制
企業可以使用 Windows 10 企業版 版本來實作原則來修改驅動程序簽署需求。 Windows Defender 應用程控 (WDAC) 提供企業定義的程式代碼完整性原則,其可設定為至少需要證明簽署的驅動程式。 如需 WDAC 的詳細資訊,請參閱 規劃和開始使用 Windows Defender 應用程控部署程式。
Windows 驅動程序簽署需求
下表摘要說明 Windows 的驅動程式簽署需求:
版本 | 證明儀錶板已簽署 | HLK 測試通過的儀錶板已簽署 | 使用 2015 年 7 月 29 日之前發行的 SHA-1 憑證進行交叉簽署 |
---|---|---|---|
Windows Vista | No | .是 | Yes |
Windows 7 | No | .是 | Yes |
Windows 8 / 8.1 | No | .是 | 是 |
Windows 10 | 是 | Yes | 否 (從 Windows 10 1809 起) |
Windows 10 - 已啟用 DG | *設定相依 | *設定相依 | *設定相依 |
Windows Server 2008 R2 | No | .是 | 是 |
Windows Server 2012 R2 | No | .是 | Yes |
Windows Server >= 2016 | No | .是 | Yes |
Windows Server >= 2016 – 已啟用 DG | *設定相依 | *設定相依 | *設定相依 |
Windows IoT 企業版 | Yes | .是 | Yes |
Windows IoT 企業版 - 已啟用 DG | *設定相依 | *設定相依 | *設定相依 |
Windows IoT 核心版(1) | 是 (不需要) | 是 (不需要) | 是 (交叉簽署也適用於 2015 年 7 月 29 日之後發行的憑證) |
*設定相依 – 使用 Windows 10 企業版 版本,組織可以使用 Windows Defender 應用程控 (WDAC) 來定義自定義簽署需求。 如需 WDAC 的詳細資訊,請參閱 規劃和開始使用 Windows Defender 應用程控部署程式。
(1) 製造商必須簽署驅動程序簽署,才能使用IoT核心建置零售產品(也就是非開發用途)。 如需已核准的證書頒發機構單位清單(CA),請參閱 核心模式程式代碼簽署的跨憑證。 如果已啟用 UEFI 安全開機,則必須簽署驅動程式。