Проблема аутентификации данных и блочные шифры

       

Подходы к контролю неизменности данных.


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

1.    Выработка MAC

Message Authentification Code – кода аутентификации сообщений. Этот подход заключается в том, что контрольная комбинация вычисляется с использованием секретного ключа с помощью некоторого блочного шифра.  Важно, что на основе любого такого шифра можно создать алгоритм вычисления MAC для массивов данных произвольного размера.  В литературе ÌÀÑ иногда не вполне корректно называется криптографической контрольной суммой, или, что более точно, криптографической контрольной комбинацией.  Данный подход к аутентификации данных общепризнан и закреплен практически во всех криптографических стандартах - имитовставка, формируемая согласно ГОСТ 28147-89 является типичным образцом MAC.

2.    Выработка MDC

Ìànipulation Detection Code – кода обнаружения манипуляций (с данными).  Для вычисления MDC для блока данных используется так называемая необратимая функция сжатия информации, в литературе также называемая односторонней функцией, функцией одностороннего сжатия (преобразования) информации, криптографической хэш–функцией, или просто хэш–функцией.  Понятно, что ее необратимость должна носить вычислительный характер:

  • вычисление прямой функции  Y=f(X) легко осуществимо вычислительно;
  • вычисление обратной функции  X=f–1(Y) неосуществимо вычислительно, то есть не может быть выполнено более эффективным путем, чем перебором по множеству возможных значений  X;
  • Оба способа вычисления контрольной комбинации – MDC и MAC

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

    В следующей ниже таблице 1 приведены сравнительные характеристики обоих подходов:

    Таблица 1.   Сравнительные характеристики подходов к решению задачи контроля неизменности массивов данных.



    Параметр сравнения

    Подход

    вычисление MAC

    вычисление MDC

    1.     

    Используемое преобразо­вание данных

    Криптографическое пре­образование (функция зашифрования)

    Односторонняя функция, функция необратимого сжатия информации

    2.     

    Используемая секретная информация

    Секретный ключ

    Не используется

    3.     

    Возможность для третьей стороны вычислить кон­трольную комбинацию

    Злоумышленник не может вычислить контрольную комбинацию, если ему не известен секретный ключ

    Злоумышленник может вычислить контрольную комбинацию для произ­вольного блока данных

    4.     

    Хранение и передача кон­трольной комбинации

    Контрольная комбинация может храниться и пере­даваться вместе с защища­емым массивом данных

    Контрольная комбина­ция должна храниться и передаваться отдельно от защищаемого массива данных

    5.     

    Дополнительные условия

    Требует предварительного распределения ключей между участниками ин­формационного обмена

    Не требует предвари­тельных действий

    6.     

    Области, в которых под­ход имеет преимущество

    Защита от несанкциони­рованных изменений дан­ных при их передаче

    Разовая передача мас­сивов данных, контроль неизменности файлов данных и программ

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

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

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

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


    Содержание раздела