Обфускация JavaScript

Обфускация JavaScript для затруднения поверхностного чтения кода.

Вставьте JavaScript, чтобы переименовать идентификаторы, закодировать строки и сжать результат. Это затрудняет беглое чтение, но не шифрует код.

Обработка локальная. Работоспособность не гарантируется — тестируйте. Секреты в клиентский JS класть нельзя.

Рекомендуемые инструменты

Частые вопросы

Да. Обфускация изменяет читаемость, а не предполагаемое поведение во время выполнения.

Он удаляет комментарии, находит идентификаторы по регулярному выражению, заменяет их именами вида _0x1, кодирует содержимое строк escape-последовательностями и минифицирует результат. Полноценное синтаксическое дерево JavaScript не используется.

Нет. Простая замена может затронуть имена свойств, глобальные API и слова внутри контекстов, которые требуют синтаксического анализа. Результат необходимо запускать в тестовой среде перед использованием.

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

ASCII-символы кодируются как \xNN, а остальные UTF-16 code units — как \uNNNN. Символы вне базовой многоязычной плоскости могут представляться парой escape-последовательностей.

ASCII-символы кодируются как \xNN, а остальные UTF-16 code units — как \uNNNN. Символы вне базовой многоязычной плоскости могут представляться парой escape-последовательностей.