logo
Защита информации

Алгоритмы блочного шифрования: des и гост 28147-89

Американский стандарт криптографического закрытия данных DES (Data Encryption Standard), принятый в 1978 г., является типичным представителем семейства блочных шифров. Этот шифр допускает эффективную аппаратную и программную реализацию, причем возможно достижение скоростей шифрования до нескольких мегабайт в секунду.

В Российской Федерации установлен единый стандарт криптографического преобразования текста для информационных систем ГОСТ 28147-89. Он носит обязательный характер для государственных органов, организаций, предприятий, банковских и иных учреждений, чья деятельность связана с обеспечением информационной безопасности государства. Для других организаций и частных лиц ГОСТ имеет рекомендательный характер. Данный стандарт формировался с учетом мирового опыта и, в частности, были приняты во внимание недостатки и нереализованные возможности алгоритма DES, поэтому применение стандарта предпочтительнее.

Рассматриваемые стандарты относятся к блочным шифрам, удобным для реализации на ЭВМ. Дадим краткое описание алгоритма шифрования в режиме простой замены российского ГОСТ. В этом режиме данные шифруются блоками по 64 бита в каждом. Шифрование заключается в 32-кратном применении процедуры, описываемой общей схемой, приведенной на рис. 2

Исходный текст разбивается на отрезки по 64 бита. Первые 32 бита заносятся в регистр N1,а оставшиеся 32 бита заносятся в регистр N2.

Один такт работы состоит в следующем:

После 32-го цикла работы в регистрах N1 и N2 будет находиться блок шифрованных данных, соответствующий исходному блоку открытых данных.

Длина исходного ключа в ГОСТ – 256 бит. Из этих 256 бит формируются 8 векторов по 32 бита в каждом, которые и хранятся в КЗУ. При шифровании ключи из КЗУ считываются сначала три раза в прямом порядке (с нулевого по седьмой), а затем один раз в обратном порядке.

Рассмотрим теперь основные отличия шифрования по алгоритму DES от шифрования по ГОСТ в режиме простой замены. Прежде всего, у алгоритма шифрования DES ключ состоит всего из 56 бит. Из них по определенному закону формируются 16 ключей по 48 бит в каждом.

Входной алфавит в алгоритме DES, так же как и в ГОСТ, состоит из слов длиной 64 бита. Однако при использовании DES производится 16 циклов преобразования данных, вместо 32 в ГОСТ. Кроме того, в DES используется другая функция преобразования данных (на рис. 2 она обведена двойной рамкой). К тому же в DES эта функция фиксирована, тогда как в тексте российского стандарта узлы замены К1...K8, от которых зависит функция преобразования данных, никак не определены. Такая неполнота ГОСТ 28147-89 вызывает много проблем, так как неизвестно: имеются ли среди возможных узлов замены такие, которые снижают стойкость шифрования информации.

Еще одно отличие состоит в том, что в алгоритме DES блоки шифруемого текста вначале подвергаются некоторой заданной перестановке, а после 16 циклов получившиеся данные подвергаются обратной перестановке. Параметры алгоритмов шифрования DES и ГОСТ представлены в таблице 4.