Как подписать драйвер Windows 10, 8.1 и Windows 7 x64 и x86

Windows 10, 8.1 и Windows 7 позволяют отключить обязательную проверку цифровой подписи драйверов и установить неподписанный драйвер, но если в последних версиях ОС это нужно делать постоянно, изменение опций с помощью bcdedit не поможет. Однако может помочь самоподписание драйвера и его последующая установка, о чем мы и поговорим.

В этой инструкции подробно описано, как самостоятельно подписать драйвер для Windows 10, 8.1 или Windows 7 x64 или 32-bit (x86) для последующей установки в систему навсегда, без отключения проверки цифровой подписи драйверов, избегая при этом ошибок типа "Сторонний INF не содержит информации о подписи".

Что вам понадобится для подписания драйвера

Для выполнения всех следующих действий загрузите и установите с сайта Microsoft следующие инструменты:

Из первого набора нужно просто установить Tools, из второго (который представляет собой ISO-образ с установщиком, из которого нужно запустить KitSetup.exe) — выберите Build Environments and Tools (Среды и инструменты сборки).

Обратите внимание: это не последние версии наборов инструментов, но они одинаково подходят для самостоятельной подписи драйверов для последующей установки во всех операционных системах от Windows 10 до Windows 7, не вдаваясь в некоторые дополнительные нюансы в инструкциях.

Процесс самостоятельной подписи драйвера

В процессе, для того чтобы подписать сам драйвер нам нужно: создать сертификат, подписать драйвер этим сертификатом, установить сертификат в систему и установить драйвер. Начнем с .

  1. Создайте какую-нибудь папку в корне диска С (чтобы потом было легче к ней обращаться), например С:\cert, в которой мы будем работать с сертификатами и драйверами.
  2. Запустите командную строку от имени администратора (необходимо для 18-го шага). Далее используйте следующие команды по порядку. Файлы драйверов пока не нужны. Во второй команде вам будет предложено ввести пароль, я использую пароль в подсказке, а затем в командах, вы можете использовать свой собственный.
  3. cd "C:\Program Files\Microsoft SDKs\Windows\v7.1\bin"
  4. makecert -r -sv C:\cert\driver.pvk -n CN="remontka" C:\cert\driver.cer
  5. cert2spc C:\cert\driver.cer C:\cert\driver.spc
  6. pvk2pfx -pvk C:\cert\driver.pvk -pi password -spc C:\cert\driver.spc -pfx C:\cert\driver.pfx -po password
  7. До этого момента все должно происходить так, как показано на скриншоте ниже. Создайте файл сертификата для подписи драйвера
  8. В папке C:\cert создайте подпапку drv и поместите туда файлы драйвера. Но: если вам нужен драйвер только для x64, не копируйте .Inf файл для x86 систем в эту папку и наоборот. файлы драйвера для подписиВ командной строке используйте следующие команды:
  9. cd C:\WinDDK\7600.16385.1\bin\selfsign\
  10. inf2cat.exe /driver:"C:\cert\drv" /os:7_X64 /verbose
  11. В предыдущей команде для 32-битного драйвера укажите X86 вместо X64. Если вам предлагается скачать .NET Framework, согласитесь, установите, а затем повторно выполните команду. В идеале вы должны получить сообщение об успехе на .cat файл для подписи. Однако возможны ошибки, о наиболее частых из них можно сказать следующее. После исправления ошибок повторите команду из шага 10.
  12. DriverVer установлен на неправильную дату — возникает, если дата в файле драйвера до 21 апреля 2009 года. Решение: откройте файл .inf из папки drv в текстовом редакторе (можно использовать Блокнот) и установите другую дату (формат: месяц/день/год) в строке DriverVer.
  13. Отсутствует запись AMD64 CatalogFile (для 64-битных) или отсутствует запись 32-битного CatalogFile. Решение: открыть файл .inf из папки drv в текстовый редактор и в [Version] добавить строку CatalogFile=catalog.cat
  14. В результате вы должны получить сообщение: Catalog generation complete with the path to the catalog file, in my case it is C:\cert\drv\catalog.cat. Далее воспользуйтесь следующими командами (требуется подключение к интернету). Файл каталога создан успешно
  15. cd "C:\Program Files\Microsoft SDKs\Windows\v7.1\bin"
  16. signtool sign /f C:\cert\driver.pfx /p password /t http://timestamp.verisign.com/scripts/timestamp.dll /v C:\cert\drv\catalog.cat
  17. Результат подписания файла драйвера без ошибок на скриншоте ниже. Следующим шагом будет добавление самоподписанного сертификата в список доверенных в системе, это можно сделать следующими двумя командами по порядку Подпишите драйвер с помощью signtool
  18. certmgr.exe -add C:\cert\driver.cer -s -r localMachine ROOT
    certmgr.exe -add C:\cert\driver.cer -s -r localMachine TRUSTEDPUBLISHER
  19. В результате вы должны получить сообщение "CertMgr Succeeded". Если не удалось или certmgr.exe не является внутренней или внешней командой — убедитесь, что командная строка запущена от имени администратора и вы находитесь в правильной папке (см. Шаг 15).

Теперь вы можете закрыть командную строку и установить драйвер из папки C:\cert\drv с помощью диспетчера устройств, или нажав правой кнопкой мыши на .inf и выберите "Установить". Необходимо подтвердить установку драйвера в окне "Не удалось проверить издателя этих драйверов" — нажмите "Установить этот драйвер в любом случае".

Установка самоподписанного драйвера

Оцените статью
Добавить комментарий