Какой есть выбор обфускаторов для .NET в 2023 году с возможностью покупки из России?
Obfuscar на более-менее сложной программе у меня косячит, из чего больше всего сейчас напрягает то, что не переименовывает часть ресурсов, а соответствующий класс переименовывает — разъезжается подгрузка ресурсов по типу данных (а не по имени). Были еще глюки, но часть их удалось разрешить, а вот эти непереименованные ресурсы напрягают.
Примерно ту же кодовую базу много лет назад я пропускал через обфускатор XenoCode, и тогда все работало. Сейчас такого обфускатора уже не вижу — пишут, что это теперь называется Noisette, но он не обновлялся лет 5.
И так, какой выбор сейчас?
Возможно, что есть VMProtect, который не пробовал, но меня сильно смущает то, что, судя по описаниям, они используют свою виртуальную машину.
Здравствуйте, dsorokin, Вы писали:
D>Какой есть выбор обфускаторов для .NET в 2023 году с возможностью покупки из России?
D>Obfuscar на более-менее сложной программе у меня косячит, из чего больше всего сейчас напрягает то, что не переименовывает часть ресурсов, а соответствующий класс переименовывает — разъезжается подгрузка ресурсов по типу данных (а не по имени). Были еще глюки, но часть их удалось разрешить, а вот эти непереименованные ресурсы напрягают.
D>Примерно ту же кодовую базу много лет назад я пропускал через обфускатор XenoCode, и тогда все работало. Сейчас такого обфускатора уже не вижу — пишут, что это теперь называется Noisette, но он не обновлялся лет 5.
D>И так, какой выбор сейчас?
D>Возможно, что есть VMProtect, который не пробовал, но меня сильно смущает то, что, судя по описаниям, они используют свою виртуальную машину.
D>А так, есть такой список: https://github.com/NotPrab/.NET-Obfuscator
D>Однако в этом списке некоторые обфускаторы, так скажем, потеряли свою актуальность во времена .NET 6 и .NET 7. И список слишком огромный!
Рекомендую Eazfuscator. Проверен на больших и сложных проектах. Актуален. Поддержка быстро отвечает и правит баги. Не знаю как на счет продаж в РФ т.к. украинский разработчик.
Здравствуйте, Nonmanual Worker, Вы писали:
NW>Рекомендую Eazfuscator. Проверен на больших и сложных проектах. Актуален. Поддержка быстро отвечает и правит баги. Не знаю как на счет продаж в РФ т.к. украинский разработчик.
Через Nowall.eu я платил (продлевал) примерно месяц назад.
В итоге вроде бы получилось сделать через Obfuscar. Пришлось запретить переименование тех классов, где возникла коллизия с названиями ресурсов. Ну, и Obfuscar еще косячит при реализации интерфейсов. Немного повозился. Теперь запускается. Ошибок пока не поймал. Тень сомнения остается
Здравствуйте, dsorokin, Вы писали:
D>Возможно, что есть VMProtect, который не пробовал, но меня сильно смущает то, что, судя по описаниям, они используют свою виртуальную машину.
А что конкретно смущает в виртуальной машине? Сейчас практически все обфускаторы имеют функцию виртуализации кода, в том числе и упомянутый Eazfuscator.
Здравствуйте, drVanо, Вы писали:
V>А что конкретно смущает в виртуальной машине? Сейчас практически все обфускаторы имеют функцию виртуализации кода, в том числе и упомянутый Eazfuscator.
Может быть, ваша идея и хороша, и она пользуется устойчивым спросом, но вот лично мне пока не очень. Не удивляйтесь — я просто так ко всему новому отношусь! Первая реакция — ничего личного
Здравствуйте, dsorokin, Вы писали:
V>>А что конкретно смущает в виртуальной машине? Сейчас практически все обфускаторы имеют функцию виртуализации кода, в том числе и упомянутый Eazfuscator.
D>Может быть, ваша идея и хороша, и она пользуется устойчивым спросом, но вот лично мне пока не очень. Не удивляйтесь — я просто так ко всему новому отношусь! Первая реакция — ничего личного
Современные обфускаторы для .NET предлагают намного больше чем просто переименование классов/методов/свойств. Как правило переименование имен методов никак не защищает эти методы от декомпиляции (достаточно просто загрузить такую "обфусцированный" бинарник в dnSpy и можно с ним сделать все что угодно, в том числе получить полноценный исходный код на C#).
Здравствуйте, drVanо, Вы писали:
V>достаточно просто загрузить такую "обфусцированный" бинарник в dnSpy и можно с ним сделать все что угодно, в том числе получить полноценный исходный код на C#
Вот только понять этот код без внятных имен сложно. Продукцию некоторых людей порой и с именами то нелегко понять, видимо у них встроенный обфускатор.