Как подписать Windows 10 драйверов устройств? - PullRequest
0 голосов
/ 16 июня 2020

Я написал собственный драйвер устройства для Windows 10 и правильно подписал драйвер сертификатом EV, выданным моей компании, в соответствии с инструкциями по сборке и подписи, выпущенными Microsoft.

Drivers are correctly signed.

Недавно я обновился до последней сборки Windows 10, и в процессе принудительное использование подписи драйверов было повторно включено.

Однако даже с Подписанные драйверы EV-cert все еще устанавливаются, я получаю следующую ошибку в диспетчере устройств:

Device manager error

Что странно, я могу установить драйвер в порядке. Windows 10 не выводит никаких предупреждений о том, что драйвер опасен, имеет плохую подпись или неподписанный. Однако диспетчер устройств по-прежнему отключает устройство с кодом ошибки 52, отмеченным на рисунке.

Я что-то делаю неправильно? Требуется ли Windows 10 / Microsoft что-то помимо подписи действующим сертификатом EV? Нужно ли мне отправлять драйверы в Microsoft, чтобы они были утверждены или что-то в этом роде? И если да, то как мне это сделать?

Единственный способ заставить эти драйверы работать в диспетчере устройств - отключить принудительное использование подписи драйверов, но это не подходящее решение, когда я пытаюсь распространить драйвер для клиентов.

1 Ответ

2 голосов
/ 16 июня 2020

Как вы заметили, требования к подписи, которые проверяет Windows при установке пакета драйверов, отличаются от требований, которые он проверяет для загрузки файла .sys (модуля ядра) в ядро. Если ваш драйвер включает в себя файлы .sys, вам, как правило, придется отправить его на портал Microsoft Windows Hardware Developer Center Dashboard, чтобы подписать его. Вот объявление от Microsoft об этом:

https://techcommunity.microsoft.com/t5/windows-hardware-certification/driver-signing-changes-in-windows-10/ba-p/364859

Если вы можете просто использовать драйверы, поставляемые с Windows (например, WinUSB), это будет предпочтительнее , потому что они используют модули ядра, которые уже подписаны Windows, поэтому все, что вам нужно сделать, это выполнить требования для установки пакета драйверов.

Я написал намного больше о подписании драйверов здесь:

https://www.davidegrayson.com/signing/

...