Работа алгоритма

Работа алгоритма. шаг. Перестановки битов ключа с использованием таблицы перестановок. Для примера введем: olga1234 Заданный ключ в двоичном представлении: В начале над ключом шифра выполняется операция B, которая сводится к выбору определенных бит и их перестановке, как это показано в таблицей. Причем, первые четыре строки определяют, как выбираются биты последовательности C(0) (первым битом C(0) будет бит 57 бит ключа шифра, затем бит 49 и т.д а последними битами биты 44 и 36 ключа шифра), а следующие четыре строки – как выбираются биты последовательности D(0) (т.е. последовательность D(0) будем состоять из битов 63,55,…, 12, 4 ключа шифра). 4 В результате перестановки ключ будет выглядеть так: 2 шаг. Разбиение ключа На этом шаге осуществляется разбиение ключа на 2 половины C0 и D0. Каждая половина содержит 28 бит. C0: D0: 3 шаг. Создание 16-ти подключей путем сдвига После определения C(0) и D(0) рекурсивно определяются C(i) и D(i), i=1,2,…, 16. Для этого применяются операции сдвига влево на один или два бита в зависимости от номера шага итерации, как это показано в таблице «Функция сдвига Si». Операции сдвига выполняются для последовательностей C(i) и D(i) независимо.

Например, последовательность C(3) получается, посредством сдвига влево на две позиции последовательности C(2), а последовательность D(3) – посредством сдвига влево на две позиции последовательности D(2). Следует иметь в виду, что выполняется циклический сдвиг влево.

Например, единичный сдвиг влево последовательности C(i) приведет к тому, что первый бит C(i) станет последним и последовательность бит будет следующая: 2,3,…, 28,1. Таблица «Функция сдвига Si» 1 В результате сдвига получаем следующие пары Количество сдвигов Созданные пары 1 C1: D1: 1 C2: D2: 2 C3: D3: 2 C4: D4: 2 C5: D5: 2 C6: D6: 2 C7: D7: 2 C8: D8: 1 C9: D9: 2 C10: D10: 2 C11: D11: 2 C12: D12: 2 C13: D13: 2 C14: D14: 2 C15: D15: 1 C16: D16: 4 шаг. Перестановка битов ключа с использованием таблицы PC1 До финальной перестановки битов ключей, необходимо слияние каждой пары данных.

После того, как для каждого битового блока CnDn, где 1<=n<=16 осуществиться соответствующая перестановка по таблице (см ниже), формируя ключи.

Только 48 бит каждой объединенной пары сохраняется в перестановленном ключе. 14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32 Все подключи: K1: K2: K3: K4: K5: K6: K7: K8: K9: K10: K11: K12: K13: K14: K15: K16: