Перейти к содержанию
TextArray
100% локально

XOR-шифр

XOR каждого байта вашего текста с повторяющимся ключом — шифруйте и дешифруйте в одном инструменте.

Входные данные
Выходные данные

XOR-шифр

XOR — это наименьший из существующих шифров: каждый входной байт объединяется с байтом ключа, ключ повторяется столько, сколько необходимо, а обработка результата через тот же ключ точно восстанавливает оригинал. Эта симметрия позволяет одному инструменту выполнять обе задачи: шифрование и дешифрование — это одна и та же операция с заменой форматов. Зашифруйте, вставив текст и прочитав шестнадцатеричный код или Base64; расшифровать, переключив входной формат на шестнадцатеричный или Base64, а выходной формат на текст.

Ключ может быть задан в виде обычного текста, шестнадцатеричных байтов или Base64, поэтому запрос, который передает вам ключ, например 0x1f37, вводится напрямую. Вся обработка осуществляется в формате UTF-8 на уровне байтов, что означает передачу акцентированного текста и эмодзи без потерь, а подсчет показывает, сколько входных байтов и ключевых байтов было использовано. Шестнадцатеричный ввод допускает пробелы и префикс 0x; Base64 принимает как стандартные, так и безопасные для URL-адресов алфавиты.

Стоит сказать прямо: XOR с повторяющимся ключом не является безопасностью. Его, как известно, можно взломать с помощью частотного анализа — именно поэтому он появляется в каждом CTF, курсе по криптографии и рецензии на реверс-инжиниринг. Этот инструмент предназначен для тех, кто: решает и ставит задачи, деобфусцирует строки, найденные в двоичных файлах или конфигурациях вредоносных программ, тестирует парсеры или объясняет, почему один только XOR не работает. Для фактической защиты сообщения используйте вместо этого инструмент шифрования текста на основе AES.

Все работает локально в вашем браузере — открытый текст, зашифрованный текст и ключи никогда не покидают ваше устройство, а ключевое поле маскируется и никогда не сохраняется.

FAQ

Как мне расшифровать то, что я здесь зашифровал?
Поменяйте форматы местами: вставьте шестнадцатеричный или зашифрованный текст Base64, установите соответствующий ему входной формат, установите выходной формат на текст и используйте тот же ключ. XOR является собственной обратной операцией, поэтому идентичная операция восстанавливает открытый текст.
Безопасно ли шифрование XOR?
Нет. Повторяющиеся закономерности утечек ключей, которые классический частотный анализ разрушает за считанные секунды, — это хрестоматийная атака, лежащая в основе многих проблем CTF. Относитесь к XOR как к запутыванию и инструменту обучения; для обеспечения настоящей секретности используйте инструмент шифрования текста, который выполняет AES-256 с ключом, полученным из вашего пароля.
Почему мой текстовый вывод полон странных символов?
XOR создает произвольные байты, и большинство последовательностей байтов не являются допустимым текстом UTF-8. Вот почему шестнадцатеричный результат является выводом по умолчанию. Вывод текста предназначен для направления расшифровки, где результатом действительно является текст.
Что означают ключевые форматы?
Текст обрабатывает вводимый вами текст как байты UTF-8. Hex считывает пары шестнадцатеричных цифр (пробелы и префикс 0x подходят), а Base64 декодирует стандартный или URL-безопасный Base64. Ключ, который не анализируется в заявленном формате, вместо неправильного результата выдает спокойную ошибку.
Загружен ли где-нибудь мой текст или ключ?
Нет. XOR полностью выполняется в вашем браузере, ключевое поле замаскировано, никогда не сохраняется, и ничего не покидает ваше устройство.