69884

СТАНДАРТ КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ ДАННЫХ

Лабораторная работа

Информатика, кибернетика и программирование

Цель работы – изучить структуру алгоритма шифрования ГОСТ 28147-89, на практике осуществить формирование подключей, зашифрование и расшифрование блока данных алгоритмом ГОСТ с укороченным количеством циклов.

Русский

2014-10-12

309 KB

0 чел.

PAGE  5

Лабораторная работа № 7

Тема: СТАНДАРТ КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ ДАННЫХ

ГОСТ 28147-89

Цель работы – изучить структуру алгоритма шифрования ГОСТ 28147-89, на практике осуществить формирование подключей, зашифрование и расшифрование блока данных алгоритмом ГОСТ с укороченным количеством циклов.

Общие сведения.

Стандарт криптографического преобразования данных ГОСТ 28147-89 рекомендован к использованию для защиты любых данных, представленных в виде двоичного кода. Данный стандарт формировался с учетом мирового опыта, и в частности, при его разработке были приняты во внимание недостатки алгоритма DES. Стандарт довольно сложен, поэтому приведем лишь его концептуальное описание.

ГОСТ 28147-89 – блочный шифр, который шифрует открытый текст, разбитый на блоки по 64 бита (на выходе также блоки по 64 бита) за 32 цикла преобразований (раундов) с помощью ключа длиной 256 битов. Мощность множества открытых ключей ГОСТ равна .

Алгоритм шифрования ГОСТ 28147-89 построен с использованием сети Фейстеля.

Алгоритм криптографического преобразования, установленный ГОСТ 28147-89, предусматривает следующие режимы работы:

1) режим простой замены;

2) режим гаммирования;

3) режим гаммирования с обратной связью.

Кроме того, предусмотрен дополнительный

4) режим выработки имитовставки.

Все они основываются на трёх базовых циклах, обозначаемых «32-З», «32-Р» и «16-З». Базовые циклы, по сути, являются многократным повторением процедуры, называемой основным шагом криптопреобразования. В их обозначении число (32 или 16) указывает на число повторений основного шага, буква (З или Р) указывает на разновидность порядка использования элементов ключа.

Существуют два типа ключей: долговременный  и сеансовый  размером 512 и 256 битов соответственно. Таблица замены является матрицей 8х16 из 4-битовых элементов. Каждая строка таблицы  содержит различные значения и представляет собой перестановку множества . Ключ  реализует потетрадную замену 32-разрядных подблоков в 32-х разрядные. В стандарте долговременный ключ  называется блоком подстановки, а подключи  – узлами замен.

Сеансовый ключ  состоит из восьми 32-разрядных подключей , каждый из которых в соответствующий момент используется для суммирования с некоторым блоком по модулю 2.

Основной шаг криптопреобразования принимает на входе два параметра: 64-битовый блок данных и 32-битовый элемент ключа, а также использует всю таблицу замен.

64-битовый блок данных сначала разбивается на левую и правую половины  и . В -м цикле алгоритм ГОСТ 28147-89 выглядит так:

;

.

Функция вычисляется так:

32-битовый входной подблок  и 32-битовый элемент ключа складываются по модулю . Результат разбивается на 8 4-битових последовательностей (тетрад), каждая из которых поступает на вход своего узла  , таблицы замен. Узел  является таблицей замены для -й (слева) тетрады, т.е. состоит из 16 тетрад. Каждая тетрада заменяется на значение ячейки таблицы замен из строки с номером, равным номеру 4-битового блока, и столбца с номером, равным значению 4-битового блока (счёт с 0). Фактически, узлы таблицы замены являются дополнительным ключевым материалом, но чаще они являются параметром схемы, общим для определённой группы пользователей. В тексте стандарта указывается, что заполнение узлов замены проводится в установленном порядке, т.е. разработчиком алгоритма.

Сеансовый ключ  состоит из конкатенации восьми 32-х разрядных подключей , каждый из которых в соответствующий момент складывается с некоторым подблоком по модулю  (операция +).

Выходы всех восьми узлов замены объединяются в 32-битовое слово, потом все слово циклически сдвигается влево на 11 битов в сторону старших разрядов. Далее оно поразрядно складывается по модулю 2 со второй частью входного 64-битового блока. Затем полученное значение ставится на место второй части 64-битового блока, а вторая часть — на место первой. Полученный блок возвращается в качестве результата.

Основной шаг криптопреобразования алгоритма ГОСТ 28147-89 показан на рис. 1:

Рис.1. Основной шаг криптопреобразования алгоритма ГОСТ 28147-89 

Зашифрование блока открытого текста алгоритмом ГОСТ 28147-89 производится за 32 цикла. На каждом цикле происходит преобразование входной комбинации в выходную. Шифртекстом является результат работы (выход) тридцать второго цикла, подвергнутый очень простому дополнительному преобразованию.

Режимы работы ГОСТ 28147-89:

