Информационный поток
Задания вакансии материалы разработки сообщения форума
Яндекс-директ

Защита разработок от копирования (Обычная и Управляемая форма)

  • Добавить свою разработку
 
Карпов Андрей Владимирович
Связаться с автором
28.03.2016 12:15:06
+4
Вы разработчик, и разработали чудесный алгоритм, но не хотите ни с кем с ним делиться - используйте данную разработку, и тогда предполагаемый злоумышленник, глядя на такой код, просто плюнет и начнет писать свой.
Описание

Обфускация – приведение исходного текста или исполняемого кода программы к виду, сохраняющему её функциональность, но затрудняющему анализ, понимание алгоритмов работы и модификацию при декомпиляции.

Обычная форма

Управляемая форма

Данная разработка является идейным продолжением разработки coder1cv8  [2 in 1] «Обфускация кода 1С» и «RegExp Тестер». В ней исправлены большинство ошибок разработки данного автора: корректно распознаются директивы компиляции, области, инструкции препроцессора, комментарии, корректно заменяются переменные (не знаю, как у вас, но у меня разработка автора просто так не шифровала код, все равно оставались какие-то частично не зашифрованные переменные.)

Для функционирования самой разработки в системе должна быть зарегистрирована компонента RegEx, а также для шифрования текста должна быть зарегистрирована компонента capicom.dll

Что делает:

  1. Удаляет комментарии.
  2. Удаляет области
  3. Заменяет не экспортные функции на guid.
  4. Заменяет не экспортные переменные и параметры на guid.
  5. Если необходимо шифрует с помощью capicom.dll строковые данные, каждый раз ключ разный.
  6. Директивы компиляции и инструкции препроцессора, всегда с новой строки

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

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

Также разработана аналогичная управляемая форма, работает в тонком и толстом клиенте.

Принимаются предложения и замечания. Если понравилась разработка, ставь плюс.

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

Поэтому не пишите, пожалуйста, комментарии «о этической стороне», «что закрываемый код и так никому не нужен» или что «данная защита ломается очень просто», да, такая защита ломается. Но данный способ защиты очень сильно замедляет разбор обработки, а стоимость защиты должна быть сопоставима со стоимостью разработки.

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

 

Добавлена в дерево кнопка "Заполнить идентификатор", позволяющая вместо guid использовать свой идентификатор, например представить переменную как набор символов "______" 

 

Ключевые слова:   Обфускатор   защита кода   защита      1с 8
Файлы для скачивания