- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Матрица G первоначальной подготовки ключа
- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Стандарт шифрования данных
- •Стандарт шифрования данных
Стандарт шифрования данных
Data Encryption Standard
Обобщенная схема шифрования в алгоритме DES
Стандарт шифрования данных
Data Encryption Standard
Структура алгоритма шифрования DES
Стандарт шифрования данных
Data Encryption Standard
63 55 47 39 31 23 15 07 |
33 01 41 09 49 17 57 25 |
|||||
Матрица начальной |
Матрица обратной |
|
||||
перестановки IP |
перестановки IP-1 |
32 |
||||
58 50 42 34 26 18 10 02 |
40 08 |
48 |
16 56 |
24 |
64 |
|
60 52 44 36 28 20 12 04 |
39 07 |
47 |
15 55 |
23 |
63 |
31 |
62 54 46 38 30 22 14 06 |
38 06 |
46 |
14 54 |
22 |
62 |
30 |
64 56 48 40 32 24 16 08 |
37 05 |
45 |
13 53 |
21 |
61 |
29 |
57 49 41 33 25 17 09 01 |
36 04 |
44 |
12 52 |
20 |
60 |
28 |
59 51 43 35 27 19 11 03 |
35 03 |
43 |
11 51 |
19 |
59 |
27 |
61 53 45 37 29 21 13 05 |
34 02 |
42 |
10 50 |
18 |
58 |
26 |
|
|
|
|
|
|
Результат i-й итерации описывается следующими формулами:
L(i) = R(i-1), i = 1, 2, ..., 16;
R(i) = L(i-1) xor f(R(i-1), K(i)) , i = 1, 2, ..., 16
Итеративный процесс расшифрования может быть описан следующими формулами:
R(i-1) = L(i), i = 1, 2, ..., 16;
L(i-1) = R(i) xor f(L(i), K(i)), i = 1, 2, ..., 16 .
Стандарт шифрования данных
Data Encryption Standard
Вычисление функции f(R(i-1), K(i))
Стандарт шифрования данных
Data Encryption Standard
Функция |
|
Функция |
|
расширения E |
перестановки P |
||
32 01 02 03 04 05 |
16 07 20 21 |
||
29 12 28 17 |
|||
04 05 06 07 08 09 |
|||
01 15 23 26 |
|||
08 09 10 11 12 13 |
|||
05 18 31 10 |
|||
12 13 14 15 16 17 |
|||
02 08 24 14 |
|||
16 17 18 19 20 21 |
|||
32 27 03 09 |
|||
20 21 22 23 24 25 |
|||
19 13 30 06 |
|||
24 25 26 27 28 29 |
|||
22 |
11 04 25 |
||
28 29 30 31 32 01 |
|||
|
|
Таким образом,
f(R(i-1), K(i)) = P(S1(B(1)),...S8(B(8)))
Стандарт шифрования данных
Data Encryption Standard
Матрица G первоначальной подготовки ключа
57 49 41 33 25 17 09
01 58 50 42 34 26 18
10 02 59 51 43 35 27
19 11 03 60 52 44 36
63 55 47 39 31 23 15
07 62 54 46 38 30 22
14 06 61 53 45 37 29
21 13 05 28 20 12 04
Матрица H завершающей обработки ключа
14 17 11 24 01 05
03 28 15 06 21 10
23 19 12 04 26 08
16 07 27 20 13 02
41 52 31 37 47 55
30 40 51 45 33 48
44 49 39 56 34 53
46 42 50 36 29 32
|
Стандарт шифрования данных |
|
Data Encryption Standard |
Номер |
Сдвиг |
итерации |
(бит) |
01 |
1 |
02 |
1 |
03 |
2 |
04 |
2 |
05 |
2 |
06 |
2 |
07 |
2 |
08 |
2 |
09 |
1 |
10 |
2 |
11 |
2 |
12 |
2 |
13 |
2 |
14 |
2 |
15 |
2 |
16 |
1 |
Стандарт шифрования данных
Data Encryption Standard
Блок-схема алгоритма вычисления ключа K(i)
Стандарт шифрования данных
Data Encryption Standard
Режимы работы алгоритма DES
1.Электронный шифроблокнот (Electronic Codebook ) - ECB;
2.Цепочка цифровых блоков (Cipher Block Chaining) - CBC;
3.Цифровая обратная связь (Cipher Feedback) - CFB;
4.Внешняя обратная связь (Output Feedback) - OFB.
Стандарт шифрования данных
Data Encryption Standard
Электронный шифроблокнот (Electronic Codebook ) - ECB;