WinQual: Почему WER не принимает сертификаты для подписи кода?

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

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

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

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


Редактировать с 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. И даже если мое первоначальное намерение было недовольством, для того, чтобы этот вопрос действовал как Stackru, я ищу техническую причину, по которой Microsoft может принимать только сертификаты Verisign.

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

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

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


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

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

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

http://i34.tinypic.com/2hi2cr8.jpg

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

http://i38.tinypic.com/ydfr.jpg

Сервер Thawte Premium Server 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 ответов

Решение

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

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

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

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

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

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

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

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

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

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

ОБНОВИТЬ:

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

После подписания кода и недавней регистрации в 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 информацию о том, какие поставщики подписей принимаются для какого типа подписи. Вы не можете винить их за то, что вы не читаете это до получения сертификата от другого центра сертификации, не так ли?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

"[...] Excendler.com похож на winqual,... но без зла".

Другие вопросы по тегам