Самодостаточные протоколы




Лекція 10. Загальні відомості про криптографічні протоколи

Навчальні питання

1.... Основні відомості про криптопротоколи.. 1

2.... Симетричні алгоритми у криптографічних протоколах. 6

3.... Асиметричні алгоритми у криптографічних протоколах. 7

Час – 2 год.

Література.

1. Брюс Шнайер. Прикладная криптография. Протоколы, алгоритмы и исходные тексты на языке С. – М.: Издательство ТРИУМФ, 2003.

Вступ

)

.

Основні відомості про криптопротоколи

Смысл криптографии состоит в решении практических задач. Криптография решает задачи обеспечения:

– секретности данных;

– проверки:

– подлинности данных и пользователей;

– целостности данных;

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

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

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

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

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

"Предназначенный для решения определенной задачи" означает, что протокол должен приводить к какому-то результату. Что-то, похожее на протокол, но не решающее никакой задачи ‑ это не протокол, это потеря времени. У протоколов есть также и другие характеристики:

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

ü Каждый участник протокола должен согласиться следовать протоколу.

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

ü Протокол должен быть полным, каждой возможной ситуации должно соответствовать определенное действие.

Далее при рассмотрении протоколов предусматривается следующее.

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

Криптографический протокол ‑ это протокол, использующий криптографию.

Стороны могут:

– доверять друг другу;

– не верить друг другу.

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

– поделиться секретом друг с другом;

– совместно генерировать случайную последовательность;

– подтвердить друг другу свою подлинность;

– подписать контракт в один и тот же момент времени.

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

Невозможно сделать или узнать больше, чем определено в протоколе.

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

Смысл протоколов

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

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

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

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

Игроки

Для демонстрации работы протоколов будем использовать несколько игроков. Первые двое ‑ это Алиса и Боб. Они участвуют во всех двусторонних протоколах. Как правило, Алиса (Alice) начинает все протоколы, а Боб (Bob) отвечает. Если для протокола нужна третья или четвертая сторона, в игру вступают Кэрол (Karol) и Дэйв (Dave). Другие игроки играют специальные вспомогательные роли, они будут представлены далее.

Типы протоколов

Протоколы с посредником

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

В реальном мире в качестве посредников часто выступают юристы. Например, Алиса продает незнакомому ей Бобу машину. Боб хочет заплатить чеком, но у Алисы нет способа проверить, действителен ли чек. Алиса хочет, чтобы расчет по чеку был произведен прежде, чем право собственности перейдет к Бобу. Боб, который верит Алисе не больше, чем она ему, не хочет передавать чек, не получив права собственности.

Табл. 1. Действующие лица

Алиса Первый участник всех протоколов
Боб Второй участник всех протоколов
Кэрол Третий участник в протоколах с участием трех и четырех сторон
Дэйв Четвертый участник в протоколах с участием трех и четырех сторон
Ева Злоумышленник (eavesdropper)
Мэллори Злоумышленник протоколов
Трент Заслуживающий доверия посредник
Уолтер Контролер, защищает Алису и Боба в ряде протоколов
Пегги Свидетель
Виктор Проверяет подлинность

Рис. 4. Типы протоколов

Посредничество юриста устроит обоих. С его помощью Алиса и Боб могут выполнить следующий протокол, чтобы защитить себя от обмана:

(1) Алиса передает право собственности юристу.

(2) Боб передает чек юристу.

(3) Алиса депонирует чек.

(4) Дождавшись оплаты чека, юрист передает право собственности Бобу. Если чек не оплачен в течение определенного времени, Алиса доказывает этот факт юристу, и тот возвращает право собственности Алисе.

В этом протоколе Алиса верит, что юрист не передаст Бобу право собственности до тех пор, пока чек не будет оплачен, и вернет право собственности Алисе, если чек оплачен не будет. Боб верит, что юрист будет обладать правом собственности до тех пор, пока чек не будет оплачен, и передаст право собственности Бобу сразу же после оплаты чека. Юрист не заботится об оплате чека. Он в любом случае выполнит свою часть протокола, ведь ему заплатят в любом случае.

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

В качестве посредника может выступить и банк ‑ для покупки машины:

(1) Боб заполняет чек и передает его в банк.

(2) Если на счету Боба достаточно денег для покрытия чека, банк заверяет чек и возвращает его Бобу.

(3) Алиса передает Бобу право собственности, а Боб передает Алисе заверенный чек.

(4) Алиса депонирует чек.

Этот протокол работает, потому что Алиса верит банковскому свидетельству. Алиса верит, что банк сохранит деньги Боба для нее и не использует их не по назначению.

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

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

Этот идеал можно перенести на мир компьютеров, но с компьютерными посредниками существует ряд следующих проблем:

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

ü Компьютерная сеть должна обеспечить поддержку посредника. Необходимы дополнительные накладные расходы.

ü Существует задержка, присущая всем протоколам с посредником.

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

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

Несмотря на это посредничество все еще активно используется. В протоколах с использованием посредника эту роль будет играть Трент.

Арбитражные протоколы

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

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

Профессиональными арбитрами являются судьи. В отличие от нотариусов к судьям обращаются только при появлении разногласий. Алиса и Боб могут заключить контракт без участия судьи. Судья никогда не узнает о контракте, если одна из сторон не подаст на другую в суд. Протокол подписания контракта можно формализовать следующим образом:

Подпротокол без посредника (выполняется всегда):

(1) Алиса и Боб договариваются об условиях контракта.

(2) Алиса подписывает контракт.

(3) Боб подписывает контракт.

Подпротокол с использованием арбитра (выполняется при наличии разногласий):

(1) Алиса и Боб предстают перед судьей.

(2) Алиса предоставляет свои доказательства.

(3) Боб предоставляет свои доказательства.

(4) Судья принимает решение на основании доказательств.

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

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

Самодостаточные протоколы

Самодостаточный протокол полностью обеспечивает честность сторон (см. рис. 4 (в)). Для выполнения протокола не нужен ни посредник, не решающий споры арбитр. Само построение протокола обеспечивает отсутствие споров. Если одна из сторон попытается смошенничать, мошенничество будет немедленно обнаружено другой стороной, и протокол прекратит выполняться. Чего бы не пыталась добиться мошенничающая сторона ‑ это невозможно будет сделать.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2021-04-20 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: