Обфускация Javascript кода средствами PHP
Нужен скрипт на PHP для перемешивания содержимого .js файла с последующим восстановлением и исполнением кода на стороне клиента.
Критерии:
- Алгоритм перемешивания должен быть построен таким образом, чтобы
1. На выходе всегда был набор символов, расположение которых не соответствует таковому в оригинале как минимум на 90-95%;
2. Имелась возможность многократного запуска скрипта с тем, чтобы при одних и тех же входных данных всегда получать разные выходные;
3. Код выходного .js файла имел возможность исполняться таким же образом, как и код исходного .js файла.
- Выходной размер .js файла с учётом управляющего кода по восстановлению и исполнению кода не должен превышать (для большинства случаев):
1. 125% от исходного размера при gzip сжатии;
2. 200% от исходного размера без gzip сжатия;
К примеру, файл test.js занимает в нормальном виде 100КБ, в сжатом - 50КБ. После процесса обфускации его максимально допустимый размер должен составлять 200КБ - без gzip сжатия, 125КБ - со сжатием.