Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОЗІ / Лекц_ї / все / Методы и средства защиты информации, 2003.doc
Скачиваний:
524
Добавлен:
05.06.2015
Размер:
9.25 Mб
Скачать

Цифровая (электронная) подпись на основе криптосистемы rsa

Асимметричная криптография позволяет принципиально решить задачу подтверждения истинности электронного документа. Эта возможность основана на том, что зашифровать данные, используя секретный ключ d вместо открытого ключа e может только тот, кому секретный ключ известен. При этом существует возможность проверки применения секретного ключа к данным без его раскрытия.

Действительно, пусть нам необходимо заверить блок m открытого текста. Сам открытый текст не является секретным. Зашифруем m используя d вместо e: с = md(mоd n). Отправим сообщение двойной длины вида m||c. Получатель имеет возможность проверить нашу подпись, поскольку после возведения c в степень e должно получаться значение s = m (при истинной подписи) и значение s m в противном случае. Для нашего примера m =(3, 1, 2), c = (27, 1, 8), m || с = (3, 1, 2, 27, 1, 8).

На практике удвоение длины сообщения, очевидно, является нежелательным. Это является одной из причин, по которым вместо c = md(mod n) используются данные вида c = (h(m))d(mod n). Здесь функция h, называемая хеш-функцией, отображает сообщения произвольной длины в короткие блоки фиксированной длины, причем так, что кроме блока m подобрать другой блок z со свойством h(m) = h(z) практически невозможно.

Стандарт шифрования данных des

Стандарт шифрования данных (DES — Data Encryption Standard) принят в США в 1977 году в качестве федерального. В стандарт входит описание блочного шифра типа шифра Файстеля, а также различных режимов его работы, как составной части нескольких процедур криптографического преобразования данных. Обычно под аббревиатурой DES понимается именно блочный шифр, который в стандарте соответствует процедуре шифрования в режиме электронной кодовой книги (ECB —Е1есtrоnic Соdеbооk Моdе). Название вызвано тем, что любой блочный шифр является простым подстановочным шифром и в этом отношении подобен кодовой книге.

Принцип работы блочного шифра

Рассмотрим принцип работы блочного шифра. Входом в блочный шифр и результатом его работы является блок длины n — последовательность, состоящая из n бит. Число n постоянно. При необходимости шифрования сообщения длиной, большей n, оно разбивается на блоки, каждый из которых шифруется отдельно. Различные режимы работы связаны с дополнительными усложнениями блочного шифра при переходах от блока к блоку. В стандарте DES длина блока n = 64.

В режиме ECB шифрование блока открытого текста В производится за 16 однотипных итераций, именуемых циклами. Схема преобразования приведена на рис. 18.7. Блок рассматривается как конкатенация (сцепление) двух подблоков равной длины: B = (L , R). На каждом цикле применяется свой ключ (Xi), обычно вырабатываемый из некоторого основного ключа (X). Ключи, используемые в циклах, называются подключами.

Основным элементом шифра является несекретная цикловая функция вида Y = f(R,X). Входом в цикл является выход из предыдущего цикла. Если упомянутый вход имеет вид (L, R), то выход имеет вид (R, L f(R, X)), где — поразрядное сложение по модулю 2. Например, для выхода цикла с номером i это означает: Ri = Li-1 f(Ri-1, Xi), Li = Ri-1 (i = 1,…,16).

В режиме ЕСВ алгоритм DES зашифровывает 64-битовый блок за 16 циклов. Биты входного блока перед первым циклом переставляются в соответствии с табл. 18.1 в ходе так называемой начальной перестановки (IP — initial permutation). После выхода из последнего цикла L и R переставляются местами, после чего соединяются в блок. Биты полученного блока снова переставляются в соответствии с перестановкой IP-1, обратной начальной. Результат принимается в качестве блока шифртекста.

Рис. 18.7. Блок-схема работы алгоритма DES

Таблица 18.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