WinQual: pourquoi ne pas accepter les certificats de signature de code?

Modifier en tant que de 1/24/2015: Il n'est pas possible d'utiliser d'autres autorités de certification de confiance maintenant. Question et réponse n'est pas obsolète:

WinQual rejette toujours la signature:

entrez la description de l'image ici

Lorsque nous avons déjà établi qu'il s'agit d'une signature numérique valide:

entrez la description de l'image ici

Pour être complet, je vais laisser l'édition ci-dessous que quelqu'un d'autre a fait; juste pour souligner à quel point il avait tort. Et il peut vivre avec cette honte:


Modifier à partir de 2014: il est possible d'utiliser d'autres autorités de certification de confiance maintenant. Question et réponse est obsolète.


En 2005, j'ai essayé d'établir un compte WinQual avec Microsoft, afin que je puisse récupérer nos fichiers de crash dump (le cas échéant) soumis automatiquement via Windows Error Reporting (WER). Je n'ai pas été autorisé à avoir mes décharges de plantage, parce que je n'ai pas de certificat Verisign. Au lieu de cela, j'en ai un moins cher, généré par une filiale de Verisign: Thawte.


La méthode où vous joindre: vous signez numériquement un échantillon exe qu'ils fournissent. Cela prouve que vous êtes le même signataire qui a signé des applications qu'ils ont obtenu des décharges accident de dans la nature.

Cryptographiquement, la clé privée est nécessaire pour générer une signature numérique sur un exécutable. Seul le détenteur de cette clé privée peut créer une signature avec pour la clé publique correspondante. Peu importe qui a généré cette clé privée. Cela inclut les certificats qui sont générés de:

Pourtant, Winqual de Microsof n'accepte que les certificats numériques généré par Verisign. Même les filiales de Verisign ne sont pas assez bonnes (Thawte).

Quelqu'un peut-il penser à une raison technique, juridique ou éthique pour laquelle Microsoft ne veut pas accepter les certificats de signature de code? Le site WinQual dit:

Pourquoi un certificat numérique est il requis pour L'adhésion Winqual?

Un certificat numérique aide à protéger votre entreprise de personnes qui cherchent pour se faire passer pour des membres de votre personnel ou qui serait autrement commettre des actes de fraude contre votre entreprise. À l'aide d'un certificat numérique permet la preuve de une identité pour un utilisateur ou un organisation.

Un certificat numérique Thawte n'est-il pas sécurisé?


Deux ans plus tard, J'ai envoyé un avis de rappel à WinQual que j'attendais d'être en mesure d'obtenir à mes décharges accident. La réponse de L'équipe WinQual était:

Bonjour,

Merci pour le rappel. Nous avons informé les personnes appropriées qui ce est toujours une demande.


En 2008, j'ai posé cette question dans un forum de support Microsoft, et la réponse a été:

Nous sommes seulement configurés pour accepter VeriSign Certificats à ce stade. Nous avons pas eu une demande écrasante de soutenir d'autres types de certificats.

Que peut-il signifier de ne pas être "configuré" pour accepter d'autres types de certificats?

Si l'empreinte de la clé qui a signé le WinQual.l'application de test exe est la identique à l'empreinte qui a signé l'exécutable who's crash dump que vous avez obtenu dans la nature: il est prouvé - ce sont mes crash dumps, donnez-les-moi.

Et ce n'est pas comme s'il y avait une API spéciale pour vérifier si une signature numérique Verisign est valide, par opposition à toutes les autres signatures numériques. Une signature valide est valide, peu importe qui a généré la clé.

Microsoft est libre de ne pas confiance le signataire, mais ce n'est pas la même identité.


Donc c'est ma question, quelqu'un peut-il penser à une raison pratique pour laquelle WinQual n'est pas configuré pour prendre en charge les signatures numériques?

Une personne a théorisé que la réponse est qu'ils sont juste paresseux:

Pas que je sache mais je suppose que l'équipe qui dirige le winQual le système est une équipe en direct et non un dev équipe-comme dans, personnalité et compétences orienté vers l'entretien des système. Je peux me tromper, cependant.

Ils ne veulent pas travailler pour le changer. Mais quelqu'un peut-il penser à quelque chose qui devrait être changé? C'est la même logique, peu importe ce qui a généré la clé: "l'empreinte du pouce correspond-elle".

Qu'est-ce que je manque?


Mise à jour

, Il est agréable d'entendre les histoires des autres développeurs. De cette façon, je sais que je ne suis pas seul, et la question peut servir de véhicule pour le changement de la part de Microsoft. Et même si mon intention initiale était une diatribe de plainte, afin de garder cela une question StackOverflow valide que je cherche pour une raison technique Pourquoi Microsoft n'a pu accepter que les certificats Verisign.

