Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
225
Добавлен:
25.03.2016
Размер:
633.86 Кб
Скачать

9.3. Последовательность работы алгоритма шифрования des

Последовательность работы алгоритма шифрования DES представлена на рис.2.

При описании алгоритма DES (рис. 2) применены следующие обозначения:

L и R – последовательности битов (левая (left) и правая (right));

LR конкатенация последовательностей L и R,

Конкатена́ция (лат. concatenatio «присоединение цепями; сцепле́ние») — операция склеивания объектов линейной структуры, обычно строк. Например, конкатенация слов «микро» и «мир» даст слово «микромир».

Конкатенация последовательностей - такая последовательность битов:

- длина которой равна сумме длин L и R;

- в последовательности LR биты последовательности R следуют за битами последовательности L;

 – операция XOR - побитового сложения по модулю 2.

Рис.2. Структура алгоритма DES

  1. Пусть из файла исходного текста считан очередной 64-битовый (8-байтовый) блок Т.

  2. Этот блок Т преобразуется с помощью матрицы начальной перестановки IP (табл.1).

Таблица 1

Матрица начальной перестановки ip

58

50

42

34

26

18

10

2

60

52

44

36

28

20

12

4

62

54

46

38

30

22

14

6

64

56

48

40

32

24

16

8

57

49

41

33

25

17

9

1

59

51

43

35

27

19

11

3

61

53

45

37

29

21

13

5

63

55

47

39

31

23

15

7

3) Биты входного блока Т (64 бита) переставляются в соответствии с матрицей IP:

- бит 58 входного блока Т становится битом 1,

- бит 50битом 2 и т.д.

Эту перестановку можно описать выражением Т0 = IP(T).

Полученная последовательность битов Т0 разделяется на две последовательности:

L0левые или старшие биты, - содержит 32 бита.

R0правые или младшие биты, - содержит 32 бита.

4) Затем выполняется итеративный процесс шифрования, состоящий из 16 шагов (циклов).

Пусть Тi – результат i итерации: Тi = Li Ri,

где Li = t1 t2 ... t32 (первые 32 бита);

Ri = t33 t34 ... t64 (последние 32 бита).

Тогда результат i-й итерации описывается следующими формулами: Li = Ri–1, i = 1, 2, ..., 16;

Ri = Li–1 f (Ri–1, Ki), i = 1, 2, ..., 16.

Функция f - называется функцией шифрования.

Аргументами функции шифрования f - являются:

- последовательность Ri–1, получаемая на предыдущем шаге итерации,

- и 48-битовый ключ Кi, который является результатом преобразования 64-битового ключа шифра К.

4) На последнем шаге итерации получают последовательности R16 и L16 (без перестановки местами), которые конкатенируются в 64-битовую последовательность R16 L16.

5) По окончании шифрования осуществляетсявосстановление позиций битов с помощью матрицы обратной перестановки IP–1

Таблица .2