Strong name: различия между версиями
[непроверенная версия] | [непроверенная версия] |
→Роль strong name: Исправлена опечатка Метки: с мобильного устройства через мобильное приложение через приложение для Android |
Метки: с мобильного устройства через мобильное приложение через приложение для Android |
||
Строка 5: | Строка 5: | ||
== Обход защиты strong name == |
== Обход защиты strong name == |
||
При изменении содержания сборки, изменяется и strong name, поэтому |
При изменении содержания сборки, изменяется и strong name, поэтому программа, использующая данную сборку, при её модификации, откажется работать с ней. Но существует способ обойти такую защиту. Для обхода необходимо удалить strong name сборки и использующего её приложения. |
||
== Подпись сборок Microsoft == |
== Подпись сборок Microsoft == |
Текущая версия от 22:04, 18 февраля 2022
Strong name (в переводе с англ. — «Строгое имя») — подпись (маркер открытого ключа) сборки в GAC. Во время подписи сборки вычисляется открытый криптографический ключ и закрытый криптографический ключ, который находится только у производителя данной сборки. Strong name образуется при помощи хеширования закрытого криптографического ключа.
Роль strong name
[править | править код]Strong name необходим исключительно для определения сборки как уникальной в GAC. Также существует заблуждение, что strong name предоставляет сборке полную защиту от модификации. Эту защиту можно обойти.
Обход защиты strong name
[править | править код]При изменении содержания сборки, изменяется и strong name, поэтому программа, использующая данную сборку, при её модификации, откажется работать с ней. Но существует способ обойти такую защиту. Для обхода необходимо удалить strong name сборки и использующего её приложения.
Подпись сборок Microsoft
[править | править код]Большинство сборок, выпускаемых компанией Microsoft, подписаны одним и тем же strong name. Так происходит, потому что все эти сборки подписаны с помощью одного и того же закрытого ключа, соответственно их strong name генерируется с помощью хеширования одного и того же закрытого криптографического ключа.