L'API crypto ne se soucie pas du nom de la société qui a émis un certificat: elle se soucie seulement que la chaîne de signataires ramène à une racine de confiance.

Qu'est-ce qui pourrait se passer que Microsoft n'utilise pas spécifiquement l'infrastructure cryptographique établie, mais se limite à Verisign?

Si quelqu'un pouvait pointer vers une entrée de blog, où un gestionnaire de programme ou développeur explique pourquoi , je serais, peut-être, satisfait.


Mettre À Jour Deux

Les Gens semblent manquer le point de ma question. Windows dispose déjà de l'infrastructure de code pour s'assurer qu'un certificat de signature numérique est approuvé par une autorité racine. Voici une capture d'écran d'une signature numérique sur l'un de nos exécutables signés.

Vous pouvez voir que notre certificat a été signé par le certificat D'autorité de signature de code de Thawte, qui à son tour est signé par Thawte:

Le texte d'Alt http://i34.tinypic.com/2hi2cr8.jpg

Et le certificat" thawte " est livré par défaut avec Windows:

Le texte d'Alt http://i38.tinypic.com/ydfr.jpg

Le Thawte Premium Server CA{[87] } est assez bon pour que chaque copie de Windows et D'Internet Explorer lui fasse déjà confiance. Et il existe déjà une API établie pour vérifier si un certificat est valide (c'est-à-dire approuvé).

Quand les gars WinQual sont arrivés, ils auraient eu pour avoir sorti de leur chemin pour éviter de vérifier la bonne façon, et à la place roulé leur propre solution, en codant uniquement Verisign en tant que racine de confiance. pourquoi iraient-ils hors de leur chemin {[87] } pour ignorer les autres autorités root de confiance, les autorités qui expédient sur la machine Windows sur laquelle leur code s'exécute,et à la place Verisign en dur?

Plutôt que de le faire comme tout le monde le fait (Windows Explorer, Firefox, Chrome, Internet Explorer, Opera, CertMgr, etc), ilsspécifiquement n'autorisent que Verisign. Et ma question est de savoir pourquoi.

Why would WER not accept code-signing certificates?

Si c'était simplement:

  • parce que le gars qui a écrit initally il ne savait pas la bonne façon du haut de sa tête
  • et plutôt que de passer beaucoup de temps à enquêter sur la bonne façon
  • Il a juste jeté quelque chose ensemble
  • et juste pour tester il codé en dur juste le seul signataire
  • avec la pleine intention de revenir plus tard et le réparer
  • mais le code fonctionne maintenant
  • et il est allé vivre sans être réparé
  • et personne ne veut prendre la responsabilité de le briser
  • et personne ne veut dépenser de l'argent pour le réparer
  • et pas assez de clients se plaignent d'en faire une priorité élevée
  • et même s'il y avait beaucoup de gens qui se plaignaient, c'est seulement 99 $ pour acheter un Verisign
  • alors ne peux-tu pas juste le laisser aller et acheter un Verisign un?

...que ce serait bien. Sauf que je ne le crois pas. Je ne crois pas que ce soit le code de test qui est entré en production. j'ai l'impression que c'est une décision consciente, spécifique, qui les a fait ignorer les autres signataires. Et qu'ils font, et continueront à, seulement honorer Verisign.

, Mais pour la vie de moi je ne peux pas penser à la raison.

29
demandé sur Ian Boyd 2009-03-04 19:54:30

8 réponses

Je viens de m'inscrire à WinQual, et j'ai réfléchi à cette question; je pense que j'ai maintenant la réponse.

En bref: Ils n'utilisent pas du tout VeriSign comme certificat: ils externalisent simplement la tâche de vérifier votre identité.

Microsoft ne veut pas que vous ayez accès au site WinQual sans d'abord vérifier votre identité. Ils ont donc besoin d'un processus de vérification de l'identification.

Ils pourraient avoir un ministère qui vous facture 99$, et fait le vérification. Mais ils ont déjà des participations importantes dans VeriSign, qui a déjà du personnel qui peut le faire. Ils utilisent donc le processus d'inscription au certificat pour vérifier votre identité. Il n'utilise pas du tout le certificat, il confie simplement à VeriSign la tâche de vous vérifier.

Notez qu'ils ne nécessitent pas que vous continuiez à maintenir un certificat VeriSign pour conserver votre compte: c'est juste une fois hors frais pour rejoindre le site.

