Главная страница
Навигация по странице:

  • Теоретические сведения 1. Простейшие хэш-функции: XOR и ротационный XOR

  • 2. Стандарт шифрования DES

  • IP itial Permutation)

  • Методические указания по курсовому проектированию по курсу Методы и Средства Защиты Информации


    Скачать 0.56 Mb.
    НазваниеМетодические указания по курсовому проектированию по курсу Методы и Средства Защиты Информации
    Дата16.02.2022
    Размер0.56 Mb.
    Формат файлаdocx
    Имя файлаMetodichka_Mi_SZI.docx
    ТипМетодические указания
    #363541
    страница1 из 5
      1   2   3   4   5


    Методические указания по курсовому проектированию

    по курсу «Методы и Средства Защиты Информации »

    Задание на работу

    1. Запишите первые семь букв своей фамилии латинскими буквами в привычном вам виде. Для фамилий короче 7 букв недостающие символы считайте пробелами.

    2. Переведите полученные 7 символов в двоичный вид с помощью таблицы ASCII (Приложение 1).Обратите внимание, коды символов представлены в таблице в шестнадцатеричной форме.

    3. Рассчитайте простейший хэш-код от полученных 7 символов – ротационный XOR

    4. С помощью алгоритма шифрования DEA (описанного в стандарте DES) произведите шифрование полученного 8-ми байтного блока информации:

    – В качестве пароля используйте набор из 7 разных букв, также переведенных в двоичную форму при помощи таблицы ASCII.

    – Для шифрования используйте только 4 раунда шифрования из предусмотренных стандартом 16-ти.

    – Записывайте все промежуточные данные (значения всех блоков в приведенных блок-схемах для каждого раунда).

    6. Результирующие 64 бита разбейте на 8 байтов и переведите в символы в соответствии с таблицей ASCII.

    Теоретические сведения

    1. Простейшие хэш-функции: XOR и ротационный XOR

    Все хэш-функции выполняются следующим образом. Входное значение (сообщение, файл и т.п.) рассматривается как последовательность n-битных блоков. Входное значение обрабатывается последовательно блок за блоком, и создается m-битное значение хэш-кода.

    Одним из простейших примеров хэш-функции является побитный XOR каждого блока:

    Сi = bi1 bi2 . . . bik

    где:

    Сi - i-ый бит хэш-кода, 1 i n.

    k - число n-битных блоков входа.

    bij - i-ый бит в j-ом блоке.

    - операция XOR.
    В курсовом проекте блоками будут являться символы фамилии, представленные в двоичном виде. В результате получается хэш-код длины n, известный как продольный избыточный контроль. Это самый простейший хэш-код.
    Часто при использовании подобного продольного избыточного контроля для каждого блока выполняется однобитный циклический сдвиг после вычисления хэш-кода. Такую операцию называют «ротационный XOR». Это можно описать следующим образом.

    Это даст эффект "случайности" входа и уничтожит любую регулярность, которая присутствует во входных значениях.
    2. Стандарт шифрования DES

    Стандарт шифрования DES (Data Encryption Standard) был разработан в 1970-х годах, он базируется на алгоритме DEA.

    Исходные идеи алгоритма шифрования данных DEA (data encryption algorithm) были предложены компанией IBM еще в 1960-х годах и базировались на идеях, описанных Клодом Шенноном в 1940-х годах. Первоначально эта методика шифрования называлась lucifer (разработчик Хорст Фейштель, название dea она получила лишь в 1976 году. Lucifer был первым блочным алгоритмом шифрования, он использовал блоки размером 128 бит и 128-битовый ключ. По существу этот алгоритм являлся прототипом DEA. В 1986 в Японии (NIT) разработан алгоритм FEAL (Fast data Encipherment ALgorithm), предназначенный для использования в факсах, модемах и телефонах (длина ключа до 128 бит). Существует и ряд других разработок.

    DEA (ANSI x3.92-1981) оперирует с блоками данных размером 64 бита и использует ключ длиной 56 бит. Такая длина ключа соответствует 1017 комбинаций, что обеспечивало до недавнего времени достаточный уровень безопасности. В дальнейшем можно ожидать расширения ключа до 64 бит (например, LOKI) или вообще замены DES другим стандартом.

    Входной блок данных, состоящий из 64 бит, преобразуется в выходной блок идентичной длины. Ключ шифрования должен быть известен, как отправляющей так и принимающей сторонам. В алгоритме широко используются перестановки битов текста.

    Вводится функция f, которая работает с 32-разрядными словами исходного текста (А) и использует в качестве параметра 48-разрядный ключ (J). Схеме работы функции f показана на рис. 1.1. Сначала 32 входные разряда расширяются до 48, при этом некоторые разряды повторяются. Схема этого расширения показана ниже (номера соответствуют номерам бит исходного 32-разрядного кода).

    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

    Для полученного 48-разрядного кода и ключа выполняется операция исключающее ИЛИ (XOR). Результирующий 48-разрядный код преобразуется в 32-разрядный с помощью S-матриц. На выходе S-матриц осуществляется перестановка согласно схеме показанной ниже (числа представляют собой порядковые номера бит).

    16

    7

    20

    21

    29

    12

    28

    17

    1

    15

    23

    26

    5

    18

    31

    10

    2

    8

    24

    14

    32

    27

    3

    9

    19

    13

    30

    6

    22

    11

    4

    25



    Рис. 1.1. Алгоритм работы функции f

    Преобразование начинается с перестановки бит (IP itial Permutation) в 64-разрядном блоке исходных данных. 58-ой бит становится первым, 50-ый вторым и т.д. Схема перестановки битов показана ниже.

    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

    Полученный блок делится на две 32-разрядные части L0 и R0. Далее 16 раз повторяются следующие 4 процедуры:

    • Преобразование ключа с учетом номера итерации i (перестановки разрядов с удалением 8 бит, в результате получается 48-разрядный ключ)

    • Пусть A=Li, а J реобразованный ключ. С помощью функции f(A,J) генерируется 32-разрядный выходной код.

    • Выполняется операция XOR для Ri f(A,J), результат обозначается Ri+1.

    • Выполняется операция присвоения Li+1=Ri.

    Структурная схема реализации алгоритма DEA показана на рис. 1.2.



    Рис. 1.2. Структурная схема реализации алгоритма DEA

    Инверсная перестановка разрядов предполагает следующее размещение 64 бит зашифрованных данных (первым битом становится 40-ой, вторым 8-ой и т.д.).

    40

    8

    48

    16

    56

    24

    64

    32

    39

    7

    47

    15

    55

    23

    63

    31

    38

    6

    46

    14

    54

    22

    62

    30

    37

    5

    45

    13

    53

    21

    61

    29

    36

    4

    44

    12

    52

    20

    60

    28

    35

    3

    43

    11

    51

    19

    59

    27

    34

    2

    42

    10

    50

    18

    58

    26

    33

    1

    41

    9

    49

    17

    57

    25
      1   2   3   4   5


    написать администратору сайта