T

Text Machine

Мощные текстовые инструменты прямо в браузере

Шифр Бофора

Шифруйте и расшифровывайте шифр Бофора — полиалфавитный шифр с ключевым словом, названный в честь британского адмирала Sir Francis Beaufort. Он обратим: одно и то же ключевое слово и шифрует, и расшифровывает, поэтому отдельного режима расшифровки нет. Введите ключевое слово и наблюдайте, как разбор строится вживую. Всё работает в вашем браузере.

Бофор обратим: одно и то же ключевое слово и шифрует, и расшифровывает. Чтобы расшифровать сообщение, вставьте шифртекст и введите то же ключевое слово — и результатом будет исходный открытый текст. Отдельной кнопки расшифровки нет.

Ключевое слово

Ключевое слово

Ключевое слово — это секрет, общий для отправителя и получателя. Оно повторяется вдоль всего сообщения, и каждая его буква задаёт, насколько вычитается данная позиция. Используются только буквы; любые пробелы, цифры или знаки препинания в ключевом слове игнорируются.

Текст
Результат

Введите текст выше, чтобы увидеть здесь результат Бофора.

Как пользоваться Шифр Бофора

  1. 1

    Введите ключевое слово

    Введите общее секретное ключевое слово, например FORTIFICATION. Используются только его буквы; любые пробелы, цифры или знаки препинания игнорируются. Одно и то же ключевое слово используется и для шифрования, и для расшифровки.

  2. 2

    Введите или вставьте свой текст

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

  3. 3

    Прочтите обратимый результат

    Поскольку Бофор обратим, одно и то же ключевое слово служит обоим направлениям. Чтобы восстановить сообщение, вставьте шифртекст и введите то же ключевое слово, которое использовалось при шифровании; результатом будет исходный открытый текст.

  4. 4

    Просмотрите, скопируйте и поделитесь

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

Как устроен шифр Бофора

Что такое шифр Бофора?

Шифр Бофора — это полиалфавитный шифр замены, названный в честь Sir Francis Beaufort, адмирала Королевского флота, наиболее известного сегодня шкалой ветра Бофора. Он тесно связан с шифром Vigenère: повторяющееся ключевое слово сдвигает каждую букву сообщения, поэтому одна и та же буква открытого текста может зашифроваться во множество разных букв шифртекста в зависимости от её позиции. Именно это рассеивание каждой буквы по алфавиту делает полиалфавитный шифр куда более трудным для чтения, чем простой сдвиг Цезаря.

Что выделяет Бофор — это направление арифметики. Вместо того чтобы прибавлять ключ к открытому тексту, как делает Vigenère, Бофор вычитает открытый текст из ключа. Это единственное изменение придаёт шифру его самое полезное свойство: он обратим, то есть одна и та же операция и шифрует, и расшифровывает. Метод был напечатан на небольшой карточке, изданной вскоре после смерти Бофора в 1857 году, и то же правило обратимости позднее было заложено в роторные машины, такие как Hagelin M-209, использовавшаяся в середине двадцатого века.

Как работает шифр Бофора

Пронумеруйте алфавит от A как 0 до Z как 25. Ключевое слово повторяется столько раз, сколько нужно, чтобы под каждой буквой сообщения стояла одна буква ключа. Для каждой позиции вы берёте букву ключа, вычитаете из неё букву открытого текста и переносите результат по алфавиту, взяв остаток по модулю 26. Записанная как формула, буква шифртекста равна C = (K − P) mod 26. Преобразуются только буквы; пробелы, цифры и знаки препинания проходят насквозь и не расходуют букву ключа, поэтому ключевое слово остаётся выровненным с теми буквами, которые имеют значение.

На бумаге то же вычисление можно проделать с помощью tabula recta — квадратной таблицы всех сдвинутых алфавитов. Чтобы зашифровать букву, вы находите букву открытого текста в верхней строке, спускаетесь по этому столбцу до буквы ключевого слова, а затем считываете шифртекст по метке в самом левом краю этой строки. Этот поиск — лишь наглядный способ вычислить то же вычитание, и это ровно то, что показывает живой разбор под инструментом для каждой буквы вашего сообщения.

Разобранный пример

Зашифруем сообщение HELLO с ключевым словом KEY. Повторение ключевого слова даёт буквы ключа K, E, Y, K, E, выстроенные под H, E, L, L, O. Вычитая каждую букву открытого текста из её буквы ключа: K минус H равно 10 − 7 = 3, что есть D; E минус E равно 0, что есть A; Y минус L равно 24 − 11 = 13, что есть N; K минус L равно 10 − 11 = −1, и перенос даёт 25, что есть Z; наконец, E минус O равно 4 − 14 = −10, с переносом в 16, что есть Q. Шифртекст — DANZQ.