Parce que c'est un cas de Microsoft vérifie votre identité, et ils font confiance à VeriSign parce qu'ils ont leurs doigts dans cette tarte, et ils ne font pas tellement confiance à Comodo, ils veulent que vous utilisiez VeriSign à cette fin, pas tout autre certificat. Cela semble un peu stupide du point de vue du développeur, mais je peux le comprendre de leur point de vue.

12
répondu Boinst 2010-10-18 06:15:52

Eh bien, je viens de poster une autre demande en leur disant que nous ne participerons pas à moins qu'ils n'acceptent le certificat de signature de code Comodo.

Microsoft nous a contactés pour nous dire que nous avons des rapports sur Windows 7 qu'ils veulent que nous regardions, mais nous ne pouvons pas nous connecter car nous n'utilisons pas Verisign. Ok, tu m'as contacté... Combien plus authentifié dois-je être?

J'ai contacté le chef de produit, nous verrons ce qui se passe.

Et pour répondre à votre question semi-rhétorique ci-dessus-là N'y a aucune raison pour laquelle ils ne peuvent pas authentifier d'autres EXEs signés. Windows est-il, c'est à dire le fait, le code est déjà là. Ils n'ont rien à faire de spécial pour le soutenir.

Mise à jour:

Après avoir parlé avec le représentant de Microsoft, on m'a dit à bout portant que vous devez acheter au minimum le certificat versign de 99 $ afin de "valider" et d'obtenir vos rapports de bogues. Boiteux.

14
répondu Jason Short 2009-04-17 22:23:09

Après avoir signé du Code et récemment signé Winqual, voici quelques clarifications:

  1. Pour l'inscription Winqual (inscription), votre signature elle-même n'est pas vérifiée par rapport à la base de données Winqual. Winqual vérifie uniquement le certificat de VeriSign qui prouve que VeriSign a vérifié votre identité. Ensuite, ils obtiennent le nom de votre entreprise de votre signature.

  2. Dans L'étape suivante, vous devez créer un ou plusieurs "fichiers de mappage de produit" (à L'aide d'un outil de Microsoft) et téléchargez-les sur Winqual. Après cela, les serveurs Winqual vérifient plusieurs téraoctets de base de données de plantage par rapport à tous les fichiers de carte et vous fournissent une liste d '"événements". (Quelle signature vous avez utilisée pour la signature de code est donc assez hors de propos.)

  3. Il n'y a aucune raison technique pour laquelle Microsoft ne pouvait pas accepter d'autres Autorités de Certification, aussi. Mais: comment en tireraient-ils profit? Il existe également un programme d'offre spéciale pour obtenir un certificat de signature de code D'un an de VeriSign pour seulement 99$, et si vous comparez cela au coût d'une chaîne d'outils de développement ou D'une adhésion MSDN/TechNet, ce n'est pas exactement cher.

  4. Dans notre cas, obtenir le certificat de VeriSign était simple et très rapide - l'ensemble du processus s'est terminé en deux jours. (Nous ne sommes pas aux États-Unis, donc je m'attendais à des retards.) [Juste pour clarifier: vous générez votre signature vous-même, et il se compose d'une company_private_key (utilisée pour la signature) et une company_public_key (pour vérification de votre signature de code). Toute autorité de Certification (comme VeriSign) contre-signe simplement votre company_public_key avec leur clé privée. Cela rend votre certificat vérifiable.]

  5. Nous ne savions pas que le certificat VeriSign $99 pouvait également être utilisé pour la signature de code (il s'agit de Pas de seulement d'un identifiant organisationnel). Donc, au départ, nous sommes allés pour une autre autorité de certification pour la signature de Code. Ensuite, nous avons obtenu un cert VeriSign pour l'enregistrement Winqual.

  6. Microsoft publie sur WHDC et Winqual les informations qui fournisseurs de signature sont acceptés pour quel type de signature. Vous ne pouvez pas vraiment les blâmer pour vous-même ne pas lire ceci avant d'obtenir un certificat d'une autre autorité de certification, n'est-ce pas?

J'espère que cela peut aider à faire la lumière.

8
répondu tagon 2010-08-09 09:57:46

Même histoire ici, je certifie l'application pour le Logo Win7 afin d'obtenir les points pour le programme de partenariat MS. J'ai acheté le certificat de signature de code Comodo. L'application a passé le test et maintenant j'essaie de configurer un compte Winqual et après avoir d'abord été énervé d'avoir à acheter un autre certificat de signature, je suis entré dans un délai de 5 jours en essayant d'acheter ce "certificat organisationnel" pour 99$. Non, " L'inscription au certificat SSL VeriSign est temporaire indisponible. S'il vous plaît essayer à nouveau plus tard.", et le soutien pourrait aussi bien être le pire que j'ai jamais rencontré. OMG ... essayez au moins de lire la description du problème ou même d'essayer de reproduire les étapes, ne me donnez pas simplement une solution de base de connaissances stupide pour un autre problème. Ou simplement dire que le service est indisponible, il sera disponible dans 5 jours. Tellement frustrant ...

