ШАКАЛЬ


SHACAL-1 (первоначально просто SHACAL ) — это 160-битный блочный шифр, основанный на SHA-1 , и поддерживает ключи от 128 до 512 бит. SHACAL-2 — это 256-битный блочный шифр, основанный на более крупной хеш-функции SHA-256 .

И SHACAL-1, и SHACAL-2 были выбраны для второго этапа проекта NESSIE . Однако в 2003 году SHACAL-1 не был рекомендован для портфолио NESSIE из-за опасений по поводу его основного графика, а SHACAL-2 был наконец выбран в качестве одного из 17 финалистов NESSIE.

Хэш-функция SHA-1 разработана на основе функции сжатия . Эта функция принимает на вход 160-битное состояние и 512-битное слово данных и выводит новое 160-битное состояние после 80 циклов. Хеш-функция работает, многократно вызывая эту функцию сжатия с последовательными 512-битными блоками данных и каждый раз соответствующим образом обновляя состояние. Эта функция сжатия легко обратима, если известен блок данных, т. е. зная блок данных, на который она воздействовала, и выходные данные функции сжатия, можно вычислить то состояние, которое было получено.

SHACAL-1 превращает функцию сжатия SHA-1 в блочный шифр, используя ввод состояния в качестве блока данных и используя ввод данных в качестве ввода ключа. Другими словами, SHACAL-1 рассматривает функцию сжатия SHA-1 как 80-раундовый 160-битный блочный шифр с 512-битным ключом. Ключи короче 512 бит поддерживаются путем заполнения их нулями. SHACAL-1 не предназначен для использования с ключами короче 128 бит.

В статье «Атака прямоугольника со связанными ключами на полный SHACAL-1» 2006 г. Орр Дункельман, Натан Келлер и Джонгсунг Ким представили атаку прямоугольника со связанными ключами на полные 80 раундов SHACAL-1.

В статье «Дифференциальные и прямоугольные атаки на SHACAL-1 с уменьшенным числом раундов» Jiqiang Lu, Jongsung Kim, Nathan Keller и Orr Dunkelman представили прямоугольные атаки на первых 51 раунде и серию из 52 внутренних раундов SHACAL-1 и представили дифференциальные атаки на первые 49 патронов и серию из 55 внутренних патронов ШАКАЛ-1. Это лучшие из известных на данный момент результатов криптоанализа SHACAL-1 в сценарии атаки с одним ключом.