Целостность информации | это... Что такое Целостность информации? (original) (raw)

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

В телекоммуникации целостность данных часто проверяют, используя MAC-код сообщения (Message authentication code).

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

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

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

Целостность данных — свойство, при выполнении которого данные сохраняют заранее определённый вид и качество.

Содержание

Область использования

Понятие «целостность объекта» (англ. integrity) используется в контексте терминологии информационной безопасности (объектом может быть информация, специализированные данные, ресурсы автоматизированной системы). В частности, свойство целостности информации (ресурсов автоматизированной системы) — является одним из трех основных критериев информационной безопасности объекта.

Обычно свойство целостности требуется наряду с конфиденциальностью (confidentiality) и доступностью (availability). Иногда к списку необходимых свойств информационной безопасности объекта добавляют неотказуемость (non-repudiation), подотчётность (accountability), аутентичность или подлинность (authenticity), достоверность (reliability).

Определения понятия

В Рекомендациях по стандартизации Р 50.1.053-2005 [1] дается следующее определение:

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

В Рекомендациях по стандартизации Р 50.1.056-2005 [2] определения уточнены и разнесены по объектам приложения:

Целостность информации — состояние информации, при котором отсутствует любое ее изменение либо изменение осуществляется только преднамеренно субъектами, имеющими на него право.

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

В некоторых специализированных стандартах используются собственные определения данного понятия:

Целостность (integrity)[3] — свойство сохранения правильности и полноты активов.

Целостность информации [4] — обеспечение достоверности и полноты информации и методов ее обработки.

Целостность документа[5] — cвойство документа, состоящее в том, что при любой демонстрации документа заданные значения параметров демонстрируемого представления документа соответствуют специфицированным требованиям.

Использование термина

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

Реализация содержания

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

Основными методами обеспечения целостности информации (данных) при хранении в автоматизированных системах являются:

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

При комплексном подходе к защите бизнеса, направление обеспечения целостности и доступности информации (ресурсов бизнес-процессов) перерастает в план мероприятий, направляемых на обеспечение непрерывности бизнеса [6].

Целостность данных в криптографии

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

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

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

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

Имитовставки

Число двоичных разрядов в имитовставке в общем случае определяется криптографическими требованиями с учетом того, что вероятность навязывания ложных данных равна 1/_2_p, где p — число двоичных разрядов в имитовставке.

Имитовставка, является функцией сообщения x, M=f(x). Она может служить для целей аутентификации сообщения и проверки его целостности. Поэтому имитовставки можно разделить на два класса:

MDC

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

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

Существует три основных типа MDC алгоритмов хэш-функций, по способу их построения:

MAC

К MAC хэш-функциям для вычислений кодов аутентификации сообщений, подсемейству ключевых хэш-функций, относят семейство функций удовлетворяющих следующим свойствам:

Если не выполняется последнее свойство, то MAC может быть подделан. Также последнее свойство подразумевает, что ключ невозможно вычислить, то есть, имея одну или более пар (x[i], h(x[i])) с ключом k, вычислительно невозможно получить этот ключ.

Алгоритмы получения кода аутентификации сообщения могут быть разделены на следующие группы по их типу:

Получение MAC на основе MDC

Существуют методы получения из MDC кодов аутентификации сообщений включением секретного ключа во входные данные алгоритма MDC. Недостатком такого подхода является то, что фактически на практике большинство алгоритмов MDC разработано так, что они являются либо OWHF, либо CRHF, требования к которым отличаются от требований к MAC алгоритмам.

  1. secret prefix method : К последовательности блоков данных x=_x_1_x_2_x_3.._x_n в начало приписывается секретный ключ k: k||x. Для данной последовательности данных с помощью итерационной хэш-функции вычисляется MDC, например, такой, что H0=IV (от англ. initial value), Hi=f(Hi-1,_x_i) h(x) = Hn. Таким образом, MAC M=h(k||x). Минусом такого подхода является то, что третья сторона может дописать в конец последовательности блоков дополнительные данные y: k||x||y. Новый MAC может быть вычислен без знания ключа k: M1 = f(M,y).
  2. secret suffix method : Секретный ключ приписывается в конец последовательности данных: x||k. В этом случае MAC M=h(x||k). В этом случае может быть применена атака методом дней рождений. При длине дайджеста в n бит. Третьей стороне понадобится порядка _2_n/2 операций, чтобы для сообщения x найти сообщение x’ такое, что h(x)= h(x’). При этом знание ключа k будет не обязательно. Узнав значение MAC M для сообщения x, третья сторона сможет сгенерировать корректную пару (x’,M).
  3. envelope method with padding : Для ключа k и MDC h вычисляется MAC от сообщения _h_k(x)=(k||p||x||k), где p — строка, дополняющая ключ k до длины блока данных, для того, чтобы гарантировать, что будет произведено как минимум 2 итерации. Например, для MD5 k — 128 бит, а p — 384 бита.
  4. HMAC : Для ключа k и MDC h вычисляется MAC от сообщения _h_k(x)=(k||_p_1||h(k||_p_2||x)), где _p_1,_p_2 — различные строки, дополняющие k до длины блока данных. Такая конструкция довольно эффективна, несмотря на двойное использование h.

