Вопрос

Как работает Дотфускатор?Я попытался запутать некоторые из моих классов, и он переименовал методы/класс в a, b, c и т. д.Но я все еще вижу код внутри этих методов?Это что, я делаю что-то не так?

Есть ли что-нибудь, что могло бы помешать полной разборке моей сборки?

Это было полезно?

Решение

Именно так это и должно работать.Ваш код по-прежнему доступен, но его сложнее понять.Если вы хотите что-то «посильнее», взгляните на Постбилд ксенокода.

Другие советы

Обфускация кода выходит далеко за рамки простого переименования классов, членов и переменных, хотя это важная часть.

Например, Dotfuscator использует запатентованную технику под названием индукция перегрузки, где многие методы переименованы в то же имя (это возможно, если у них разные подписи).В решениях PreEmptive упоминаются случаи, когда треть всех методов в коде переименовывается в a().Другие методы включают в себя переписывание простых итераций как рекурсию, а также морфинг кода.

На самом деле, современные методы обфускации вполне адекватны для того, чтобы сделать код практически невозможным для обратного проектирования, по крайней мере, вручную.Хотя это правда, что сборки .NET никогда не могут быть RE-безопасными. в принципе, запутывание может стать довольно серьезным барьером.

Для большинства из нас этого достаточно.

вы не можете заблокировать разборку в .net


К сожалению, невозможно помешать кому-либо отразить вашу сборку и дизассемблировать ее до вашего исходного кода.Инструменты обфускации, такие как Dotfuscator, значительно усложнят чтение дизассемблированного кода, где практически все удобочитаемые имена могут быть заменены бессмысленными символами.

Если вы где-то публикуете свой код, если кто-то достаточно решителен, он сможет его реконструировать.Лучшее, что вы можете сделать, — это сделать так, чтобы их время на это не стоило.

Версия, поставляемая с Visual Studio, ограничена, и я бы не стал полагаться на нее для полномасштабного запутывания, если вам нужно что-то развернуть на сайтах клиентов.Бесплатный вариант, который вы, возможно, захотите посмотреть, это Eazfuscator.net.

Dotfuscator просто усложняет чтение декомпилированного исходного кода — он не предотвращает саму декомпиляцию.

Если у вас есть Professional или Gold Dotfuscator, вы можете заблокировать программе Reflector открытие ваших сборок.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top