Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - DEAL - Алгоритм16 июня 2011Оглавление: 1. DEAL 2. Алгоритм 3. Стойкость алгоритма Режимы работы с ключами длиной 128, 192 и 256 бит обозначаются соответственно DEAL-128, DEAL-192 и DEAL-256. Каждая из модификаций с разными длинами ключа может использовать все четыре стандартных режима DES-а. Режим ECBРассмотрим первый режим работы ECB. Обозначим С = EB результат шифрования 64-битного блока А на ключе В, и Y = EAZ результат шифрования с помощью DEAL-128 блока X на ключе Z. Согласно требованиям AES, исходный текст Р разбивается на блоки Pi по 128 бит каждый, P = P1,P2,..,Pn Из исходного ключа K с помощью расписания ключей получается r ключей для работы DES RKi, где i = 1, … , r. Алгоритм расписания описан ниже. Обозначим X и X «правую» и «левую» части блока Х соответственно. Шифрование описывается следующими выражениями: Положим На рисунке изображена одна итерация цикла для DEAL. Для DEAL-128 и DEAL-192 используются 6 циклов, полагая r = 6. Однако, такого количества раундов может оказаться недостаточно для DEAL-256, в котором необходимо использовать большее количество раундов: r = 8. По замыслу разработчиков DEAL-256 должен использоваться только когда требуется особенно сильное шифрование. В заключительном раунде DEAL «правая» и «левая» половинки блока так же меняются. Это обусловлено следующем: «правая» часть шифруемого блока Ci не шифруется в последнем раунде i-ого прохода DEAL, и только «левая» половина блока на i + 1-ом проходе шифруется в первом раунде. Это означает, что «правая» часть Ci не будет шифроваться вообще в течение двух раундов. Это можно рассматривать как уязвимость алгоритма, учитывая что с DEAL используется всего 6 или 8 раундов. Подобной «особенностью» обладает и DES в режиме CBC. Но, учитывая что у DES 16 раундов, это не становиться столь яркой уязвимостью. Так или иначе эта перестановка не влияет на стойкость блочного шифра в режиме ECB Режим CBCИтак, обозначим блоки открытого текста по 128 бит P1,P2,..,Pn и C1,C2,..,Cn соответствующие им блоки шифр-текста. Тогда используя рекуррентное соотношение: , где C0 — начальное значение Расписание ключейВходными параметрами для расписания ключей являются s ключей DES, каждый по 56 бит плюс 8 «проверочных» бит. Для разных исходных длин ключа s = 2, 3, 4, и входные ключи обозначаются: K1,..,Ks. На выходе получаем r ключей DES, RKi. Расписание ключей единообразно для всех трех длин исходного ключа. Сначала расширяем s ключей до r ключей, создавая отсутствующие ключи операцией XOR с новой константой для каждого нового ключа. Константа используется чтобы исключить слабые ключи. К полученным ключам применим DES в режиме CBC с фиксированным ключом и нулевым начальным значением. Из полученных блоков шифр-текста и формируются подключи RKi. Далее точные описания вышеописанных операций. Здесь K = 0x1234 567890ab cdefx фиксированный ключ для DES.
Таким образом для генерации раундовых ключей DEAL необходимо 8 «проходов» DEAL. Чтобы не тратить процессорное время эти ключи следует сохранить для всего процесса шифрования или расшифрования. Просмотров: 2602
|