ROT13 Кодирование

Частный случай шифра Цезаря. Английский алфавит сдвигается на 13 позиций, Русский — на 16 (половина алфавита). При повторном применении получается исходный текст.

ROT13: Древний метод защиты от спойлеров

ROT13 (от англ. "Rotate by 13 places") — это, пожалуй, самый известный пример "игрушечного" шифрования. Он работает по принципу простой подстановки: каждая буква латинского алфавита заменяется на букву, находящуюся через 13 позиций от неё.

Уникальность ROT13 в том, что в английском алфавите 26 букв. Сдвиг на 13 — это ровно половина. Это означает, что функция шифрования идентична функции расшифровки. Применив ROT13 дважды, вы получаете исходный текст.


История и культура

ROT13 стал стандартом де-факто в начале эры интернета, в новостных группах Usenet в начале 1980-х. Его использовали не для защиты секретов от спецслужб, а для защиты читателей от случайных спойлеров в обсуждениях книг, фильмов или разгадок головоломок.

Это был своего рода "этикет": если вы пишете разгадку, закодируйте её в ROT13. Кому надо — расшифрует.


Почему ROT13 — это не шифрование?

С точки зрения криптографии, ROT13 — это катастрофа.

  • Отсутствие ключа: Ключ всегда равен 13. Любой, кто знает, что это ROT13, может прочитать текст мгновенно.
  • Сохранение структуры: Длина слов, пробелы и знаки препинания остаются неизменными, что делает текст легким для чтения даже в зашифрованном виде.

Часто задаваемые вопросы (FAQ)

Работает ли это с русским языком?

В классическом виде — нет, так как в русском алфавите 33 буквы (нечетное число). Наш инструмент использует адаптированный алгоритм (сдвиг +16) для кириллицы, чтобы сохранить читаемость, но свойство самообратимости для русского языка работает чуть сложнее из-за нечетности.

Зачем это нужно сегодня?

  • CTF и хакерские квесты: Классическое задание для новичков ("Sanity Check").
  • "Спрятать" очевидное: Email-адреса в исходном коде страниц, чтобы простые боты-спамеры их не собрали (хотя умные боты это обходят).
  • Пасхалки: Разработчики любят оставлять сообщения в ROT13 внутри программ.