- Логика Бэрроуза
-
Логика Бэрроуза — Абади — Нидхэма (англ. Burrows-Abadi-Needham logic) или BAN-логика (англ. BAN logic) — это формальная логическая модель для анализа знания и доверия, широко используемая при анализе протоколов аутентификации.
Основная идея BAN-логики состоит в том, что при анализе подобных протоколов в первую очередь следует обратить внимание на то, как стороны, участвующие в процессе аутентификации, воспринимают информацию - что они принимают на веру, а что доподлинно им известно или может быть выведено логическим путем из достоверных для них фактов.[1]
Обычно протоколы аутентификации описываются путем последовательного перечисления сообщений, передаваемых между участниками протокола. На каждом шаге описывается содержимое сообщения, а также указывается его отправитель и получатель. BAN-логика рассматривает подлинность сообщения как функцию от его целостности и новизны, используя логические правила для отслеживания состояния этих атрибутов на протяжении всего протокола.[2]
В BAN-логике существует три типа объектов: участники, ключи шифрования и формулы, их связывающие. При формальном анализе протокола каждое сообщение преобразуется в логическую формулу; затем логические формулы связываются утверждениями. Тем самым, BAN-логика во многом схожа с логикой Хоара.[3] Единственной логической операцией, применяемой в данной логике, яаляется конъюнкция. Также вводятся различные предикаты, например, устанавливающие отношения между участниками и высказываями (отношение доверия, юрисдикции и т.д.) или выражающие какие-либо свойства высказываний (таких, как свежесть, т.е. утверждение, что высказывание получено недавно).
Как и любая формальная логика, BAN-логика снабжена аксиомами и правилами вывода. Формальный анализ протокола состоит в доказательстве некоторого набора утверждений, выраженного формулами BAN-логики, с помощью правил вывода. Например, минимальное требование к любому протоколу аутенификации состоит в следующем: оба участника должны поверить в то, что они нашли секретный ключ для обмена информацией друг с другом.
Содержание
Основные предикаты и их обозначения
означает, что
верит в высказывание
. Это значит, что
станет действовать так, как будто
- истинная информация.
подразумевает, что
видит
, т.е.
принял сообщение, в котором содержится
. То есть
может прочитать и воспроизвести (возможно, после процедуры расшифрования) сообщение
.
означает, что
однажды высказал
, то есть в какой-то момент времени
послал сообщение, содержащее
.
означает, что
входит в юрисдикцию
(или
имеет юрисдикцию над
), т.е.
обладает авторитетом по вопросу относительно
.
означает, что высказывание
получено недавно. То есть сообщение
не было послано когда-то в прошлом (до момента запуска протокола).
означает, что
и
используют для общения разделенный ключ
.
подразумевает, что данные
зашифрованы ключом
.
Другие обозначения
Операция конъюнкции обозначается запятой, а логическое следование - горизонтальной чертой. Таким образом, логическое правило
в обозначениях BAN-логики записывается как
Аксиомы BAN-логики
- Время делится на две эпохи: прошлое и настоящее. Настоящее начинается с момента запуска протокола.
- Участник
, высказывающий
, верит в истинность
.
- Шифрование считается абсолютно надежным: зашифрованное сообщение не может быть расшифровано участником, не знающим ключа.
Правила вывода
- Правило о значении сообщения:
Эквивалентная словесная формулировка: из предположений о том, что
верит в совместное использование ключа
с
, и
видит сообщение
, зашифрованное ключом
, следует, что
верит, что
в какой-то момент высказал
.
Заметим, что здесь неявно предполагается, что сам
никогда не высказывал
.
- Правило проверки уникальности числовых вставок:
т.е. если
верит в новизну
и в то, что
когда-то высказал
, то
верит, что
по-прежнему доверяет
.
- Правило юрисдикции:
утверждает, что если
верит в полномочия
относительно
, и
верит в то, что
верит в
, то
должен верить в
.
- Другие правила
Оператор доверия и конъюнкция подчиняются следующим соотношениям:
По сути, данные правила устанавливают следующее требование:
доверяет какому-то набору утверждений тогда и только тогда, когда
доверяет каждому утверждению по отдельности.
Аналогичное правило существует для оператора
:
Следует заметить, что из
и
не следует
, поскольку
и
могли быть высказаны в разные моменты времени.
Наконец, если какая-то часть высказывания получена недавно, то это же можно утверждать и про все высказывание целиком:
Формальный подход к анализу протоколов аутентификации
С практической точки зрения, анализ протокола осуществляется следующим образом:[4] [5]
- Исходный протокол преобразуется в идеализованный (т.е. записанный в терминах BAN-логики).
- Добавляются предположения о начальном состоянии протокола.
- С каждым высказыванием связывается логическая формула, т.е. логичекое утверждение о состоянии протокола после каждого высказывания.
- К предположениям и утверждениям протокола применяются правила вывода и аксиомы для того, чтобы определить состояние доверия сторон по завершении работы протокола.
Поясним смысл данной процедуры. Первый шаг носит название идеализации и состоит в следующем: каждый шаг протокола, записанный в виде
, преобразуется в набор логических утверждений, касающихся передающей и принимающей стороны. Пусть, например, один из шагов протокола выглядит следующим образом:
Это сообщение говорит участнику
(обладающему ключом
), что ключ
должен быть использован для сообщения с
. Соответствующая логическая формула для данного сообщения имеет вид:
Когда данное сообщение доставляется
, справедливо утверждение:
т.е.
видит данное сообщение и в дальнейшем будет действовать в соответствии с ним.
После идеализации протокол выглядит как последовательность высказываний и утверждений, связывающих эти высказывания. Начальное утверждение состоит из исходных предположений протокола, конечное утверждение - результат работы протокола:
Протокол считается корректным, если набор конечных утверждений включает в себя набор (формализованных) целей протокола.
Цели протоколов аутентификации
Запишем цели протокола аутентификации в терминах BAN-логики (т.е. какие логические утверждения должны быть выведены из предположений протокола, с учетом последовательности шагов (утверждений), выполняемых в данном протоколе):[6] [7]
и
т.е. обе стороны должны поверить в то, что они используют для обмена сообщениями один и тот же секретный ключ. Однако, можно потребовать и большего, например:
и
то есть подтверждения приема ключа.[8]
Анализ протокола широкоротой лягушки с помощью BAN-логики
Рассмотрим простой протокол аутентификации — протокол широкоротой лягушки — который позволяет двум сторонам,
и
, установить защищённое соединение, используя сервер
, которому они оба доверяют, и синхронизированные часы.[9] В стандартных обозначениях протокол записывается следующим образом:
После идеализации шаги протокола приобретают вид:
Запишем исходные предположения протокола. Стороны
и
обладают ключами
и
соответственно, для защищённой связи с сервером
, что на языке BAN-логики может быть выражено как:
Также имеются предположения о временных вставках:
Помимо этого, есть несколько предположений о ключе шифрования:
полагается на
в выборе хорошего ключа:
доверяет
передать ключ от
:
верит, что сеансовый ключ принят:
Приступим к анализу протокола.
получает первое сообщение, из которого можно сделать следующие выводы:
, видя собщение, зашифрованное ключом
, делает вывод, что оно было послано
(правило о значениии сообщения).
- Наличие свежей временной вставки
позволяет заключить, что и все сообщение написано недавно (правило для оператора
).
- Из свежести всего сообщения
может заключить, что
верил в то, что послал (правило проверки уникальности числовых вставок).
Следовательно,
.
получает второе сообщение протокола, из которого следует:
- Увидев послание, зашифрованное ключом
, клиент
понимает, что оно было отправлено
.
- Временная вставка
доказывает
, что все сообщение было послано недавно.
- Ввиду свежести сообщения,
заключает, что
доверяет всему посланному.
- В частности,
верит в то, что
доверяет второй части сообщения.
- Но
верит и в то, что в юрисдикцию
входит выяснить, знает ли его партнер
секретный ключ, и поэтому
вверяет
полномочия по генерированию ключа.
Из этих рассуждений можно сделать следующие выводы:
С учетом исходного предположения о том, что
, получаем, что анализируемый протокол обоснован. Единственное, чего нельзя утверждать:
т.е.
не добился подтверждения того, что
получил нужный ключ.
Критика
Наибольшей критике подвергается процесс идеализации, поскольку идеализованный протокол может некорректно отражать свой реальный аналог. [10] Это связано с тем, что описание протоколов не дается в формальной манере, что иногда ставит под сомнение саму возможность корректной идеализации. [11] Более того, ряд критиков пытается показать, что BAN-логика может получить и очевидно неправильные характеристики протоколов. [12] Кроме того, результат анализа протокола с помощью BAN-логики не может считаться доказательством его безопасности, поскольку данная формальная логика занимается исключительно вопросами доверия. [13]
Примечания
- ↑ Н. Смарт, "Криптография", p. 175.
- ↑ B. Schneier, "Applied Cryptography", p. 66.
- ↑ M. Burrows, M. Abadi, R. Needham, "A Logic of Authentication", p. 3.
- ↑ M. Burrows, M. Abadi, R. Needham, "A Logic of Authentication", p. 11.
- ↑ B. Schneier, "Applied Cryptography", p. 67.
- ↑ Н. Смарт, "Криптография", p. 177.
- ↑ M. Burrows, M. Abadi, R. Needham, "A Logic of Authentication", p. 13.
- ↑ Н. Смарт, "Криптография", p. 177.
- ↑ Н. Смарт, "Криптография", p. 169-170.
- ↑ D.M. Nessett, "A Critique of the Burrows, Abadi, and Needham Logic", pp. 35-38.
- ↑ Boyd,C. and Mao, W. "On a Limitation of BAN Logic"
- ↑ Boyd,C. and Mao, W. "On a Limitation of BAN Logic"
- ↑ P.F. Syverson, "The Use of Logic in the Analysis of Cryptographic Protocols"
Литература
- M. Burrows, M. Abadi, R. Needham (December 1989). «A Logic of Authentication». Systems Research Center of Digital Equipment Corporation in Palo Alto 426: 44-54.
- Monniaux, D. (1999). «Decision procedures for the analysis of cryptographic protocols by logics of belief». Computer Security Foundations Workshop, 1999. Proceedings of the 12th IEEE: 44-54.
- Mao, Wenbo On a Limitation of BAN Logic // Advances in Cryptology — EUROCRYPT ’93 / Helleseth, Tor. — Springer Berlin / Heidelberg, 1994. — P. 240-247. — ISBN 978-3-540-57600-6
- Н. Смарт Криптография. — Москва: Техносфера, 2005. — С. 162-179. — 528 с. — ISBN 5-94836-043-1
- B. Schneier Applied Cryptography. — John Wiley & Sons, 1995. — С. 66-69. — ISBN 0-47111-709-9
- А. Алферов, А. Кузьмин, А. Зубов, А. Черемушкин Основы криптографии. — Москва: Гелиос АРВ, 2002. — С. 378-385, 404-406. — 480 с. — ISBN 5-85438-025-0
Ссылки
- UT Austin CS course material on BAN logic (PDF)
- Логика аутентификации (зеркало), первоисточник Burrows, Abadi, and Needham.
- Источник: The Burrows-Abadi-Needham logic
- BAN logic in context, from UT Austin CS (PDF)
Категория:- Криптография
Wikimedia Foundation. 2010.