Information-theoretic security for the masses

Jun 24, 2013 22:20

It has come to my mind that you can combine SMP (socialist millionaires protocol) and Kish-Sethuraman protocol to get a protocol which is both IT-secure and can be bootstrapped without all the key management burden ( Read more... )

crypto, я, внезапно, вопрос

Leave a comment

sassa_nf June 24 2013, 21:54:44 UTC
а infinite computation power распространяется на подбор значения X из значения H(X)?

Reply

wizzard0 June 24 2013, 23:14:54 UTC
А там негде подбирать, в SMP протоколе у тебя одна попытка.

Reply

sassa_nf June 25 2013, 07:12:28 UTC
почему одна?

получил H(X), отрубил соединение, подобрал X, теперь X не секрет. Это если считать, что у mallory бесконечная computing power.

Reply

wizzard0 June 25 2013, 07:24:00 UTC
в протоколе SMP по проводу не летает H(X) ;)

Reply

sassa_nf June 25 2013, 07:26:00 UTC
что-то должно летать, чтобы убедить в одинаковости X.

Reply

wizzard0 June 25 2013, 07:28:35 UTC
http://www.cypherpunks.ca/otr/Protocol-v3-4.0.0.html прокрутить вниз до собственно SMP

Reply

sassa_nf June 25 2013, 07:34:21 UTC
Ну это же то же самое, что и : http://en.wikipedia.org/wiki/Socialist_Millionaire_Problem так?

Этот протокол отсылает g...x и g...y. Это и есть хэширование. Ты расчитываешь на невозможность дискретного логарифмирования.

Reply

wizzard0 June 25 2013, 07:54:19 UTC
Поясняю.

Да, безопасность SMP протокола сводится к безопасности DH, которая сводится к сложности дискретного логарифмирования.

Но в данном случае, нам нужно чтобы эта проблема выдерживала не от сессии к сессии, а всего лишь пока не протаймаутится протокол.

EDIT: потому что мы выясняем одинаковость не X, а H(KA1_pub, KB1_pub, X)
EDIT2: ну кстати да, вот тут можно воткнуть какой-нибудь адский scrypt на много итераций, и применить whitening к X, спасибо за мысль

А на этапе, когда про Х только спросили, но еще не ответили, по сети пролетело только RND*X, где RND осталось у Алисы.

А если RND*X долетело до Боба, то Х мы потом может и сбрутфорсим... но аутентификация-то уже прошла, MITM устраивать поздно!

Поэтому гораздо проще сломать RSA ключи за время пока собирается энтропия для апгрейда до IT-secure (десятки минут), и расшифровать себе RS1 нежели сломать DH чтобы вычислить X за таймаут SMP (порядка минуты)

Reply

sassa_nf June 25 2013, 08:23:23 UTC
Эти рассуждения понятны. Но я к тому, что нужно провести параллели между этими рассуждениями и claim, что безопасность получается information-theoretic

"но аутентификация-то уже прошла, MITM устраивать поздно!"

не поздно, если X будет использоваться снова.

"Да, безопасность SMP протокола сводится к безопасности DH, которая сводится к сложности дискретного логарифмирования."

а на DH можно и гораздо более простую схему построить вообще без отправки X. Взлом протокола будет равен взлому DH и brute force X. Что тоже не является information-theoretic, но приседаний меньше.

Reply

wizzard0 June 25 2013, 08:53:42 UTC
> не поздно, если X будет использоваться снова.
грубо говоря, Х нужно менять за время, за которое мы предполагаем что люди могут сбрутить RSA и устроить MITM.

> claim, что безопасность получается information-theoretic
Даже если Мэллори всё расшифрует пост-фактум - то канал останется information-theoretic, если Мэллори провтыкала записать таймстампы пакетов.

А вот последующий сетап может и не быть, если Х останется тем же, в этом ты прав. Или если Мэллори успевает расшифровать всё, пока энтропия собирается. Я дописал это в статью.

> на DH можно и гораздо более простую схему построить вообще без отправки X

Получится канал, ведущий в никуда через непонятно где (в смысле, не аутентифицированный). Полезность такого канала сомнительна.

Поэтому вначале мы аутентифицируем канал (убеждаемся в отсутствии Мэллори), а потом уже собираем энтропию. И если энтропия собрана на аутентифицированном канале, и за это время RSA не сломали - то ура, у нас таки получилось достичь information-theoretic уровня.

Reply

sassa_nf June 25 2013, 09:29:16 UTC
не, не, не.

Что делает SMP? Производит не только сравнение x=y, но и оставляет сертификат. Тебе нужен сертификат? Не очевидно, зачем. Тебе нужно только подтверждение знания shared X обеими сторонами. Не бог весть какая сложная задача.

Alice не должна пользоваться временным ключом, предоставленным Bob, для отправки RA1.

Как вообще ты предлагаешь соединить аутентификацию в SMP с парой временных ключей?

Reply

wizzard0 June 25 2013, 09:49:01 UTC
При чем тут сертификат?

> Не бог весть какая сложная задача.
Мне нужно ZK-подтверждение знания shared X обеими сторонами, при этом простейший способ это сделать - это таки SMP. Или попрошу потыкать меня палочкой в такой способ.

> Alice не должна пользоваться временным ключом, предоставленным Bob, для отправки RA1.
Почему? Мы ведь его только что аутентифицировали при помощи SMP.

> Как вообще ты предлагаешь соединить аутентификацию в SMP с парой временных ключей?
Какое отношение ключи имеют к SMP?

Reply

sassa_nf June 25 2013, 10:02:28 UTC
ну на пальцах так:

1. используем X для генерации симметричного ключа
2. шифруем случайный challenge (C)
3. расшифровываем случайный response на challenge (R,C) - мы знаем, что B знает X; иначе не получилось бы сгенерировать response
4. подтверждаем случайный response (C,R) - теперь B тоже знает, что мы знаем X.

Если используем (DH, X) как key material == одноразовый симметричный ключ, доказывающий знание X обоими сторонами. X ни в какой форме не отсылается.

Сертификат = токен-доказательство. g^x - сертификат.

Reply

wizzard0 June 25 2013, 11:29:14 UTC
Хм. Но это вроде односторонняя авторизация получается?

Reply

sassa_nf June 25 2013, 15:08:51 UTC
почему односторонняя?

B отправил (R,C) - значит, смог расшифровать (C).
A отправил (C,R) - значит, смог расшифровать (R,C).

https://en.wikipedia.org/wiki/Hash-based_message_authentication_code - давно известное дело. Протокол, предложенный выше, ничем не отличается по смыслу. Разница в том, что доказываем владение X один раз, а не для каждого сообщения, и что можем шифровать коммуникацию доказанным ключом.

Более того, неумение расшифровать does not compromise anything - а демонстрация умения расшифровать лишь демонстрирует осмысленность общения.

Reply

sassa_nf June 25 2013, 10:06:01 UTC
"Какое отношение ключи имеют к SMP?"

вот именно.

Ну, ладно, там ты в SMP фигупринты паблик ключей договариваешь, так и быть, зачтём.

"Почему? Мы ведь его только что аутентифицировали при помощи SMP."

сила ключа B не доказана. (В отличие от DH, где сила части, генерируемой B, гарантирована выбором g и p)

Reply


Leave a comment

Up