Ошибка шифрования при подписании сборки «‹assemblyname› .dll» - «Плохая версия поставщика»

Я приобрел сертификат Authenticode у известного провайдера.

Теперь я хочу присвоить сборке строгое имя, а затем поставить цифровую подпись.

Вот что я сделал до сих пор:

  • Извлеченный открытый ключ из pfx, запустив sn.exe -p keypair.pfx key.snk
  • Установлены флажки "Подписать сборку" и "Отложить только подпись" на вкладке подписи свойств проекта.
  • В качестве ключевого файла для подписи предоставлен key.snk
  • Извлеченный токен открытого ключа, запустив sn.exe -tP key.snk
  • Отключил проверку строгого имени на моем devbox, запустив sn -Vr *,

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

Однако при попытке собрать сборку локально я получаю следующую ошибку:

Криптографический сбой при подписании сборки ".dll" - "Плохая версия поставщика"

У кого-нибудь есть решение для этого?


person Mephisztoe    schedule 29.09.2009    source источник
comment
Возможно ли, что вы не можете строго указать сборку с официальным сертификатом аутентификации? Т.е. вам нужно сгенерировать пару ключей с помощью sn -k?   -  person Mephisztoe    schedule 30.09.2009


Ответы (1)


Я получил ответ от Comodo:

Возникла проблема с сертификатами VS2005 / 2008 и Authenticode. (Уровень Microsoft) Их нельзя использовать для сборок со строгими именами. Вы должны создать свой собственный закрытый ключ, чтобы подписать строгое имя.

person Mephisztoe    schedule 01.10.2009