Рейтинг:1

Безопасность обмена МакКаллум-Релиа

флаг in

Недавно я узнал об обмене McCallum-Relyea, который позволяет использовать метод условного депонирования ключей без фактической передачи ключа.

Он был разработан в RedHat и используется сильный запах и скоба утилиты (и далее описанные здесь), чтобы обеспечить автоматическую расшифровку, в частности, для зашифрованного корневого раздела для машин Linux. Таким образом, клиентская машина может загрузить и расшифровать свой диск только в том случае, если она находится в сети, где она может получить доступ к серверной машине.

Я не нашел никакого анализа этого протокола, поэтому мне было интересно, какой уровень безопасности он предлагает по сравнению с более традиционным методом, таким как сервер, хранящий ключ и передающий его по каналу TLS, а также есть ли какие-либо недостатки в биржа, которая может быть использована.


Биржа представляет собой модифицированную/расширенную версию ECDH, которая работает следующим образом:

На стороне сервера сначала создается долгоживущая пара ключей EC с закрытым ключом. $s$ и открытый ключ $S = [s]G$.

Клиент, желающий защитить сообщение $ млн $, генерирует закрытый ключ $с$ и открытый ключ $C = [c]G$. Затем клиент запрашивает ключ с сервера по каналу открытого текста. Сервер отвечает $S$ подписал с $s$. Пользователь на стороне клиента проверяет ключ сервера каким-то внеполосным методом и записывает хэш ключа сервера. Затем клиент выполняет половину обмена ECDH, чтобы получить $K = [c]S = [cs]G$. $К$ затем используется (прямо или косвенно) для шифрования $ млн $ через симметричный шифр, после чего клиент отбрасывает $К$ и $с$ и сохраняет только $С$. На данный момент клиент не может расшифровать $ млн $ без сервера.

Когда клиент хочет расшифровать $ млн $, он создает эфемерную пару ключей $е$ и $E = [e]G$, затем вычисляет $Х = С + Е$ и отправляет $Х$ на сервер. Затем сервер выполняет половину обмена ECDH с $Х$ и $s$ чтобы генерировать $Y = [s]X$ и передает $Y$ вернуться к клиенту, используя $S$ чтобы подписать сообщение.

Получив $Y$ с сервера и проверки подписи сервера, клиент затем выполняет другую половину ECDH с $S$ и $е$ вычислять $Z = [e]S$. Затем клиент рассчитывает:

Y - Z = sX - eS 
      = s(C + E) - eS 
      = sC + sE - es 
      = скГ + сЭГ - ЭсГ
      = scG
      = К

Чтобы восстановить $К$ и расшифровать $ млн $.

kelalaka avatar
флаг in
И вопрос в том, проанализировать обеспеченную безопасность? Тогда вопрос, кто противник и на что он способен? Это важно, поскольку для квантового противника нет безопасности.
флаг in
@kelalaka Отредактировано, чтобы добавить больше деталей: специально по сравнению с TLS или если в обмене есть какие-либо уязвимые места.
kelalaka avatar
флаг in
Странно то, что $C$ является общедоступным, тогда любой, у кого он есть, может запросить расшифровку любого шифрования, выполненного первоначальным владельцем открытого ключа $C$. Наверное, вы бы сказали, что защищены какими-то механизмами? Просто рассмотрите себя и отправьте $X = C + E$ на сервер с $E = [e]G$ для случайного $e$.
флаг in
@kelalaka $C$ требуется для получения $K$, и это общедоступная часть пары ключей, хотя она не является «общедоступной» в том смысле, что передается куда угодно. $C$ должен быть локальным для клиента и защищенным, как закрытый ключ. Я считаю, что цель состоит в том, чтобы позволить клиенту извлекать $K$ только в том случае, если сервер доступен. Таким образом, если клиентская машина была физически удалена и помещена в сеть, которая не могла получить доступ к серверу, клиент не мог расшифровать $M$.
kelalaka avatar
флаг in
Кроме того, клиент может отправить небольшую точку заказа $X$, чтобы получить некоторую информацию о секрете сервера $s$.
kelalaka avatar
флаг in
Тогда в чем вопрос, если сервер хранит шифрование файла с ключом из вывода эфемерного-эфемерного ECDH? Это было много лет назад, я установил Linux-систему с именем пользователя, а затем получил доступ к файлам пользователя в системе...
kelalaka avatar
флаг in
Если у сервера есть ключ, то конфиденциальности ваших файлов нет. Exchange безопасен, пока безопасен $C$.
kelalaka avatar
флаг in
Также идея ущербна в хранении, размер публичного ключа больше, чем приватного ключа, даже публичная точка сжата.
Рейтинг:2
флаг ru

Интересно, что конфиденциальность схемы так же сильна, как и конфиденциальность $С$ независимо от предположений о стойкости (помимо стойкости симметричного шифра и безопасного удаления $К$, $с$ и открытый текст). Напротив, модель хранения и передачи на стороне сервера по TLS зависит от сложности механизма установления ключа TLS и его аутентификации.

Если $е$ выбирается равномерно случайным образом, то $Х$ содержит нулевую информацию о $С$. Обратите внимание, что передача $Х$ является единственным взаимодействием клиента во всем протоколе и, таким образом, представляет единственную возможность для злоумышленника Долаева-Яо получить доступ к информации о конфиденциальных значениях клиента. Единообразие $Х$ также означает, что служба не может проверить, запрашивает ли клиент условное депонирование ключа, к которому он имеет законный доступ, и поэтому любой, кому удается получить информацию о $С$ можно использовать протокол для восстановления $К$.

Дешифрование без сотрудничества с депонирующим сервером предотвращается конфиденциальностью $s$ И надежность вычислительного протокола Диффи-Хеллмана для рассматриваемой эллиптической кривой (которая может быть скомпрометирована квантовым злоумышленником, плохой параметризацией или множеством других средств), А также надежность схемы аутентификации, используемой для проверки сообщений сервера. Это означает, что сбой любого из этих трех способов защиты разрешает расшифровку без сервера.

Механизм условного депонирования может быть запущен несколько раз без повторного шифрования как несколько $Х$ передачи по-прежнему не будут содержать никакой информации о $С$.

В системе нет отказа от авторства для легитимных пользователей. Если я сделаю запрос $Х$ а позже утверждают, что это связано с конкретным $С$ значение, это утверждение не может быть подтверждено. Даже если требуется раскрыть $е$, создать вторичный $С$ стоимость $C'=C+dG$, и в этом случае пара $(С,е)$ генерирует $Х$ который также может быть сгенерирован $(С',d+e)$.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.