Цифровая подпись образа windows

Цифровая подпись драйвера в Windows

Дмитрий Корнев

В операционных системах Windows, начиная с версии Vista, все драйверы устройств должны иметь цифровую подпись. В этой публикации о том, как можно выйти из ситуации. Возможно ли подписать драйвер своими силами?

Переломным моментом стал выход пакета обновления SP1 для Windows Vista, поскольку до него оставалась возможность отключения проверки подписей. В командной строке необходимо было выполнить:

С выходом различных заплаток и пакетов обновления это «правильное» отключение было заблокировано разработчиками Microsoft. Однако остались и другие методы, позволяющие использовать драйверы устройств, не имеющие цифровой подписи.

Самый доступный и очевидный — это ручной метод, предусматривающий нажатие клавиши «F8» на начальном этапе загрузки операционной системы. В появляющемся меню загрузчика присутствует пункт «Отключение обязательной проверки подписи драйверов». Конечно же, чтобы работать с неподписанными драйверами устройств в таком режиме, требуется каждый раз во время загрузки выполнять данное действие, что, согласитесь, в конечном итоге может сильно надоесть. Именно по этой причине данный метод был усовершенствован.

Как-то я уже рассказывали про программу ReadyDriver Plus, которая способна автоматизировать ручной способ. Она интегрируется в стандартный загрузчик Windows Vista, после чего во время каждой загрузки автоматически выбирает пункт меню «Отключение обязательной проверки подписи драйверов». К сожалению, применение данной программы нельзя назвать полностью безопасным, ведь одна производит модификацию системных файлов. К тому же, как выяснилось, программа не работает в новой операционной системе Windows 7, хотя возможно, что её автор в будущем выпустит совместимую версию.

К счастью, существует еще один метод, предназначенный для разработчиков драйверов. Ведь очевидно, что они не могут предоставлять каждую бету версию своих драйверов для подписи в Microsoft. Именно по этой причине в Windows Vista, а также в новой операционной системе Windows 7 встроен тестовый режим. Он позволяет разработчикам протестировать их программный код еще до того, как он будет отправлен в лабораторию Microsoft. Правда, здесь тоже есть один нюанс. Даже в тестовом режиме системные файлы драйверов должны получить свидетельство, прежде чем их можно будет установить. Благо, на помощь пришли энтузиасты со своей программой Driver Signature Enforcement Overrider (DSEO). Она позволяет создавать свои собственные непроверенные свидетельства.

Таким образом, суть метода относительно проста. Требуется лишь включить тестовый режим в операционной системе и для всех драйверов устройств, не имеющих цифровой подписи, при помощи программы Driver Signature Enforcement Overrider получить свидетельства. Радует то, что при этом полностью отсутствуют риски привести операционную систему к нерабочему состоянию. Ведь от нас не требуется изменение загрузчика или других её системных файлов. Используется штатный метод, специально предусмотренный Microsoft. Единственное неудобство, которое вы получите, будет заключаться в том, что на рабочем столе возле часов будет выводиться маленькая надпись, сообщающая версию билда операционной системы.

Читайте также:  Создание символических ссылок windows

Программа Driver Signature Enforcement Overrider работает как с 32-битными, так и с 64-битными операционными системами. Перед использованием необходимо обязательно отключить контроль учетных записей пользователей (UAC). Инсталляция программы не требуется, просто скачайте её и запустите. Интерфейс предельно прост, и вся работа осуществляется в виде мастера.

Порядок действий

Согласитесь с тем, что вы используете данную программу на свой страх и риск, нажав соответствующую кнопку. Я, как и разработчики программы, не несём никакой ответственности за любой вызванный ущерб. Хотя, как уже было отмечено, программа использует штатный режим операционной системы и не может навредить сама по себе. Над чем действительно стоит задуматься, так это над тем, а стоит ли вообще использовать драйверы устройств, не имеющие цифровой подписи. Насколько они будут корректно работать? Доверяете ли вы их разработчику и источнику?

Включите тестовый режим, установив переключатель в положение «Enable Test Mode». Кстати, обратите внимание, что здесь же предусмотрено обратное действие «Disable Test Mode», отключающее тестовый режим.

Теперь нужно добавить подписи для непроверенных системных файлов. Для этого выберите «Sign a System File» и введите имя файла, включая полный путь. Например, если файл драйвера ATITool64.sys расположен в каталоге C:\Windows\System32\Drivers , то вам необходимо указать C:\Windows\System32\Drivers\ATITool64.sys .

В случае если необходимо подписать несколько файлов, то просто повторите эту процедуру несколько раз.

Вот собственно и все. После перезапуска компьютера драйверы будут работать. Если, конечно, они на это способны. Мы ведь просто решаем вопрос подписания дрйверов. А вот подходят ли они к вашему оборудованию и т.д. — это совсем другое.

Как проверить цифровую подпись для программы в Windows 10/8/7

Что такое цифровые подписи и почему они полезны? В этой статье мы рассмотрим три метода, с помощью которых вы можете узнать, проверить или проверить цифровую подпись программ в Windows 10/8/7.

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

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

Теперь нам также необходимо узнать о том, как проверять цифровые подписи, которые идут с файлом. Итак, давайте просто начнем.

