Подпись под дешевым драйвером Windows для 64-битной Windows 7

Мне нужно установить драйвер libusb-win32 на 64-разрядных компьютерах с Windows 7. Этот драйвер является открытым исходным кодом, поэтому он не имеет цифровой подписи, поэтому я хочу сделать это сам, но мне интересно, можно ли это сделать БЕЗ больших денег. Можно ли использовать сертификат, НЕ подписанный Verisign или GlobalSign? Может быть, самоподписанный или используя вместо этого StartSSL?

И если да, то как мне это сделать? Согласно практическим рекомендациям, Практическая правда о подписи драйвера ядра x64, я должен использовать" кросс-сертификат "(а их всего шесть в списке Microsoft, и большинство из них предназначены для центров сертификации, которые больше не активны).

Меня не волнует, увидит ли пользователь предупреждающее сообщение. Я могу даже согласиться, если пользователю сначала нужно установить специальный сертификат CA. Мне нужно только, чтобы драйвер запускался без ручного отключения проверки подписи при каждом запуске Windows.


person kayahr    schedule 17.05.2010    source источник


Ответы (3)


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

person Luke    schedule 17.05.2010
comment
И нет возможности ввести собственный сертификат CA, чтобы Windows принимала драйверы, подписанные этим настраиваемым CA? - person kayahr; 18.05.2010
comment
Нет, драйвер должен быть подписан одним из сертификатов, предоставляемых Microsoft. Вы можете добавить свой собственный сертификат CA, но без соответствующего сертификата с перекрестной подписью он вам не поможет; только Microsoft может генерировать сертификаты с перекрестной подписью. - person Luke; 18.05.2010
comment
Корневой ЦС Microsoft (к которому вы подключаете свой сертификат с кросс-сертификатом) встроен глубоко в ядро; это не связано с хранилищем сертификатов. Хотя вы можете обойти рейтинг доверия к драйверам SetupAPI, установив корневой сертификат в хранилище сертификатов, это не имеет отношения к KMCS. - person Ilya; 27.03.2012

LibUSB_win32 теперь уже подписан, согласно http://sourceforge.net/apps/trac/libusb-win32/wiki

В нем говорится: «Vista / 7/2008 / 2008R2 64-битные поддерживаются начиная с версии 1.2.0.0, поскольку цифровая подпись, принятая Microsoft KMCS, встроена в драйвер ядра libusb0.sys».

Поэтому единственное, что вам нужно сделать, это обновить драйвер libusb_win32.

person JCH2k    schedule 11.01.2013

Чтобы разрешить загрузку в ядро, вы должны подписаться с этим CA и проверить WHDL.

Единственной альтернативой может быть использование инфраструктуры драйверов пользовательского режима. (но libusb не поддерживает - это обсуждалось, но так и не реализовано)

person J-16 SDiZ    schedule 17.05.2010
comment
Вы можете объяснить, что означает проверка WHDL? - person kayahr; 17.05.2010
comment
Драйверам не нужно проходить WHQL для загрузки в x64 Windows, их просто нужно подписать. - person BCran; 12.09.2010