Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Контроль целостности информации




 

6.1. Имитозащита информации

 

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

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

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

Для обнаружения искажений в распоряжении законного пользователя (например, получателя информации при ее передаче) должна быть некая процедура проверки , дающая на выходе 1, если в массиве данных отсутствуют искажения, или 0, если такие искажения имеют место. Идеальная процедура такой проверки должна обладать следующими свойствами [9]:

• невозможно найти такое сообщение способом, более эффективным, чем полный перебор по множеству допустимых значений (такая возможность в распоряжении противника имеется всегда);

• вероятность успешно пройти проверку у случайно выбранного сообщения не должна превышать заранее установленного значения.

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

На рис. 6.1-6.3 показаны некоторые возможные варианты внесения такой избыточности. В роли неповторяющегося блока данных RB могут выступать метка времени, порядковый номер сообщения и т.п. В роли контрольного кода могут выступать имитовставки или электронная подпись. Имитовставкой принято называть контрольный код, который формируется и проверяется с помощью одного и того же секретного ключа.

Использование блока RB позволяет контролировать целостность потока сообщений, защищая от повтора, задержки, переупорядочивания или их утраты. При использовании в качестве RB порядкового номера получатель, получив -е сообщение, проверяет равенство , т.е. что его номер на единицу больше номера предыдущего -го сообщения. При использовании в качестве RB метки времени получатель контролирует, чтобы времена отправки и приема сообщений соответствовали друг другу с учетом задержки в канале связи и разности показаний часов отправителя и получателя.

Рис. 6.1 Схема контроля целостности с использованием шифрования

 

Рис. 6.2 Схема контроля целостности с контрольным кодом

 

Рис. 6.3 Схема контроля целостности с контрольным кодом и шифрованием

Целостность потока сообщений можно также контролировать, используя шифрование со сцеплением сообщений (см. рис. 6.4).

Рис.6.4. Контроль целостности потока сообщений

 

Рассмотрим схему на рис. 6.2. Самый естественный способ преобразования информации с внесением избыточности - это добавление к исходным данным контрольного кода фиксированной разрядности , вычисляемого как некоторая функция от этих данных:

В этой ситуации выделение исходных данных из преобразованного массива суть простое отбрасывание контрольного кода . Проверка же целостности заключается в вычислении для содержательной части полученного массива данных контрольного кода и сравнении его с переданным значением . Если они совпадают, сообщение считается подлинным, в противном случае ложным:

Функция формирования контрольного кода должна удовлетворять следующим требованиям:

• она должна быть вычислительно необратимой, т.е. подобрать массив данных под заданный контрольный код можно только путем полного перебора по пространству возможных значений ;

• у злоумышленника должна отсутствовать возможность сформировать ложный массив данных (или ложное сообщение) и снабдить его корректно вычисленным контрольным кодом

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

Простейшим примером кода является контрольная сумма блоков массива данных. Например, если , то

где - разрядность.

Однако такое преобразование непригодно для имитозащиты, так как контрольная сумма не зависит от взаимного расположения блоков, а самое главное, соответствующее преобразование не является криптографическим. Процедура подбора данных под заданную контрольную комбинацию чрезвычайно проста. Пусть некий массив данных имеет контрольную сумму . Тогда для внесения не обнаруживаемых искажений про­тивнику достаточно дополнить произвольный ложный массив

,

еще одним блоком

Можно выделить два основных криптографических подхода к решению задачи защиты информации от несанкционированных изменений данных:

• формирование с помощью функции шифрования блочного шифра кода аутентификации сообщений МАС (Message Authentication Code);

• формирование с помощью необратимой функции сжатия (хеш-функции) информации кода обнаружения манипуляций с данными MDC(Manipulation Detection Code).

В табл. 6.1 приведена сравнительная характеристика указанных двух подходов [9]. Главное различие между кодами MAC и MDC заключается в том, что в первом случае для формирования контрольного кода требуется секретная информация, а во втором - нет.

 

Таблица 6.1. Сравнительная характеристика MAC и MDC

Параметр MAC MDC

 

Используемое преобразование Функция шифрования блочного шифра Хеш-функция  
Секретная информация Секретный ключ Нет
Возможность для противника вычислить контрольный код Отсутствует Присутствует

Продолжение таблицы 6.1.

Параметр MAC MDC

 

