Установка неподписаного драйвера во время разработки и тестирования
По умолчанию 64-разрядные версии Windows Vista и более поздние версии Windows загружают драйвер в режиме ядра только в том случае, если ядро может проверить подпись драйвера. Однако это поведение по умолчанию может быть отключено во время ранней разработки драйвера и для неавтоматиченного тестирования. Разработчики могут использовать один из следующих механизмов для временного отключения принудительного применения допустимой сигнатуры драйвера во время загрузки. Однако для полной автоматизации тестирования драйвера, установленного Plug and Play (PnP), файл каталога драйвера должен быть подписан. Подписывание драйвера является обязательным, так как в Windows Vista и более поздних версиях Windows отображается диалоговое окно подписывания драйвера для неподписанных драйверов, для которых системный администратор должен авторизовать установку драйвера, что потенциально запрещает любому пользователю без необходимых прав устанавливать драйвер и использовать устройство. Это поведение установки драйвера PnP нельзя отключить в Windows Vista и более поздних версиях Windows.
Использование параметра F8 Advanced Boot
Windows Vista и более поздние версии Windows поддерживают параметр F8 Advanced Boot Option (Отключить принудительное применение подписи драйвера), который отключает принудительное применение подписи во время загрузки для драйвера режима ядра только для текущего системного сеанса. Этот параметр не сохраняется при перезапуске системы.
Присоединение отладчика ядра для отключения проверки подписи
Присоединение активного отладчика ядра к компьютеру разработки или тестирования отключает принудительное применение подписи во время загрузки для драйверов режима ядра. Чтобы использовать эту конфигурацию отладки, подключите компьютер отладки к компьютеру разработки или тестирования и включите отладку ядра на компьютере разработки или тестирования, выполнив следующую команду:
bcdedit -debug on
Чтобы использовать BCDEdit, пользователь должен быть членом группы администраторов в системе и выполнить команду из командной строки с повышенными привилегиями. Чтобы открыть окно командной строки с повышенными привилегиями, создайте ярлык на рабочем столе, чтобы Cmd.exe, выберите и удерживайте (или щелкните его правой кнопкой мыши) и выберите Запуск от имени администратора.
Применение проверки подписи Kernel-Mode в режиме отладки ядра
Однако бывают ситуации, когда разработчику может потребоваться подключить отладчик ядра, но при этом также необходимо поддерживать принудительное применение подписи во время загрузки. Например, если стек драйверов содержит неподписанный драйвер (например, драйвер фильтра), который не загружается, это может сделать весь стек недействительным. Так как присоединение отладчика позволяет загрузить неподписанный драйвер, проблема исчезает сразу после подключения отладчика. Отладка этого типа проблемы может быть сложной.
Чтобы упростить отладку таких проблем, политика подписывания кода в режиме ядра поддерживает следующее значение реестра:
HKLM\SYSTEM\CurrentControlSet\Control\CI\DebugFlags
Это значение реестра относится к типу REG_DWORD, и ему может быть присвоено значение на основе побитового или одного или нескольких следующих флагов:
0x00000001
Это значение флага настраивает ядро для прерывания в отладчике, если драйвер не подписан. Затем разработчик или тестировщик может загрузить неподписанный драйвер, введя g в командной строке отладчика.
0x00000010
Это значение флага настраивает ядро так, чтобы игнорировать присутствие отладчика и всегда блокировать загрузку неподписаного драйвера.
Если это значение реестра не существует в реестре или имеет значение, не основанное на флагах, описанных выше, ядро всегда загружает драйвер в режиме отладки ядра независимо от того, подписан ли драйвер.
Примечание Это значение реестра не существует в реестре по умолчанию. Для отладки проверки подписи в режиме ядра необходимо создать значение .
Обратная связь
Были ли сведения на этой странице полезными?
Как подписать драйвер 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 стороннего производителя не содержит информации о подписи».
Что потребуется для подписи драйвера
Для того, чтобы выполнить все описанные далее шаги, скачайте и установите следующие инструменты с сайта Майкрософт:
- Microsoft Windows SDK for Windows 7 https://www.microsoft.com/en-us/download/details.aspx?id=8279
- Windows Driver Kit 7.1.0 https://www.microsoft.com/en-us/download/details.aspx?id=11800
Из первого набора достаточно будет установить Tools, из второго (представляет собой ISO-образ с установщиком, с которого нужно запустить KitSetup.exe) — выбрать Build Environments и Tools.
Обратите внимание: это не последние версии наборов инструментов, но они в равной степени подойдут для самостоятельной подписи драйверов для последующей установки во всех ОС от Windows 10 до Windows 7, при этом в инструкции не потребуется вдаваться в некоторые дополнительные нюансы.
Процесс самостоятельной подписи драйвера
В процессе для того, чтобы подписать драйвер самостоятельно, нам потребуется: создать сертификат, подписать драйвер этим сертификатом, установить сертификат в системе и установить драйвер. Начнем.
- Создайте в корне диска C какую-либо папку (так к ней проще будет обращаться в дальнейшем), например, C:\cert, где мы будем работать с сертификатами и драйверами.
- Запустите командную строку от имени администратора (нужны для 18-го шага). Далее используем следующие команды по порядку. Файлы драйвера пока не потребуются. Во время выполнения второй команды вас попросят ввести пароль, я использую password в окне запроса и далее в командах, вы можете использовать свой.
cd "C:\Program Files\Microsoft SDKs\Windows\v7.1\bin"
makecert -r -sv C:\cert\driver.pvk -n CN="remontka" C:\cert\driver.cer
cert2spc C:\cert\driver.cer C:\cert\driver.spc
pvk2pfx -pvk C:\cert\driver.pvk -pi password -spc C:\cert\driver.spc -pfx C:\cert\driver.pfx -po password


