В настоящее время мы подписываем наши сборки с использованием сильного ключевого файла SHA1 в Visual Studio с использованием среды .NET 4.0. Основная причина, по которой мы используем сильное именование, - это возможность использовать «InternalsVisibleTo» в наших сборках. Поскольку SHA1 теперь устарел, я считаю, что мы должны переключиться на SHA256.. Подпись под ключ с сильным файлом ключевых слов и SHA256
Я попытался сгенерировать SHA256 и использовать SHA256 в качестве ключевого файла с сильным именем в Visual Studio в .NET 4.0, но он не может его создать, хотя я могу создать SHA256 через .Net 4.5, а затем назначить его для моего .Net 4.0 проект, и он, кажется, принимает его, когда я использую функцию «Подписать сборку» в Visual Studio.
Мой вопрос: есть .Net 4.0 есть возможность правильно использовать файл сильного имени SHA256, сгенерированный в .Net 4.5?
Благодарим за помощь.
.NET 4.5+ - это двоичная замена для 4.0. Если вы установите 4.5 на машине с 4.0, она будет заменена. Учитывая это, вы действительно хотите сохранить таргетинг 4.0 в своих проектах? В любом случае, как вы поете сборку, это не так важно. TLS 1.1/1.2, хотя только в 4.5.2. * Это * является критическим различием, особенно сейчас, когда многие сайты и поставщики отказываются от поддержки чего-либо менее 1.2. –
На данный момент не удается выполнить миграцию до 4.5, поскольку у нас все еще есть пользователи, которые находятся на XP. Но хорошая мысль. – TKL
Тогда не экспериментируйте. XP в любом случае более не рекомендуется, чем SHA1. Даже если подписанная сборка работает на тестовом компьютере (поскольку среда выполнения .NET 4.5 заменила среду выполнения 4.0), она может не работать на компьютере XP, где 4.5 невозможно установить. В любом случае документы показывают, что [Enhanced Strong Naming] (https://msdn.microsoft.com/en-us/library/hh415055 (v = vs.110) .aspx) делает больше, чем просто использовать SHA-2 –