Режим простой замены принимает на вход данные, размер которых кратен 64-м битам. Результатом шифрования является входной текст, преобразованный блоками по 64 бита в случае зашифрования циклом «32-З», а в случае расшифрования — циклом «32-Р».

На каждом цикле происходит преобразование входной комбинации в выходную. Шифртекстом является результат работы (выход) тридцать второго цикла, подвергнутый очень простому дополнительному преобразованию.

Процесс зашифрования в режиме простой замены, который обозначим через , можно представить в виде последовательности 34 блоков , где  и .

Здесь  – результат работы цикла номер 0,  – результат работы цикла номер 1 и так далее,  – результат работы цикла номер 31. Дополнительное преобразование меняет порядок следования блоков: .

На цикле с номером  используется подключ . Последовательность выбора подключей, от начального и до последнего цикла, при зашифровании следующая:

.

При расшифровании используется обратный порядок следования подключей.

Режим гаммирования принимает на вход данные любого размера, а также дополнительный параметр — синхропосылку. Синхропосылка – несекретный псевдослучайный 64-битовый блок. Синхропосылка вырабатывается на каждое сообщение и размещается в криптограмме перед шифрованным текстом. В ходе работы синхропосылка преобразуется в цикле «32-З», результат делится на две части. Первая часть складывается по модулю  с постоянным значением 1010101016. Если вторая часть равна , то её значение не меняется, иначе она складывается по модулю  с постоянным значением 1010104016. Полученное объединением обеих преобразованных частей значение, называемое гаммой шифра, поступает в цикл «32-З», его результат поразрядно складывается по модулю 2 с 64-разрядным блоком входных данных. Если последний меньше 64-х разрядов, то лишние разряды полученного значения отбрасываются. Полученное значение подаётся на выход. Если ещё имеются входящие данные, то действие повторяется: составленный из 32-разрядных частей блок преобразуется по частям и так далее.

Режим гаммирования с обратной связью также принимает на вход данные любого размера и синхропосылку. Блок входных данных поразрядно складывается по модулю 2 с результатом преобразования в цикле «32-З» синхропосылки. Полученное значение подаётся на выход. Значение синхропосылки заменяется в случае зашифрования выходным блоком, а в случае расшифрования — входным, т. е. зашифрованным. Если последний блок входящих данных меньше 64 разрядов, то лишние разряды гаммы (выхода цикла «32-З») отбрасываются. Если ещё имеются входящие данные, то действие повторяется: из результата зашифрования заменённого значения образуется гамма шифра и т.д.

В режиме гаммирования с обратной связью , ,  – комбинация открытого текста.

Режим выработки имитовставки принимает на вход данные, размер которых составляет не меньше двух полных 64-разрядных блоков, а возвращает 64-разрядный блок данных, называемый имитовставкой. Временное 64-битовое значение устанавливается в 0, далее, пока имеются входные данные, оно поразрядно складывается по модулю 2 с результатом выполнения цикла «16-З», на вход которого подаётся блок входных данных. После окончания входных данных временное значение возвращается как результат.

Порядок выполнения работы.

  1.  Изучите общие сведения о Стандарте криптографического преобразования ГОСТ 28147-89.
  2.  Для представленных ниже блока подстановки  и сеансового ключа , зашифровать блок

а) в режиме простой замены алгоритма ГОСТ 28147-89 с количеством циклов .

б) в режиме гаммирования с использованием синхропосылки .

0

A

1

E

7

0

B

9

A

1

1

E

7

0

B

9

A

A

2

E

7

0

B

9

A

A

1

3

7

0

B

9

A

A

1

E

4

0

B

9

A

A

1

E

7

5

B

9

A

A

1

E

7

0

6

9

A

A

1

E

7

0

B

7

A

A

1

E

7

0

B

9

8

A

1

E

7

0

B

9

A

9

1

E

7

0

B

9

A

A

10

E

7

0

B

9

A

A

1

11

7

0

B

9

A

A

1

E

12

0

B

9

A

A

1

E

7

13

B

9

A

A

1

E

7

0

14

9

A

A

1

E

7

0

B

15

A

A

1

E

7

0

B

9

1

10000001

80000001

80000002

80000004

80000008

80000010

80000020

80000040

2

80000080

80000800

80008000

800000008

80080000

80800000

80000000

00000080

B

1

0000000010000002

2

0000000120000000

3

0000001000010000

4

0000010010000000

5

0000100000000008

6

0001000020000000

7

0010000040000000

8

0100000000000008

9

1000000000010000

10

0000000800010000

11

0000008080000000

12

0000080000000008

13

0000800000010000

14

0008000000010000

15

0080000000010000

16

0800000010000000

17

8000000100000000

18

0000000100080000

19

0000000040000001

0000000210000000

20

0000004000010000

21

0000010020000000

22

0000100000000002

23

0004000020000000

24

0040000010000000

25

0100000000000004

1

FFFFFFFF00000000

2

FFFFFFF010000000

3

FFFFFF0F20000000

4

FFFFF0FF30000000

5

FFFF0FFF40000000

6

FFF0FFFF50000000

7

FF0FFFFF60000000

