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

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

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

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

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

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

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

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

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

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

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

Формирование связанных списков select произвольной вложенности

Декабрь 11, 2016 г.

Не ослабевает интерес к вопросу о динамическом создании связанных выпадающих HTML списков. Для двух зависимых списков (я публиковал пример более 5 лет назад!) ситуация простая и понятная, но люди задают вопрос - а как развить пример для вложения 3х списков? ...

Читать

Как сформировать отдельный хидер или футер для первой страницы в mPDF на примере Drupal

Декабрь 6, 2025 г.

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

Читать

WinSCP: загрузка файла успешна, но возникла ошибка при установке прав

Май 20, 2019 г.

Оригинальное сообщение об ошибке выглядит так: Upload of file 'Имя вашего файла' was successful, but error occured while setting the permissions and/or ...

Читать

Используем PAT для работы с github

Август 19, 2021 г.

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

Читать
 

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

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



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