WinQual: Почему WER не принимает сертификаты для подписи кода? - PullRequest
29 голосов
/ 04 марта 2009

Редактировать с 1/24/2015 : невозможно использовать другие доверенные центры сертификации. Вопрос и ответ не устарел:

WinQual по-прежнему отклоняет подпись:

enter image description here

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

enter image description here

Для полноты я оставлю правку ниже, что кто-то другой сделал; просто чтобы показать, как он ошибался. И он может жить с этим позором:


Редактировать по состоянию на 2014 год: теперь можно использовать другие доверенные центры сертификации. Вопрос и ответ устарели.


В 2005 году я попытался создать учетную запись WinQual в Microsoft, чтобы я мог получить наши (если они есть) файлы аварийного дампа, отправленные автоматически через Windows Error Reporting (WER). мне не разрешили получить свои аварийные дампы, потому что у меня нет сертификата Verisign. Вместо этого у меня есть более дешевый, генерируемый дочерней компанией Verisign: Thawte.


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

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

Тем не менее, WinQual от Microsof принимает только цифровые сертификаты, сгенерированные Verisign. Даже дочерние компании Verisign не достаточно хороши (Thawte).

Может ли кто-нибудь придумать какую-либо техническую, юридическую или этическую причину, по которой Microsoft не хочет принимать сертификаты для подписи кода? На сайте WinQual написано:

Почему требуется цифровой сертификат для Winqual Членство?

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

Не защищен ли цифровой сертификат Thawte?


Два года спустя я отправил в WinQual напоминание о том, что я ждал, когда смогу получить доступ к своим аварийным дампам. Ответ от команды WinQual был:

Здравствуйте,

Спасибо за напоминание. У нас есть уведомил соответствующих людей, что это все еще запрос.


В 2008 году я задал этот вопрос на форуме поддержки Microsoft, и получил ответ:

Мы только настроены на прием VeriSign Сертификаты на данный момент. У нас есть не имел подавляющего спроса на поддержка других типов сертификатов.

Что может означать отсутствие «настройки» для принятия других видов сертификатов?

Если отпечаток ключа, подписавшего тестовое приложение WinQual.exe, совпадает с отпечатком ключа, подписавшего исполняемый файл, аварийный дамп которого вы получили в дикой природе: доказано - это мои аварийные дампы, дайте их мне.

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

Microsoft является бесплатным для доверия подписавшего, но это не то же самое, что и личность.


Так что это мой вопрос, может кто-нибудь придумать какую-либо практическую причину, почему WinQual не настроен для поддержки цифровых подписей?

Один человек предположил, что ответ таков: они просто ленивы:

Не то чтобы я знал, но я бы предположил что команда работает на winQual Система это живая команда, а не разработчик команда - как в, личность и навыки направлены на поддержание существующих системы. Хотя я могу ошибаться.

Они не хотят делать работу, чтобы изменить это. Но может ли кто-нибудь придумать что-нибудь, что нужно изменить? Это та же логика, независимо от того, что сгенерировало ключ: «совпадает ли отпечаток пальца».

Чего мне не хватает?


Обновление

Приятно слышать истории других разработчиков. Таким образом, я знаю, что я не одинок, и этот вопрос может послужить средством перемен со стороны Microsoft. И даже если мое первоначальное намерение было недовольством, для того, чтобы этот вопрос действовал как StackOverflow, я ищу техническую причину , почему Microsoft могла принимать только сертификаты Verisign.

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

Что может происходить, что Microsoft специально не использует установленную криптографическую инфраструктуру, а вместо этого ограничивается Verisign?

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


Обновление Два

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

Вы можете видеть, что наш сертификат был подписан сертификатом уполномоченного по подписи кода Thawte, который, в свою очередь, подписан Thawte:

alt text

И сертификат thawte поставляется по умолчанию с Windows:

alt text

Сервер Thawte Premium CA достаточно хорош, чтобы ему доверяли все копии Windows и Internet Explorer. И уже существует установленный API для проверки того, является ли сертификат действительным (то есть доверенным).

Когда пришли парни из WinQual, им пришлось бы уйти с их пути , чтобы избежать проверки правильного пути, и вместо этого развернуть свое собственное решение, жестко кодируя только Verisign в качестве доверенного корня. Почему они должны изо всех сил игнорировать другие доверенные корневые права доступа, права, которые отправляют на машину Windows , на которой выполняется их код, и вместо этого жесткий код Verisign?

Вместо того, чтобы делать это так, как это делают все остальные (Windows Explorer, Firefox, Chrome, Internet Explorer, Opera, CertMgr и т. Д.), Они , в частности , разрешают только Verisign. И мой вопрос почему.

Why would WER not accept code-signing certificates?

Если бы это было просто:

  • потому что парень, который изначально написал это, не знал, как правильно сойти с макушки головы
  • и вместо того, чтобы тратить много времени на изучение правильного пути
  • он просто бросил что-то вместе
  • и просто для тестирования он жестко запрограммировал только одного подписавшего
  • с полным намерением вернуться позже и починить
  • но код сейчас работает
  • и он заработал без исправления
  • и никто не хочет брать на себя ответственность за его нарушение
  • и никто не хочет тратить деньги на это
  • и недостаточно клиентов жалуются, чтобы сделать его приоритетным
  • и даже если было много людей, жалующихся, всего за 99 $ купить Verisign
  • так что вы не можете просто отпустить его и купить Verisign?

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

Но из-за своей жизни я не могу думать о причине.

Ответы [ 8 ]

14 голосов
/ 14 апреля 2009

Ну, я только что отправил еще один запрос, в котором говорилось, что мы не будем участвовать, если они не примут сертификат Comodo Code Signing.

Microsoft связалась с нами, чтобы сообщить нам, что у нас есть отчеты по Windows 7, которые они хотят видеть, но мы не можем войти, потому что мы не используем Verisign. Хорошо, вы связались со мной ... Насколько более аутентифицированным я должен быть?

Я связался с менеджером по продукту, посмотрим, что произойдет.

И чтобы ответить на ваш полу риторический вопрос выше - нет НИКАКОЙ причины, по которой они не могут аутентифицировать другие подписанные EXE-файлы. Windows делает это, IE делает это, код уже там. Им не нужно делать ничего особенного, чтобы поддержать это.

UPDATE:

После разговора с представителем Microsoft мне сказали, что вы должны приобрести как минимум сертификат на сумму $ 99, чтобы "проверить" и получить отчеты об ошибках. Lame.

12 голосов
/ 18 октября 2010

Я только что зарегистрировался в WinQual, и я обдумывал этот вопрос; Я думаю, что теперь у меня есть ответ.

Вкратце: Они вообще не используют VeriSign в качестве сертификата: они просто передают задачу проверки вашей личности на аутсорсинг.

Microsoft не хочет, чтобы у вас был доступ к сайту WinQual без предварительной проверки вашей личности. Поэтому им нужен процесс проверки личности.

У них может быть отдел, который взимает с вас 99 долларов и выполняет проверку. Но у них уже есть значительные активы в VeriSign, в которой уже есть сотрудники, которые могут это сделать. Поэтому они используют процесс подписки на сертификат для проверки вашей личности. Он вообще не использует сертификат, он просто поручает VeriSign проверить вас.

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

Потому что это тот случай, когда Microsoft проверяет вашу личность, и они доверяют VeriSign, потому что у них есть пальцы в этом пироге, и они не доверяют Comodo так сильно, они хотят, чтобы вы использовали VeriSign для этой цели, а не любые другие сертификат. С точки зрения разработчика это кажется немного глупым, но я могу понять это с их точки зрения.

8 голосов
/ 09 августа 2010

После подписания кода и недавней регистрации в Winqual, вот некоторые пояснения:

  1. При регистрации (регистрации) в Winqual ваша подпись не проверяется в базе данных Winqual. Winqual проверяет только сертификат VeriSign, подтверждающий, что VeriSign проверил вашу личность. Затем они получают название вашей компании из вашей подписи.

  2. На следующем шаге вы должны создать один или несколько «файлов сопоставления продуктов» (используя инструмент от Microsoft) и загрузить их в Winqual. После этого серверы Winqual проверяют несколько терабайт базы данных о сбоях для всех файлов карты и предоставляют вам список «событий». (Какая подпись, которую вы использовали для подписи кода, поэтому не имеет значения.)

  3. Нет технической причины, по которой Microsoft не может принять и другие центры сертификации. Но: какую выгоду они получат от этого? Также существует специальная программа для получения годичного сертификата подписи кода от VeriSign всего за 99 долларов, и если сравнить его со стоимостью цепочки инструментов разработки или членством в MSDN / TechNet, это не совсем дорого.

  4. В нашем случае получение сертификата от VeriSign было простым и очень быстрым - весь процесс завершился в течение двух дней. (Мы не в США, поэтому я ожидал задержек.) [Просто для пояснения: вы сами генерируете свою подпись, и она состоит из company_private_key (используется для подписи) и company_public_key (для проверки вашей подписи кода). Любой центр сертификации (например, VeriSign) просто подпишет ваш company_public_key своим закрытым ключом. Это делает ваш сертификат проверяемым.]

  5. Мы не знали, что сертификат VeriSign $ 99 можно использовать и для подписи кода (это , а не только организационный идентификатор). Итак, изначально мы пошли на другой CA для подписи кода. Затем мы получили сертификат VeriSign для регистрации Winqual.

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

