Разработка и анализ простых криптографических алгоритмов на основе методов замены (подстановок).

      Комментарии к записи Разработка и анализ простых криптографических алгоритмов на основе методов замены (подстановок). отключены

Лабораторная работа №7

Цель:

Получение навыков создания простейшей криптосистемы симметричногошифрования.
  1. Ход работы

Начало формы

  1. Краткиетеоретические сведения
  2. Шифрами замены называются такие шифры, преобразования изкоторых приводят к замене каждого символа открытого текста на другиесимволы – шифрообозначения, причем порядок следования шифрообозначенийсовпадает с порядком следования соответствующих им символов открытогосообщения.
  3. В своей простейшей форме шифрзамены может быть задан таблицей подстановки, устанавливающей соответствиемежду буквами двух алфавитов An и Bn:

5. ,

6.где – i-тая буква алфавита открытого текста, – шифрообозначение ai (соответствующая ai буква алфавита шифртекста).

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

  1. Алфавиты An и Bn не обязательно должны бытьразличными. В практической криптографии очень часто применяются шифры, вкоторых алфавиты An и Bn совпадают.
  2. В шифре простой замены каждый символ исходного текста заменяетсясимволами того же алфавита одинаково на всем протяжении текста.
  3. В шифрах сложной замены для шифрования каждого символаоткрытого текста применяют свой шифр простой замены. Для реализации шифровсложной замены последовательно и циклически меняют используемые таблицыподстановки.
  4. Полибианский квадрат.Одним из первых шифров простой замены считаетсятак называемый полибианский квадрат. За два века до нашей эрыгреческий писатель и историк Полибий изобрел для целей шифрованияквадратную таблицу размером 5×5, заполненную буквами греческого алфавита вслучайном порядке (рис. 1.7).

13.

14.Рис. 1.7. Полибианский квадрат

  1. При шифровании в этом полибианском квадрате находили очередную буквуоткрытого текста и записывали в шифртекст букву, расположенную ниже ее втом же столбце. Если буква текста оказывалась в нижней строке таблицы, тодля шифртекста брали самую верхнюю букву из того же столбца. Например, дляслова tauros получается шифртекст Cjdmtx.
  2. Концепция полибианскогоквадрата оказалась плодотворной и нашла применение в криптосистемахпоследующего времени.
  3. Система шифрования Цезаря.Шифр Цезаря является частным случаем шифрапростой замены. Свое название этот шифр получил по имени римскогоимператора Гая Юлия Цезаря, который использовал этот шифр при переписке сЦицероном (около 50 г. до н.э.).
  4. При шифровании исходного текста каждая буква заменялась на другую буквутого же алфавита по следующему правилу. Заменяющая буква определяласьпутем смещения по алфавиту от исходной буквы на К букв. Придостижении конца алфавита выполнялся циклический переход к его началу.Цезарь использовал шифр замены при смещении К = 3. Такой шифрзамены можно задать таблицей подстановки, содержащей соответствующие парыбукв открытого текста и шифртекста. Совокупность возможных подстановок дляК=3 показана в табл. 1.1.
  5. Таблица1.1.
  6. Таблицаподстановки шифра Цезаря

22.A-DJ-MS-V

23.B-EK-NT-W

24.C-FL-OU-X

25.D-GM-PV-Y

26.E-HN-QW-Z

27.F-IO-RX-A

28.G-JP-SY-B

29.H-KQ-TZ-C

30.I-LR-U

  1. Например, послание ЦезаряVENI VIDI VICI (Пришел, Увидел, Победил)выглядело бы в зашифрованном виде так: YHQL YLGL YLFL.
  2. Система шифрования Цезаря с ключевым словом. Особенностью этой системыявляется использование ключевого слова для смещения и изменения порядкасимволов в алфавите подстановки.
  3. Выберем некоторое число k, 0k25 , и слово или короткую фразу в качествеключевого слова. Желательно, чтобы все буквы ключевого слова былиразличными. Пусть выбраны слово DIPLOMAT в качестве ключевого слова ичисло k= 5.
  4. Ключевое слово записывается под буквами алфавита, начиная с буквы,числовой код которой совпадает с выбранным числом k:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
D I P L O M A T
  1. Оставшиеся буквы алфавитаподстановки записываются после ключевого слова в алфавитном порядке:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
