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

Ротшильд

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

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



Алгоритм Noekeon

Алгоритм Noekeon разработан в 2000 г. коллективом разработчиков из Бельгии; авторы алгоритма:
Джоан Деймен, Михаэль Петере (Michael Peeters) и Жиль Ван Аске (Gilles Van Assche) из компании Proton World;
Винсент Риджмен из Католического Университета г. Лювен.

И снова вспомним алгоритм Rijndael, поскольку среди авторов алгоритма Noekeon присутствуют оба автора Rijndael — Джоан Деймен и Винсент Риджмен. Однако Noekeon несравнимо меньше похож на Rijndael, чем, напри-мер, другие участники конкурса NESSIE: Anubis и Grand Cru.

Noekeon шифрует данные 128-битными блоками с использованием 128-битного ключа шифрования. Алгоритм существует в двух режимах: прямом (direct mode) и косвенном (indirect mode), разница между которыми сущест-вует лишь в процедуре расширения ключа; оба режима будут рассмотрены далее.

Структура алгоритма
Алгоритм Noekeon выполняет 16 раундов преобразований. Блок данных представляется в виде массива из четырех 32-битных строк а[0]...а[3]. В каждом раунде алгоритма выполняются следующие действия:
Верхняя строка массива данных складывается с помощью операции XOR с константой С1, где г— номер текущего раунда (начиная с 0). Константы С1[0]...С1[15] будут описаны далее.

Расшифровывание
Процедура расшифровывания практически идентична зашифровыванию, за исключением следующих отличий.
Как было сказано выше, при расшифровывании константы С1[г] и С2[г] меняются местами.
Модификация рабочего ключа выполняется однократно до начала расшифровывания, после чего К используется во всех операциях, где должен использоваться ключ К.
Раунды расшифровывания нумеруются в обратном порядке — соответственно, в обратном порядке используются константы С[16]...С[1].

Иначе выполняется заключительное преобразование (после выполнения всех раундов расшифровывания): сначала выполняется дополнительная операция 0 (с участием К), после чего выполняется наложение на а[1] константы С[0].

Следует учесть, что для обеспечения вычисления констант С[16]...С[0] «на лету» в процессе расшифровывания данные константы могут вычисляться и в обратном порядке.

Процедура расширения ключа
Расширение ключа алгоритма Noekeon выполняется исключительно просто, как в прямом, так и в косвенном режиме алгоритма.
В прямом режиме расширение ключа полностью отсутствует: 128-битный ключ шифрования используется в качестве 128-битного рабочего ключа.
В косвенном режиме рабочий ключ получается из ключа шифрования за-шифровыванием алгоритмом Noekeon значения Null на ключе шифрования (который в данном случае используется в качестве рабочего ключа).
Авторы алгоритма рекомендуют использовать прямой режим шифрования только в том случае, когда невозможно выполнение потенциальным злоумышленником атак на связанных ключах.

Криптоанализ алгоритма
На рассмотрение в рамках конкурса NESSIE были приняты оба режима алгоритма Noekeon. И оба режима оказались подвержены атаке на основе связанных ключей (в том числе косвенный режим), которую предложили криптологи Ларе Кнудсен и Хавард Раддум (Havard Raddum) в своей работе. Кроме того, ими же было доказано, что критерии создания таблиц замен (используемых в операции у) не способствуют высокой криптостойкости алгоритма: при генерации согласно данным критериям таблицы замен результирующий алгоритм с вероятностью 85 % окажется подвержен линейному и/или дифференциальному криптоанализу. Этих причин оказалось достаточно для невыхода алгоритма Noekeon во второй раунд конкурса.

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

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

 

Hosted by uCoz