Подтвердить что ты не робот

Почему мой корневой сертификат не доверен?

Я выдал сертификат сертификата подписи с сервера сертификатов. Я также выдал корневой сертификат с того же сервера сертификатов. Корневой сертификат существует в хранилищах сертификатов текущего пользователя и локального компьютера в папке "Доверенные корневые центры сертификации". У меня успешно подписан DLL с помощью мастера signtool.exe:

"C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\signtool.exe" signwizard <MyDLLName>.dll

Однако, когда я пытаюсь проверить свою DLL, он не выполняет проверку со следующей ошибкой:

"C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\signtool.exe" verify <MyDLLName>.dll
SignTool Error: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider.
SignTool Error: File not valid: <MyDLLName>.dll

Почему это происходит? Я думал, что наличие корневого сертификата в папке "Проверенные корневые центры сертификации" проверяет DLL.

4b9b3361

Ответ 1

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

Посмотрите здесь дополнительные параметры: http://msdn.microsoft.com/en-us/library/8s9b9yaz(v=vs.90).aspx