алгоритм DES (Data Encryption Standard)
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|||||
|
|||||
|
|
|
|
|
|
|
|
|
|
Подстановка расширения P1 (32 бита Ю 48 бит) будет следующей:
|
32 |
1 |
2 |
3 |
4 |
5 |
4 |
5 |
6 |
7 |
8 |
9 |
8 |
9 |
10 |
11 |
12 |
13 |
12 |
13 |
14 |
15 |
16 |
17 |
|
16 |
17 |
18 |
19 |
20 |
21 |
20 |
21 |
22 |
23 |
24 |
25 |
24 |
25 |
26 |
27 |
28 |
29 |
28 |
29 |
30 |
31 |
32 |
1 |
S1 - S8 – функциональные шифраторы, которые можно представить как ПЗУ с 6 входами и 4 выходами. Все вместе они заменяют 48-битный вектор на 32-битный. Подстановка в шифраторах S1 - S8осуществляется в соответствии с таблицей: номер строки задаётся первым и последним входами S-шифратора, а номер столбца – средними четырьмя битами. Битовое представление числа в ячейке задано входной последовательностью и будет являться выходом S-шифратора.
|
|
С т о л б е ц |
||||||||||||||||
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
||
|
Строка |
0 |
14 |
4 |
13 |
1 |
2 |
15 |
11 |
8 |
3 |
10 |
6 |
12 |
5 |
9 |
0 |
7 |
|
1 |
0 |
15 |
7 |
4 |
14 |
2 |
13 |
1 |
10 |
6 |
12 |
11 |
9 |
5 |
3 |
8 |
|
|
2 |
4 |
1 |
14 |
8 |
13 |
6 |
2 |
11 |
15 |
12 |
9 |
7 |
3 |
10 |
5 |
0 |
|
|
3 |
15 |
12 |
8 |
2 |
4 |
9 |
1 |
7 |
5 |
11 |
3 |
14 |
10 |
0 |
6 |
13 |
|
В качестве примера рассмотрим содержимое одного из S-шифраторов. Пусть вход 0.1101.1. Строка определяется по битам 1,6, т.е. 01 ® Строка = 1. Столбец определяется по битам 2-5, т.е. 1101 ® Столбец = 13. В ячейке (1,13) выбирается число 5 = 01012, т.е. на выходе этого штфратора получим 0101.
Аналитическая сложность дешифрования DESзависит от математических свойств S-шифраторов, поскольку именно в них реализуются нелинейные преобразования. Все остальные операции в этом алгоритме носят линейный характер, и аналитическое вычисление подобной зависимости не представляет большого труда.
Расшифрование в алгоритме DES происходит аналогично зашифрованию с той только разницей, что выборка ключевой последовательности в раундах расшифрования будет обратная, т.е. K15, K14,…, K0.
предыдущая следующая тема