- •Оглавление
- •ВВЕДЕНИЕ
- •1.1. Предмет криптографии и основные определения
- •1.2. Математические основы криптографии
- •1.3. Математическая модель шифра
- •1.4. Классификация шифров
- •1.5. Обзор истории криптографии
- •Появление шифров
- •Становление криптографии как науки
- •Криптография в Новое время
- •Научная криптология
- •2.1. Понятие подстановки
- •2.2. Математическая модель шифра подстановок
- •2.3. Сравнимость
- •2.4. Примеры классических шифров подстановок
- •2.5. Математическая модель шифра перестановок
- •2.6. Маршрутные перестановки как пример шифра перестановок
- •ГЛАВА 3 Характеристики открытых текстов. Вероятностный подход
- •3.2. Вероятностный подход к анализу текстов
- •Частоты букв европейских языков, в %
- •Частоты символов русского языка, в %
- •Сочетаемость букв русского языка
- •Чередование гласных и согласных для текста длиной 105 знаков
- •Буква
- •Буква
- •4.1. Теоретико-информационный подход к анализу текстов
- •4.2. Комбинаторный подход к анализу текстов
- •Современные симметричные криптосистемы
- •5.1. Математическая модель шифра замены
- •5.2. Классификация шифров замены
- •ГЛАВА 6 Принципы построения симметричных шифров
- •6.1. Принципы построения поточных шифров
- •6.2. Принципы построения блочных шифров
- •ГЛАВА 7 Математические основы асимметричной криптографии
- •7.1. История и основные определения асимметричной криптографии
- •7.2. Основы теории простых чисел
- •7.3. Функция Эйлера
- •ГЛАВА 8 Теоремы асимметричной криптографии и алгоритм RSA
- •8.1. Основные теоремы асимметричной криптографии
- •8.2. Алгоритм RSA
- •9.1. Задачи асимметричной криптографии
- •10.1. Понятие электронной подписи
- •10.2. Алгоритм электронной подписи на основе алгоритма RSA
- •ГЛАВА 11 Управление криптографическими ключами
- •11.1. Задачи управления криптографическими ключами
- •11.2. Генерация ключей
- •11.3. Хранение ключей
- •Заключение
- •Список рекомендованной литературы
ГЛАВА 5 Современные симметричные криптосистемы
Математическая модель шифра замены. Классификация шифров замены.
5.1. Математическая модель шифра замены
Шифр подстановки, математическую модель которого мы построили ранее, является частным случаем шифра замены. Напомним, что шифр подстановки предполагает использование одного и того же алфавита для построения множеств как открытых, так и шифрованных текстов. В шифрах замены алфавиты открытых и шифрованных текстов, вообще говоря, различаются. Построим математическую модель шифра замены, которая будет обобщать все построенные ранее модели.
Будем считать, что открытые и шифрованные тексты представляют собой слова на алфавитах A и B соответственно. Если обозначить A* множество слов конечной длины на алфавите A, а B* – множество слов
конечной длины на алфавите B, то X A* , Y B* . Открытый текст представляется в виде последовательностей блоков текста, называемых шифрвеличинами. При зашифровании шифрвеличины заменяются шифробо-
значениями.
Обозначим U = {u1, u2, …, uN}, где ui A* – множество всех возможных шифрвеличин, V={v1, v2, …, vM} – множество всех возможных шифробозначений (vi B*).
Следует отметить, что условие однозначности расшифрования требует выполнения неравенства M ≥ N. При выполнении этого условия мы можем представить множество V в виде объединения N непересекающихся непустых подмножеств Vi,1, где i изменяется от 1 до N (рис. 5.1).
44
|
V2,1 |
|
|
|
|
V4,1 |
|
v1 |
v2 |
v3 |
|
v5 |
|
v4 |
|
v6 |
v7 |
||
|
V1,1
V3,1
Рис. 5.1. Разбиение множества V в случае М=7, N=4
Однако такое разбиение не является единственным. Мы можем представить множество V в виде объединения непересекающихся непустых подмножеств другим способом (рис. 5.2).
V1,2 |
|
V3,2 |
|
|
|
||
v1 |
v2 |
v3 |
|
v5 |
|
v4 |
|
v6 |
v7 |
||
|
V4,2
V2,2
Рис. 5.2. Второй способ разбиения множества V
Продолжая таким образом строить различные разбиения множества V, мы получим все возможные разбиения, количество которых обозначимr:
45
|
N |
|
|
V = |
i, |
|
|
|
V α ,α =1,...,r . |
||
|
i=1 |
|
|
Далее, построим множество отображений, которые отображают множество шифрвеличин на множество разбиений V. Их может быть ровно столько же, сколько возможных разбиений, то есть r штук. Отображения будем обозначать ϕα .
ϕα : U →{V1,α,V2,α,...,VN ,α},α =1,2,..., r ;
ϕα (ui )=Vi,α , i =1,2,...,N .
Таким образом, каждое отображение ϕα каждой шифрвеличине ui ставит в соответствие соответствующее подмножество шифробозначений Vi,α. В рассмотренном нами примере с M = 7, N = 4 можно записать:
ϕ1 (u1 )=V1,1 ; |
ϕ2 (u1 )=V1,2 ; |
ϕ1 (u2 )=V2,1 ; |
ϕ2 (u2 )=V2,2 ; |
ϕ1 (u3 )=V3,1 ; |
ϕ2 (u3 )=V3,2 ; |
ϕ1 (u4 )=V4,1 ; |
ϕ2 (u4 )=V4,2 . |
Осталось определить, каким образом выбирать шифрующие преобразования ϕα для каждого ui. Нам поможет сделать это построение специ-
ального отображения ψ, называемого распределителем шифра замены. Итак, рассмотрим множество ключей K и для каждого k K и целого
l определим
ψ(k,α)={α1,k , α2,k ,..., αl ,k }, где αi,k [1, r ].
Таким образом, шифр замены определяется множеством шифрующих преобразований ϕα при α [1,r]и распределителем ψ.
Построим, наконец, преобразование зашифрования аналогично тому, как делали это для шифра подстановки.
Пусть x ={x1 ,x2 ,...,xl } – исходное сообщение из множества шифрвеличин, xi U ;
46
y ={y1 , y2 ,..., yl } – шифрованное сообщение из множества шифробозначений, yi V . Тогда для каждого i=1,2,…,l yi = ϕαi ,k ( xi ) .
Если полученное в результате действия шифрующего преобразования подмножество V содержит более чем одно шифробозначение, значение y выбирается случайным образом.
5.2.Классификация шифров замены
Вподавляющем большинстве современных симметричных шифров множество шифрвеличин является подмножеством некоторой конечной степени алфавита открытых текcтов, то есть является множеством слов конечной фиксированной длины:
U Ap .
Это означает, что исходное сообщение разбивается на блоки одинаковой длины p. Из этого следует подразделение шифров замены на поточные и блочные шифры.
Если p = 1, шифр называется поточным (исходное сообщение зашифровывается посимвольно, то есть потоком).
Если p > 1, то говорят о блочных шифрах. В этом случае исходными единицами для зашифрования являются целые блоки исходного текста длины p. Однако построенная математическая модель не исключает использования в алгоритмах симметричного шифрования блоков переменной длины.
47
