Отечественный стандарт шифрования ГОСТ 28147. Режимы замены, гаммирования.

Несмотря на то, что ГОСТ 28147-89 был принят в далеком 1989 году, в наши дни он является весьма широко используемым как в России, так и в мире в целом. Во-первых, этому способствует отечественное законодательство. Государственные организации и ряд коммерческих обязаны использовать для защиты информации только сертифицированные ФАПСИ криптосредства, а получение сертификата ФАПСИ подразумевает, что "в указанных криптосредствах реализованы криптографические алгоритмы, объявленные государственными или отраслевыми стандартами Российской Федерации...". Несмотря на упразднение ФАПСИ в текущем году, нормативные документы, устанавливающие данные требования, действительны и сейчас. Во-вторых, данный алгоритм разрабатывался с огромным запасом в криптостойкости, причем с совсем небольшим ущербом скорости шифрования.

Алгоритм ГОСТ 28147-89 является классическим алгоритмом симметричного шифрования на основе сети Фейстеля (см. рис. 1). Данный алгоритм шифрует информацию блоками по 64 бита (такие алгоритмы называются "блочными"). Смысл сети Фейстеля состоит в том, что блок шифруемой информации разбивается на два или более субблоков, часть которых обрабатывается по определенному закону, после чего результат этой обработки накладывается (операцией побитового сложения по модулю 2) на необрабатываемые субблоки. Затем субблоки меняются местами, после чего обрабатываются снова и т.д. определенное для каждого алгоритма число раз -раундов.