T

Text Machine

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

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

Шифруйте и расшифровывайте шифр Гронсфельда — упрощённый шифр Виженера, использующий короткую строку цифр в качестве ключа. Каждая цифра сдвигает соответствующую букву вашего сообщения, а ключ повторяется вдоль всего текста. Переключайтесь между шифрованием и расшифровкой и наблюдайте, как разбор строится вживую. Всё работает в вашем браузере.

Числовой ключ

Цифры ключа

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

Открытый текст
Шифртекст

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

Как пользоваться Шифр Гронсфельда

  1. 1

    Выберите шифрование или расшифровку

    Выберите «Шифровать», чтобы превратить открытый текст в шифртекст Гронсфельда, или «Расшифровать», чтобы восстановить открытый текст из шифртекста. Один и тот же числовой ключ используется для обоих направлений.

  2. 2

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

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

  3. 3

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

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

  4. 4

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

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

Как устроен шифр Гронсфельда

Что такое шифр Гронсфельда?

Шифр Гронсфельда — это полиалфавитный шифр замены, который работает в точности как шифр Виженера, но берёт свой ключ в виде короткой строки цифр, а не ключевого слова. Каждая цифра от 0 до 9 сообщает вам, насколько сдвинуть соответствующую букву сообщения, и цифры повторяются вдоль всего текста. Поскольку одна и та же буква открытого текста может стать несколькими разными буквами шифртекста в зависимости от её позиции, шифр скрывает простую закономерность частот букв, которая выдаёт обычный сдвиг Цезаря.

Шифр назван в честь Иоганна Франца, графа фон Гронсфельда, дипломата и военного семнадцатого века, и был описан учёным Гаспаром Шоттом в его труде 1665 года о тайнописи. Его привлекательность была практической: числовой ключ легко запомнить и легко передать, например в виде даты или памятного числа, не договариваясь заранее о секретном слове. По этой причине шифр Гронсфельда нашёл реальное применение в переписке, а позднее и в эпоху телеграфа.

Как работает шифр Гронсфельда

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

Сдвигаются только 26 букв. Пробелы, знаки препинания и даже цифры, появляющиеся в самом сообщении, проходят насквозь и не расходуют цифру ключа, поэтому ключ остаётся выровненным с теми буквами, которые имеют значение. Регистр букв сохраняется, поэтому заглавная буква остаётся заглавной, а строчная — строчной. Поскольку каждая цифра находится между 0 и 9, в каждой позиции используется один из лишь десяти возможных сдвигов, что и является определяющей чертой шифра Гронсфельда.

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

Зашифруем сообщение HELLO с числовым ключом 31415. Повторение ключа выстраивает цифры 3, 1, 4, 1, 5 под буквами H, E, L, L, O. Сдвигая каждую букву вперёд на её цифру, получаем: H плюс 3 — это K, E плюс 1 — это F, L плюс 4 — это P, L плюс 1 — это M, и O плюс 5 — это T. Шифртекст — KFPMT.

Чтобы расшифровать KFPMT с тем же ключом 31415, вычтите каждую цифру вместо этого. K минус 3 — это H, F минус 1 — это E, P минус 4 — это L, M минус 1 — это L, и T минус 5 — это O, что снова составляет HELLO. Шаги шифрования и расшифровки зеркальны друг другу, поэтому получателю нужен лишь тот же числовой ключ.

Гронсфельд против Виженера

Шифр Гронсфельда лучше всего понимать как шифр Виженера с ограниченным ключом. Ключевое слово Виженера превращает каждую свою букву в сдвиг от 0 до 25, используя весь алфавит. Ключ Гронсфельда всегда использует только сдвиги от 0 до 9, которые совпадают с буквами ключевого слова Виженера от A до J. Поэтому ключ Гронсфельда 31415 ведёт себя в точности как ключевое слово Виженера DBEBF, потому что D — это сдвиг на 3, B — сдвиг на 1, E — сдвиг на 4, и так далее.

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

Зачем использовать число в качестве ключа?

Числовой ключ — это весь смысл шифра Гронсфельда. Люди хорошо запоминают числа, которые уже что-то для них значат, такие как дата рождения, номер дома или начальные цифры знакомой константы вроде числа пи. Двое корреспондентов могут быстро договориться о таком числе и восстановить его по памяти, не записывая секретное слово, которое могут найти.

Числа также передаются чисто. В эпоху телеграфа ключ из цифр можно было передать и записать с меньшей вероятностью ошибки, чем слово, и для него не требовалось особой кодовой книги. Именно эта практичность объясняет, почему шифр Гронсфельда оставался популярным для повседневной тайнописи ещё долго после появления более стойких методов, и почему он по сей день встречается в головоломках и обучении.

Как взломать шифр Гронсфельда

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

Решение каждого столбца — это то, в чём Гронсфельд слабее Виженера. Каждый столбец был сдвинут на одно из лишь десяти возможных значений, поэтому аналитик может просто перебрать все десять и выбрать тот сдвиг, при котором столбец читается как обычный язык. С короткими ключами весь ключ можно даже найти полным перебором, так как на каждую цифру приходится лишь десять вариантов. Поэтому сообщение Гронсфельда надёжно лишь настолько, насколько его ключ длинен, непредсказуем и никогда не используется повторно.

