Проблема социалистического миллионера
В криптографии миллионера проблема социалистического [ 1 ] это тот, в котором два миллионера хотят определить, равно ли их богатство, не раскрывая друг другу никакой информации о своем богатстве. Это вариант проблемы миллионера. [ 2 ] [ 3 ] при этом два миллионера желают сравнить свое богатство, чтобы определить, у кого больше богатства, не раскрывая друг другу никакой информации о своем богатстве.
Он часто используется в качестве криптографического протокола , который позволяет двум сторонам проверять личность удаленной стороны посредством использования общего секрета, избегая атаки «человек посередине» без неудобств ручного сравнения отпечатков открытого ключа через внешний канал. По сути, можно использовать относительно слабый пароль/парольную фразу на естественном языке.
Мотивация
[ редактировать ]У Алисы и Боба есть тайные ценности и , соответственно. Алиса и Боб хотят узнать, не позволяя ни одной из сторон узнать что-либо еще о тайной ценности другой стороны.
Пассивный злоумышленник, просто шпионящий за сообщениями, которыми обмениваются Алиса и Боб, ничего о них не узнает. и даже если .
Даже если одна из сторон нечестна и отклоняется от протокола, этот человек не сможет узнать ничего большего, чем если бы .
Активный злоумышленник, способный произвольно вмешиваться в общение Алисы и Боба ( атака «человек посередине» ), не может узнать больше, чем пассивный злоумышленник, и не может повлиять на результат работы протокола, кроме как вызвать его сбой.
Таким образом, протокол можно использовать для проверки подлинности двух сторон, имеющих одинаковую секретную информацию. Популярный пакет шифрования мгновенных сообщений Off-the-Record Messaging использует для аутентификации протокол Socialist Millionaire, в котором секреты и содержат информацию об открытых ключах долгосрочной аутентификации обеих сторон, а также информацию, введенную самими пользователями.
Протокол обмена сообщениями без записи
[ редактировать ]
Протокол основан на теории групп .
Группа простого порядка и генератор согласованы априори и на практике обычно фиксируются в данной реализации. Например, в протоколе обмена сообщениями без записи: представляет собой определенное фиксированное 1536-битное простое число. тогда является генератором подгруппы простого порядка группы , и все операции выполняются по модулю или, другими словами, в подгруппе мультипликативной группы , .
К , обозначают безопасное многостороннее вычисление , обмен ключами Диффи-Хеллмана-Меркла , который для целых чисел , , возвращает каждой стороне:
- Алиса вычисляет и отправляет его Бобу, который затем вычисляет .
- Боб вычисляет и отправляет его Алисе, которая затем вычисляет .
как умножение в является ассоциативным. Обратите внимание, что эта процедура небезопасна против атак «человек посередине» .
Протокол социалистического миллионера [ 4 ] имеет только несколько шагов, которые не являются частью описанной выше процедуры, и безопасность каждого из них зависит от сложности задачи дискретного логарифмирования , как и вышеописанное. Все отправленные значения также включают доказательства с нулевым разглашением того, что они были сгенерированы в соответствии с протоколом.
Часть безопасности также опирается на случайные секреты. Однако, как написано ниже, протокол уязвим для отравления, если Алиса или Боб выберут любой из , , , или быть нулем. Чтобы решить эту проблему, каждая сторона должна проверить во время обмена сообщениями Диффи-Хеллмана , что ни один из , , , или которое они получают, равно 1. Также необходимо проверить, что и .
Алиса | Многопартийность | Боб | |
---|---|---|---|
1 | Сообщение случайный |
Общественный | Сообщение случайный |
2 | Безопасный | ||
3 | Безопасный | ||
4 | Тест , | Тест , | |
5 | |||
6 | Небезопасный обмен | ||
7 | Безопасный | ||
8 | Тест , | Тест , | |
9 | Тест | Тест |
Обратите внимание, что:
и поэтому
- .
Поскольку случайные значения хранятся в секрете другой стороной, ни одна из сторон не может принудительно и быть равным, если только равно , в этом случае . Это доказывает правильность.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Эндрю Яо (1982). «Протоколы безопасной связи» (PDF) . Учеб. 23-й симпозиум IEEE по основам информатики (FOCS '82) . стр. 160–164. дои : 10.1109/SFCS.1982.88 .
- ^ Эндрю Яо (1986). «Как создавать секреты и обмениваться ими» (PDF) . Учеб. 27-й симпозиум IEEE по основам информатики (FOCS '86) . стр. 162–167. дои : 10.1109/SFCS.1986.25 .