На Горох
Информатика

Шифрование

"Информатика", Рудченко Т.А., Семёнов А.Л. / Под ред. Семёнова А.Л.

Объяснение темы

Кратко о теме

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

Объяснение темы

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

Определения и обозначения

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

Открытый текст — сообщение до шифрования, понятное отправителю и адресату. Это исходные слова или символы, которые нужно передать. Например, если отправитель хочет послать слово «КОТ», до преобразования оно является открытым текстом.

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

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

Как это устроено

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

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

Адресат получает зашифрованное сообщение и применяет к нему подходящее обратное преобразование. Для этого ему нужны правило шифра и верный ключ: без них нельзя надёжно определить, как вернуть символы на прежние места. При правильной расшифровке результатом становится исходный открытый текст. Если правило или ключ выбраны неверно, вместо понятного сообщения может получиться бессмысленная последовательность.

В шифре Цезаря букву заменяют другой буквой, отстоящей от неё на заданное число позиций в алфавите. Например, при сдвиге на три позиции буква А превращается в Г, а Б — в Д. Величина сдвига является ключом. Если при движении вперёд достигнута последняя буква алфавита, отсчёт продолжают с его начала, иначе часть букв нельзя было бы зашифровать.

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

Этапы и элементы шифрования

Элемент или этапЧто используется или происходитРезультат
Исходные данныеСообщение, которое отправитель хочет передатьОткрытый текст
ШифрованиеК открытому тексту применяют правило шифра и ключСимволы сообщения преобразованы
Зашифрованное сообщениеПолученная после преобразования последовательностьТекст, который нельзя прочитать без расшифровки
РасшифровкаАдресат применяет обратное преобразованиеВосстановленный открытый текст
Роль ключаЗадаёт параметр преобразования, например величину сдвигаПомогает шифровать и правильно расшифровывать

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

Разбор задач

Задача 1. Сдвиг на одну позицию

Условие. Зашифруем короткое слово «КОТ» шифром Цезаря со сдвигом на одну позицию вперёд по русскому алфавиту. Считаем, что алфавит включает букву Ё. Чтобы получить шифротекст, нужно заменить каждую букву следующей и не забыть правило перехода от конца алфавита к началу.

  1. Находим в алфавите букву К и заменяем её следующей буквой — Л.
  2. Следующая после О буква — П, поэтому вторую букву слова заменяем на П.
  3. После Т идёт У, значит, последняя буква превращается в У.
  4. Соединяем новые буквы в том же порядке: переставлять их местами не нужно.

Ответ: слово «КОТ» превращается в «ЛПУ». В этой задаче переход через границу алфавита не встретился, но при сдвиге последней буквы алфавита на одну позицию результатом была бы первая буква.

Задача 2. Обратный сдвиг

Условие. Получено сообщение «ТУЛЕИХ», зашифрованное шифром Цезаря со сдвигом на три позиции вперёд. Нужно восстановить открытый текст. Если при шифровании буквы двигали вперёд, для расшифровки следует перемещать их назад на то же число позиций.

  1. Записываем ключ: сдвиг равен трём позициям.
  2. Для первой буквы Т отсчитываем три позиции назад и получаем П.
  3. Так же преобразуем остальные буквы: У → Р, Л → И, Е → В, И → Е, Х → Т.
  4. Собираем полученные буквы в исходном порядке, не меняя их местами.

Ответ: открытый текст — «ПРИВЕТ». Проверка помогает убедиться в результате: если сдвинуть его буквы на три позиции вперёд, снова получится «ТУЛЕИХ».

Задача 3. Ключ неизвестен

Условие. Получено короткое сообщение «ТУЛЕИХ», зашифрованное шифром Цезаря, но величина сдвига неизвестна. Нужно найти исходный текст. Поскольку в шифре Цезаря ключ задаёт число позиций, можно проверить все возможные сдвиги, а не угадывать один заранее.

  1. Выбираем направление расшифровки: пробуем сдвигать каждую букву назад на одинаковое число позиций.
  2. Начинаем с одного шага, затем повторяем проверку для двух, трёх и следующих шагов, пока не будут рассмотрены возможные ключи.
  3. Для каждого ключа собираем получившуюся строку и проверяем, похожа ли она на слова русского языка.
  4. При обратном сдвиге на три позиции получается «ПРИВЕТ» — осмысленное сообщение. Для уверенности можно зашифровать его этим ключом и сравнить результат с полученной строкой.

Ответ: исходный текст — «ПРИВЕТ», ключ — сдвиг на три позиции вперёд при шифровании. Перебор здесь сработал, потому что вариантов сдвига немного, а правильный результат читается как обычное слово.

Типичные ошибки

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

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

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

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

Связь с другими темами

Для работы с шифром Цезаря нужно уметь пользоваться алфавитом: находить порядок букв и заменять символы по правилу. Шифрование связано с кодированием информации, потому что в обоих случаях данные преобразуются, но цели различаются: кодирование меняет форму представления, а шифрование скрывает содержание. Понимание этой темы пригодится при дальнейшем изучении защиты информации, паролей и безопасной передачи данных. Оно также помогает замечать, почему для защиты важны не только сам способ преобразования, но и сохранность ключа.

Что запомнить

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

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

Чем шифрование отличается от кодирования?

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

Зачем при шифровании нужен ключ?

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

Как расшифровать сообщение, если известен шифр Цезаря?

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

Что делать, если ключ неизвестен?

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

Почему шифр Цезаря считается ненадёжным?

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

Спросить по теме параграфа

Шифрование

Эта же тема в других учебниках

Учебник

Оглавление →
Предмет
Информатика
Учебник
"Информатика", Рудченко Т.А., Семёнов А.Л. / Под ред. Семёнова А.Л.