Обфускация HTML-файлов
Pro
На платном тарифе вы можете обфусцировать HTML-файлы, содержащие встроенный JavaScript. Обфускатор извлекает помеченные теги <script>, обфусцирует их содержимое и сохраняет окружающий HTML — работает как с базовой, так и с VM-обфускацией.
Поддержка HTML-файлов
Включите опцию Parse HTML, и обфускатор автоматически извлечёт теги <script>, обфусцирует их содержимое и сохранит структуру HTML.
Пример
Входной HTML
<!DOCTYPE html>
<html>
<head>
<title>My App</title>
<script src="vendor.js"></script> <!-- External scripts preserved -->
</head>
<body>
<h1>Welcome</h1>
<!-- This script will NOT be obfuscated (no attribute) -->
<script>
console.log('Regular script - not obfuscated');
</script>
<!-- This script WILL be obfuscated -->
<script data-javascript-obfuscator>
// Self-contained code only!
function validateLicense(key) {
return key.length === 32 && key.startsWith('PRO-');
}
validateLicense('test');
</script>
<!-- Another obfuscated script (isolated from the one above) -->
<script data-javascript-obfuscator>
function init() {
console.log('App initialized');
}
init();
</script>
</body>
</html>
После обфускации преобразуются только скрипты с атрибутом data-javascript-obfuscator. Всё остальное содержимое остаётся без изменений.
Ограничения
- Обфусцируются только скрипты с атрибутом
data-javascript-obfuscator - Каждый тег скрипта обфусцируется по отдельности — код должен быть самодостаточным и не может ссылаться на другие теги скриптов
- Атрибуты обработчиков событий (
onclick,onloadи т. д.) не обфусцируются - URL-адреса JavaScript (протокол
javascript:) не обфусцируются - Скрипты внутри HTML-комментариев игнорируются
- Source maps не поддерживаются, когда включён Parse HTML
