Изучение современных методов криптоанализа. Бабенко Л.К - 15 стр.

UptoLike

15
циклическим сдвигом привела бы к точно такому же результату. Это сделано
для того, чтобы алгоритм шифрования можно было использовать как для шиф-
рования, так и для дешифрования.
Таблица 1.15
DES – заключительная перестановка
40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 31
38 6 46 14 54 22 62 30 37 5 45 13 53 21 61 29
36 4 44 12 52 20 60 28 35 3 43 11 51 19 59 27
34 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25
Алгоритм, который создает ключ для каждого цикла, также цикличен.
Ключ сдвигается направо, а число позиций сдвига равно 0, 1, 2, 2, 2, 2, 2, 2, 1, 2,
2, 2, 2, 2, 2, 1.
2. УПРОЩЕННЫЙ DES
Упрощенный DES – это алгоритм шифрования, имеющий, скорее, учебное,
чем практическое значение. По свойствам и структуре он подобен DES, но име-
ет гораздо меньше параметров. Данный алгоритм был разработан профессором
Эдвардом Шейфером из
университета Санта-Клара. Для удобства дальнейшей
работы будем называть данный алгоритм S-DES.
Данный алгоритм получает на входе 8-битовый блок открытого текста (на-
пример, 10111101) и 10-битовый ключ, а на выходе генерируется 8-битовый
блок шифрованного текста. Алгоритм дешифрования S-DES в качестве исход-
ных данных использует 8-битовый блок шифрованного текста и тот же 10-
битовый ключ, который применялся для шифрования, а в результате работы
алгоритм дешифрования должен генерировать 8-битовый блок открытого тек-
ста.
Алгоритм шифрования включает последовательное выполнение пяти опе-
раций: начальной перестановки IP, сложной функции f
K
, являющейся компози-
цией операций перестановки и подстановки, зависящей от полученного ключа,
перестановки SW, при которой две половинки последовательности данных про-
сто меняются местами, еще раз функции f
K
и, наконец, перестановки, обратной
начальной (IP
-1
).
Функция f
K
использует в качестве исходных данных не только шифруемый
текст, но и 8-битовый ключ. Алгоритм можно построить так, чтобы он работал с
16-битовым ключом, состоящим из двух 8-битовых подключей, применяемых
по отдельности каждый для своего вызова функции f
K
. Можно использовать и
8-битовый ключ, для чего просто следует ввести его дважды. Наконец, можно
прибегнуть к комбинированному решению, когда требуется 10-битовый ключ,
из которого генерируются два 8-битовых.
Теперь давайте рассмотрим элементы алгоритма S-DES более подробно.