Juste une mise à jour si quelqu'un a le même problème, j'ai finalement eu la réponse au problème d'inscription et j'ai passé la commande. (Je suppose que vous devez obtenir le bon gars dans le support technique:)

"Nos sincères excuses. Cette erreur se produit en raison d'un bogue dans l'inscription du certificat D'organisation. Cette erreur se produira si un pays autre que les États-Unis est entré dans la section "Informations sur le certificat" (3ème étape) de l'inscription. Cela a été escaladé aux ingénieurs qui travaillent sur la réparation maintenant. En attendant vous pouvez faire ce qui suit pour passer l'erreur et terminer votre inscription: Sur le " certificat Info" une partie de l'inscription, entrez le pays comme "nous" et l'état comme "Californie". Toutes les autres informations peuvent être correctes. Une fois l'inscription terminée, envoyez - nous le numéro de commande de votre certificat ainsi que les valeurs de pays et D'État correctes pour votre entreprise en réponse à cet e-mail. Nous modifierons la commande dans notre système et entrerons les valeurs de société et de pays correctes pour vous avant de délivrer le certificat. Le certificat que nous vous délivrons contiendra alors le bon information."

6
répondu 2009-11-06 10:32:52

Ha! J'ai rencontré exactement le même schéma avec notre certificat Comodo. C'est un comportement d'intimidation typique, leurs réponses sont un non-sens complet. Si quoi que ce soit, je me méfie de Verisign plus que Comodo et Thawte etc. N'oublions pas ce qu'ils ont essayé il y a un moment.

4
répondu Ian Boyd 2009-06-22 18:00:15

Nous avons eu le même problème. Ils n'accepteraient pas un certificat de signature de code Comodo. Selon toute vraisemblance, c'est pour augmenter les revenus de leur groupe (VeriSign / VeriTest qui appartiennent à MS). Je ne crois pas qu'ils n'ont pas eu tonnes de demandes pour utiliser des certificats non-VeriSign. Cependant, ce choix ne vous avez....?

3
répondu David Collie 2009-03-04 16:59:31

Le problème va en fait plus profond.

Pour conserver un statut particulier, une recertification de l'un de nos produits devait avoir lieu. Bien sûr, cela ne peut être fait que par VeriTest. Pour économiser de l'argent et être en mesure de répondre aux problèmes avant qu'ils ne les remarquent, nous avons décidé de choisir l'option d'auto-test qui nous permet de tester nous-mêmes notre logiciel avec des outils dits "fonctionne avec" de Microsoft.

Alors que la documentation indique que vous devez avoir tous vos codes binaires signés avec un certificat authenticode pour passer la vérification Pour Windows Server 2008 R2, personne ne mentionne que ceci est réellement facultatif et n'aura pas d'impact sur les résultats du test (jusqu'à ce que vous soyez réellement sur la page de rapport disant que cette étape est facultative et n'aura pas d'impact sur les résultats du test).

Cependant, jusque-là, nous avions déjà acheté un certificat Comodo, car il ne représentait qu'un quart du prix D'un certificat VeriSign et faisait la même chose de toute façon.

Peu après un recertification réussie, nous avons reçu un avis sur L'événement de lancement virtuel actuel de Microsoft et la possibilité d'en faire partie (ce qui est une bonne chose). Cependant, pour vous inscrire, nous devons entrer WinQual et devinez quoi... pour cela, bien sûr, nous avons besoin D'un certificat D'entreprise VeriSign WinQual (au moins).

Ce qui est vraiment drôle maintenant, c'est que pendant au moins deux jours, le site Web VeriSign correspondant n'était pas disponible. Depuis encore trois jours, il n'est pas possible d'obtenir un tel certificat et jusqu'à présent, ils n'ont même pas répondu aux demandes de support.

Ne serait-ce pas génial si une autre entreprise commençait à héberger une plate-forme similaire à WinQual, sauf qu'elle accepte en effet les certificats de tous les éditeurs sérieux?

Joel... Jeff,... allez les. C'est quelque chose pour vous:

"[...] exhandler.com est comme winqual,... mais sans le mal."

2
répondu Mephisztoe 2009-10-27 07:02:39