Формальный анализ криптографических протоколов
Криптографические протоколы, предназначенные для аутентификации и обмена ключами, играют очень важную роль в обеспечении надежного функционирования современных компьютерных систем. Усилиями криптологов было создано много таких протоколов, однако по прошествии времени выяснилось, что не все из них позволяют должным образом защитить компьютерную систему от несанкционированного доступа и предотвратить компрометацию ключей. Причем для некоторых протоколов этот временной промежуток оказался довольно значительным и растянулся на несколько лет. Как следствие, возникла настоятельная потребность в разработке формальных методов, которые позволили бы находить изъяны в криптографических протоколах в более короткие сроки. И хотя большинство из этих методов являются универсальными и могут быть использованы для анализа произвольных криптографических протоколов, особое внимание изначально стало уделяться именно протоколам, позволяющим производить аутентификацию пользователей и обмен ключами.
К настоящему времени имеется 4 основных подхода к анализу криптографических протоколов. Первый из них применяет верификационные методы, которые не были специально разработаны для анализа криптографических протоколов. Некоторые из этих методов представляют протоколы в виде конечных автоматов, другие распространяют на них теорию исчисления предикатов первого порядка.
Второй подход заключается в использовании экспертных систем, позволяющих определить, возникают ли в ходе выполнения шагов протокола такие нежелательные события, как компрометация ключа или разглашение пароля. Этот подход дает возможность эффективнее находить в криптографических протоколах конкретные изъяны, однако никоим образом не гарантирует полного отсутствия таковых.
Авторами третьего подхода являются американские криптологи М. Бэрроуз, М. Абади, Р. Нидхэм (М. Burrows, M. Abadi, R. Needham). Они разработали формальную логическую модель, названную по первым буквам их фамилий БАН-логикой (BAN-logic). Составить с ее помощью общее представление о надежности криптографического протокола нельзя. Однако основное преимущество БАН-логики перед другими подходами заключается в том, что она состоит из набора простых логических правил, которые легко применяются на практике и весьма полезны при обнаружении отдельных изъянов в анализируемых протоколах.
При четвертом подходе выполнение шагов протокола моделируется с помощью алгебраической системы, которая строится исходя из знаний, имеющихся у участников протокола относительно этого протокола. Затем построенная алгебраическая модель подвергается формальному анализу на предмет достижимости некоторых из ее состояний.
В целом формальный анализ криптографических протоколов пока является довольно новой и до конца не сформировавшейся областью криптологии, и поэтому делать далеко идущие выводы о превосходстве какого-то одного из перечисленных четырех подходов еще рановато. Поживем — увидим.
- Группа подготовки издания:
- 199034, Санкт-Петербург, 9-я линия, 12. Предисловие
- Компьютерная безопасность Глава 1
- Угрозы компьютерной безопасности Компьютерная преступность в России
- Тенденции
- Internetкак среда и как орудие совершения компьютерных преступлений
- Синдром Робина Гуда
- История одного компьютерного взлома
- Компьютер глазами хакера
- Кто такие хакеры
- Методы взлома компьютерных систем
- Атаки на уровне систем управления базами данных
- Атаки на уровне операционной системы
- Атаки на уровне сетевого программного обеспечения
- Защита системы от взлома
- Глава 2
- Программы-шпионы Программные закладки
- Модели воздействия программных закладок на компьютеры Перехват
- Искажение
- Уборка мусора
- Наблюдение и компрометация
- Защита от программных закладок
- Защита от внедрения программных закладок
- Выявление внедренной программной закладки
- Удаление внедренной программной закладки
- Троянские программы
- Откуда берутся троянские программы
- Где обитают и как часто встречаются троянские программы
- Как распознать троянскую программу
- Клавиатурные шпионы
- Имитаторы
- Фильтры
- Заместители
- Как защитить систему от клавиатурных шпионов
- Глава 3
- Парольная защита операционных систем Парольные взломщики
- Что такое парольный взломщик
- Как работает парольный взломщик
- Взлом парольной защиты операционной системыUnix
- Взлом парольной защиты операционной системыWindows nt База данных учетных записей пользователей
- Хранение паролей пользователей
- Использование пароля
- Возможные атаки на базу данныхSam
- Защита системы от парольных взломщиков
- Как сделать парольную защитуWindows 95/98 более надежной
- Как установить парольную защитуWindows 95/98
- Почему парольная защита Windows 95/98 ненадежна
- Как предотвратить несанкционированную загрузку системы
- Как запретить кэширование паролей вWindows 95/98
- Соблюдайте осторожность: парольная защита ненадежна
- Глава 4
- Безопасность компьютерной сети Сканеры
- Сканер в вопросах и ответах Что такое сканер?
- Каковы системные требования для работы со сканерами?
- Трудно ли создать сканер?
- Что не по силам даже самому совершенному сканеру?
- Насколько легальны сканеры?
- В чем различие между сканерами и сетевыми утилитами?
- Сканер в действии
- Satan, Jackal и другие сканеры
- Анализаторы протоколов
- Локальное широковещание
- Анализатор протоколов как он есть
- Защита от анализаторов протоколов
- Криптографические методы защиты информации Глава 5
- Основы криптографии Зачем нужна криптография
- Терминология Шифрование и расшифрование
- Аутентификация, целостность и неоспоримость
- Шифры и ключи
- Симметричные алгоритмы шифрования
- Алгоритмы шифрования с открытым ключом
- Криптоаналитические атаки
- Надежность алгоритма шифрования
- Сложность криптоаналитической атаки
- Шифры замены и перестановки
- Шифры замены
- Шифры перестановки
- Роторные машины
- Операция сложения по модулю 2
- Одноразовые блокноты
- Компьютерные алгоритмы шифрования
- Глава 6
- Криптографические ключи Длина секретного ключа
- Сложность и стоимость атаки методом тотального перебора
- Программная атака
- "Китайская лотерея"
- Биотехнология
- Термодинамические ограничения
- Однонаправленные функции
- Длина открытого ключа
- Какой длины должен быть ключ
- Работа с ключами
- Генерация случайных и псевдослучайных последовательностей
- Псевдослучайные последовательности
- Криптографически надежные псевдослучайные последовательности
- Генерация ключей
- Сокращенные ключевые пространства
- Плохие ключи
- Случайные ключи
- СтандартAnsi x9.17
- Нелинейные ключевые пространства
- Передача ключей
- Проверка подлинности ключей
- Контроль за использованием ключей
- Обновление ключей
- Хранение ключей
- Запасные ключи
- Скомпрометированные ключи
- Продолжительность использования ключа
- Уничтожение ключей
- Глава 7
- Криптографические протоколы Что такое криптографический протокол
- Зачем нужны криптографические протоколы
- Распределение ролей
- Протокол с арбитражем
- Протокол с судейством
- Самоутверждающийся протокол
- Протокол обмена сообщениями с использованием симметричного шифрования
- Протокол обмена сообщениями с использованием шифрования с открытым ключом
- Гибридные криптосистемы
- "Шарады" Меркля
- Цифровая подпись
- Подписание документов при помощи симметричных криптосистем и арбитра
- Подписание документов при помощи криптосистем с открытым ключом
- Отметка о времени подписания документа
- Использование однонаправленных хэш-функций для подписания документов
- Дополнительная терминология
- Несколько подписей под одним документом
- Неоспоримость
- Цифровая подпись и шифрование
- Основные криптографические протоколы Обмен ключами
- Обмен ключами для симметричных криптосистем
- Обмен ключами для криптосистем с открытым ключом
- Атака методом сведения к середине
- Блокировочный протокол
- Протокол обмена ключами с цифровой подписью
- Одновременная передача ключа и сообщения
- Множественная рассылка ключей и сообщений
- Аутентификация
- Аутентификация при помощи однонаправленных функций
- Отражение словарной атаки при помощи "изюминок"
- Периодическая сменяемость паролей
- Аутентификация при помощи криптосистем с открытым ключом
- Формальный анализ криптографических протоколов
- Многоключевая криптография с открытым ключом
- Множественная рассылка шифрованных сообщений
- Распределение ответственности
- Распределение ответственности и мошенничество
- Вспомогательные криптографические протоколы Отметка о времени создания файла
- Отметка о времени создания файла и арбитраж
- Связующий протокол
- Распределенный протокол
- Подсознательный канал
- Практическое применение подсознательного канала
- Неоспоримая цифровая подпись
- Цифровая подпись с назначенным конфирмантом
- Цифровая подпись по доверенности
- Групповые подписи
- Цифровая подпись с дополнительной защитой
- Предсказание бита
- Предсказание бита с помощью симметричной криптосистемы
- Предсказание бита с помощью однонаправленной функции
- Предсказание с помощью генератора псевдослучайных битовых последовательностей
- Бросание монеты
- Бросание монеты с помощью предсказания бита
- Бросание монеты с помощью однонаправленной функции
- Бросание монеты с помощью криптосистемы с открытым ключом
- Игра в покер
- Специальные криптографические протоколы Доказательство с нулевым разглашением конфиденциальной информации
- Протокол доказательства с нулевым разглашением конфиденциальной информации
- Параллельные доказательства с нулевым разглашением конфиденциальной информации
- Неинтерактивные протоколы доказательства с нулевым разглашением конфиденциальной информации
- Удостоверение личности с нулевым разглашением конфиденциальной информации
- Неосознанная передача информации
- Анонимные совместные вычисления
- Вычисление средней зарплаты
- Как найти себе подобного
- Депонирование ключей
- Депонирование ключей и политика
- Глава 8
- Надежность криптосистем
- Как выбрать хороший криптографический алгоритм
- Криптографические алгоритмы, предназначенные для экспорта из сша
- Симметричный или асимметричный криптографический алгоритм?
- Шифрование в каналах связи компьютерной сети
- Канальное шифрование
- Сквозное шифрование
- Комбинированное шифрование
- Шифрование файлов
- Аппаратное и программное шифрование Аппаратное шифрование
- Программное шифрование
- Сжатие и шифрование
- Как спрятать один шифртекст в другом
- Почему криптосистемы ненадежны
- Реализация
- Учет реальных потребностей пользователей
- Законодательные ограничения
- Слишком малая длина ключа
- Потайные ходы
- Шифрование вокруг нас
- Приложение Англо-русский криптологический словарь с толкованиями
- Лексикографические источники
- Сокращения Английские
- Русские
- Условные обозначения
- Криптологический словарь
- Глава 1 6
- Глава 2 24
- Глава 3 52
- Глава 4 75
- Глава 5 92
- Глава 6 110
- Глава 7 138
- Глава 8 204