Лучшая практика для защиты ресурсов от обратного проектирования

Чтобы обеспечить некоторый уровень защиты от обратного инжиниринга или декомпиляции, я решил переместить важные части моего приложения на C #, включая несколько ресурсов XML, в собственный файл DLL C ++ на основе описанного метода. Вот для использования ресурсов в программах на C ++ и ОПЫТ1 а также practice2 для использования C ++ DLL файлов в приложениях C #. Теперь у меня есть два вопроса:

  1. Это правильный подход для защиты приложений от обратного инжиниринга?
  2. Как правильно способ возврата текстового содержимого в С + + ̶ ̶ DLL файлов на основе ОПЫТ1 и ̶p̶r̶a̶c̶t̶i̶c̶e̶2̶.̶ Я прочитал ̶m̶a̶n̶a̶y̶ сэмплы, ̶ но все те, которые я прочитал описывала с помощью средства / Вычесть / Multiply / разделим функций ,

Обновить:
Я пропускаю второй вопрос, так как это может быть вопрос кодирования, а первый вопрос касается практики.

2

Решение

Размещение текстовых ресурсов в DLL — это метод сокрытия ресурсов, а не их защиты. Если цель состоит в том, чтобы защитить ваши ресурсы от реверс-инжиниринга, этот метод будет квалифицироваться только как самый низкий и наименее эффективный показатель «безопасность по неизвестности», который не обеспечивает никакой защиты от кого-либо с минимальной решимостью взломать ваши ресурсы.

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

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]