Кодировщик ROT13
Сдвиг латинского алфавита на 13 позиций: A↔N, B↔O. Одна и та же операция кодирует и раскодирует — отдельный декодер не нужен.
Онлайн-конвертер
ROT13
Латинские буквы сдвигаются на 13 позиций. Шифрование и расшифровка — один и тот же алгоритм. Кириллица не изменяется.
Как работает ROT13
Правило
Каждая латинская буква сдвигается на 13 позиций по кругу. Первая половина алфавита обменивается со второй: A↔N, B↔O, C↔P. Регистр сохраняется, остальные символы не меняются.
Почему в обе стороны
Сдвиг ровно на половину алфавита возвращает букву на место при повторном применении. Поэтому кодировщик и декодер здесь — одна и та же операция.
Зачем придумали
Не для защиты, а чтобы спрятать текст от случайного взгляда: спойлеры к фильмам, ответы на загадки, шутки. Прочитать может любой — но только если сам этого захочет.
ROT13 подробно: математика, история, применение
ROT13 — частный случай шифра Цезаря с жёстко заданным сдвигом 13. Формально буква с номером i переходит в букву с номером (i + 13) mod 26. Ключа как такового нет: он публичный и всегда один и тот же, поэтому ROT13 правильнее называть не шифром, а способом кодирования текста — примерно как Base64 или URL-кодирование, только для человеческого чтения, а не для машин.
Почему именно 13. Число выбрано не случайно: это ровно половина 26-буквенного алфавита. Из-за этого преобразование становится инволюцией — функцией, обратной самой себе. Практическая польза очевидна: не нужно помнить, кодировали вы текст или раскодировали, и не нужны две кнопки. Тот же трюк работает для цифр (ROT5, потому что 10 ÷ 2 = 5) и для печатных символов ASCII (ROT47, где набор из 94 символов делится на 47).
История. Массовое применение ROT13 началось в конференциях Usenet начала 1980-х. Там сложилось правило: текст, который может испортить впечатление или задеть читателя, публикуется в ROT13, чтобы прочитать его можно было только осознанно. Программы для чтения новостей быстро получили встроенную команду раскодирования, и приём закрепился в интернет-культуре. Отсюда же шутка про «двойной ROT13 для повышенной секретности» — она обыгрывает как раз самообратимость алгоритма.
Кириллица. Прямого аналога ROT13 для русского языка не существует. В алфавите 33 буквы, и половины у нечётного числа нет: ни сдвиг 16, ни 17 не вернут текст в исходное состояние при повторном применении. Если нужна такая же симметрия для русского, берите Атбаш — он самообратим при любом размере алфавита. Если нужен именно сдвиг — шифр Цезаря, где величину можно задать от 1 до 32.
Где полезен сейчас. Спойлеры и ответы на задачи в блогах и чатах. Учебные задания: ROT13 — самый наглядный пример модульной арифметики, на нём удобно объяснять операцию «остаток от деления». Лёгкая обфускация строк в коде и текстовых файлах, чтобы простой поиск по слову их не находил. Квесты и головоломки, где участник должен догадаться, что перед ним не бессмыслица, а закодированный текст: характерный признак — сохранённые пробелы и правдоподобные длины слов при полностью нечитаемых буквах.
Чего ROT13 не делает. Не защищает данные, не скрывает информацию от того, кто её ищет, и не годится для паролей, ключей и персональных данных. Любой текст раскрывается одним нажатием — в том числе на этой странице. Это инструмент вежливости и удобства, а не безопасности.
Частые вопросы
Что такое ROT13?
ROT13 (от английского rotate by 13 places) — это шифр Цезаря с фиксированным сдвигом на 13 позиций для латинского алфавита. A становится N, B — O, и так далее. Никакого ключа выбирать не нужно: сдвиг всегда 13, поэтому алгоритм одинаково работает у всех и не требует договорённостей.
Почему для раскодирования не нужна отдельная кнопка?
В латинице 26 букв, а 26 ÷ 2 = 13. Сдвинув алфавит на 13 позиций дважды, вы возвращаетесь к началу: ROT13(ROT13(текст)) = текст. Именно из-за этой симметрии ROT13 удобен — одна и та же функция и кодирует, и раскодирует.
Почему ROT13 не работает с русским алфавитом?
В русском алфавите 33 буквы — нечётное число, и ровно половины у него нет. Сдвиг на 16 или 17 позиций не будет самообратимым: применив его дважды, вы не получите исходный текст. Поэтому стандарт ROT13 определён только для латиницы. Для кириллицы используйте шифр Цезаря с любым сдвигом или Атбаш — он самообратим при любом числе букв.
Это шифрование? Можно ли им что-то защитить?
Нет. ROT13 не даёт никакой защиты: сдвиг известен всем, а расшифровка занимает одно действие. Задача у него другая — «скрыть на виду», чтобы текст нельзя было прочитать случайным взглядом, но любой желающий мог его раскрыть без пароля. Для реальной защиты нужны AES, RSA, а для паролей — bcrypt.
Где ROT13 применяли исторически?
В конференциях Usenet 1980-х ROT13 стал негласным стандартом для спойлеров, ответов на загадки, анекдотов «на грани» и любых сообщений, которые не стоило читать мимоходом. Многие тогдашние программы для чтения новостей имели встроенную кнопку раскодирования — до сих пор в некоторых почтовых клиентах есть команда «применить ROT13».
Что такое ROT5 и ROT47?
Это родственники ROT13 для других наборов символов. ROT5 сдвигает цифры 0–9 на пять позиций и тоже самообратим (10 ÷ 2 = 5); часто применяется вместе с ROT13 под названием ROT18, чтобы скрывать текст с числами. ROT47 работает с 94 печатными символами ASCII, включая знаки препинания, — тоже сдвиг ровно на половину набора.
Сохраняются ли пробелы, цифры и знаки препинания?
Да. ROT13 меняет только латинские буквы, регистр при этом сохраняется: A→N, a→n. Цифры, пробелы, переводы строк и пунктуация остаются на своих местах, поэтому структура текста и длины слов после кодирования узнаваемы.