КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Структура системы обеспечения конфиденциальности и целостности
Варианты реализации схемы: Схема (1): Сообщение вместе с присоединенным к нему путем конкатенации хэш-кодом шифруется методами традиционного шифрования. Так как только пользователям А и В становится известен секретный ключ, сообщение наверняка пришло от А и не могло быть изменено по пути следования. Хэш-код обеспечивает структуризацию или избыточность, требуемую для аутентификации. Поскольку шифрование выполняется по отношению ко всему сообщению вместе с добавленным хэш-кодом, при этом обеспечивается и конфиденциальность. Обеспечивает конфиденциальность – только стороны А и В знают . Обеспечивает целостность – криптографически защищено. Схема (2). Шифруется только хэш-код средствами традиционного шифрования. Это позволяет снизить вычислительную нагрузку на систему, если речь идет о приложениях, не требующих конфиденциальности. Обеспечивает целостность – криптографически защищено. Схема (3). В целях обеспечения целостности сообщений можно использовать функцию хэширования без шифрования. В таком случае предполагается, что две участвующие в обмене данными стороны используют известное только им секретное значение S. Отправитель А вычисляет значение функции хэширования для результата конкатенации M и S и присоединяет полученное значение функции хэширования к М. Получателю В значение S известно, поэтому он может тоже вычислить значение функции хэширования, чтобы сравнить последнее с пришедшим вместе с сообщением. Ввиду того что секретное значение непосредственно не посылается, противник не может модифицировать перехваченное сообщение или генерировать ложное. Конфиденциальность может обеспечивается путем шифрования сообщения вместе с добавленным к нему хэш-кодом. Обеспечивает конфиденциальность – только стороны А и В знают . Обеспечивает целостность – только стороны А и В знают .
Алгоритм симметричного шифрования Е Реализуется алгоритм блочного шифрования, построенный на базе схемы Файстеля (рис. 1). На вход алгоритма шифрования подается блок открытого текста длиной битов и ключ . Блок открытого текста разделяется на две равные части, и , которые последовательно проходят через раундов обработки, а затем объединяются снова для получения блока шифрованного текста соответствующей длины. Для раунда в качестве входных данных выступают и , полученные на выходе предыдущего раунда, и подключ , вычисляемый по общему ключу . Как правило, все подключи отличаются как от общего ключа, так и друг от друга.
Рис. 1. Классическая схема Файстеля Все раунды обработки проходят по одной и той же схеме. Сначала для левой половины блока данных выполняется операция подстановки. Она заключается в применении к правой половине блока данных некоторой функции раунда и последующем сложении полученного результата с левой половиной блока данных с помощью операции ХОR (исключающего "ИЛИ"). Для всех раундов функция раунда имеет одну и ту же структуру, но зависит от параметра — подключа раунда . После подстановки выполняется перестановка, представляющая собой обмен местами двух половин блока данных. Вся эта структура в целом является частным случаем так называемой подстановочно-перестановочной схемы (SPN — substitution-permutation network), предложенной Шенноном. По завершении последнего раунда выполняется еще одна перестановка, которая, по сути, отменяет перестановку, выполненную в последнем раунде. Поэтому, пожертвовав лишь внешней согласованностью представления, эти две перестановки из схемы можно удалить. Практическая реализация схемы Файстеля зависит от выбора значений следующих параметров и конструктивных особенностей. 1. Размер блока. Чем больше размер блока, тем выше надежность шифра (при прочих равных условиях), но тем ниже скорость выполнения операций шифрования и дешифрования. Разумным компромиссом является блок размером 64 бита, который является сегодня практически универсальным для всех блочных шифров. 2. Размер ключа. Чем длиннее ключ, тем выше надежность шифра, но большая длина ключа тоже может быть причиной слишком медленного выполнения операций шифрования и дешифрования. На сегодня ключи длиной 64 бита и меньше считаются недостаточно надежными — обычно используются 128-битовые ключи. 3. Число раундов обработки. Суть идеи шифра Файстеля в том, что за один раунд обработки данных обеспечивается недостаточно высокая надежность, но уровень надежности шифра повышается с каждым новым раундом обработки. Как правило, число раундов выбирают равным 16. 4. Алгоритм вычисления подключей. Чем сложнее этот алгоритм, тем в большей степени затрудняется криптоанализ шифра. 5. Функция раунда. Здесь, опять же, усложнение, как правило, введет к повышению стойкости шифра с точки зрения криптоанализа. Кроме того, имеется еще два фактора, которые приходится принимать во внимание при построении любой реализации шифра Файстеля (мы вернемся к ним ниже в этой и следующих главах). 6. Скорость выполнения программ шифрования/дешифрования. Часто функции шифрования встраиваются в приложения или утилиты, чтобы избежать необходимости аппаратной реализации шифрования. В таких случаях важным фактором оказывается скорость программного выполнения алгоритма. 7. Простота анализа. Хотя нашей задачей является создание такого алгоритма, который для криптоанализа был бы настолько сложным, насколько это возможно, все же весьма выгодно, чтобы сам такой алгоритм оставался простым для понимания. Иными словами, если алгоритм прост и понятен, его легче анализировать с точки зрения уязвимости для криптоанализа и, следовательно, легче совершенствовать с целью достижения более высокого уровня надежности. Алгоритм DES, например, нельзя отнести к алгоритмам, слишком простым для анализа.
Варианты реализации алгоритма шифрования:
Дата добавления: 2015-06-04; Просмотров: 385; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |