
- •1. Общие положения
- •1.2. Когда и зачем нужно защищать информацию?
- •1.3. Язык сообщения
- •1.4. Тайнопись
- •1.5. Коды и их назначение
- •1.6. Криптография и криптоанализ
- •1.7. Основной объект криптографии
- •1.8. Что такое ключ
- •1.9. Атака на шифр. Стойкость шифра
- •1.10. Сложность вскрытия шифра
- •1.11. Принцип Кирхгофа
- •2. Древняя история криптографии
- •3. Современная криптография
- •3.1. Классификация криптографических систем
- •3.2. Основные классы симметричных криптосистем
- •3.3. Шифр замены
- •3.4. Шифр перестановки
- •3.5. Шифр Энигмы
- •4. Блочные шифры
- •4.1. Общие сведения о блочных шифрах
- •4.2. Сеть Фейштеля
- •4.3. Шифр взбивания. Стандарт des
- •4.3.1. Описание алгоритма
- •4.3.2. Анализ эффективности алгоритма
- •4.4. Отечественный стандарт шифрования данных
- •4.4.1. Режим простой замены
- •4.4.2. Режим гаммирования
- •4.4.3. Режим гаммирования с обратной связью
- •4.5. Режимы применения блочных шифров
- •5. Новый криптостандарт блочного шифрования сша
- •5.1. Общие сведения о конкурсе aes
- •5.1.1. Финалист aes – шифр mars
- •5.1.2. Финалист aes – шифр rc6
- •5.1.3. Финалист aes – шифр Serpent
- •5.1.4. Финалист aes – шифр TwoFish
- •5.2. Победитель aes – шифр Rijndael
- •6. Поточные шифры
- •6.1. Регистры сдвига с обратной связью
- •6.2. Шифр a5
- •6.3. Шифр rc4
- •6.4. Шифр seal
- •7. Асимметричные криптосистемы
- •7.1. Общие сведения об асимметричных криптоалгоритмах
- •7.2. Односторонние функции и функции-ловушки
- •7.3. Алгоритм rsa
- •Длина ключа
- •Применение rsa
- •7.4. Криптосистема Эль-Гамаля
- •7.5. Алгоритм Диффи-Хелмана
- •7.6. Механизм распространения открытых ключей
- •7.6.1. Обмен ключами по алгоритму Диффи-Хеллмана
- •8. Сравнительная характеристика шифров
- •9. Электронные цифровые подписи
- •9.1. Постановка задачи
- •9.2. Алгоритмы электронной цифровой подписи
- •9.2.1. Цифровые подписи, основанные на асимметричных криптосистемах
- •9.2.2. Стандарт цифровой подписи dss
- •9.2.3. Стандарт цифровой подписи гост р 34.10-94
- •9.3. Цифровые подписи, основанные на симметричных криптосистемах
- •9.4. Функции хэширования
- •9.4.1. Функция хэширования sha
- •9.4.2. Функция хэширования гост р 34.11-94
- •9.4.3. Функция хэширования md5
- •Библиографический список
- •Оглавление
4.4.3. Режим гаммирования с обратной связью
Зашифрование открытых данных в режиме гаммирования с обратной связью. Криптосхема, реализующая алгоритм зашифрования в режиме гаммирования с обратной связью, имеет вид, показанный на рис.3.13.
Открытые данные, разбитые на 64-разрядные блоки T0(1), T0(2), …, T0(m), зашифровываются в режиме гаммирования с обратной связью путем поразрядного сложения по модулю 2 с гаммой шифра Гш, которая вырабатывается блоками по 64 бита:
Гш=( Гш(1), Гш(2), …, Гш(m)).
Число двоичных разрядов в блоке T0(m) может быть меньше 64, при этом неиспользованная для шифрования часть гаммы шифра из блока Гш(m) отбрасывается.
Уравнения зашифрования в режиме гаммирования с обратной связью имеют вид:
Здесь
- i-й
64-разрядный блок зашифрованного текста;
A(∙)
- функция зашифрования в режиме простой
замены; m
- определяется объемом открытых данных.
Аргументом
функции A(∙)
на первом шаге итеративного алгоритма
является 64-разрядная синхропосылка
,
а на всех последующих шагах – предыдущий
блок зашифрованных данных
.
Процедура
зашифрования данных в режиме гаммирования
с обратной связью реализуется следующим
образом. В КЗУ вводятся 256 бит ключа. В
накопители N1
и N2
вводится синхропосылка
из 64 бит. Исходное заполнение накопителей
N1
и N2
зашифровывается в режиме простой замены.
Полученное в результате зашифрования
заполнение накопителей и образует
первый 64-разрядный блок гаммы шифра
,
который суммируется поразрядно по
модулю 2 в сумматоре CM5
с первым 64-разрядным блоком открытых
данных
.
В результате получают первый 64-разрядный блок зашифрованных данных
где
.
Блок
зашифрованных данных
одновременно является также исходным
состоянием накопителей N1,
N2
для выработки второго блока гаммы шифра
,
и поэтому по обратной связи
записывается в указанные накопители
N1
и N2.
Заполнение накопителя N1
Заполнение накопителя N2
Заполнение
накопителей N1
и N2
зашифровывается
в режиме простой замены. Полученное в
результате зашифрования заполнение
накопителей N1
и N2
образует второй 64-разрядный блок гаммы
шифра
,
который суммируется поразрядно по
модулю 2 в сумматоре CM5
со вторым блоком открытых данных
:
Выработка
последующих блоков гаммы шифра Гш(i)
и зашифрование соответствующих блоков
открытых данных
проводится аналогично.
Если
длина последнего m-го
блока открытых данных
меньше 64 разрядов, то из Гш(m)
используется только соответствующее
число разрядов гаммы шифра, остальные
разряды отбрасываются.
В канал связи или память ЭВМ передаются синхропосылка и блоки зашифрованных данных Tш(1), Tш(2), …, Tш(m).
Расшифрование в режиме гаммирования с обратной связью. При расшифровании криптосхема имеет тот же вид, что и при зашифровании (см.рис.3.13).
Уравнения расшифрования:
Реализация процедуры расшифрования зашифрованных данных в режиме гаммирования с обратной связью происходит следующим образом. В КЗУ вводят 256 бит того же ключа, на котором осуществлялось зашифрование открытых блоков T0(1), T0(2), …, T0(m). В накопители N1 и N2 вводится синхропосылка . Исходное заполнение накопителей N1 и N2 (синхропосылка ) зашифровывается в режиме простой замены. Полученное в результате зашифрования заполнение N1 и N2 образует первый блок гаммы шифра
который суммируется поразрядно по модулю 2 в сумматоре CM5 с блоком зашифрованных данных Tш(1).
В результате получается первый блок открытых данных
Блок зашифрованных данных Tш(1) является исходным заполнением накопителей N1 и N2 для выработки второго блока гаммы шифра Гш(2): Гш(2)=А(Тш(1)). Полученное заполнение накопителей N1 и N2 зашифровывается в режиме простой замены. Образованный в результате зашифрования блок Гш(2) суммируется поразрядно с по модулю 2 в сумматоре CM5 со вторым блоком зашифрованных данных Тш(2). В результате получают второй блок открытых данных. Аналогично в N1, N2 последовательно записывают блоки зашифрованных данных Tш(2), Tш(3), …, Tш(m), из которых в режиме простой замены вырабатываются блоки гаммы шифра Гш(3), Гш(4), …, Гш(m).
Блоки гаммы шифра суммируются поразрядно по модулю 2 в сумматоре CM5 с блоками зашифрованных данных Tш (3), Tш(4), …, Tш(m).
В результате получают блоки открытых данных
T0(3), T0(4), …, T0(m),
при этом последний блок открытых данных T0(m) может содержать меньше 64 разрядов.