8

F0FFFFFF70000000

9

0FFFFFFF80000000

10

FFFFFF0090000000

11

FFFFF00FA0000000

12

FFFF00FFB0000000

13

FFF00FFFC0000000

14

FF00FFFFD0000000

15

F00FFFFFE0000000

16

00FFFFFFF0000000

17

ЕЕЕЕЕЕЕЕ00000000

18

ЕЕЕЕЕЕЕ010000000

19

ЕЕЕЕЕЕ0Е20000000

20

ЕЕЕЕЕ0ЕЕ30000000

21

ЕЕЕЕ0ЕЕЕ40000000

22

ЕЕЕ0ЕЕЕЕ50000000

23

ЕЕ0ЕЕЕЕЕ60000000

24

Е0ЕЕЕЕЕЕ70000000

25

0ЕЕЕЕЕЕЕ80000000

Примечание. Данные заданы в шестнадцатеричной системе счисления.

  1.  Составьте отчет, приобщив полученные результаты.

Требования к отчету.

В отчете должны быть приведены:

криптографическая схема алгоритма ГОСТ для режима простой замены;

сеансовый ключ;

открытый блок сообщения;

зашифрованный блок сообщения (в двоичном представлении);

промежуточные результаты процесса зашифрования (в двоичном представлении).


 

А также другие работы, которые могут Вас заинтересовать

26534. Гражданская война в Испании (1936-1939) 51 KB
  У Испан б неск альтернитив п е воен устройства. Некот совет ист полаг что испан гражд W –битва 2х идеологий комлибо подлен демократи фаш.О личности Франко его иконописцы представл святым каудильо благожетелем исп.
26535. Международные отношения в кон. 1930-х гг. Мюнхенский сговор и пакт Молотова – Риббентропа 41.5 KB
  До начала мирового эк. кризиса 1929-33 гг. сохранялась стабильность в отношениях между гос-вами, соблюдались договоры, заключенные в Версале и Вашингтоне. С нач. кризиса проявилась неустойчивость сущ. сис-мы международных отношений, началось ее разрушение.
26538. ГНИЕНИЕ МЯСА. УСЛОВИЯ И ФАКТОРЫ, ВЫЗЫВАЮЩИЕ ГНИЕНИЕ МЯСА 21.62 KB
  ГНИЕНИЕ МЯСА. УСЛОВИЯ И ФАКТОРЫ ВЫЗЫВАЮЩИЕ ГНИЕНИЕ МЯСА. Гниение самый опасный вид порчи мяса так как при этом процессе разрушаются белковые соединения и образуются вещества опасные для человека. Из составных частей мяса гниению наиболее подвержены мышечная ткань и субпродукты.
26539. ИЗМЕНЕНИЯ В ЖИРЕ В ПРОЦЕССЕ ПРОИЗВОДСТВА И ХРАНЕНИЯ (ГИДРОЛИЗ,ОКИСЛЕНИЕ, ОСАЛИВАНИЕ) 3.31 KB
  ГИДРОЛИЗ характеризуется присоединением к молекуле жира воды в результате чего она расщепляется на глицерин и жирные кислоты. Данный процесс начинается после разделки мясной туши и извлечения жира. Накопление свободных жирных кислот снижает питательную ценность жира и ускоряет развитие в нем окислительных процессов. ОСАЛИВАНИЕ вид порчи жира характеризующийся накоплением в нем предельных оксикислот.
26540. ИСТОРИЯ ОТЕЧЕСТВЕННОЙ ВСЭ 5.17 KB
  всэ явились общественное производство мяса и мясных продуктов и создание мясной промышленности. В 1925г – первые в СССР Правила ветсан осмотра убойных животных исследования и браковки мясных продуктов. 30е годы – строительство крупных механизированных мясокомбинатов зарождение молочной и пищевой промышленности в связи с этим – кафедры мясоведения реорганизованы в кафедры ВСЭ с основами технологии переработки продуктов животноводства. врачей являются Правила ветеринарного осмотра убойных животных и всэ мяса и мясных продуктов1988 и...
26541. БАКТЕРИЦИДНАЯ ФАЗА МОЛОКА И ФАКТОРЫ, ВЛИЯЮЩИЕ НА ЕЕ ПРОДОЛЖИТЕЛЬНОСТЬ 2.99 KB
  БАКТЕРИЦИДНАЯ ФАЗА МОЛОКА И ФАКТОРЫ ВЛИЯЮЩИЕ НА ЕЕ ПРОДОЛЖИТЕЛЬНОСТЬ. Продолжительность данной фазы при различных температурах молока следующая: при 37С 2 часа при 30С 3 часа при 25С 6 часов при 10С 24 часа при 5С 36 часов и при 0С 48 часов. При нагревании молока до 70С и выше бактерицидные вещества разрушаются и микрофлора попавшая в такое молоко размножается беспрепятственно. На бактерицидную фазу влияют промежуток времени с момента выдаивания до охлаждения молока чем короче этот промежуток времени тем продолжительнее...