Материал: Основы криптографической защиты информации. Мокроусов А.Н., Радько Н.М

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

чами вычисляют криптографическую хэш-функцию значения протокола обмена (или, по меньшей мере, значения ключей), подписывают ее алгоритмом цифровой подписи и посылают подпись другой стороне. Получатель проверит подпись и то, что значение хэшфункции совпадает с вычисленным значением. Такой метод используется, в частности, в системе Фотурис

(Photuris).

Атака с помощью таймера (timing attack): Этот но-

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

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

2.ФОРМАЛЬНЫЕ МОДЕЛИ ШИФРОВ

2.1.Основные положения

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

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

15

значное соответствие между множеством ключей и множеством преобразований.

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

расшифрования.

Перед зашифрованием открытый текст предварительно представляется в виде последовательности подслов, называемых шифрвеличинами. При зашифровании шифрвеличины заменяются некоторыми их эквивалентами в шифртексте, ко-

торые назовѐм шифробозначениями.

2.2.Классификация шифров

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

- если фрагменты открытого текста (отдельные буквы или группы букв) заменяются некоторыми их эквивалентами в шифртексте, то соответствующий шифр относится к классу шифров замены;

- если буквы открытого текста при шифровании лишь меняются местами друг с другом, то мы имеем дело с

шифром перестановки; - если с целью повышения надѐжности шифрования

шифрованный текст, полученный применением некоторого шифра, может быть ещѐ раз зашифрован с по-

16

мощью другого шифра, то мы имеем дело с компози-

ционными шифрами.

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

Шифры

замены

Шифры

 

Шифры

 

Композиционные

замены

 

перестановки

 

шифры

 

 

 

 

 

Многозначные

 

Однозначные

 

Маршрутные

замены

 

замены

 

перестановки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Симметричные

 

Асимметричные

 

Столбцовые

 

Решётки,

 

 

(строчные)

 

шифры

 

шифры

 

 

лабиринты

 

 

перестановки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поточные

Блочные

шифры

шифры

Одноалфавитные

 

Многоалфавитные

 

 

Шифры

шифры

 

шифры

 

 

гаммирования

 

 

 

 

 

 

Рис.2.1. Схема наиболее важных классов шифров

17

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

2.3. Блочные шифры

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

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

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

Алгоритм шифрования выполняет некоторое число циклов (итераций). Каждый цикл состоит в применении преобразований первого и второго типов. Такой принцип построения даѐт возможность реализовать каждый цикл шифрования с использованием однотипных узлов, а также выполнять расшифрование путѐм обработки данных в обратном направлении.

18

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

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

1)Режим электронной кодовой книги (ECB).

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

2)Режим сцепления блоков (CBC).

Вданном режиме каждый блок шифртекста Ci перед очередным зашифрованием складывается по модулю 2 со сле-

дующим блоком открытого текста Mi+1. При этом вектор C0 меняется ежедневно и хранится в секрете.

3)Режим обратной связи по шифртексту (CFB).

4)Режим обратной связи по выходу (OFB).

В последних двух режимах используется блочная гамма Z0, Z1,…, причѐм Z0 полагается равным начальному вектору C0.

2.4. Поточные шифры

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

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

Для поточного многоалфавитного шифра правило зашифрования формулируется следующим образом. Пусть А

19

Источник: https://studfile.net/preview/16565181/