Хранение и передача контрольного кода Вместе с защищаемыми данными Отдельно от защищаемых данных
Дополнительные условия Требует предварительного распределения ключей Необходим аутентичный канал для передачи контрольного кода
Области использования Защита при передаче данных Защита при разовой передаче данных, контроль целостности хранимой информации

 

6.2. Код аутентификации сообщений

 

Формирование кода MAC с использованием функции шифрования блочного шифра официально закреплено во многих государственных стандартах шифрования. Имитовставка ГОСТ 28147-89 является классическим примером кода MAC. Код аутентификации сообщений может формироваться в режимах СВС или CFB, обеспечивающих зависимость последнего блока криптограммы от всех блоков открытого текста. В случае использования преобразования для выработки контрольного кода требования к нему несколько отличаются от требований при его использовании для шифрования: во-первых, не требуется свойство обратимости; во-вторых, его криптостойкость может быть снижена (например, за счет уменьшения числа раундов шифрования как в ГОСТ 28147-89). Действительно, в случае выработки кода MAC преобразование всегда выполняется в одну сторону, при этом в распоряжении злоумышленника есть только зависящий от всех блоков открытого текста контрольный код, в то время как при шифровании у него имеется набор блоков криптограммы, полученных с использованием одного секретного ключа.

Существует вариант построения кода MAC на основе использования секретного ключа и функции хеширования, при котором хешированию подвергается результат конкатенации секретного ключа и исходного сообщения, поэтому, как и в классическом случае у злоумышленника, не знающего ключа, отсутствует возможность вычислить контрольный код. Для повышения безопасности подобного алгоритма получения MAC создана схема вложенного MAC, в которой хеширование выполняется дважды. В американском стандарте FIPS 198 вложенный MAC назван НМАС (hashed MAC). В американском стандарте FIPS 113 определена схема формирования кода аутентификации сообщений, названная СМАС.

 

6.3. Код обнаружения манипуляций с данными

 

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

1) массив данных разбивается на блоки фиксированного размера, равного размеру ключа используемого блочного шифра, т.е.

,

, ;

2) если последний блок неполный, он дополняется каким-либо образом до нужного размера ;

3) вычисляется хеш-образ

,

где - синхропосылка.

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

достаточно решить одно уравнение

,

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

К сожалению, приведенная схема формирования MDC не учитывает наличия так называемых побочных ключей шифра. Если для спра­ведливо

,

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

Обнаружение противником побочного ключа при дешифровании сообщения не является особым успехом, так как с вероятностью, близкой к 1, на этом найденном побочном ключе он не сможет правильно расшифровать другие блоки закрытого текста, учитывая, что для различных блоков побочные ключи в общем случае также различны. В случае выработки кода MDC ситуация прямо противоположна: обнаружение побочного ключа означает, что противник нашел такой ложный блок данных, использование которого не изменяет контрольного кода [9].

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

 

6.4. CRC-код

 

Идеальным средством защиты информации от случайных искажений являются CRC- коды (cyclic redundancy code). Достоинствами CRC-кодов являются [9]:

• высокая достоверность обнаружения искажений, доля обнаруживаемых искажений не зависит от длины массива данных и составляет , где - разрядность контрольного кода;

• зависимость контрольного кода не только от всех бит анализируемой информационной последовательности, но и от их взаимного расположения;

• высокое быстродействие, связанное с получением контрольного кода в реальном масштабе времени;

• простота аппаратной реализации и удобство интегрального исполнения;

• простота программной реализации.

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

Сущность процесса контроля целостности с использованием CRC-кодов заключается в следующем. Генератор CRC-кода инициализируется фиксированным начальным значением. Чаще всего в качестве начального заполнения используется либо код «все 0», либо код «все 1». Учитывая, что от начального состояния генератора достоверность метода не зависит, все дальнейшие рассуждения выполняются в предположении, что исходное состо­яние устройства - нулевое. Анализируемая двоичная последовательность преобразуется в короткий (обычно шестнадцати- или тридцатидвухразрядный) двоичный код - CRC-код. Значение полученного CRC-кода сравнивается с эталонным значением, полученным заранее для последовательности без искажений. По результатам сравнения делается вывод о наличии или отсутствии искажений в анализируемой последовательности.

CRC-код часто называют сигнатурой (signature ). Однако этот термин следует признать неудачным, создающим ненужную путаницу, так как термин signature может означать также и электронную подпись.

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

