Как я могу защитить свой код C# от декомпилирования? [дублировать

StackOverflow https://stackoverflow.com/questions/7314704

Вопрос

Возможный дубликат:
.NET запутывание
Альтернатива для запутывания в мире .NET

Всего несколько минут назад я прочитал, что есть несколько инструментов, много бесплатных, которые позволяют конвертировать C# .exe обратно в решение VB. Это означает, что мой собственный код может быть просмотрен, отредактирован и перекомпилирован/перераспределен. Есть ли способ предотвратить это?

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

Решение

Короче говоря, вам нужно использовать Запутывание. Анкет Назвать несколько.

  1. Дотфускатор
  2. Обфускатор
  3. Конькобежец (Бесплатное программное обеспечение)
  4. Deploylx CodeVeil
  5. Плюс Visual Studio поставляется с легкой версией DotFuscator.

Вы можете прочитать этот MSDN статья У этого есть совет о том, как запутать ваш код.

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

Вы можете использовать препятствий .. Саламандре один из таких инструментов для .net ...

Запасыватель Еще один бесплатный дополнение для .NET. Он разработан в C# и использует моно

Вы можете использовать Mono, чтобы скомпилировать его на собственном двоичнике, просто Google It Up.

Вы также можете кодировать чувствительные функции/компоненты в натуральный C ++, обернуть его в C ++/CLI и использовать с .NET в дополнение к запутыванию ваших сборок .NET.

Даже при запуске компилятору JIT нужно будет увидеть код IL в конечном итоге, вы просто затрудняете декомпиляцию.

Опускатор - это хорошая ставка, как это увеличивается Усиление человека просмотреть, редактировать, перераспределить и т. Д. Код.

Хотя они не защищают ваш код физически, они могут предотвратить поведение разложения вашего кодекса: правовые механизмы, такие как патенты, авторские права и лицензии.

Декомпилирование или обратная инженерия - это битва экономических усилий. Стоит ли вам запутать свой код (потенциально разрабатывая отражение «gatchas»), против ли это кому -то, чтобы кто -то изменил инженер (с небольшим контекстом) вместо подражания или переписывания?

Комментарий к этому ответу, https://stackoverflow.com/a/1988467/64348, с которым некоторые согласны, указывает на то, что запутывание не предотвращать Возвращение к оригинальной (или достаточно близкой версии исходного) кода. Запутывание-это всего лишь подход к обратимому переводу без реального ключа, кроме какого-то полезного контекста.

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