К сожалению, строгие имена обеспечивают защиту потребителю . Они не предоставляют никакой защиты разработчику сборки, если их код не был изменен. удалить a строгое имя тривиально. После удаления его можно изменить по желанию.
Даже защита, предоставляемая потребителю, ограничена строгими именами. Поскольку в центральном реестре открытых ключей нет никакого способа узнать, что сборка была подписана конкретным издателем. Хакеры могут изменить подпись и подписать ее своими ключами после внесения изменений. По правде говоря, строгие имена действительно защищают только от хакеров, изменяющих системные библиотеки времени выполнения ... даже тогда я не уверен, насколько они эффективны для реальной атаки на систему.
Поскольку код может быть легко изменен даже при строгом имени, добавление некоторой простой проверки хеша в ваш собственный код не обеспечит никакой дополнительной защиты. Единственный способ обрести надежду - использовать инструмент защиты профессионального уровня , который предлагает обнаружение несанкционированного доступа .