Руководство по подписи драйверов Windows

В этом руководстве приводятся общие сведения о действиях по подписи двоичных файлов драйверов для Windows в одном объединенном расположении. В следующих подтопиках описан процесс:

Обзор

Начиная с Windows Vista, для загрузки всех программ, работающих в режиме ядра, в том числе драйверов, для загрузки требуется все программное обеспечение на основе x64.

Корпорация Майкрософт предоставляет следующие два способа цифровой подписи драйверов:

  1. Сертификация драйвера с помощью Корпорации Майкрософт и Майкрософт предоставит для него подпись. Когда пакет драйверов проходит сертификационные тесты, он может быть подписан Windows Hardware Quality Labs (WHQL). Если пакет драйверов подписан WHQL, его можно распространить с помощью программы Центра обновления Windows или других механизмов распространения, поддерживаемых корпорацией Майкрософт.
  2. Поставщики или разработчики драйверов могут получить сертификат публикации программного обеспечения (SPC) из авторизованного центра сертификации (ЦС) Майкрософт и использовать его для подписывания двоичных файлов в режиме ядра и пользовательского режима.

В случае загрузочных драйверов во время запуска системы драйверы, загруженные системным загрузчиком (Windows Vista и более поздних версий Windows), поставщики должны использовать сертификат издателей программного обеспечения (SPC), чтобы внедрить файл двоичного образа драйвера.

Примечание Обязательная политика подписывания кода в режиме ядра применяется ко всем программному обеспечению в режиме ядра для систем на базе x64, работающих в Windows Vista и более поздних версиях Windows. Однако корпорация Майкрософт рекомендует издателям подписывать все программное обеспечение в режиме ядра, включая драйверы устройств (включенные драйверы пользовательского режима) для 32-разрядных систем. Windows Vista и более поздние версии Windows проверяют подписи в режиме ядра в 32-разрядных системах. Программное обеспечение для поддержки защищенного мультимедийного содержимого должно быть цифровой подписью, даже если это 32-разрядная версия.

Драйверы в пользовательском режиме, например драйвер принтера, будут устанавливаться и работать на компьютере с архитектурой x64. Во время установки появится диалоговое окно с запросом утверждения для установки драйвера. Начиная с Windows 8 и более поздних версий Windows установка не будет продолжена, если эти пакеты драйверов также не подписаны.

Следующие ресурсы описывают более подробные сведения о входе драйвера:

  • Основной раздел подписывания драйвера
  • В подразделе "Как освободить модуль ядра" в пошаговом руководстве по подписи кода в режиме ядра описывается, что следует знать о подписи кода в режиме ядра. Сведения в документе также относятся к подписи драйверов пользовательского режима.
  • Файл selfsign_readme.htm в Windows 7 WDK находится в каталоге установки WDK \WinDDK\7600.16385.1\src\general\build\driversigning. В этом каталоге также есть командный файл selfsign_example.cmd, который можно изменить для выполнения команд подписывания драйвера. Файл selfsign_readme.htm в Windows 8.1 WDK находится в папке C:\Program Files (x86)\Windows Kits\8.1\bin\selfsign и содержит ссылки на дополнительные сведения о подписи драйвера.