Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
20
Добавлен:
17.06.2021
Размер:
21.45 Кб
Скачать

Министерство науки и высшего образования РФ

Федеральное государственное бюджетное образовательное учреждение

высшего образования «Омский государственный технический университет»

Кафедра «Комплексная защита информации»

Отчёт

по практическим занятиям

по дисциплине: «Криптографические методы

и криптопротоколы»

тема: «Шифрование «игрушечного» фейстелевского шифра с ключом»

Вариант 9

Выполнил студент гр. ИВТм-192

__________Козлитин Ю.В.

"____"___________2019г.

Принял

Проф., д-р физ.-мат. наук Широков И.В.

______________________

"____"___________2019г.

Омск 2019

Задание

Вариант 9.

Дан блок текста длины n=16:

T=A||B= {1,1,1,0,0,0,0,1,1,1,0,1,0,0,0,1}

Провести 4 раунда шифрования «игрушечного» файстелевского шифра с ключом

K= {1,0,0,0,1,1,1,0},

где F(B,K)=(K (K+1)/2 + BK) mod 2n/2 .

C=EK(T)?

Теория

Предложенная Файстелем архитектура нового метода шифрования в классической литературе получила название «Архитектура Файстеля», но на данный момент в русской и зарубежной литературе используется более устоявшийся термин – «сеть Файстеля» или Feistel`s NetWork. В последствии по данной архитектуре был построен шифр «Люцифер» - который позднее был опубликован и вызвал новую волну интереса к криптографии в целом.

Идея архитектуры «сети Файстеля» заключается в следующем: входной поток информации разбивается на блоки размером в n битов, где n четное число. Каждый блок делится на две части – A и B, далее эти части подаются в итеративный блочный шифр, в котором результат n-го этапа определяется результатом предыдущего этапа n-1. Сказанное можно проиллюстрировать на примере:

Выполнение

I раунд:

A = 11100001; B = 11010001; K = 10001110

  1. (B + K) mod 28 = (11010001 + 10001110) mod 28 = 101011111 mod 28 = 351 mod 28 = 95 = 1011111

  2. 1011111 + 11100001 = 101000000

II раунд:

A = 11010001; B = 101000000; K = 10001110

  1. (B + K) mod 28 = (101000000 + 10001110) mod 28 = 11101110 mod 28 = 462 mod 28 = 206 = 11001110

  2. 11001110 + 11010001 = 110011111

III раунд:

A = 101000000; B = 110011111; K = 10001110

  1. (B + K) mod 28 = (110011111 + 10001110) mod 28 = 1000101101 mod 28 = 557 mod 28 = 45 = 101101

  2. 101101 + 101000000 = 101101101

IV раунд:

A = 110011111; B = 101101101; K = 10001110

  1. (B + K) mod 28 = (101101101 + 10001110) mod 28 = 111111011 mod 28 = 507 mod 28 = 251 = 11111011

  2. 11111011 + 110011111 = 1010011010

A = 101101101; B = 1010011010

Шифротекст: С = {1,0,1,1,0,1,1,0,1,1,0,1,0,0,1,1,0,1,0}