Выбор конкретных функций
Для оптимальной производительности применяйте VM-обфускацию только к самому чувствительному коду с помощью vmTargetFunctionsMode.
Смотреть
Obfuscator.io: Targeting Functions in VM Obfuscation (IIFE and Comment Mode)
Чтобы применять VM-обфускацию только к отмеченным вами функциям, включите режим комментариев:
Режим комментариев (рекомендуется)
Задайте vmTargetFunctionsMode: 'comment', чтобы VM-обфускация применялась только к функциям, помеченным специальным комментарием. Работает на любом уровне вложенности.
Идеально подходит для защиты проверок лицензии, логики аутентификации или собственных алгоритмов, при этом остальной код сохраняет производительность.
Комментарии /* javascript-obfuscator:vm */ должны сохраниться в коде, который получает обфускатор. Если перед ним запускается компилятор, бандлер или минификатор, настройте его так, чтобы он сохранял эти комментарии. Если комментарий удалён, функция не виртуализируется, а если не сохранилось ни одного маркера, обфускация завершается ошибкой "no functions are marked with the /* javascript-obfuscator:vm */ directive".
Режим root (по умолчанию)
Рассматриваются только функции корневого уровня (при включённом Async Executor - вместо них самые внешние async-функции на любой глубине; списки имён ниже применяются к ним). Используйте vmTargetFunctions, чтобы задать белый список, или vmExcludeFunctions, чтобы исключить функции по имени.
Имена сопоставляются только с объявлениями функций и именованными функциональными выражениями. У функции, присвоенной переменной (const checkAuth = () => {}), нет имени для сопоставления: белый список её пропускает, а чёрный список не исключает. Для таких функций используйте режим комментариев.
