Кто владеет информацией — тот владеет миром.

Ротшильд

Пока другие только пытаются понять законы рынка, используй их!

Терморектальный криптоанализTM



Алгоритм SAFER+

Алгоритм SAFER+ был разработан в 1998 г. по заказу той же корпорации Cylink, алгоритмы семейства SAFER, специально для участия в конкурсе AES. SAFER+ является усовершенствованием ранее разработанных алгоритмов семейства SAFER. В его разработке, помимо Джеймса Мэсси, принимали участие специалисты Академии Наук Армении Гурген Хачатрян (Gurgen Н. Khachatrian) и Мельсик Курегян (Melsik К. Kuregian).

Расшифровывание
Как и в алгоритме SAFER К-64, расшифровывание в SAFER+ выполняется применением обратных операций в обратной последовательности. Поэтому не привожу здесь подробное описание расшифровывания, ограничившись только матрицей М-1, заменяющей 4 уровня обратных преобразований IPHT.

Процедура расширения ключа
Расширение ключа алгоритма SAFER+ похоже на таковое у алгоритма SAFER SK-64 с учетом увеличения размера блока (и, соответственно, удвоения размера каждого фрагмента расширенного ключа).

Вычисляется дополнительный байт (как и в SAFER SK-64, операцией XOR, применяемой ко всем байтам исходного ключа шифрования). То есть, например, для 256-битного ключа получается временный ключ размером 33 байта.

Значение каждого байта временного ключа циклически сдвигается влево на 3 бита.

После выполнения сдвига выбираются 16 байтов, начиная с байта, номер которого соответствует номеру раунда расширения ключа / (например, для раунда № 18 расширения 256-битного ключа выбираются байты с 18 по 33-й, для последующих раундов необходимое количество байтов «добирается», начиная с 1-го байта).

Выбранные байты побайтно складываются по модулю 256 с соответствующими байтами 16-байтной константы Bt. Константы Bt описаны далее. Результатом данного шага является очередной фрагмент ключа К.
Криптоанализ алгоритма SAFER+
Поскольку SAFER+ участвовал в конкурсе AES, к нему было приковано достаточно пристальное внимание криптологов как в течение конкурса, так и по его завершении. Среди криптоаналитических исследований данного алгоритма стоит отметить следующие:
предлагается атака на алгоритм SAFER+/256 (т. е. SAFER+ с 256-битным ключом шифрования), для проведения которой требуется не более трех известных открытых текстов (и соответствующих им шифртекстов) и около 2240 тестовых операций шифрования;
там же описана и атака на связанных ключах (на тот же SAFER+/256), для которой требуется 3*232 выбранных открытых текстов, зашифрованных на двух ключах, и около 220 операций; обе атаки абсолютно непрактичны, но доказывают недостаточный запас криптостойкости SAFER+ с 256-битным ключом;
авторы предложили меры по усилению процедуры расширения ключа, которые сделали бы обе атаки невозможными;

в работе утверждается, что SAFER+ подвержен дифференциальному криптоанализу по потребляемой мощности; аналогичные выводы сделаны.

Кроме того, в итоговом документе первого раунда конкурса AES дается следующая информация о SAFER+.

Достоинства алгоритма:
• алгоритм имеет достаточный запас криптостойкости (с учетом модификации процедуры расширения ключа, которая будет описана далее);
• алгоритм достаточно нетребователен к ресурсам, поэтому может применяться в устройствах с ограниченными ресурсами (например, в смарт-картах).

Недостатки:
алгоритм обладает весьма низкой скоростью шифрования и достаточно медленной процедурой расширения ключа;
алгоритм подвержен атакам по потребляемой мощности (что, впрочем, справедливо даже для алгоритма Rijndael — победителя конкурса).

В результате алгоритм SAFER+ не вышел во второй раунд конкурса AES: во-первых, из-за недостаточного быстродействия, а во-вторых, «благодаря» алгоритму Serpent, обладающему схожими характеристиками, но более быстрому и с большим запасом криптостойкости — эксперты решили, что в финале конкурса из этих двух алгоритмов предпочтение однозначно будет отдано алгоритму Serpent.

Единое расширение ключа SAFER+
В процессе проведения конкурса AES авторы алгоритма SAFER+ модифицировали процедуру расширения ключа (такие модификации допускались условиями конкурса), чтобы обеспечить противостояние атакам. Результирующая процедура расширения ключа напоминает таковую для SAFER SK-128. Эта же процедура (названная «SAFER+ Unified Key Schedule» — «единое расширение ключа SAFER+») используется для расширения 128- и 192-битных ключей, но со следующими изменениями:
в качестве «правой половины ключа» при расширении 128-битного ключа используется сам исходный ключ шифрования;
байты №№ 17...24 192-битного ключа формируют первые 8 байтов «правой половины ключа»;
остальные 8 байтов формируются применением операции XOR к следующим группам байтов исходного ключа:
№№1,9,17;
№№2,10,18;
№№3, 11, 19 и т. д.

Данная модификация алгоритма не способствовала его выходу во второй раунд конкурса AES, поскольку не повлияла принципиально на его характеристики.

По материалам книги Сергея Панасенко «Алгоритмы шифрования»

Остапенко Денис aka Sharp, 2006

Соглашение о приватности информации

 

Hosted by uCoz