Как подписать драйвер
По умолчанию все последние версии Windows запрещают устанавливать драйверы устройств, которые не подписаны действительной цифровой подписью. Такие драйверы блокируются системой. Цифровая подпись гарантирует (в некоторой степени), что драйвер был выпущен определенным разработчиком или поставщиком, и его код не был изменен после того, как он был подписан.
Проще говоря, если драйвер подписан, то компьютер считает, что он не менялся после того как его сделали разработчики соответствующего оборудования, и что никакие злые хакеры не вписали в драйвер вредоносный код, который мог бы украсть Ваши пароли или ещё чего плохого натворить.
Как подписать драйвер для работы устройств на Windows 10 или Windows 7
Разных причин отсутствия подписи много, и раз Вы это читаете, то скорее всего столкнулись с одной из таких причин. В этом примере попробуем установить довольно старый драйвер для звуковой карты, для которого уже истек срок активности сертификата. Архив с драйверами был загружен с веб-сайта производителя ноутбуков, укомплектованных соответствующей видеокартой (нам удалось найти версию драйвера для Windows XP). Чтоб было удобнее работать с драйвером, он был перемещён в специально созданную под него папку: c:\drv\ (папка с названием “drv” на диске “C”). Пробуем установить драйвер путем добавления его через консоль в хранилище драйверов, с помощью стандартного инструмента pnputil:
Pnputil –a c:\drv\HDALC2.inf
Для этого впишите “cmd.exe” в поисковой строке рядом с кнопкой “Пуск” и нажмите “Запустить от имени администратора”. Если у Вас на этом этапе открывается окно с предупреждением, нажмите “Да”.
Можете или скопировать адрес из примера и вставить в консоль нажатием правой кнопки мышки, или ввести вручную. Только не забудьте поменять название файла драйвера из примера на название файла Вашего драйвера, а также поменять адрес, если Вы распаковали драйвер в другую папку.
Ожидаемо, получаем ошибку, указывающую на то, что в INF-файле не удаётся обнаружить информацию о цифровой подписи.
То же сообщение мы получим если попробуем нажать на файле драйвера ПКМ и выбрать “Установить”.
Настало время попробовать подписать драйвер свежесозданным сертификатом.
Необходимые инструменты
Чтобы сгенерировать подпись и подписать драйвер, вам необходимо загрузить и установить следующие инструменты разработки приложений (с настройками по умолчанию):
- .NET Framework 4 — нужен для работы нижеуказанных инструментов;
- Windows SDK (можно не скачивать, если у Вас есть Visual Studio 2005 или новее) для вашей версии Windows. В комплект входит набор инструментов для подписания, в котором и находится нужное средство — signtool.exe;
- WDK 7.1.0.
Создание самоподписанного сертификата и приватного ключа
- Создайте папку “DrvCert” на диске “C”
- Вернитесь в консоль и введите cd C:\Program Files (x86)\Windows Kits\10\bin\x64\
- Создайте самоподписанный сертификат командой makecert -r -sv C:\DrvCert\myDrivers.pvk -n CN=»Company» C:\DrvCert\myDrivers.cer , — где вместо «Company» можно ввести любое другое название условной компании, для которой издается сертификат. В процессе Вам нужно будет задать пароль. Возьмём для примера “0rPr0RpR”.
- Создайте публичный ключ командой cert2spc C:\DrvCert\myDrivers.cer C:\DrvCert\myDrivers.spc
- Совместите публичный и приватный ключи в сертификате с форматом .pfx с помощью команды pvk2pfx -pvk C:\DrvCert\myDrivers.pvk -pi 0rPr0RpR -spc C:\DrvCert\myDrivers.spc -pfx C:\DrvCert\myDrivers.pfx -po 0rPr0RpR — где в конце тот пароль, который Вы вводили ранее.
Создание Файла Каталога
- Теперь нужно создать папку C:\DrvCert\hda и скопировать в неё все файлы из папки, в которую первоначально был извлечен драйвер из архива (c:\drv\). Среди этих файлов обязательно должны быть файлы форматов .sys и .inf (в примере: RTKHDAUD.sys и HDALC2.inf).
- Вернитесь в консоль и введите cd C:\WinDDK\7600.16385.1\bin\selfsign
- Создайте файл CAT (в нём находится информация о расположении файлов в пакете драйвера) на основе файла INF с помощью средства inf2cat.exe (входит в комплект WDK). Для этого запустите следующую команду: inf2cat.exe /driver:»C:\DrvCert\hda» /os:7_X86 /verbose .
Подписание драйвера
- Введите cd C:\Program Files (x86)\Windows Kits\10\bin\x64\
- Теперь набор файлов драйверов нужно подписать сертификатом, который вы создали ранее, используя службу Globalsign.
Следующая команда подпишет файл CAT цифровой подписью, используя сертификат, хранящийся в файле PFX, защищенный введенным ранее паролем: signtool sign /f C:\DrvCert\myDrivers.pfx /p 0rPr0RpR /t http://timestamp.verisign.com/scripts/timstamp.dll /v C:\DrvCert\hda\hda32.cat , где в конце — название .cat файла который появился в папке
Если всё прошло успешно то появится сообщение:
Successfully signed: C:\DrvCert\xg\HDALC2.cat
Установка самоподписанного сертификата
Поскольку созданный только-что сертификат является самоподписанным, по умолчанию система ему не доверяет. Добавьте свой сертификат в хранилище сертификатов локального компьютера:
certmgr.exe -add C:\DrvCert\myDrivers.cer -s -r localMachine ROOT
certmgr.exe -add C:\DrvCert\myDrivers.cer -s -r localMachine TRUSTEDPUBLISHER
Установка драйвера
Вводим команду: Pnputil –i –a C:\DrvCert\hda\HDALC2.inf
Теперь ошибка как при первой попытке не появляется, а вместо неё видим сообщение об успешной установке драйвера.
Поздравляем с успешной установкой!
Можно было и избежать мороки с массой команд и установить драйвер с помощью отключения проверки сертификата, но об этом уже в другой статье.
Как подписать драйвер Windows 10, 8.1 и Windows 7 x64 и x86
Windows 10, 8.1 и Windows 7 позволяют отключить обязательную проверку цифровой подписи драйверов и установить неподписанный драйвер, однако если в последних версиях ОС это нужно сделать на постоянной основе, изменение опций с помощью bcdedit не помогает. Однако, может помочь самостоятельная подпись драйвера и его последующая установка, о чем и поговорим.
В этой инструкции подробно о том, как самостоятельно подписать драйвер для Windows 10, 8.1 или Windows 7 x64 или 32-бит (x86) для последующей установки в системе на постоянной основе без отключения проверки цифровой подписи драйверов, избежав при этом ошибок наподобие «INF стороннего производителя не содержит информации о подписи».
Что потребуется для подписи драйвера
Для того, чтобы выполнить все описанные далее шаги, скачайте и установите следующие инструменты с сайта Майкрософт:
Из первого набора достаточно будет установить Tools, из второго (представляет собой ISO-образ с установщиком, с которого нужно запустить KitSetup.exe) — выбрать Build Environments и Tools.
Обратите внимание: это не последние версии наборов инструментов, но они в равной степени подойдут для самостоятельной подписи драйверов для последующей установки во всех ОС от Windows 10 до Windows 7, при этом в инструкции не потребуется вдаваться в некоторые дополнительные нюансы.
Процесс самостоятельной подписи драйвера
В процессе для того, чтобы подписать драйвер самостоятельно, нам потребуется: создать сертификат, подписать драйвер этим сертификатом, установить сертификат в системе и установить драйвер. Начнем.
- Создайте в корне диска C какую-либо папку (так к ней проще будет обращаться в дальнейшем), например, C:\cert, где мы будем работать с сертификатами и драйверами.
- Запустите командную строку от имени администратора (нужны для 18-го шага). Далее используем следующие команды по порядку. Файлы драйвера пока не потребуются. Во время выполнения второй команды вас попросят ввести пароль, я использую password в окне запроса и далее в командах, вы можете использовать свой.
- До этого этапа всё должно пройти как на скриншоте ниже, командную строку не закрываем.
- В папке C:\cert создайте вложенную папку, например, drv и поместите туда свои файлы драйвера. Но: если вам требуется драйвер только для x64, не копируйте .inf файл для x86 систем в эту папку и наоборот.
В командной строке используем следующие команды:
- В предыдущей команде для драйвера 32-бит укажите X86 вместо X64. Если будет предложено скачать .NET Framework, согласитесь, установите, а затем заново выполните команду. В идеале вы должны будете получить сообщение об успешном создании .cat файла для подписи. Однако, возможны ошибки, о наиболее частых — следующие два пункта. После исправления ошибок повторите команду из пункта 10.
- DriverVer set to incorrect date — возникает при дате в файле драйвера до 21 апреля 2009 года. Решение: откройте файл .inf из папки drv в текстовом редакторе (можно в блокноте) и в строке DriverVer установите другую дату (формат: месяц/день/год).
- Missing AMD64 CatalogFile entry (для 64-бит) или Missing 32-bit CatalogFile entry. Решение: откройте файл .inf из папки drv в текстовом редакторе и в разделе [Version] добавьте строку CatalogFile=catalog.cat
- В итоге вы должны получить сообщение: Catalog generation complete с указанием пути к файлу каталога, в моем случае – C:\cert\drv\catalog.cat. Далее используем следующие команды (требуется подключение к Интернету).
- Результат подписи файла драйвера без ошибок на скриншоте ниже. Следующий шаг — добавить самоподписанный сертификат в список доверенных в системе, сделать это можно следующими двумя командами по порядку
- В результате вы должны получить сообщение «CertMgr Succeeded». Если Failed или certmgr.exe не является внутренней или внешней командой — убедитесь, что командная строка запущена от имени администратора, а вы находитесь в нужной папке (см. 15 шаг).
И вот теперь можно закрыть командную строку и установить драйвер из папки C:\cert\drv с помощью диспетчера устройств, или нажав правой кнопкой по .inf файлу и выбрав пункт «Установить». Потребуется подтвердить установку драйвера в окне «Не удалось проверить издателя этих драйверов» — нажать «Все равно установить этот драйвер».
Обратите внимание, что возможные ошибки в диспетчере устройств, отображаемые для устройства с самостоятельно подписанным драйвером обычно не имеют отношения непосредственно к процессу подписи (та же ошибка для них будет появляться и без подписи, при простом отключении проверки цифровой подписи драйверов в особых вариантах загрузки). Т.е. искать причину в этом случае нужно в чем-то ещё и читать подробную инструкцию по использованию драйвера (например, в случае драйверов для FlashTool).
Драйверы для Windows 10. Все способы установки
Для установки любого драйвера в Windows 10 в большинстве случаев достаточно использовать инструменты, входящие в состав операционной системы.
Установка драйверов на Windows 10 через Центр обновления Windows
Как и его предшественники, Windows 10 оснащена инструментом под названием «Центр обновления Windows», который позволяет поддерживать операционную систему в актуальном состоянии в отношении исправлений безопасности и обновлений микропрограмм Microsoft и сторонних продуктов.
Эта бесплатная функция по умолчанию включена в операционной системе, что позволяет автоматически загружать и устанавливать все компоненты, необходимые для обеспечения актуальности и безопасности Windows 10, включая драйверы.
Для установки драйверов нового устройства, подключенного к компьютеру, обычно ничего не нужно делать: если драйверы доступны в Центре обновления Windows, система автоматически загрузит и установит их в течение нескольких секунд.
Для поиска обновлений для драйверов, уже имеющихся на ПК, используйте комбинацию клавиш Windows + I или щелкните правой кнопкой мыши кнопку «Пуск» и выберите пункт «Настройки» из контекстного меню, чтобы получить доступ к настройкам Windows.
После запуска панели настроек Windows 10 выберите «Обновление и безопасность» > «Элементы Windows Update» и нажмите кнопку «Проверить наличие обновлений».
Таким образом, Центр обновления Windows будет искать любые доступные обновления для вашего ПК. В случае, если он найдет, он загрузит и установит необходимые компоненты. В некоторых случаях вам будет предложено перезагрузить операционную систему, чтобы подтвердить обновление драйверов или исправлений безопасности. В этом случае просто нажмите кнопку «Перезагрузить сейчас» и дождитесь завершения процедуры.
Установить драйверы на Windows 10 через исполняемый файл
В случае, если Центр обновления Windows не найдет драйвер для установки на вашем компьютере, можете прибегнуть к ручной установке с помощью файловых пакетов, загружаемых с веб-сайта производителя.
Установите драйверы вручную на Windows 10
Сначала нажмите кнопку «Пуск» и выберите пункт «Диспетчер устройств» в контекстном меню.
Теперь на панели, которую вы видите, нажмите значок +, расположенный рядом с типом компонента, который хотите обновить, чтобы развернуть все сгруппированные элементы и определить компонент, для которого хотите установить драйверы: элементы, перечисленные без установленного драйвера помечается значком с восклицательным знаком.
После того, как выбрали компонент, «Обновите драйвер» в открывшемся меню.
На появившемся экране нажмите на элемент «Автоматический поиск обновленных драйверов», чтобы воспользоваться преимуществами функции автоматической установки драйверов, и в случае успеха драйверы будут загружены и установлены из интернета.
Если эта опция не работает, повторите вышеописанную процедуру, но нажав на пункт «Поиск программного обеспечения драйвера на вашем компьютере».
На этом этапе с помощью кнопки «Обзор» найдите папку, относящуюся к пакету, который ранее загрузили с веб-сайта производителя. Затем нажмите кнопку «Далее» и дождитесь установки драйверов.
Если даже эта процедура не удалась, на экране установки и обновления драйверов щелкните элементы «Поиск программного обеспечения драйвера на вашем компьютере» > «Выбрать из списка доступных драйверов».
Затем нажмите кнопку «Драйвер диска» и в появившемся окне используйте кнопку «Обзор», чтобы найти папку, в которой находятся загруженные ранее драйверы.
Затем выберите INF- файл драйвера и нажмите кнопку «Далее» для завершения операции. Если увидите панель уведомлений, нажмите «Да», чтобы подтвердить установку драйвера.
Если хотите подключить очень старый аппаратный компонент, который не распознается Windows 10 , можете использовать функциональность аппаратного обеспечения прежних версий. На панели «Управление устройствами» щелкните пункты «Действие» > «Добавить устаревшее оборудование».
После этого активируйте пункт «Установить вручную выбранное оборудование из списка» и нажмите кнопку «Далее». На этом этапе выберите категорию оборудования, которое хотите установить на свой компьютер, а затем нажмите кнопки «Далее» и «Драйвер диска».
Далее нажмите кнопку «Обзор» и найти INF-файл в папке, где находятся загруженные драйверы. Затем нажмите кнопку «Далее», чтобы подтвердить процедуру.
Установить драйверы Windows 10 без цифровой подписи
Когда устанавливаете драйвер в Windows 10 , это обеспечивается почти во всех случаях цифровой подписью, что позволяет гарантировать надежность программного обеспечения. Цифровая подпись необходима, для чтобы гарантировать, что драйвер, который собираетесь установить, безопасен для вашего компьютера.
Однако в некоторых случаях некоторые драйверы могут не иметь цифровой подписи, хотя они получены из надежных источников. Windows 10, несмотря на надежность источника, не разрешает его установку, если сначала не отключена проверка подписи.
Чтобы отключить проверку подписи драйверов, откройте панель настроек Windows, используя комбинацию клавиш Windows + I и выберите пункт «Настройки» в контекстном меню.
На панели, которую видите на экране, выберите пункты «Обновление и безопасность» > «Восстановление» и нажмите кнопку «Перезагрузить сейчас» под надписью «Расширенный запуск». Компьютер перезагрузится, показывая расширенный экран запуска ПК.
Теперь среди различных параметров, которые видите, выберите пункты «Устранение неполадок > Дополнительные параметры > Просмотреть другие параметры восстановления > Параметры запуска», затем нажмите цифровую клавишу, соответствующую элементу «Отключить наложение подписи драйвера», и дождитесь перезагрузки ПК.
Затем компьютер перезагрузится без проверки цифровой подписи драйверов.
Далее перезагрузите систему в стандартном режиме.
Если статья была полезной для Вас, подписывайтесь на наш канал, пишите комментарии и ставьте лайки!