<<
>>

1.2. Основы теории криптографических протоколов

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

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

Свойства протокола:

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

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

одного действующего лица недостаточно для протокола (должно быть два или более);

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

стороны решают некоторую конкретную задачу - это не бес-цельные действия.

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

(Далее под словом «протокол» всегда имеется в виду криптографический протокол.)

В теоретической криптографии протокол рассматривается как «черный ящик», который имеет т входов и п<т выходов:

Очевидно, любой протокол можно тривиально сконструировать, если есть такой участник криптосистемы Г, которому все остальные участники полностью и безусловно доверяют.

Л (*!,->*,„ )= /і М

{х1>'">хп,)=f„ 00

Очевидно, любой протокол можно тривиально сконструировать, если есть такой участник криптосистемы Г, которому все остальные участники полностью и безусловно доверяют.

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

В частном случае, когда в криптографическом протоколе участ-вуют только две стороны, рассматривается «черный ящик» с двумя входами и двумя выходами:

У^

Г(х.УИА(Х*У)'*МХ.У)).

Если оба участника в результате выполнения протокола должны получить одинаковые выходные данные, тогда:

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

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

Робастный (robust) протокол - протокол, обладающий «внут-ренней», конструктивной устойчивостью к попыткам его «сломать». В лучшем случае можно сконструировать протокол так, что если большинство участников верно следуют протоколу, то они получат верный результат.

Упругий (resilient) протокол - протокол, сохраняющий безопас-ность, если противник узнает некоторую часть секретных данных участников.

Один и тот же протокол может выполняться одними и теми же лицами многократно в течение какого-то промежутка времени.

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

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

Участники протокола в общем случае подразделяются на две группы:

непосредственно решающие задачу протокола (как правило, обозначаются буквами латинского алфавита А, В, С, D... либо сим-волическими именами Алиса, Боб, Карл, Виолетта и т. п.);

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

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

По способу вторжения в протокол противник может быть пас-сивным (eavesdropper) или активным (active adversary). Пассивный обычно обозначается буквой Е (Eva). Он может только прослушивать каналы связи и выборочно или полностью сохранять информа-цию, передаваемую по этим каналам. Активный, который чаще все-го обозначается буквой М (Malloryможет вставлять, модифицировать, удалять сообщения из каналов связи и даже (иногда рассматривают и такую модель) овладевать частью секретных ключей участников протокола.

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

<< | >>
Источник: Запечников С. В.. Криптографические протоколы и их применение в финансовой и коммерческой деятельности: Учебное пособие для вузов. - М.: Горячая линия-Телеком,2007. - 320 с.. 2007

Еще по теме 1.2. Основы теории криптографических протоколов: