В данном разделе рассматриваются два основных подхода к контролю целостности передаваемых данных.
.5.1 Задача имитозащиты данных
Под имитозащитой данных в системах их обработки понимают защиту от навязывания ложных данных. Практически всегда на некоторых этапах своего жизненного цикла информация оказывается вне зоны непосредственного контроля за ней. Это случается, например, при передаче данных по каналам связи или при их хранении на магнитных носителях ЭВМ, физический доступ к которым посторонних лиц исключить почти никогда не представляется возможным.
Физически предотвратить внесение несанкционированных изменений в данные в подавляющем большинстве реальных систем их обработки, передачи и хранения не представляется возможным. Поэтому крайне важно своевременно обнаружить сам факт таких изменений. Целью злоумышленника, навязывающего системе ложную информацию, является выдача ее за подлинную, а это возможно только в том случае, если сам факт такого навязывания не будет вовремя обнаружен. Подведем итог - под защитой данных от несанкционированных изменений в криптографии понимают не исключение самой возможности таких изменений, а набор методов, позволяющих надежно зафиксировать их факты, если они имели место.
1.5.2 Подходы к контролю неизменности данных
В настоящее время известны два подхода к решению задачи защиты данных от несанкционированного изменения, базирующихся на двух изложенных выше подходах к выработке контрольной комбинации [7]:
Выработка MAC - Message Authentification Code - кода аутентификации сообщений. Этот подход заключается в том, что контрольная комбинация вычисляется с использованием секретного ключа с помощью некоторого блочного шифра. Важно, что на основе любого такого шифра можно создать алгоритм вычисления MAC для массивов данных произвольного размера. Данный подход к аутентификации данных общепризнан и закреплен практически во всех криптографических стандартах - имитовставка, формируемая согласно ГОСТ 28147-89 является типичным образцом MAC.
Выработка MDC - Маnipulation Detection Code - кода обнаружения манипуляций (с данными). Для вычисления MDC для блока данных используется так называемая необратимая функция сжатия информации, в литературе также называемая односторонней функцией, функцией одностороннего сжатия (преобразования) информации, криптографической хэш-функцией, или просто хэш-функцией.
Оба способа вычисления контрольной комбинации - MDC и MAC принимают в качестве аргумента блок данных произвольного размера и выдают в качестве результата блок данных фиксированного размера.
Отличия: подход на основе MAC требует для вычисления контрольной комбинации секретного ключа, для второго это не нужно. Потенциальный злоумышленник не сможет вычислить MAC для произвольного сфабрикованного им сообщения, но сможет вычислить MDC, так как для этого не требуется никаких секретных данных, поэтому MAC может передаваться от источника к приемнику по открытому каналу, тогда как для передачи MDC требуется защищенный канал.
Оба подхода допускают возможность реализации на основе любого классического блочного шифра. При этом надежность полученной системы имитозащиты, конечно при условии ее корректной реализации, будет определяться стойкостью использованного блочного шифра - это утверждение исключительно легко доказывается [7].