Полностью скрыть JavaScript-код без обфускации невозможно, так как он загружается в клиентский браузер в явном виде и выполняется им же. 1
Несколько способов, которые могут помочь затруднить чтение и понимание кода:
- Использовать модули. 2 Код нужно разделить на отдельные файлы, каждый из которых будет иметь свою область видимости. 2 Это усложнит задачу злоумышленнику при попытке получить доступ к коду. 2
- Выполнять код на сервере, а клиенту присылать результаты его работы. 2 Так чувствительный код будет скрыт от клиентской стороны, что снизит риск несанкционированного доступа. 1
- Использовать крипторы. 35 Они приводят код в нечитаемую форму, используя, как правило, base64. 5 Однако у этого метода низкий уровень безопасности: если понять принцип работы крипторов, отсечь «соль» и декодировать, то сразу становится доступен весь код в его исходном виде. 5
- Использовать побитовые операторы. 5 Они позволяют заменять числа на наборы скобок и знака ~. 5
- Делать субституцию стандартных функций и методов JavaScript. 5
Важно помнить, что эти методы не гарантируют полную безопасность кода, и при достаточной мотивации злоумышленник всё равно сможет получить к нему доступ. 1