Алгоритм шифрования S_DES
Шифрование с использованием схемы Фейстеля
Общий вид алгоритма
Функция F
Функция выработки подключей
Выработка подключей
Выработка подключей
Выработка подключей
Шифрование
Шифрование. Функция F
Шифрование
Шифрование
Связь перестановок IP и IP-1
Дешифрование
1.41M
Category: programmingprogramming

Алгоритм шифрования

1. Алгоритм шифрования S_DES

2. Шифрование с использованием схемы Фейстеля

X = {XL, XR}
Y = {YL, YR}
XL
XR
K1
F(XR, K1)
YL = α Å F(β, K3)
YR = β
K3
XR
F
F(β, K3)
XL Å F(XR, K1) = α
F
β
β
α Å F(β, K3) Å F(β, K3) = α
XL Å F(XR, K1) = α
F(α, K2)
K2
α
β
α
α
F(α, K2)
F
XR Å F(α, K2) = β
F
β Å F(α, K2) = XR Å F(α, K2) Å
Å F(α, K2) = XR
XR Å F(α, K2) = β
α
F(β, K3)
F
Y = {YL, YR}
α
α
β
XR
F(XR, K1)
F
β = YR
α Å F(β, K3) = YL
K3
K2
α Å F(XR, K1) = XL Å F(XR, K1) Å
Å F(XR, K1) = XL
XR
XR
X = {XL, XR}
K1

3. Общий вид алгоритма

Входной блок данных, 8
бит
IP
8
Начальная перестановка IP
8
4
2
6
3
1
4
8
5
7
7
2
8
6
4
K1
1 раунд
4
IP-1
4
F
4
K2
F
8
Начальная перестановка
IP-1
8
Выходной блок
шифрованных данных, 8
бита
1
3
5

4. Функция F

Блок данных на входе в
функцию F
E
4
4
Перестановка с расширением Е
8
8
8
4
Ki
1
2
3
2
3
4
S1
0
1
2
3
0
1
0
3
2
1
3
2
1
0
2
0
2
1
3
3
3
1
3
1
S2
0
1
2
3
0
1
1
2
3
1
2
0
1
3
2
3
0
1
0
3
2
1
0
3
4
S1
S2
2
2
4
Перестановка Р
P
4
Блок данных на выходе
функции F
2
4
3
1
1

5. Функция выработки подключей

Ключ К, 10 бит
10
P10
Начальное преобразование ключа Р10
3
5
2
7
4
10
1
9
5
10
8
6
10
5
5
<<<1
<<<1
5
5
P8
5
10
6
5
8 Подключ К1
Перестановка со
Сжатием P8
<<<2
<<<2
5
5
10
Перестановка со
сжатием P8
8 Подключ К2
3
7
4
8
9

6. Выработка подключей

1100001110
P10
Начальное преобразование ключа Р10
3
5
2
7
4
10
1
9
8
6
1
1
0
0
0
0
1
1
1
0
1
2
3
4
5
6
7
8
9
10
3
5
2
7
4
10
1
9
8
6
0
0
1
1
0
0
1
1
1
0
0011001110
<<<1
<<<1
8 Подключ К1
Перестановка со
сжатием
<<<2
<<<2
Перестановка со
сжатием
Подключ К2

7. Выработка подключей

P8
1100001110
6
3
7
4
8
5
0
1
1
2
1
3
0
4
6
3
7
1
1
1
10
0
5
1
6
1
7
1
8
4
8
5
10
9
0
1
0
0
0
9
Начальное преобразование ключа Р10
0011001110
01110
00110
<<<1
<<<1
00110
01110
8 Подключ К1
Перестановка со
сжатием
01100
11100
<<<2
11101000
<<<2
Перестановка со
сжатием
Подключ К2
0
9
0
10

8. Выработка подключей

1100001110
P8
Начальное преобразование ключа Р10
0011001110
6
3
7
1
1
0
2
0
3
4
8
5
10
0
4
1
5
1
6
0
7
0
8
9
01110
00110
<<<1
<<<1
01100
11100
8 Подключ К1
Перестановка со
сжатием
01100
<<<2
11100
6
3
7
4
8
5
10
9
10011
1
0
0
0
0
1
1
1
<<<2
10001
Перестановка со
сжатием
11101000
Подключ К2
10000111
1
9
1
10

9. Шифрование

10101101
IP
2
Начальная перестановка IP
6
3
1
4
8
5
7
01110110
K1
0111
0110
F
1
1
0
2
1
3
0
4
1
5
1
6
0
7
1
8
2
6
3
1
4
8
5
7
0
1
1
1
0
1
1
0
K2
F
Начальная перестановка IP-1

10. Шифрование. Функция F

E
4
0110
1
2
3
2
1
2
1
3
0
1
3
4
1
0
4
Перестановка с расширением Е
00111100
11101000 K1
11010100
1101
S1
0100
S2
11
10
4
1
2
3
2
3
4
1
0
0
1
1
1
1
0
0
S1
0
1
2
3
S2
0
1
2
3
0
1
0
3
2
0
1
1
2
3
1
3
2
1
0
1
2
0
1
3
2
0
2
1
3
2
3
0
1
0
3
3
1
3
1
3
2
1
0
3
1
1
1
2
1
3
0
4
2
4
3
1
1
0
1
1
1110
Перестановка Р
P
1011
2
4
3
1

11. Шифрование

10101101
Начальная перестановка IP
01110110
K1
0111
1011
0110
F
1100
0110
1100
0110
K2
1100
F
Начальная перестановка IP-1

12.

Шифрование. Функция F
1100
E
4
1
2
3
1
1
1
2
Перестановка с расширением Е
2
0
3
3
4
1
0
4
01101001
10000111 K2
4
1
2
3
2
3
4
1
0
1
1
0
1
0
0
1
11101110
1110
S1
1110
S2
11
00
S1
0
1
2
3
S2
0
1
2
3
0
1
0
3
2
0
1
1
2
3
1
3
2
1
0
1
2
0
1
3
2
0
2
1
3
2
3
0
1
0
3
3
1
3
1
3
2
1
0
3
1
1
1
2
0
3
0
4
2
4
3
1
1
0
0
1
1100
Перестановка Р
P
1001
2
4
3
1

13. Шифрование

10101101
IP-1
Начальная перестановка IP
4
1
3
5
7
2
8
6
1
1
1
2
1
3
1
4
1
5
1
6
0
7
0
8
4
1
3
5
7
2
8
6
1
1
1
1
0
1
0
1
01110110
K1
0111
1011
0110
F
1100
0110
1100
0110
K2
1001
1100
F
1111
1100
11111100
Начальная перестановка IP-1
11110101

14. Связь перестановок IP и IP-1

IP(IP-1(X)) = X
IP-1(IP(X)) = X
1
1
0
2
1
3
0
4
1
5
1
6
0
7
1
8
2
6
3
1
4
8
5
7
0
1
1
1
0
1
1
0
0
1
1
2
1
3
1
4
0
5
1
6
1
7
0
8
4
1
3
5
7
2
8
6
1
0
1
0
1
1
0
1
IP
IP-1

15. Дешифрование

11110101
Начальная перестановка IP
11111100
1111
1001
K2
10000111
K1
11101000
1100
F
0110
1100
0110
1100
1011
0110
F
0111
0110
01110110
Начальная перестановка IP-1
10101101
English     Русский Rules