- Логика Бэрроуза
-
Логика Бэрроуза — Абади — Нидхэма (англ. 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.