Теперь расшифруем DANZQ с тем же ключевым словом KEY и тем же вычитанием. K минус D равно 10 − 3 = 7, что есть H; E минус A равно 4, что есть E; Y минус N равно 24 − 13 = 11, что есть L; K минус Z равно 10 − 25 = −15, с переносом в 11, что есть L; E минус Q равно 4 − 16 = −12, с переносом в 14, что есть O. Результат — снова HELLO. Та же самая операция восстановила сообщение, что и составляет весь смысл шифра Бофора.

Почему Бофор сам себе обратен

Свойство обратимости вытекает прямо из формулы. Шифрование вычисляет C = (K − P) mod 26. Если подать этот шифртекст обратно через тот же шаг с тем же ключом, вы вычислите (K − C) mod 26, то есть (K − (K − P)) mod 26. Две буквы ключа взаимно уничтожаются, и остаётся P — исходный открытый текст. Поскольку вычитание в этом циклическом алфавите симметрично подобным образом, шифрование дважды возвращает вас туда, откуда вы начали.

Это по-настоящему удобно. С Vigenère вам нужно помнить, что при шифровании надо прибавлять, а при расшифровке — вычитать, поэтому два направления используют разные процедуры. С Бофором есть лишь одна процедура для изучения, и одна настройка машины или один инструмент могут служить обоим направлениям. Вот почему у этого инструмента нет отдельной кнопки расшифровки: вы просто вводите то же ключевое слово и вставляете любой текст, который хотите преобразовать.

Бофор, Vigenère и вариант Бофора

Полезно выстроить в ряд три тесно связанных шифра с ключевым словом. Шифр Vigenère прибавляет, C = (P + K) mod 26, и для расшифровки требует обратного вычитания. Настоящий шифр Бофора вычитает открытый текст из ключа, C = (K − P) mod 26, и обратим. Существует и третье правило — вариант Бофора, иногда называемый немецким Бофором, который вместо этого вычитает ключ из открытого текста, C = (P − K) mod 26. Этот вариант есть в точности шаг расшифровки Vigenère, использованный как шифрование, и, в отличие от настоящего Бофора, он не обратим, поэтому для его отмены нужно шифрование Vigenère.

Поскольку все три используют повторяющееся ключевое слово и tabula recta, их часто путают, и сообщение, зашифрованное одним, будет выглядеть бессмыслицей под другим. Этот инструмент реализует классический обратимый Бофор. Если вам нужно правило с прибавлением или вариант, инструмент Vigenère на Text Machine охватывает Vigenère и связанные с ним режимы.

Как взломать шифр Бофора

Бофор наследует сильные и слабые стороны любого полиалфавитного шифра с повторяющимся ключом. Его защита в том, что одна буква открытого текста отображается в несколько разных букв шифртекста, что сглаживает очевидные пики частот букв, выдающие простой шифр замены. Его слабость в том, что ключ повторяется. Как только аналитик угадывает длину ключевого слова, шифртекст распадается на отдельные столбцы, каждый из которых был зашифрован одной фиксированной буквой ключа, и каждый столбец становится простым шифром сдвига, поддающимся частотному анализу.

Классический способ найти длину ключа — это исследование Kasiski, которое ищет повторяющиеся группы букв и измеряет расстояния между ними, вместе с индексом совпадений, измеряющим, насколько неравномерны частоты букв. Зная длину ключа, восстановить каждую букву ключа быстро. Вся эта атака — та же самая, что прославилась взломом шифра Vigenère, поэтому сообщение Бофора надёжно лишь настолько, насколько его ключевое слово длинно, непредсказуемо и использовано лишь однажды.

Надёжен ли шифр Бофора?

Нет. По современным меркам шифр Бофора не даёт настоящей безопасности. Короткое или повторно использованное ключевое слово быстро поддаётся методам Kasiski и индекса совпадений, описанным выше, и даже длинное ключевое слово не устоит перед настойчивым аналитиком с компьютером. Он принадлежит эпохе ручных шифров и ранних шифровальных машин, где его привлекательность заключалась в остроумном, простом в использовании правиле обратимости, а не в невзламываемой стойкости.

Сегодня шифр Бофора ценят за обучение и за развлечение. Это превосходный способ понять полиалфавитную замену и изящную идею самообратного шифра, и он часто появляется в головоломках, квестах и соревнованиях capture-the-flag. Для защиты настоящей информации вместо него следует полагаться на современные, хорошо проверенные алгоритмы, такие как AES.

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