Надёжен ли шифр Гронсфельда?

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

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

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

Что такое шифр Гронсфельда?
Шифр Гронсфельда — это полиалфавитный шифр замены, который работает как шифр Виженера, но использует ключ из цифр вместо ключевого слова. Каждая цифра от 0 до 9 сдвигает соответствующую букву сообщения, и ключ повторяется вдоль всего текста. Он назван в честь графа семнадцатого века и ценился за удобство числового ключа.
Как работает шифр Гронсфельда?
Пронумеруйте алфавит от A как 0 до Z как 25 и запишите цифровой ключ под сообщением, повторяя его по мере необходимости. Чтобы зашифровать, прибавьте каждую цифру ключа к стоящей над ней букве по модулю 26: C = (P + K) mod 26. Чтобы расшифровать, вместо этого вычтите: P = (C − K) mod 26. Сдвигаются только буквы; пробелы, знаки препинания и цифры в тексте проходят без изменений.
Чем Гронсфельд отличается от шифра Виженера?
Гронсфельд — это шифр Виженера с ограниченным ключом. Ключевое слово Виженера использует сдвиги от 0 до 25, тогда как ключ Гронсфельда использует только сдвиги от 0 до 9. Поэтому ключ Гронсфельда 31415 идентичен ключевому слову Виженера DBEBF. Числовой ключ легче запомнить, но меньший набор сдвигов делает Гронсфельд легче взламываемым.
Можете показать пример шифра Гронсфельда?
Шифрование HELLO с ключом 31415 даёт KFPMT. Цифры 3, 1, 4, 1, 5 выстраиваются под буквами и сдвигают каждую вперёд: H плюс 3 — это K, E плюс 1 — это F, L плюс 4 — это P, L плюс 1 — это M, и O плюс 5 — это T. Расшифровка KFPMT с тем же ключом вычитает цифры и возвращает HELLO.
Какой ключ мне использовать?
Используйте любую строку цифр от 0 до 9. Более длинный, менее предсказуемый ключ надёжнее, потому что безопасность шифра зависит от того, чтобы ключ был длинным, трудным для угадывания и никогда не использовался повторно. Короткие или очевидные числа, такие как 1234, взламываются почти мгновенно. Буквы и другие символы, введённые в ключ, игнорируются, поэтому значение имеют только цифры.
Как мне расшифровать шифр Гронсфельда?
Переключите инструмент в режим «Расшифровать», введите тот же числовой ключ, который использовался при шифровании, и вставьте шифртекст. Инструмент вычитает каждую цифру ключа, чтобы восстановить открытый текст. Если вы не знаете ключа, его часто можно восстановить криптоанализом, потому что в каждой позиции используется лишь один из десяти возможных сдвигов.
Почему ключ использует числа вместо букв?
Числовой ключ — это определяющая особенность шифра Гронсфельда и его главное практическое преимущество. Числа, такие как дата или цифры числа пи, легко запомнить и продиктовать, и им не нужно преобразование из букв в сдвиги. Исторически это делало шифр удобным для переписки и для телеграфа, где цифры передавались чисто.
Меняет ли шифр пробелы, цифры и знаки препинания?
Нет. Сдвигаются только 26 букв. Пробелы, знаки препинания и любые цифры, появляющиеся в самом сообщении, проходят без изменений и не расходуют цифру ключа, поэтому ключ остаётся выровненным с буквами. Регистр букв сохраняется, поэтому вывод сохраняет форму вашего исходного текста.
Допустима ли цифра ключа 0?
Да. Цифра 0 — это допустимое значение ключа, которое сдвигает свою букву на ноль, оставляя её в этой позиции без изменений. Поэтому ключ, состоящий целиком из нулей, возвращает сообщение без изменений. Смешивание нулей в более длинном ключе вполне допустимо и просто означает, что некоторые позиции не сдвигаются.
Как взломать шифр Гронсфельда?
Поскольку ключ повторяется, вы сначала находите длину ключа с помощью исследования Kasiski и индекса совпадений, затем разбиваете шифртекст на столбцы, разделяющие одну цифру. Каждый столбец использовал лишь один из десяти возможных сдвигов, поэтому перебор всех десяти и сохранение читаемого результата быстро восстанавливает его. Короткие ключи можно даже взломать полным перебором напрямую.
Надёжен ли шифр Гронсфельда?
Нет. По современным меркам он не обеспечивает реальной безопасности: малое пространство ключей на букву и повторяющийся ключ делают его быстро взламываемым вручную и тривиальным для компьютера. Его лучше рассматривать как учебный и головоломный шифр и частицу истории криптографии. Для подлинной защиты вместо него используйте современный алгоритм, такой как AES.
Загружается ли мой текст на сервер?
Нет. Всё шифрование и расшифровка происходят полностью в вашем браузере, поэтому ваш текст и ключ никогда не загружаются, не записываются в журналы и не сохраняются. Даже ссылка для обмена хранит ваши данные в части URL после знака решётки, которую браузеры никогда не отправляют на сервер, поэтому они остаются конфиденциальными, пока вы сами не решите поделиться ими.

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

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

Шифр Бофора

Шифр Порта

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

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

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

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