Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kniga_tolyk_2.docx
Скачиваний:
9
Добавлен:
01.07.2025
Размер:
2.9 Mб
Скачать

3.4.1Алгоритм гост – 28147-89

ГОСТ 28147-89 — советский стандарт симметричного шифрования. Его ввели в 1990 году. ГОСТ — это блочный шифр с простой структурой Фейстеля, с размером блока 64 бита, 256-битным ключом и 32 раундами. Каждый раунд содержит сложение с ключом по модулю 232, набор из восьми 4-битных S-блоков и простой циклический сдвиг на 11 битов. Особенностью ГОСТа является возможность хранения S-блоков в секрете, что можно представить как второй ключ, увеличивающий эффективный ключевой материал до 610 битов.

В основу алгоритма положена сеть Фейстеля, представленная на рисунке ниже.

Поясню работу данного рисунка, так как на нем основан наш алгоритм.

Encryption – шифрование

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

  1. Выбранный блок делится на два равных подблока — «левый» и «правый».

  2. Исходное заполнение правого блока записывается в левый блок на выходе.

  3. Над правым блоком производится криптографическое преобразование с применением ключевых данных.

  4. Левый (исходный) и правый (преобразованный) блоки складываются по модулю 2 в сумматоре по модулю 2.

  5. Так повторяется несколько раз.

Decryption – Расшифрование

Расшифровка информации происходит так же, как и шифрование, с тем лишь исключением, что ключи идут в обратном порядке, то есть не от первого к N-ному, а от N-го к первому.

Структурная схема алгоритма криптографического преобразования

Структурная схема алгоритма криптографического преобразования (криптосхема), приведенного на рисунке 1, содержит:

  • Четыре накопителя по 32 бита: .

  • Два 32-разрядных накопителя: и , — с записанными в них постоянными заполнениями и соответственно.

  • Ключевое запоминающее устройство (КЗУ) на 256 бит. КЗУ состоит из восьми накопителей (блок) по 32 разряда каждый: , .

  • 32- разрядный сумматор поразрядного суммирования по модулю 2: .

  • Еще один сумматор по модулю 2, который не имеет ограничения на разрядность (но используется 64 бита): .

  • Два сумматора по модулю 232 разрядности 32 бита: , .

  • Сумматор по модулю (232-1): СМ4.

  • Блок подстановки К: восемь узлов замены , каждый с памятью на 64 бита.

  • регистр циклического сдвига на одиннадцать шагов в сторону старшего разряда, то есть влево на 11 бит .

Рисунок 1.

3.4.2Ключи в кзу

КЗУ отведено 256 бит, в ГОСТ 28147-89 используется ключ длиной 256 бит. Ключ разбивается на восемь блоков по 32 бита, и каждый бит каждого блока последовательно вводится в накопитель соответствующего порядка.

То есть, 1-й бит ключа вводится в 1-й разряд накопителя , 2-й — во 2-й разряд накопителя , 33-й — в 1-й разряд накопителя , 65-й — в 1-й разряд накопителя , и так далее, 224-й бит ключа вводится в 1-й разряд накопителя , 256-й бит ключа вводится в 32-й разряд накопителя .

Ключи, определяющие заполнения КЗУ и таблиц блока подстановки , являются секретными элементами и поставляются в установленном порядке. Заполнение таблиц блока подстановки является долговременным ключевым элементом, общим для сети ЭВМ.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]