Защита и усложнение javascript кода (Rating: +5)
Создавая свой сайт каждый программист рано или поздно сталкивается с вопросом: а можно ли защитить свой сайт от копирования?
Конечно, тут нужно разделить свое желание защитить сайт на несколько деталей и разобраться, что именно Вы хотите защитить. Как правило, условно поделить области информации, которую желательно защитить можно на такие фрагменты:
1. защитить страницы и текст на этих страницах, это же означает защитить html код;
2. защитить код javascript от просмотра;
3. защитить исходники с кодом php на самом сервере.
В данной статье я коснусь вопроса о способах защиты js кода. А что касается защиты html и php кода, то постараюсь посвятить этим вопросам свои следующие статьи.
Итак, начнем сразу с главного ответа на вопрос о том можно ли защитить js код от просмотра. Ответ негативный, пока еще не существует универсального способа позволяющего скрыть код js от любого желающего его посмотреть посетителя. Но, существует масса способов сделать практически невозможным понять логику и читабельность js кода, который можно подвергнуть различного вида ухищренным модификациям.
Короче говоря, его можно сделать непонятным и нечитаемым.
В интернете существует несколько основных способов модификации javascript кода:
- замена имен функций и переменных на случайные;
- удаление комментариев и преобразование скрипта в непрерывную строку;
- шифрование отдельных функций и всего скрипта.
Как вы понимаете, если нельзя защитить свой js код на 100%, то необходимо усложнить его хотя бы на 99%.
Перейдем к инструментам, которые это могут сделать. Существует несколько видов программных средств для усложнения кода javascript:
1. специальные программы для защиты javascript кода (HTMLCrypt, Java Script Mutator, Jasob, HTML Guardian и другие). Такие программы могут шифровать не только javascript код, но и код html, запихивая его в переменные js. К плюсам этого способа защиты можно отнести различные степени шифрования, мощные алгоритмы шифровки, удобство и быстрота. К минусам: не всегда получается кроссбраузерность, программы распространяются не бесплатно.
2. специальные сайты сервисы, на которых Вы можете бесплатно зашифровать свой javascript файл с помощью javascript компрессоров. Наиболее популярными являются:
- http://dean.edwards.name/packer/
- http://javascriptobfuscator.com
- http://sure-in.com/htmlcoder.htm
Плюсами такого способа есть бесплатная возможность и ничем не хуже платных программ степень защиты javascript файлов. Минус: удаленность сервиса, постоянное посещение сайта и новая перекодировка скриптов. Еще, также, в минус можно отнести неизвестный алгоритм использования удаленным javascript компрессора. Кто знает, чем напичкали Ваш файл и не можно ли его спокойно расшифровать другим сервисом с этого сайта.
3. создать самому или скачать php библиотеку (класс), которая будет находится на Вашем сервере и автоматически будет шифровать необходимые javascript файлы. Плюс: бесплатный и понятный js компрессор, который Вы можете использовать по своему усмотрению. Таких библиотек в интернете немного, но Вы можете бесплатно скачать здесь:
- http://joliclic.free.fr/php/javascript-packer/en/
- http://phpclasses.segmenta.ru/browse/package/4818.html
Не трудно понять, что из перечисленных выше способов защиты самым идеальным вариантом будет третий. Ну, а что касается эффективности вышеперечисленного, то про это Вам не смогут сказать даже разработчики этих программ.
Added: Удаленный
08.05.2010 / 17:21Конечно, тут нужно разделить свое желание защитить сайт на несколько деталей и разобраться, что именно Вы хотите защитить. Как правило, условно поделить области информации, которую желательно защитить можно на такие фрагменты:
1. защитить страницы и текст на этих страницах, это же означает защитить html код;
2. защитить код javascript от просмотра;
3. защитить исходники с кодом php на самом сервере.
В данной статье я коснусь вопроса о способах защиты js кода. А что касается защиты html и php кода, то постараюсь посвятить этим вопросам свои следующие статьи.
Итак, начнем сразу с главного ответа на вопрос о том можно ли защитить js код от просмотра. Ответ негативный, пока еще не существует универсального способа позволяющего скрыть код js от любого желающего его посмотреть посетителя. Но, существует масса способов сделать практически невозможным понять логику и читабельность js кода, который можно подвергнуть различного вида ухищренным модификациям.
Короче говоря, его можно сделать непонятным и нечитаемым.
В интернете существует несколько основных способов модификации javascript кода:
- замена имен функций и переменных на случайные;
- удаление комментариев и преобразование скрипта в непрерывную строку;
- шифрование отдельных функций и всего скрипта.
Как вы понимаете, если нельзя защитить свой js код на 100%, то необходимо усложнить его хотя бы на 99%.
Перейдем к инструментам, которые это могут сделать. Существует несколько видов программных средств для усложнения кода javascript:
1. специальные программы для защиты javascript кода (HTMLCrypt, Java Script Mutator, Jasob, HTML Guardian и другие). Такие программы могут шифровать не только javascript код, но и код html, запихивая его в переменные js. К плюсам этого способа защиты можно отнести различные степени шифрования, мощные алгоритмы шифровки, удобство и быстрота. К минусам: не всегда получается кроссбраузерность, программы распространяются не бесплатно.
2. специальные сайты сервисы, на которых Вы можете бесплатно зашифровать свой javascript файл с помощью javascript компрессоров. Наиболее популярными являются:
- http://dean.edwards.name/packer/
- http://javascriptobfuscator.com
- http://sure-in.com/htmlcoder.htm
Плюсами такого способа есть бесплатная возможность и ничем не хуже платных программ степень защиты javascript файлов. Минус: удаленность сервиса, постоянное посещение сайта и новая перекодировка скриптов. Еще, также, в минус можно отнести неизвестный алгоритм использования удаленным javascript компрессора. Кто знает, чем напичкали Ваш файл и не можно ли его спокойно расшифровать другим сервисом с этого сайта.
3. создать самому или скачать php библиотеку (класс), которая будет находится на Вашем сервере и автоматически будет шифровать необходимые javascript файлы. Плюс: бесплатный и понятный js компрессор, который Вы можете использовать по своему усмотрению. Таких библиотек в интернете немного, но Вы можете бесплатно скачать здесь:
- http://joliclic.free.fr/php/javascript-packer/en/
- http://phpclasses.segmenta.ru/browse/package/4818.html
Не трудно понять, что из перечисленных выше способов защиты самым идеальным вариантом будет третий. Ну, а что касается эффективности вышеперечисленного, то про это Вам не смогут сказать даже разработчики этих программ.
Rating:
+5
Views: 3326Comments (0) »