Проверьте цифровую подпись для программы в Windows 10

Мы обсудим три метода проверки цифровых подписей программ в ОС Windows.

1] через проводник

Прежде всего, откройте проводник Windows и перейдите в папку, в которой сохранена ваша программа.

Нажмите правой кнопкой мыши файл установки и выберите Свойства.

Читайте также:  Загрузочная флешка mac os captain

Перейдите на вкладку, которая помечена как Цифровые подписи.

Если в списке подписи вы видите записи, это означает, что ваш файл имеет цифровую подпись.

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

Следовательно, вы можете знать, подписан ли файл оригинальным распространителем программного обеспечения или нет.

Кроме того, в подробном представлении подписи вы можете нажать кнопку с надписью Просмотреть сертификат , чтобы просмотреть дополнительные сведения о сертификате, который идет с подписью.

2] Использование утилиты сертификатов DigiCert

Используйте эту ссылку , чтобы загрузить последнюю версию DigiCert и запустить исполняемый файл.

Примите условия использования, отображаемые в начале, а затем перейдите на вкладку с надписью Подписывание кода , а затем в разделе заголовка нажмите Проверить подпись.

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

Это приведет к тому, что DigiCert проверит подпись и отобразит всю информацию в новом открывшемся окне.

DigiCert проверяет две вещи. Они заключаются в следующем:

  • Если файл был подписан и если подпись действительна.
  • Проверяет метку времени подписи.

Если вы получили две зеленые галочки, как показано на скриншоте выше, проверка прошла успешно. У вас есть дополнительная информация в этом окне для вашего удобства.

3] Использование SignTool

Microsoft поставляет программу с Windows SDK, которая называется SignTool. Windows SDK или Software Development Kit не поставляются встроенными в Windows. Он предназначен для разработчиков, и они должны устанавливать его отдельно. Если вы хотите попробовать этот метод, убедитесь, что у вас есть подходящий SDK для себя. Вы можете скачать Windows 10 SDK отсюда.

Это сообщение поможет вам, если вы увидите, что цифровая подпись для этого файла не может быть проверена в сообщении .

Как подписать драйвер 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, при этом в инструкции не потребуется вдаваться в некоторые дополнительные нюансы.

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

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

Читайте также:  Windows заходит под временным профилем

  1. Создайте в корне диска C какую-либо папку (так к ней проще будет обращаться в дальнейшем), например, C:\cert, где мы будем работать с сертификатами и драйверами.
  2. Запустите командную строку от имени администратора (нужны для 18-го шага). Далее используем следующие команды по порядку. Файлы драйвера пока не потребуются. Во время выполнения второй команды вас попросят ввести пароль, я использую password в окне запроса и далее в командах, вы можете использовать свой.
  3. До этого этапа всё должно пройти как на скриншоте ниже, командную строку не закрываем.
  4. В папке C:\cert создайте вложенную папку, например, drv и поместите туда свои файлы драйвера. Но: если вам требуется драйвер только для x64, не копируйте .inf файл для x86 систем в эту папку и наоборот. В командной строке используем следующие команды:
  5. В предыдущей команде для драйвера 32-бит укажите X86 вместо X64. Если будет предложено скачать .NET Framework, согласитесь, установите, а затем заново выполните команду. В идеале вы должны будете получить сообщение об успешном создании .cat файла для подписи. Однако, возможны ошибки, о наиболее частых — следующие два пункта. После исправления ошибок повторите команду из пункта 10.
  6. DriverVer set to incorrect date — возникает при дате в файле драйвера до 21 апреля 2009 года. Решение: откройте файл .inf из папки drv в текстовом редакторе (можно в блокноте) и в строке DriverVer установите другую дату (формат: месяц/день/год).
  7. Missing AMD64 CatalogFile entry (для 64-бит) или Missing 32-bit CatalogFile entry. Решение: откройте файл .inf из папки drv в текстовом редакторе и в разделе [Version] добавьте строку CatalogFile=catalog.cat
  8. В итоге вы должны получить сообщение: Catalog generation complete с указанием пути к файлу каталога, в моем случае – C:\cert\drv\catalog.cat. Далее используем следующие команды (требуется подключение к Интернету).
  9. Результат подписи файла драйвера без ошибок на скриншоте ниже. Следующий шаг — добавить самоподписанный сертификат в список доверенных в системе, сделать это можно следующими двумя командами по порядку
  10. В результате вы должны получить сообщение «CertMgr Succeeded». Если Failed или certmgr.exe не является внутренней или внешней командой — убедитесь, что командная строка запущена от имени администратора, а вы находитесь в нужной папке (см. 15 шаг).

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

Обратите внимание, что возможные ошибки в диспетчере устройств, отображаемые для устройства с самостоятельно подписанным драйвером обычно не имеют отношения непосредственно к процессу подписи (та же ошибка для них будет появляться и без подписи, при простом отключении проверки цифровой подписи драйверов в особых вариантах загрузки). Т.е. искать причину в этом случае нужно в чем-то ещё и читать подробную инструкцию по использованию драйвера (например, в случае драйверов для FlashTool).

Оцените статью