Надеюсь, это поможет пролить свет.

6 голосов
/ 05 ноября 2009

Та же история, я сертифицирую приложение для логотипа Win7, чтобы получить баллы за партнерскую программу MS. Я купил сертификат подписи кода Comodo. Приложение прошло тестирование, и теперь я пытаюсь настроить учетную запись Winqual, и после того, как я сначала разозлился из-за необходимости покупать еще один сертификат подписи, я получил 5-дневную задержку, пытаясь купить этот «Организационный сертификат» за 99 долларов. Ни в коем случае, " Регистрация SSL-сертификатов VeriSign временно недоступна. Пожалуйста, повторите попытку позже. ", и поддержка может оказаться худшей, с которой я когда-либо сталкивался. OMG ... пожалуйста, по крайней мере, попытайтесь прочитать описание проблемы или даже попытаться воспроизвести шаги, а не просто дать мне какое-то глупое решение для базы знаний по другой проблеме. Или просто сказать, что услуга недоступна, она будет доступна через 5 дней. Так расстраивает ...

Просто обновление, если у кого-то возникла такая же проблема, я наконец-то получил ответ на проблему с регистрацией и сделал заказ. (Полагаю, вам нужно найти нужного парня в техподдержке :)

"Приносим искренние извинения. Эта ошибка возникает из-за ошибки в регистрации организационного сертификата. Эта ошибка возникает, если в разделе" Информация о сертификате "(3-й шаг) какой-либо страны указана другая страна. Регистрация. Эта информация была передана инженерам, которые сейчас занимаются ее исправлением. Тем временем вы можете сделать следующее, чтобы обойти ошибку и завершить регистрацию: В разделе «Информация о сертификате» введите страну как «США», а штат - как «Калифорния». Вся остальная информация может быть правильной. После завершения регистрации отправьте нам номер заказа для вашего сертификата, а также правильные значения страны и штата для вашей компании в ответ на это письмо. Мы отредактируем заказ в нашей системе и введем правильные значения компании и страны для вас, прежде чем выдавать сертификат. Сертификат, который мы выдаем вам, будет содержать правильную информацию. "

4 голосов
/ 08 февраля 2010
4 голосов
/ 22 июня 2009

Ха! Я столкнулся с точно такой же схемой с нашим сертификатом Comodo. Это типичное хулиганское поведение, их ответы - полная чушь. Во всяком случае, я не доверяю Verisign больше, чем Comodo, Thawte и т. Д. Давайте не будем забывать, что они пытались некоторое время назад .

3 голосов
/ 04 марта 2009

У нас была такая же проблема. Они не приняли бы сертификат подписи кода Comodo. По всей вероятности, это увеличит доход их группы (VeriSign / VeriTest, которые принадлежат MS). Я не верю, что у них не было тонн запросов на использование сертификатов не VeriSign. Однако какой у вас есть выбор ...?

2 голосов
/ 27 октября 2009

Проблема на самом деле идет глубже.

Для сохранения особого статуса должна была пройти повторная сертификация одного из наших продуктов. Конечно, это можно сделать только через VeriTest. Чтобы сэкономить деньги и иметь возможность реагировать на проблемы до того, как они их заметят, мы решили выбрать опцию самопроверки, которая позволяет нам самим тестировать свое программное обеспечение с помощью так называемых инструментов «Работает с» от Microsoft.

Хотя в документации сказано, что вам необходимо подписать весь двоичный код с помощью сертификата authenticode, чтобы пройти проверку для Windows Server 2008 R2, никто не упоминает, что это на самом деле необязательно и не повлияет на результаты теста (пока вы на самом деле на странице отчета говорят, что этот шаг не является обязательным и не повлияет на результаты теста).

Однако до этого момента мы уже приобрели сертификат Comodo, поскольку он составлял всего четверть стоимости сертификата VeriSign и в любом случае делает то же самое.

Вскоре после успешной повторной сертификации мы получили уведомление о текущем событии виртуального запуска от Microsoft и возможности быть его частью (что очень здорово). Однако для регистрации нам нужно войти в WinQual и угадать, что ... для этого, конечно, нам нужен сертификат компании VeriSign WinQual (как минимум).

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

Не было бы замечательно, если бы какая-то другая компания начала размещать платформу, подобную WinQual, за исключением того, что она действительно принимает сертификаты от ВСЕХ серьезных издателей?

Джоэл ... Джефф, ... давай. Это что-то для вас:

"[...] Exndndler.com подобен winqual, ... но без зла."

...