Что такое шифр Бофора?
Шифр Бофора — это полиалфавитный шифр замены, названный в честь британского адмирала Sir Francis Beaufort. Как и шифр Vigenère, он сдвигает каждую букву на повторяющееся ключевое слово, но вычитает открытый текст из ключа, а не прибавляет, что делает его обратимым: одна и та же операция и шифрует, и расшифровывает.
Как работает шифр Бофора?
Пронумеруйте алфавит от A как 0 до Z как 25 и повторите ключевое слово вдоль сообщения. Для каждой буквы шифртекст — это буква ключа минус буква открытого текста, взятая по модулю 26: C = (K − P) mod 26. Изменяются только буквы; пробелы, цифры и знаки препинания проходят насквозь и не продвигают ключевое слово.
Шифр Бофора — это то же самое, что шифр Vigenère?
Это близкие родственники, но не одно и то же. Vigenère прибавляет ключ к открытому тексту, C = (P + K) mod 26, и использует другой шаг для расшифровки. Бофор вычитает открытый текст из ключа, C = (K − P) mod 26, и использует один шаг для обоих направлений. Сообщение, зашифрованное одним, не расшифруется правильно под другим.
Почему шифр Бофора обратим?
Шифрование вычисляет C = (K − P) mod 26. Прогон шифртекста обратно через тот же шаг даёт (K − C) mod 26 = (K − (K − P)) mod 26, что упрощается до P — исходной буквы. Поскольку две буквы ключа взаимно уничтожаются, применение шифра дважды возвращает сообщение, поэтому одна операция и шифрует, и расшифровывает.
Можете показать пример шифра Бофора?
Шифрование HELLO с ключевым словом KEY даёт DANZQ. Буквы ключа K, E, Y, K, E выстраиваются под сообщением, и вычитание каждой буквы открытого текста из её буквы ключа по модулю 26 даёт D, A, N, Z, Q. Расшифровка DANZQ с тем же ключевым словом KEY и тем же вычитанием возвращает HELLO.
Как мне расшифровать шифр Бофора?
Используйте то же ключевое слово, которое применялось при шифровании, и вставьте шифртекст в инструмент. Поскольку Бофор обратим, отдельного режима расшифровки нет: ввод ключевого слова и шифртекста сразу же даёт исходный открытый текст. Если вы не знаете ключевого слова, его придётся восстанавливать криптоанализом.
Что такое вариант шифра Бофора?
Вариант Бофора, иногда называемый немецким Бофором, вместо этого вычитает ключ из открытого текста: C = (P − K) mod 26. Это шаг расшифровки Vigenère, использованный для шифрования, и, в отличие от настоящего Бофора, он не обратим, поэтому его нужно отменять шифрованием Vigenère. Этот инструмент реализует классический обратимый Бофор.
Какое ключевое слово мне использовать?
Подойдёт любое слово или фраза из букв. Более длинное, менее предсказуемое ключевое слово надёжнее, потому что безопасность шифра зависит от того, чтобы ключевое слово было длинным, трудным для угадывания и никогда не использовалось повторно. Короткие или распространённые ключевые слова взламываются быстро. Пробелы, цифры и знаки препинания в ключевом слове игнорируются, поэтому значение имеют только его буквы.
Меняет ли шифр Бофора пробелы и знаки препинания?
Нет. Шифруются только 26 букв. Пробелы, цифры и знаки препинания проходят без изменений и не расходуют букву ключевого слова, поэтому ключевое слово остаётся выровненным с буквами, которые оно преобразует. Регистр букв в выводе сохраняется, поэтому результат сохраняет форму вашего исходного текста.
Как взломать шифр Бофора?
Бофор — это шифр с повторяющимся ключом, поэтому атака та же самая, что взламывает Vigenère. Сначала найдите длину ключа с помощью исследования Kasiski и индекса совпадений, затем разбейте шифртекст на столбцы, разделяющие одну букву ключа, и решите каждый как простой сдвиг частотным анализом. Короткое или повторно использованное ключевое слово взламывается быстро.
Надёжен ли шифр Бофора?
Нет. По современным меркам он не обеспечивает реальной безопасности: повторяющееся ключевое слово поддаётся классическому криптоанализу, а даже длинные ключевые слова не устоят перед компьютером. Его лучше рассматривать как учебный и головоломный шифр и частицу истории криптографии. Для подлинной защиты вместо него используйте современный алгоритм, такой как AES.
Загружается ли мой текст на сервер?
Нет. Всё шифрование и расшифровка происходят полностью в вашем браузере, поэтому ваш текст и ключевое слово никогда не загружаются, не записываются в журналы и не сохраняются. Даже ссылка для обмена хранит ваши данные в части URL после знака решётки, которую браузеры никогда не отправляют на сервер, поэтому они остаются конфиденциальными, пока вы сами не решите поделиться ими.

Похожие инструменты

Продолжайте работу с этими удобными инструментами

Шифр Порта

Шифр Виженера

Шифр Гронсфельда

Шифр Тритемия

Шифр с автоключом

Шифр бегущего ключа