Обфускация кода как средство защиты

Веб программистам сложно хранить свои секреты. PHP, Perl, javascript, CSS — все это текстовые файлы. Код открыт. Значит любой сможет узнать как работает программа, скопировать, изменить её код. Достаточно иметь под рукой текстовый редактор, и вы узнаете все секреты.

Как защитить свой код?

Если вы встроили в программу какую то защиту, например надпись о том, что используемая копия программы не имеет лицензии. То в случае программы (сайта), написанной на PHP, этот код можно найти и убрать. Но до PHP-кода ещё нужно добраться. Он хранится на сервере, и его копию получить все же не так то просто.

А что если вы пишите классные виджеты на javascript? Даже просто показывая пример, как работает ваш классный скрипт, вы раскрываете ваш код. Так как javascript выполняется на компьютере пользователя, программа должна быть загружена на компьютер пользователя. Это всего лишь текстовый файл с расширением js.

Можно сделать так, чтобы код был не читаемым. Чтобы его демо-версию нельзя было осмысленно использовать. На помощь приходит обфускация.

Что если ваш код выглядит как то так?

На самом деле это:

Есть разные вариации этого подхода. Некоторые обфускаторы шифруют довольно примитивно, текст программы можно восстановить. Некоторые выдают код, который не каждый браузер сможет переварить, т.е. работают не везде. Мой пример взят вот здесь — http://utf-8.jp/public/aaencode.html, он зарекомендовал себя хорошо :).

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

Мало букафф? Читайте есчо !

Как получить код языка по умолчанию в Drupal

Июль 4, 2025 г.

В Drupal (начиная с версии 8 и выше, включая 10 и 11), чтобы получить код языка по умолчанию сайта (например, en, ru, fr), используйте следующий способ: [crayon-69d9ae8a19fa6316251057/] Подробности запроса: \Drupal::languageManager() — обращение ...

Читать

Drupal node, объект публикаций в друпал

Ноябрь 8, 2015 г.

Drupal - это прежде всего CMS, т.е. система управления контентом. Поэтому все в drupal так или иначе связано с главным объектом системы - с нодами (nodes). Опросы, статьи, разделы сайта, голосования и публикации в форуме - это все экземпляры объекта node, ...

Читать

Подготовить библиотеки требуемые модулем webform

Март 21, 2024 г.

Webform объявляет множество библиотек, которые может использовать в webform.libraries.yml. Но устанавливать их предлагается так или иначе самостоятельно, т.к. их наличие ожидается в папке /libraries. Использование merge плагина Помимо описания ...

Читать

Передача параметров при создании viewModel

Февраль 17, 2025 г.

Распространенная задача - при создании viewModel требуется передать параметры из активити или фрагмента. ViewModel используется для хранения состояния данных экрана, отвечая только за т.н. бизнес логику. Жизненный цикл этого компонента не зависит ...

Читать
 

Комментарии к «Обфускация кода как средство защиты»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: