Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Теоретические основы построения криптоалгоритмов на базе сети ФейштеляСодержание книги
Поиск на нашем сайте Сеть Фейштеля - один из методов построения блочных шифров, который преобразовывает n -битный блок исходного текста в n -битный блок зашифрованного текста. Классическая сеть Фейштеля имеет следующую структуру. Входной блок делится на несколько равной длины подблоков, называемых ветвями сети. В классической схеме их две (рисунок 3.1).
Рисунок 3.1 - Классическая структура сети Фейштеля
Величины Vi называются параметрами сети, обычно это функции от материала ключа. Функция F называется образующей. Действие, состоящее из однократного вычисления образующей функции и последующего наложения (сложения по модулю 2) ее результата на другую ветвь с обменом их местами, называется циклом или раундом (англ. round) сети Фейштеля. Оптимальное число раундов K – от 8 до 32. Часто количество раундов не фиксируется разработчиками алгоритма, а лишь указываются разумные пределы (обязательно нижний, и не всегда – верхний) этого параметра. Данная схема является обратимой. Сеть Фейштеля обладает тем свойством, что даже если в качестве образующей функции F будет использовано необратимое преобразование, то и в этом случае вся цепочка будет восстановима. Это происходит вследствие того, что для обратного преобразования сети Фейштеля не нужно вычислять функцию F-1. Сеть Фейштеля симметрична за счет использования операции XOR и для ее обратимости не имеет значение является ли число раундов четным или нечетным числом. Использование модификации сети Фейштеля для большего числа ветвей связано с тем, что при больших размерах кодируемых блоков (128 и более бит) становится неудобно работать с математическими функциями по модулю 64 и выше. Основные единицы информации обрабатываемые процессорами на сегодняшний день – это байт и двойное машинное слово 32 бита. Будет логично разбивать исходные блоки не на две, а на 4 части. В этом случае сеть Фейштеля может принимать следующий вид:
Рисунок 3.2 - Структура модифицированной сети Фейштеля
Алгоритм предназначен для шифрования и дешифрования информации, представленной в виде слов, разрядностью 128 бит на основе 64-битового ключа. Операции шифрования и дешифрования являются инверсными и используют один и тот же ключ. Рассмотрим шифрование одного блока для сети с 4 ветвями. Обозначим X 1 X 2 X 3 X 4 конкатенацию последовательностей X 1. X 2, X 3 и X 4, в которой биты последовательностей X 1, X 2, X 3, X 4 следуют друг за другом. Размерность последовательности равна сумме размерностей всех составляющих. Символом + обозначим операцию побитового сложения по модулю 2. Итеративный процесс шифрования описывается следующими формулами: Х 1(i) = X 2(i -1)+ F (V i), i = 1, 2,..., n; Х 2(i) = X 3(i -1), i = 1, 2,..., n; Х 3(i) = X 4(i -1), i = 1, 2,..., n; Х 4(i) = X 1(i -1), i = 1, 2,..., n; где F (V i) - образующая функция; n - количество раундов, может изменяться, в зависимости от требований по быстродействию и криптостойкости (n= 8 ¸128). Функция F является основной характеристикой алгоритма, построенного на основе сети Фейштеля. Эта функция использует подключ раунда и одну ветвь входного блока для вычисления результата. Пример вычисления образующей приведен ниже. F i = X 1(i -1)+ Vi (K) Vi (K)= K 1 ROL i + K 2 ROR i - параметр сети; К 1 и К 2 - левая и правая части ключа К, ROL и ROR - операции циклического сдвига влево и вправо соответственно. Предлагаемый алгоритм имеет ряд достоинств. В первую очередь - простота реализации и высокое быстродействие, которое достигается за счет использования операций, имеющих высокую скорость выполнения. Дешифрование блока информации производится той же сетью Фейштеля, но с инверсным порядком параметров сети. В явном виде ключ в алгоритме не используется, что повышает его криптостойкость. При знании ключа, но отсутствии информации о количестве раундов криптоаналитику будет достаточно сложно дешифровать зашифрованную информацию.
Задание на лабораторную работу 1. Выбрать в таблице параметры для сети Фейштеля 2. Разработать программу шифрования и дешифрования текста. 3. Произвести шифрование исходного текста, получить шифрограмму, осуществить ее дешифрование и сравнение с исходным текстом. 4. Результаты работы оформить в виде отчета. 5. Содержание отчета: - описание используемого метода, - описание исходных данных, - алгоритм работы программы, - текст программы, - результаты работы программы, - анализ результатов - выводы. Варианты индивидуальных заданий Варианты заданий представлены в таблице 3.1. номер варианта выбирается в соответствии с номером студента в списке группы.
Таблица 3.1 – Параметры сети Фейштеля
3.4 Контрольные вопросы 1. Какова структура классической сети Фейштеля? 2. Что называется раундом в сети Фейштеля? 3. Какими свойствами обладает сеть Фейштеля? 4. Каким образом используется материал ключа при шифровании?
ЗАДАНИЕ №4. ИЗУЧЕНИЕ АЛГОРИТМОВ RSA
Цель работы: Освоить механизм шифрования и дешифрования данных в криптографической системе с открытыми ключами RSA.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2021-02-07; просмотров: 332; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.128 (0.006 с.) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||