Схемы использования

Фактически, в общем виде, процесс передачи данных и их проверки на целостность выглядит следующим образом: пользователь A добавляет к своему сообщению дайджест. Эта пара будет передана второй стороне B. Там выделяется сообщение, вычисляется для него дайджест и дайджесты сравниваются. В случае совпадения значений сообщение будет считаться достоверным. Несовпадение будет говорить о том, что данные были изменены.

Обеспечение целостности данных с использованием шифрования и MDC

От исходного сообщения вычисляется MDC, M=h(x). Этот дайджест добавляется к сообщению _С_=(x||h(x)). Затем расширенное таким образом сообщение шифруется каким-то криптоалгоритмом E с общим ключом k. После шифрования полученное сообщение _C_encripted передается второй стороне, которая используя ключ, выделяет из шифрованного сообщения данные x’ вычисляет для него значение дайджеста M’. Если он совпадает с полученным M, то считается, что целостность сообщения была сохранена. Целью этого шифрования является защита добавленного MDC, чтобы третья сторона не могла изменить сообщение без нарушения соответствия между расшифрованным текстом и восстановленным кодом проверки целостности данных. Если при передаче данных конфиденциальность не является существенной, кроме как для обеспечения целостности данных, то возможны схемы, в которых будут зашифрованы только либо сообщение x, либо MDC.

Обеспечение целостности данных с использованием шифрации и MAC

По сравнению с предыдущим случаем в канал посылается сообщение следующего вида: _E_k(x||_h_k1(x)). Такая схема обеспечения целостности имеет преимущество над предыдущей схемой с MDC: если шифр будет взломан, MAC все равно будет обеспечивать целостность данных. Недостатком является то, что используется два различных ключа, для криптоалгоритма и для MAC. При использовании подобной схемы, следует быть уверенным, что какие-либо зависимости между алгоритмом MAC и алгоритмом шифрации не приведут к уязвимости системы. Рекомендуется, чтобы эти два алгоритма были независимыми (например, такой недостаток системы может проявляться, когда в качестве алгоритма MAC используется CBC-MAC, и в качестве схемы шифрования CBC).

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

Неумышленные нарушения целостности

С точки зрения криптографии основной интерес представляют задачи обеспечения целостности данных, в которых осуществляются их умышленные изменения. Однако методы обеспечения проверки случайных изменений тоже применяются. К таким методам относят использование кодов обнаружения и исправления ошибок. К таковым, например, относятся: коды Хемминга, коды CRC, коды БЧХ и прочие.

Аутентификация и целостность

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

Использование ГОСТ 28147-89

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

  1. Исходный текст делится на блоки Ti длиной в 64 бита.
  2. Блоки Ti последовательно подвергаются преобразованию, соответствующему первым 16 раундам работы ГОСТ в режиме простой замены.
  3. После 16 раундов полученное 64-разрядное число прибавляется по модулю 2 к следующему блоку Ti+1 и процедура повторяется.
  4. Последний блок, при необходимости дополняется до 64-бит нулями, к нему прибавляется 64-разрядное число, полученное на предыдущем цикле, и после этого последний блок подвергается преобразованию.
  5. Из получившегося в конце работы конечного 64-битного числа выбирается отрезок в p бит, где p — выбранная длина имитовставки.

Примечания

  1. Рекомендации по стандартизации «Информационные технологии. Основные термины и определения в области технической защиты информации» (Р 50.1.053-2005).
  2. Рекомендации по стандартизации «Техническая защита информации. Основные термины и определения» (Р 50.1.056-2005).
  3. Национальный стандарт РФ «Методы и средства обеспечения безопасности. Часть 1. Концепция и модели менеджмента безопасности информационных и телекоммуникационных технологий» (ГОСТ Р ИСО/МЭК 13335-1 — 2006).
  4. Национальный стандарт РФ «Информационная технология. Практические правила управления информационной безопасностью» (ГОСТ Р ИСО/МЭК 17799—2005).
  5. Национальный стандарт РФ «Информационная технология. Электронный обмен информацией. Термины и определения» (ГОСТ Р 52292-2004).
  6. Jet Info № 5 (2007) Непрерывность бизнеса. Подходы и решения.

Ссылки

См. также