cd C:\WinDDK\7600.16385.1\bin\selfsign\
inf2cat.exe /driver:"C:\cert\drv" /os:7_X64 /verbose
cd "C:\Program Files\Microsoft SDKs\Windows\v7.1\bin"
signtool sign /f C:\cert\driver.pfx /p password /t http://timestamp.verisign.com/scripts/timestamp.dll /v C:\cert\drv\catalog.cat
certmgr.exe -add C:\cert\driver.cer -s -r localMachine ROOT certmgr.exe -add C:\cert\driver.cer -s -r localMachine TRUSTEDPUBLISHER
И вот теперь можно закрыть командную строку и установить драйвер из папки C:\cert\drv с помощью диспетчера устройств, или нажав правой кнопкой по .inf файлу и выбрав пункт «Установить». Потребуется подтвердить установку драйвера в окне «Не удалось проверить издателя этих драйверов» — нажать «Все равно установить этот драйвер».
Обратите внимание, что возможные ошибки в диспетчере устройств, отображаемые для устройства с самостоятельно подписанным драйвером обычно не имеют отношения непосредственно к процессу подписи (та же ошибка для них будет появляться и без подписи, при простом отключении проверки цифровой подписи драйверов в особых вариантах загрузки). Т.е. искать причину в этом случае нужно в чем-то ещё и читать подробную инструкцию по использованию драйвера (например, в случае драйверов для FlashTool).
А вдруг и это будет интересно:
- Лучшие бесплатные программы для Windows
- Как разрешить обычному пользователю запускать программу от имени Администратора без ввода пароля
- Как выйти из полноэкранного режима в Windows
- Как включить компактный вид панели быстрых настроек Windows 11
- Шрифты в интерфейсе Chrome стали более жирными и размытыми — как исправить?
- Msftconnecttest.com — что это и как исправить возможные ошибки
- Windows 11
- Windows 10
- Android
- Загрузочная флешка
- Лечение вирусов
- Восстановление данных
- Установка с флешки
- Настройка роутера
- Всё про Windows
- В контакте
- Одноклассники
-
Nazer92 10.01.2021 в 13:40
Спасибо за инструкцию, имеется вебка A4Tech PK-52MF драйвера на х64 не ставятся (хоть с диска в комплекте) делал поэтапно, столкнулся с ошибкой, была на :
signtool sign /f C:\cert\driver.pfx /p password /t http://timestamp.verisign.com/scripts/timestamp.dll /v C:\cert\drv\catalog.cat
«SignTool Error: An unexpected internal error has occurred.
Error information: «SignerTimeStamp() failed.» (-2147012865/0x80072eff)»
Заменил на
http://timestamp.globalsign.com/scripts/timstamp.dll
- Dmitry 11.01.2021 в 14:17
- Nazer92 11.01.2021 в 18:55
У кого выходит ошибка на последнем шаге «SignTool Error: An unexpected internal error has occurred.
Error information: «SignerTimeStamp() failed.» (-2147012865/0x80072eff)»
Используйте другие URL в команде, к примеру у меня сработал первый. Nazer92 заметил верно, но предложенный им вариант не работает
http://tsa.starfieldtech.com http://timestamp.globalsign.com/scripts/timstamp.dll http://timestamp.comodoca.com/authenticode http://www.startssl.com/timestamp http://timestamp.verisign.com/scripts/timstamp.dll
- Юрий 29.05.2021 в 15:35
У меня заработал только этот, я проверял вообще все что нашёл в сети
http://timestamp.comodoca.com/authenticode
- Dmitry 16.07.2021 в 15:52
- Владимир 16.07.2021 в 16:29
Так я и скопировал их с С:\cert\drv там 2 файла sys и inf.
Как вы и писали
inf2cat.exe /driver:"C:\cert\drv" /os:7_X64 /verbose
C:\WinDDK\7600.16385.1\bin\selfsign>inf2cat.exe /driver:"C:\cert\drv" /os:7_X86 /verbose
- Dmitry 16.07.2021 в 20:08
Здравствуйте!
После команды:
inf2cat.exe /driver:"C:\cert\drv" /os:7_X86 /verbose
- Dmitry 14.09.2021 в 19:32
- Dmitry 05.10.2021 в 21:13
Здравствуйте.
В секции Manufacturer есть строка
%ManufacturerName%=
после знака равно измените то, что там есть на
=Standard,NTx86,NTAMD64
Вроде все подписалось,но только по
http://timestamp.comodoca.com/authenticode
- Green 05.01.2023 в 04:34
Как подписать драйвер Windows с помощью самоподписанного сертификата?
15.02.2022
itpro
Windows 10, Windows 11, Windows 7, Windows Server 2019
комментариев 60
Все 64 битные версии Windows по умолчанию запрещают установку драйверов устройств, которые не подписаны с помощью корректной цифровой подписи. Неподписанные драйвер блокируются операционной системой. Наличие цифровой подписи гарантирует, что драйвер выпущен доверенным разработчиком или вендором, а его код не был модифицирован.
В Windows x64 вы можете отключить проверку цифровой подписи устанавливаемого драйвера: с помощью групповой политики или тестового режима загрузки системы (подробнее все способы описаны в статье Отключаем проверку цифровой подписи для установки неподписанных драйверов в Windows).
Сегодня мы покажем, как можно самостоятельно подписать любой неподписанный драйвер для x64 битной версии Windows (инструкция применима для Windows 11, 10, 8.1 и 7).
Предположим, что у нас имеется драйвер некого устройства для x64 Windows 10, у которого отсутствует цифровая подпись (в нашем примере это будет драйвер для довольно старого графического адаптера видеокарты). Я скачал архив с драйверами для Windows с сайта производителя (мне удалось найти драйвер только для Windows Vista x64). Архив с драйвером я распаковал в каталог c:\tools\drv1\. Попробуем установить драйвер, добавив его в хранилище драйверов Windows с помощью стандартной утилиты pnputil.
Pnputil –a «C:\tools\drv1\xg20gr.inf»
Примечание. Эта и все последующие команды выполняются в командной строке, запущенной с правами администратора.
При установке драйвера в Windows 7 появляется предупреждение о том, что ОС не может проверить цифровую подпись драйвера.
В Windows 10 (21H1) появляется предупреждение:
Не удалось добавить пакет драйвера: INF стороннего производителя не содержит информации о подписи.
Adding the driver package failed : The third-party INF does not contain digital signature information.
Такая же ошибка появляется при установке драйвера из проводника Windows (щелкните ПКМ по inf файлу драйвера и выберите Install / Установить):
The third-party INF does not contain digital signature information.
INF стороннего производителя не содержит информации о подписи.
Попробуем подписать данный драйвер с помощью самоподписанного сертификата.
Для работы нужно скачать и установить следующие инструменты разработчика приложений для вашей версии Windows.
- WindowsSDK (или Microsoft Visual Studio 2005 или выше) для вашей версии Windows. В состав этих пакетов входит WindowsSDKSigningtoolsforDesktop, в которую включена необходимая нам утилита — signtool.exe ;
- Windows Driver Kit (WDK) — https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk
Совет. Перед установкой этих инструментов, проверьте, что в Windows установлен .NET Framework 4.
Создаем самоподписанный сертификат драйвера
Создайте в корне диска каталог C:\DriverCert .
Для создания самоподписанного сертификата типа Code Signing можно использовать PowerShell командлет New-SelfSifgnedCertificate. В этом примере мы создадим самоподписанный сертификат со сроком действия 3 года.
$todaydate = Get-Date
$add3year = $todaydate.AddYears(3)
$cert = New-SelfSignedCertificate -Subject «Winitpro” -Type CodeSigningCert -CertStoreLocation cert:\LocalMachine\My -notafter $add3year
Затем нужно экспортировать данный сертификат в pfx файл с паролем:
$CertPassword = ConvertTo-SecureString -String “P@ss0wrd” -Force –AsPlainText
Export-PfxCertificate -Cert $cert -FilePath C:\DriverCert\myDrivers.pfx -Password $CertPassword
Теперь нужно добавить сертификат в доверенные корневые сертификаты и в сертификаты доверенных издателей:
$certFile = Export-Certificate -Cert $cert -FilePath C:\DriverCert\drivecert.cer
Import-Certificate -CertStoreLocation Cert:\LocalMachine\AuthRoot -FilePath $certFile.FullName
Import-Certificate -CertStoreLocation Cert:\LocalMachine\TrustedPublisher -FilePath $certFile.FullName
В предыдущих версиях Windows для создания сапомодписанных сертификатов нужно использовать утилиту makecert.exe из Windows Software Development Kit (SDK). В этом случае команды для создания сертификата будут выглядеть так:
cd “C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1\bin”
makecert -r -sv C:\DriverCert\myDrivers.pvk -n CN=»Winitpro» C:\DriverCert\MyDrivers.cer
Укажите пароль для ключа (например, P@ss0wrd ).
На основе созданного сертификата создайте публичный ключ для сертификата издателя ПО (PKCS).
cert2spc C:\DriverCert\myDrivers.cer C:\DriverCert\myDrivers.spc
Объедините публичный ключ (.spc) и персональный ключ (.pvk) в одном файле сертификата формата Personal Information Exchange (.pfx).
pvk2pfx -pvk C:\DriverCert\myDrivers.pvk -pi P@ss0wrd -spc C:\DriverCert\myDrivers.spc -pfx C:\DriverCert\myDrivers.pfx -po P@ss0wrd
Добавьте сертификат в доверенные:
certmgr.exe -add C:\DriverCert\myDrivers.cer -s -r localMachine ROOT
certmgr.exe -add C:\DriverCert\myDrivers.cer -s -r localMachine TRUSTEDPUBLISHER
В домене вы можете централизованно распространить этот сертификат на рабочие станции с помощью групповой политики. Запустите консоль управления локальными сертификатами компьютера и убедитесь, что ваш сертификат есть в хранилищах Trusted Publishers и Trusted Root Certification Authorities локальной машины).
Примечание. При проверке хранилища сертификатов с помощью утилиты Sigcheck этот сертификат будет отображаться как недоверенный, т.к. он отсутствует в списке со списком корневых сертификатов Microsoft (этот список нужно периодически обновлять).
Совет. Несмотря на то, что сертификат имеет ограниченный срок действия, истечение срока действия сертификата CodeSigning означает, что вы не сможете создавать новые сигнатуры. Срок действия драйвера, уже подписанного этим сертификатом, бессрочен (либо старые сигнатуры действуют в течении указанного timestamp).
Генерируем CAT файл драйвера
Создайте каталог C:\DriverCert\xg и скопируйте в него все файлы из каталога, в который первоначально был распакован архив с драйвером (c:\tools\drv1\). Убедить что среди файлов имеются файлы с расширением .sys и .inf (в нашем случае xg20grp.sys и xg20gr.inf).
md C:\DriverCert\xg
xcopy c:\tools\drv1\ C:\DriverCert\xg /i /c /k /e /r /y
Перейдем в каталог:
cd “C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86”
На основе inf файла с помощью утилиты inf2cat.exe (входит в состав Windows Driver Kit -WDK) сгенерируйте cat файл (содержит информацию о всех файлах пакета драйвера).
inf2cat.exe /driver:»C:\DriverCert\xg» /os:7_X64 /verbose
Чтобы убедитесь, что процедура прошла корректно, проверьте, что в каталоге появился файл C:\DriverCert\xg\xg20gr.cat, и в логе есть сообщения:
Signability test complete.
Catalog generation complete.
Совет. В моем случае команда Inf2Cat.exe вернула ошибку:
Signability test failed. Errors: 22.9.7: DriverVer set to incorrect date (must be postdated to 4/21/2009 for newest OS) in \hdx861a.inf
Для исправления ошибки нужно в секции [Version] найти строку с DriverVer= и заменить ее на:
DriverVer=05/01/2009,9.9.9.9
Если у вас появится ошибка Missing AMD64 CatalogFile entry (для 64-бит) или Missing 32-bit CatalogFile entry . Нужно в секцию [Version] .inf файла добавить строку CatalogFile=xg20gr.cat .
Подписываем драйвер самоподписанным сертификатом
Перейдите в каталог:
cd «C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x64»
Подпишите комплект файлов драйвера созданным сертификатом. В качестве сервиса таймстампа (штамп времени) воспользуемся ресурсом Globalsign. Следующая команда подпишет CAT файл цифровой подписью с помощью сертификата, хранящегося в PFX-файл, защищенном паролем.
signtool sign /f C:\DriverCert\myDrivers.pfx /p P@ss0wrd /t http://timestamp.globalsign.com/scripts/timstamp.dll /v «C:\DriverCert\xg\xg20gr.cat»
В современных версиях Windows 10 и Windows 11 при выполнении этой команды появится ошибка:
SignTool Error: No file digest algorithm specified. Please specify the digest algorithm with the /fd flag. Using /fd SHA256 is recommended and more secure than SHA1. Calling signtool with /fd sha1 is equivalent to the previous behavior. In order to select the hash algorithm used in the signing certificate's signature, use the /fd certHash option.
Нужно использовать другую команду:
signtool sign /tr http://timestamp.digicert.com /td SHA256 /v /f C:\DriverCert\myDrivers.pfx /p P@ss0wrd «C:\DriverCert\xg\xg20gr.cat»
Если при выполнении команды появляется ошибка SignTool Error: An unexpected internal error has occurred, или Error information: SignerTimeStamp() failed. (-2147012865/0x80072eff) , попробуйте другой URL адрес сервера. Попробуйте любой из списка:
http://timestamp.verisign.com/scripts/timstamp.dll http://timestamp.globalsign.com/scripts/timstamp.dll http://timestamp.comodoca.com/authenticode http://www.startssl.com/timestamp http://tsa.starfieldtech.com
Если файл подписан успешно, должна появится надпись:
Successfully signed: C:\DriverCert\xg\xg20gr.cat Number of files successfully Signed: 1
Цифровая подпись драйвера содержится в .cat файле, на который ссылается .inf файл драйвера. С помощью следующей команды можно проверить цифровую подпись драйвера в cat файле:
SignTool verify /v /pa c:\DriverCert\xg\xg20gr.cat
Также можно увидеть информацию о сертификате в свойствах CAT файла на вкладке Digital Signatures.
Если сертификат не доверенный (или не был добавлен в хранилище корневых доверенных сертификатов), то при выполнении команды SignTool verify появится ошибка:
SignTool Error: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider.
CAT файл содержит цифровые подписи (отпечатки / thumbprints) всех файлов, которые находятся в каталоге драйвера (файлов, которые указаны в INF файле в секции CopyFiles). Если любой из этих файлов был изменен, то контрольная сумма файлов не будет совпадать с данными в CAT файле, в результате установка такого драйвера закончится ошибкой.
Установка драйвера, заверенного самоподписанным сертификатом
Попробуйте еще раз установить подписанный вами драйвер, выполнив команду:
Pnputil –i –a C:\DriverCert\xg20\xg20gr.inf
Successfully installed the driver on a device on the system. Driver package added successfully.
В Windows 10 и 11 появляется предупреждение о том, уверены ли вы, что хотите установить этот драйвер. Нажав Install, вы установите драйвер в системе.
Если по каким-то причинам драйвер не устанавливается, подробный лог установки драйвера содержится в файле C:\Windows\inf\setupapi.dev.log. Этот лог позволит вам получить более подробную информацию об ошибке установки. В большинстве случаев возникает ошибка Driver package failed signature validation . Скорее всего это означает, что сертификат драйвера не добавлен в доверенные сертификаты.
Если установка драйвера прошла успешно, в файле setupapi.dev.log будут примерно такие строки:
>>> [Device Install (DiInstallDriver) - C:\WINDOWS\System32\DriverStore\FileRepository\xg20gr.inf_amd64_c5955181485ee80a\xg20gr.inf] >>> Section start 2018/07/22 23:32:57.015 cmd: Pnputil -i -a c:\DriverCert\xg\xg20gr.inf ndv: Flags: 0x00000000 ndv: INF path: C:\WINDOWS\System32\DriverStore\FileRepository\xg20gr.inf_amd64_c5955181485ee80a\xg20gr.inf inf: 23:32:57.046 inf: Copy style: 0x00000000 inf: Driver Store Path: C:\WINDOWS\System32\DriverStore\FileRepository\xg20gr.inf_amd64_c5955181485ee80a\xg20gr.inf inf: Published Inf Path: C:\WINDOWS\INF\oem23.inf inf: 23:32:57.077Драйверы Kernel-Mode и User-Mode
Напомню, что в Windows драйвер могут выполнятся либо в режиме ядра (kernel-mode), либо в режиме пользователя (user-mode). Драйверы режима ядра, подписанные таким образом не будут загружаться при загрузке Windows в режиме UEFI Secure Boot с ошибкой:
Event ID: 7000 ERROR_DRIVER_BLOCKED 1275 (0x4FB) This driver has been blocked from loading.
Проверить, включен ли режим Secure Boot можно с помощью команды:
Все драйвера, режима ядра, загружаемые при включенном SecureBoot, должны быть подписаны в ходе процесса сертификации Microsoft (WHQL — Windows Hardware Quality Lab). Причина в том, что при загрузке ядра, UEFI не может проверить сертификаты в локальном хранилище Windows.
SignTool Error: Signing Cert does not chain to a Microsoft Code Verification Root.Microsoft ввела обязательную сертификацию сторонних драйверов по программе Windows Hardware Compatibility Program начиная с Windows 10 1607.
Само подписанные драйвера режима пользователя (это обычно принтеры, сканеры, плоттеры и т.д.) будут работать даже при включенном SecureBoot.
Для kernel-mode драйверов придется отключить проверку цифровой подписи при загрузке и загружаться в тестовом режиме с помощью bcdedit.exe, как описано здесь:
bcdedit.exe /set /nointegritychecks on
bcdedit.exe /set testsigning ON
Предыдущая статья Следующая статья
Как отключить проверку цифровой подписи драйвера в Windows 7
08.05.2014
itpro
Windows 7
комментария 104
В ОС Windows 7 Microsoft существенно ужесточила требованию к устанавливаемым драйверам (рекомендуем познакомиться с занимательной статьей об установке драйверов устройств в Windows 7). Теперь любой устанавливаемый драйвер должен иметь цифровую подпись, проверенную и сертифицированную Microsoft. Перед загрузкой и установкой драйвера любого устройства Windows 7 проверяет цифровую подпись этого драйвера. И если при попытке установить драйвер для нового устройства в Windows 7 вы увидите сообщение: «Windows can’t verify the publisher of this driver software», значит, данный драйвер не имеет цифровой подписи. В указанном диалогом окне можно выбрать вариант ”Install this driver software anyway” («Все равно установить этот драйвер»), однако в любом случае этот драйвер не установится, и значит, устройство работать не будет.
При установке неподписанного драйвера, в диспетчере устройств данное устройство будет помечено восклицательным знаком и содержать следующее сообщение об ошибке:
Windows cannot verify the digital signature for the drivers required for this device. A recent hardware or software change might have installed a file that is signed incorrectly or damaged, or that might be malicious software from an unknown source. (Code 52)
Также о проблемах с цифровой подписью драйверов могут свидетельствовать такие ошибки: Device driver software was not successfully installed
Политика проверки цифровой подписи у драйверов работает как в 32-х (x86), так и в 64-х (x64) версиях Windows 7 и главная причина появления такой политики установки сторонних драйверов – желание улучшить стабильность и надежность ОС Windows, добившись того, чтобы все выпускаемые драйвера проходили через сертификационный тест и тест на совместимость в Microsoft.
К счастью в Windows 7 можно отключить проверку цифровой подписи драйвера. И сделать это можно несколькими способами:
- Самому подписать драйвер (сделать это можно с помощью специального софта, или по инструкции, описанной в мануале Как подписать цифровой подписью драйвер для Windows 7 x64)
- Отключить проверку цифровой подписи драйверов с помощью групповой политики
Рассмотрим все перечисленные варианты отключения проверки подписей драйверов
Загрузка Windows 7 без проверки цифровой подписи
Возможно временно отключить проверку подписей драйверов, если перегрузить систему, при загрузке нажать клавишу F8. В появившемся меню с вариантами загрузки системы выбрать пункт Disable Driver Signature Enforcement(«Отключение обязательной проверки подписи драйвера»).
После загрузки Win 7 можно будет установить неподписанный драйвер и протестировать его работу, однако если загрузиться в обычном режиме, драйвер работать не будет
Отключаем проверку подписи драйверов в Windows 7 с помощью групповой политики
В том случае, если вы полностью хотите отключить проверку подписывания драйверов в Windows 7, сделать это можно с помощью групповой политики.
В меню политик перейдите в раздел User Configuration->Administrative Templates-> System->Driver Installation.
В правой панели найдите пункт ‘Code Signing for Device Drivers’ и дважды щелкните по нему.
В появившемся окне выберите ‘Enabled’, а в нижнем меню — ‘Ignore’. Нажмите Ок и перезагрузите компьютер. После перезагрузи и применения политика, в своей Windows 7 вы полностью отключите подписывание драйверов, и сможете установить любые, в том числе, неподписанные драйвера.
Отключаем проверку цифровой подписи драйверов в Windows 7 с помощью bcdedit
Откройте командную строку с правами администратора и последовательно наберите следующие две команды:
bcdedit.exe /set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit.exe /set TESTSIGNING ON
После выполнения каждой из команд должно появиться сообщение о том, что команда выполнена успешно.
Перезагрузите компьютер и попробуйте установить неподписанный драйвер. Вуаля!
Если вам нужно отменить этот режим работы и вновь включить проверку цифровой подписи в win 7, выполните следующие команды:
bcdedit.exe /set loadoptions ENABLE_INTEGRITY_CHECKS
bcdedit.exe /set TESTSIGNING OFF
Предыдущая статья Следующая статья
Читайте далее в разделе Windows 7
Папки на флешке стали ярлыками
BOOTMGR is compressed в Windows 7. Что делать?
Восстанавливаем языковую панель в Windows 7