Общая характеристика ГОСТ 28147-89
Алгоритм, определяемый российским стандартом ГОСТ 28147-89, является единым алгоритмом криптографической защиты данных для информационных систем, локальных вычислительных сетей и автономных компьютеров.
Этот алгоритм может реализовываться как аппаратным, так и программным способами, удовлетворяет всем криптографическим требованиям, сложившимся в мировой практике, и, как следствие, позволяет осуществлять криптографическую защиту любой информации, независимо от степени ее секретности.
В алгоритме ГОСТ 28147-89 используется 256-разрядный ключ, представляемый в виде восьми 32-разрядных чисел. Расшифровываются данные с помощью того же ключа, посредством которого они были зашифрованы.
Алгоритм ГОСТ 28147-89 полностью удовлетворяет всем требованиям криптографии. Он позволяет обнаруживать как случайные, так и умышленные модификации зашифрованной информации.
Алгоритм «основного шага криптопреобразования» построен на основе сбалансированной сети Файстеля. На вход основного шага подается блок четного размера, старшая и младшая половины которого обрабатываются отдельно друг от друга. В ходе преобразования младшая половина блока помещается на место старшей, старшая - на место младшей, но предварительно с помощью операции побитного исключающего или складывается с результатом вычисления шифрующей функции. Эта функция, принимающая в качестве аргумента младшую половину блока и некоторый элемент ключевой информации (K), является содержательной частью шифра и называется его функцией шифрования. Соображения стойкости шифра требуют, чтобы размеры всех перечисленных элементов блоков были равны: |N1|=|N2|=|X|, в ГОСТ 28147-89 они равны 32 битам.
![]() |
Рис. 7.1 Результат работы основного шага криптопреобразования
На различных шагах алгоритмов ГОСТ 28147-89 данные, которыми они оперируют, интерпретируются и используются различным образом. В некоторых случаях элементы данных обрабатываются как массивы независимых битов, в других случаях – как целое число без знака, в третьих – как имеющий структуру сложныйэлемент, состоящий из нескольких более простых элементов.
ГОСТ 28147–89 содержит описание алгоритмов нескольких уровней. На самом верхнем находятся алгоритмы, предназначенные для шифрования массивов данных и выработки для них имитовставки. Все они опираются на три алгоритма низшего уровня, называемые в тексте ГОСТа циклами. Эти фундаментальные алгоритмы назовём базовыми циклами.
Базовые циклы:
· цикл зашифрования (32-З);
· цикл расшифрования (32-Р);
· цикл выработки имитовставки (16-З).
В свою очередь, каждый из базовых циклов представляет собой многократное повторение одной единственной процедуры, называемой далее основным шагом криптопреобразования.
Таким образом, чтобы разобраться в ГОСТ 28147-89, надо понять три следующие вещи:
· основной шаг криптопреобразования;
· как из основных шагов складываются базовые циклы;
· как из трех базовых циклов складываются все практические алгоритмы ГОСТа.
·