Click here to load reader
Upload
positive-hack-days
View
270
Download
0
Embed Size (px)
Citation preview
Лаборатория безопасности Информационных систем ВМК МГУ имени М. В. Ломоносова
Обеспечение криптографически защищенных групповых коммуникаций
с функцией отказуемости, или «Попробуй докажи!»
Мария Коростелева, Денис Гамаюнов
2014
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Как защищаться?
2
Шифрование потока
ЭЦП MAC/HMAC Аутентификация/идентификация
PGP + + + +
SSL/TLS + – + +
Проприетарные решения (напр. Skype)
+ ? ? +
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Чего не хватает?
• Абсолютная секретность передачи
– Сохранение конфиденциальности информации даже при компрометации долговременных ключей
• Отказуемость
– Невозможность документально подтвердить ни участие конкретного лица в разговоре, ни предположений о содержании разговора
3
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Какие есть решения?
• Torchat – Анонимный чат с шифрованием – Особенных функций поверх возможностей Tor не добавляет
• mpCat by CryptoCat – Деталей пока неизвестно
• SILC – 2014г.: заявлена поддержка отказуемости и абсолютной секретности передачи
– Предыдущая версия этих свойств не поддерживала
• OTR – CryptoCat, TextSecure – Поддержка абсолютной секретности передачи и отказуемости
4
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Схема протокола OTR
5
Чего не хватает?
Alice Bob Diffie-Hellman
Auth
Auth
Encrypted
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Multy-party Off-The-Record
• То же самое, но в группе!
• Ключевые свойства:
– Абсолютная секретность передачи
– Отказуемость
– Синхронизация потока сообщений
• То, чем мы занимаемся
6
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Multy-party Off-The-Record
• Что было: – «идейная» статья Яна Голдберга и соавторов 2009 года
– обсуждения в тематических списках рассылки
– варианты алгоритмов
• Что мы сделали: – Предложили вариант протокола и отправили в otr-dev на рецензирование
– Разработали идеи решения вопросов, которые до этого практически не затрагивались
– Начали разработку модельной реализации
7
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
mpOTR: фаза установки канала
8
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
mpOTR: фаза аутентификации и обмена ключами
9
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
mpOTR: фаза коммуникации
10
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
mpOTR: фаза завершения
11
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Программная реализация
• Надстройка над клиентом Pidgin
• Идет реализация фазы аутентификации и обмена ключами
• Установка канала осуществляется средствами Pidgin
12
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Что дальше?
• Модельная реализация всех фаз
• Доработка протокола до практически применимого состояния
• Реализация, которой можно пользоваться
• Формальная верификация протокола
• И другие интересные идеи
13
__________________________________________________________________ / \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \ / ------------------------------------------------------------------
\ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
14
Спасибо за внимание!