Рассмотрим схему генератора CRC-кода, показанную на рис. 6.5. Входной анализируемой двоичной последовательности

, , ,

Можно поставить в соответствие многочлен степени . Тогда процесс получения CRC-кода эквивалентен делению многочлена входной последовательности на характеристический многочлен степени генератора CRC-кода. В качестве характеристического многочлена чаще всего выбирается примитивный многочлен. Для случая, представленного на рис. 6.5 .

Рис. 6.5. CRC-генератор

 

Если

,

где и - соответственно частное и остаток от деления, то коэффициенты многочлена появляются на выходе триггера , а коэффициенты многочлена остаются в регистре генератора после прохождения всей последовательности . Иначе говоря, CRC-код в точности равен коду остатка .

Работа генератора CRC-кода описывается системой линейных уравнений

где и - состояние -го разряда (триггера) соответственно в моменты времени и , , . В матричной форме уравнение работы CRC-генератора имеет вид

,

или

,

где

 

Таким образом, для CRC-генератора как линейного устройства справедлив принцип суперпозиции,который гласит: реакция линейного устройства на сумму двух входных воздействий равна сумме реакций на каждое воздействие в отдельности.

Пусть - анализируемая двоичная последовательность, - правильная последовательность (без искажений), - последовательность, полученная в результате сложения по модулю 2 соответствующих элементов последовательностей и , т.е. для любого элемента последовательности справедливо

.

Единичные биты последовательности соответствуют искаженным битам последовательности , поэтому последовательности логично назвать последовательностью или вектором ошибок. При отсутствии искажений

.

Пусть , и - многочлены; , , - CRC-коды соответственно последовательностей , и . Искажения в последовательности будут пропущены, если . Имеем , откуда, применяя принцип суперпозиции, получаем равенство

.

Таким образом, необходимым и достаточным условием пропуска искажений является равенство ,которое имеет место, когда многочлен нацело делится на многочлен .

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

.

Учитывая, что общее число искажений в последовательности длиной равно , для доли обнаруживаемых искажений получаем соотношение

.

На практике , а значит , ,

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

 

Контрольные вопросы к главам 5 и 6:

1. Дайте определение аутентификации. В чем разница между аутентификацией и идентификацией?

2. В чем разница между аутентификацией объекта и субъекта?

3. Назовите способы обеспечения целостности информации.


Литература

 

1. Бабаш А.В., Шанкин Г.П. Криптография. /Под редакцией В.П. Шерстюка, Э.А. Применко. – М.: СОЛОН-ПРЕСС, 2007.

2. Баричев С.Г, Гончаров В.В., Серов Р.Е. Основы современной криптографии: Учебный курс. – М.: Горячая линия-Телеком, 2002.

3. Болелов Э.А. Криптографические методы защиты информации. Часть 1. Симметричные криптосистемы. – М.:МГТУ ГА, 2011.

4. Нечаев В.И. Элементы криптографии (Основы теории защиты информации): Учеб. пособие для вузов / Под ред. В.А. Садовничего. – М.: Высш. шк., 1999.

5. Плотников А.Д. Дискретная математика: учеб. пособие. – Мн: Новое знание, 2008.

6. Рябко Б.Я., Фионов А.Н. Основы современной криптографии и стеганографии: Учебное пособие для вузов. – М.: Горячая линия-Телеком, 2010.

7. Харин Ю.С. и др. Математические и компьютерные основы криптологии: Учеб. пособие. – Мн.: Новое знание, 2003.

8. Ян Сонг Й. Криптоанализ RSA. – М.-Ижевск: НИЦ «Регулярная и хаотическая динамика», Ижевский институт компьютерных исследований, 2011.

9. Иванов М.А. и др. Стохастические методы и средства защиты информации в компьютерных системах и сетях/ Под ред. Журавлева И.Ю. – М.:КУДИЦ-ПРЕСС, 2009.

10. Молдовян Н.А. Теоретический минимум и алгоритмы цифровой подписи. – СПб.: БХВ-Петербург, 2010.

11. ГОСТ Р 34.10-94 - Процессы формирования и проверки электронной цифровой подписи.

12. ГОСТ Р 34.10 2012 - Процессы формирования и проверки электронной цифровой подписи.




Поделиться с друзьями:


Дата добавления: 2014-12-26; Просмотров: 3876; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.