Обфускатор целых чисел и чисел JavaScript
Обфусцируйте числовые литералы в коде JavaScript, превращая их в математические выражения, hex-, восьмеричные и двоичные литералы, битовые трюки и арифметические комбинации. Введите любое целое число и получите 7 обфусцированных вариантов с одинаковым значением. Копируйте отдельные выражения или весь набор — бесплатно, приватно, без регистрации.
Enter any integer and instantly generate obfuscated JavaScript number literals. Choose from math expressions, hex, octal, binary, bitwise tricks, or arithmetic combos — all evaluate to the same number.
0x2a0o520b101010~(~42)42^0((821-23)/19)(168/4)(168/4) evaluates to 42 in JavaScriptAll Obfuscated Variants (copy individually)
(168/4)0x2a0o520b101010~(~42)42^0((821-23)/19)How it works
This tool generates JavaScript number literals that evaluate to the same integer value but look completely different. Copy the obfuscated expression into your JavaScript/TypeScript code to make numeric constants harder to understand for humans and static analysis. All generation is algorithmic and runs entirely in your browser — no data is ever sent to any server.
Возможности
- 7 стилей обфускации: выбирайте среди математических выражений, hex, восьмеричных, двоичных, побитового NOT, трюков XOR и арифметических комбинаций. Берите стиль, подходящий контексту вашего кода.
- Живой предпросмотр и копирование: каждый стиль обновляется в реальном времени во время ввода. Копируйте отдельные варианты или весь набор одним кликом.
- Быстрые пресеты: частые числовые константы вроде 0, 1, 42, 255, 1024 и 65535 доступны в один клик — идеально для тестов и сравнения.
- Анализ длины и размера: каждый вариант показывает число символов и процент изменения относительно исходного числа, помогая балансировать силу обфускации и размер кода.
Что такое обфускация чисел?
Обфускация чисел — это переписывание числовых литералов в исходном коде в эквивалентные выражения, которые труднее понять людям и автоматическим инструментам. Вместо 42 можно написать (50-8) , 0x2A , 0b101010 или ~( -43 ) . Все эти формы дают то же значение в JavaScript, но выглядят абсолютно по-разному.
Как работает обфускация
Обфускатор целых чисел JavaScript применяет семь разных техник. Математические выражения используют алгебраические тождества вроде n+1-1 или n*2/2. Преобразования в hex, восьмеричную и двоичную запись меняют формат литерала. Побитовое NOT использует трюк двойного отрицания ~~n или обёртку ~(~n). XOR опирается на тождества n^0 = n и n^1^1 = n. Арифметические комбинации создают многошаговые выражения вроде ((141/3)-5). Каждая техника использует рандомизацию, поэтому результат меняется при каждой генерации.
Эффективность защиты кода
Обфускация чисел — один из слоёв эшелонированной защиты кода. Настойчивый реверс-инженер сможет вручную вычислить выражения в консоли, но обфусцированные числа усложняют автоматический анализ и увеличивают время на понимание вашего кода. Для лучшего результата сочетайте обфускацию чисел с переименованием переменных, кодированием строк и обфускацией потока управления. Прирост длины различается: hex добавляет около 50 % для небольших чисел, а арифметические комбинации — 300–600 % и более.
Приватность и безопасность
Инструмент работает полностью в браузере на клиентском JavaScript. Ваш код и введённые числа никогда не покидают устройство. Нет запросов к API, серверной обработки, хранения данных и отслеживания. Движок обфускации использует встроенные числовые методы JavaScript и Math.random для генерации выражений — всё локально и приватно.
Часто задаваемые вопросы
Обфускация чисел в JavaScript превращает числовые литералы в исходном коде в эквивалентные, но менее читаемые выражения. Например, число 42 может стать 0x2A, ~~42, (50-8) или ((141/3)-5). Все эти формы дают в JavaScript 42, но в коде выглядят совершенно иначе.
Влияние на производительность ничтожно. Движки JavaScript вычисляют константные выражения на этапе разбора и компиляции благодаря свёртке констант. Обфусцированное выражение вроде (42+5-5) компилируется в тот же машинный код, что и литерал 42. Единственная цена — чуть большее время разбора скрипта из-за более длинного исходного кода.
Обфускатор использует рандомизацию для выбора из нескольких стратегий преобразования. Например, стиль математических выражений может при одном клике выдать n+1-1, а при следующем — n*2/2. Такое разнообразие позволяет создавать несколько обфусцированных вариантов одного числа и выбирать тот, что лучше подходит к стилю кода и ограничениям по размеру.
Арифметические комбинации сложнее всего быстро оценить в уме, но они же сильнее увеличивают размер кода. Hex- и двоичные литералы узнаваемы для опытных разработчиков, но всё равно читаются хуже обычных десятичных чисел. Для максимальной защиты смешивайте стили для разных чисел в коде, чтобы не возникал единый шаблон.
Да. Сгенерированные выражения являются корректным JavaScript и TypeScript. Они без изменений работают во всех современных браузерах, Node.js, Deno, Bun и TypeScript. Просто скопируйте обфусцированное выражение и вставьте его вместо исходного числового литерала.
Сейчас инструмент ориентирован на целые числа. Обфускация чисел с плавающей точкой сложнее из-за вопросов точности: некоторые математические тождества, идеально работающие для целых, могут давать крошечные ошибки округления для десятичных. В будущих версиях возможна поддержка дробных чисел с проверками.
Нет. Этот обфускатор чисел JavaScript работает на 100 % в браузере. Ваш код, введённые числа и сгенерированные выражения никогда не покидают устройство. Нет ни аналитики, ни запросов к API, ни серверной обработки, ни хранения данных. Ваша приватность полностью защищена.
Да — на 100 % бесплатно, без регистрации, аккаунта и ограничений на использование. Создавайте столько обфусцированных вариантов, сколько нужно, и так часто, как хотите. Никаких премиум-тарифов, скрытых платежей и лимитов по частоте.