2009-09-29 3 views
3

J'ai acheté un certificat authenticode auprès d'un fournisseur reconnu.Échec de chiffrement lors de la signature de l'assembly '<nom_assemblée> .dll' - 'Mauvaise version du fournisseur'

Maintenant, je veux nommer fort un assemblage et le signer numériquement plus tard.

C'est ce que je l'ai fait jusqu'à présent:

  • Extrait clé publique de PFX en exécutant sn.exe -p keypair.pfx key.snk
  • ont coché les deux "Signer l'assembly" et " retard signe seulement » sur les cases à cocher propriétés du projet onglet signature
  • fourni key.snk comme keyfile à signer avec
  • Extrait jeton de clé publique en exécutant sn.exe key.snk
  • -TP
  • vérification handicapés nom fort sur mon devbox par Runni ng sn -Vr *,

L'idée est de désactiver la signature différée sur la construction d'équipe et d'y fournir le fichier keypair.pfx. De cette façon, je peux signer l'assembly sur le serveur de build d'équipe qui a un accès restreint sans fournir la clé privée sur les boîtes de dev pour des raisons de sécurité.

Cependant, en essayant de construire l'assemblage sur place, je reçois l'erreur suivante:

Cryptographic failure while signing assembly '.dll' – 'Bad Version of Provider'

Quelqu'un at-il une solution pour cela?

+2

Est-il possible que vous ne pouvez pas le nom fort d'un assemblage avec un certificat authenticode officiel? C'est à dire. vous avez besoin de générer une paire de clés en utilisant sn -k? – Mephisztoe

Répondre

1

J'ai obtenu une réponse de Comodo:

There's problem with VS2005/2008 and authenticode certificates. (Microsoft level) They can't be used for Strong Named Assemblies. You have to create your own private key to do the strong name signing.

Questions connexes