V W X Y Z D I P L O M A T B C E F G H J K N Q R S U
  1. Теперь мы имеем подстановку длякаждой буквы произвольного сообщения. Исходное сообщение SEND MORE MONEY шифруется как HZBY TCGZ TCBZS.
  2. Следует отметить, чтотребование о различии всех букв ключевого слова не обязательно. Можнопросто записать ключевое слово (или фразу) без повторения одинаковых букв.
  3. Шифрующие таблицы Трисемуса. В 1508 г. аббат из Германии Иоганн Трисемуснаписал печатную работу по криптологии под названиемПолиграфия. В этой книге он впервые систематически описалприменение шифрующих таблиц, заполненных алфавитом в случайном порядке.Для получения такого шифра замены обычно использовались таблица для записибукв алфавита и ключевое слово (или фраза). В таблицу сначала вписывалосьпо строкам ключевое слово, причем повторяющиеся буквы отбрасывались. Затемэта таблица дополнялась не вошедшими в нее буквами алфавита по порядку.Поскольку ключевое слово или фразу легко хранить в памяти, то такой подходупрощал процессы шифрования и расшифрования.
  4. Поясним этот метод шифрованияна примере. Для русского алфавита шифрующая таблица может иметь размер4×8. Выберем в качестве ключа слово БАНДЕРОЛЬ. Шифрующая таблица с такимключом показана на рис. 1.8.
Б А Н Д Е Р О Л
Ь В Г Ж З И Й К
М П С Т У Ф Х Ц
Ч Ш Щ Ы Ъ Э Ю Я

45.Рис. 1.8. Шифрующая таблица Трисемуса с ключевым словом БАНДЕРОЛЬ

  1. Как и в случае полибианского квадрата, при шифровании находят в этойтаблице очередную букву открытого текста и записывают в шифртекст букву,расположенную ниже ее в том же столбце. Если буква текста оказывается внижней строке таблицы, тогда для шифртекста берут самую верхнюю букву изтого же столбца.
  2. Например, при шифровании с помощью этой таблицы сообщения ВЫЛЕТАЕМПЯТОГОполучаем шифртекст ПДКЗЫВЗЧШЛЫЙСЙ.
  3. Система шифрования Вижинера впервые была опубликована в 1586 г. и являетсяодной из старейших и наиболее известных шифров сложной замены. Своеназвание она получила по имени французского дипломата XVI века Блеза Вижинера, который развивал исовершенствовал криптографические системы.
  4. Система Вижинера подобна такойсистеме шифрования Цезаря, у которой ключ подстановки меняется от буквы кбукве. Этот шифр можно описать таблицей шифрования, называемой таблицей(квадратом) Вижинера. Пример квадрата Вижинера для русского языка приведенв табл. 1.2.
  5. Таблица Вижинера используется для шифрования и расшифрования. Таблицаимеет два входа: верхнюю строку подчеркнутых символов, используемую длясчитывания очередной буквы исходного открытого текста; крайний левый столбецключа. Последовательность ключей обычно получают из числовых значений буквключевого слова.
  6. При шифровании исходногосообщения его выписывают в строку, а под ним записывают ключевое слово(или фразу). Если ключ оказался короче сообщения, то его циклическиповторяют. В процессе шифрования находят в верхней строке таблицыочередную букву исходного текста и в левом столбце очередное значениеключа. Очередная буква шифртекста находится на пересечении столбца,определяемого шифруемой буквой, и строки, определяемой числовым значениемключа.
  7. Рассмотрим пример получения шифртекста с помощью таблицы Вижинера. Пустьвыбрано ключевое слово АМБРОЗИЯ. Необходимо зашифроватьсообщение ПРИЛЕТАЮ СЕДЬМОГО.
  8. Выпишем исходное сообщение в строку и запишем под ним ключевое слово сповторением. В третью строку будем выписывать буквы шифртекста,определяемые из таблицы Вижинера.

55.Сообщение ПРИЛЕТАЮ СЕДЬМОГО

56.КлючАМБРОЗИЯ АМБРОЗИЯ

57.Шифртекст ПЪЙЫУЩИЭ ССЕКЬХЛН

58.Таблица 1.2.

  1. КвадратВижинера для русского языка

Конец формы

  1. Содержаниеработы

63. В соответствии со своим вариантом разработать программу для шифрования русскоязычного текста при помощи шифра подстановки. Программы должны обеспечивать:

64. ·шифрование информации, находящейся в текстовом файле, с записью результата в другой файл;

65. ·шифрование информации, вводимой с клавиатуры, с выводом только шифр — текста;

  1. Варианты заданий:
  2. 1. Шифр Цезаря.
  3. 2. Шифр Цезаря с ключевымсловом.
  4. 3. Шифр Трисемуса.
  5. 4. Шифр Плейфера.
  6. 5. Шифр Вижинера.

Оформление отчета

Включить в отчет

номер, тему и цель лабораторной работы

вариант задания

исходный текст и шифр-текст и код программы (по возможности)

Статьи к прочтению:

Урок 7 Криптоанализ Виженера. Метод индекса совпадений


Похожие статьи: