Научная литература
booksshare.net -> Добавить материал -> Информатика -> Петров А.А. -> "Компьютерная безопасность. Криптографические методы защиты" -> 20

Компьютерная безопасность. Криптографические методы защиты - Петров А.А.

Петров А.А. Компьютерная безопасность. Криптографические методы защиты — M.: ДМК, 2000. — 448 c.
ISBN 5-89818-064-8
Скачать (прямая ссылка): comp_safety.pdf
Предыдущая << 1 .. 14 15 16 17 18 19 < 20 > 21 22 23 24 25 26 .. 181 >> Следующая

Зашифрованный блок
Накопитель N6
Накопитель N5
EIh—
Накопитель N4 Накопитель N3
1
Накопитель N2 Накопитель N1



Блок
открытого текста
S-боксы

Циклический регистр сдвига

КЗУ
K0
Ki
K3
K4
K5
K6
Рис. 1.13 Схема алгоритма ГОСТ28147-89
Алгоритм может применяться в следующих рабочих режимах:
• простая замена;
• гаммирование;
• гаммирование с обратной связью;
• выработка имитовставки.
48
Общие сведения по классической криптографии
Для всех четырех режимов применяется одно общее преобразование, которое можно записать в следующем виде:
Li= Ri-i
Ri=LnOf(Rn, K1)I = 1-31,
где LHR- соответственно левая и правая часть 64-битного блока.
Это преобразование характерно для всех раундов (всего их 32), кроме последнего. Для него преобразование будет иметь вид:
L1=LnOf(Rn1Ki) Rj= Rn i ~ 32
Для каждого раунда функция f остается неизменной. Перед началом преобразования блок открытого текста разбивается на две 32-битные половины LHR, которые помещаются в два 32-разрядных регистра N1 и N2 соответственно. Также перед началом зашифрования 256-битный ключ, разбитый на восемь частей по 32 бита каждая (K0...K7), помещается в ключевое запоминающееся устройство (КЗУ). Далее содержимое регистра N1 суммируется по модулю 232 с очередным заполнением устройства, а ключевые последовательности выбираются из КЗУ в следующем порядке:
• в раундах с 1-го по 24-й - K0, K1, K2, K3, K4, K5, K6, K7;
• в раундах с 25-го по 32-й - K7, K6, K5, K4, K3, K2, K1, K0-
Полученная битовая последовательность разбивается на восемь блоков по 4 бита в каждом и поступает на вход S-боксов. В них реализуется подстановка, имеющая, например, следующий вид:
7, 10, 13, 1, 0, 8, 9, 15, 14, 4, 6, 12, 4, H1 2, 5, 3
Числовое представление битового входа однозначно определяет последовательный номер числа в подстановке и битовое представление соответствующего числа; таким же оно будет и на выходе S-бокса. Для каждого S-бокса задается своя подстановка, которая является долговременным секретным ключом. Генерация подстановок в S-боксах является сложной математической задачей, от решения которой как раз и зависит стойкость этого алгоритма. Подобный прием служит также для развязывания различных сетей передачи данных - очевидно, что расшифрование будет успешным, если принимающая и передающая стороны используют одинаковые подстановки. Таким образом, в сети передачи данных абоненты с одинаковыми подстановками имеют возможность обмениваться зашифрованной информацией, что позволяет создавать выделенные группы пользователей с засекреченной связью.
После S-боксов последовательность поступает в циклический регистр сдвига, который осуществляет смещение на 11 шагов влево. Использование
Алгоритмы блочного шифрования
49
данного регистра вместо перестановок, используемых в DES, обусловлено тем, что данный регистр легко реализуется как программно (за счет использования битовой операции циклического сдвига), так и аппаратно. При этом эффект распространения влияния каждого бита блока открытого текста на каждый бит блока зашифрованного текста достигается за счет прохождения преобразуемого блока через данный регистр 32 раза.
Далее происходит поразрядное суммирование по модулю 2 содержимого регистра циклического сдвига с содержимым регистра N2. Результат суммирования записывается в регистр N1, а содержимое регистра N2 принимает предыдущее значение N1.
Все эти операции составляют один раунд преобразования (реализация функции f) очередного блока открытого текста. Специфика различных типов применения ГОСТ вносит свои дополнения в раунды зашифрования и соответственно расшифрования.
Режим простой замены
В данном режиме блок открытого текста шифруется описанным выше методом без каких-либо добавлений. Результат зашифрования после прохождения 32 раундов находится в регистрах N1 и N2.
Процесс расшифрования аналогичен процессу зашифрования с той лишь разницей, что ключи считываются из КЗУ в следующем порядке:
• с 1-го по 8-й раунд - K0, K1, K2, K3, K4, K5, K6, K7;
• с 9-го по 32-й раунд - K7, K6, K5, K4, K3, K2, K1, K0.
Этот режим рекомендуется применять только для коротких сообщений, поэтому на практике его в основном используют для генерации сеансовых ключей (или другой ключевой информации) и обеспечения имитозащиты сеансовых ключей, передаваемых в зашифрованном виде по открытым каналам связи.
Режим гаммирования
В этом режиме зашифрование происходит путем побитного сложения по модулю 2 блока открытого текста и блока гаммы длиной 64 бита, содержащейся в регистрах N1 и N2. Если блок открытого текста короче 64, то лишние разряды гаммы отбрасываются. Выработка гаммы происходит следующим образом:
1. В накопители N1 и N2 записывается синхропосылка S длиной 64 бита.
2. S шифруется в режиме простой замены, и результат зашифрования из регистров N1 и N2 записывается в регистры N3 и N4 соответственно.
50
Общие сведения по классической криптографии
3. Содержимое регистра N4 суммируется по модулю (232 - 1) с содержимым регистра N6, в котором находится константа C1 (224 + 216 + 28 + 22), а содержимое регистра N5 суммируется по модулю 232 с содержимым регистра N5, в котором находится константа C2 (224 + 216 + 28+ 1).
Предыдущая << 1 .. 14 15 16 17 18 19 < 20 > 21 22 23 24 25 26 .. 181 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed