Рейтинг:2

Усложняет ли общая случайность между двумя криптографическими примитивами гибридный аргумент в пользу вычислительной неразличимости?

флаг in

Позволять $(Enc, Dec)$ быть безопасной схемой шифрования IND-CPA, где $Enc: \mathcal{K} \times \mathcal{M}_1 \rightarrow \mathcal{C}_1$, и $F: \mathcal{K} \times \mathcal{M}_2 \rightarrow \mathcal{C}_2$ быть псевдослучайной функцией.

Рассмотрим простой пример, в котором мы можем захотеть доказать распределение $(Enc_k(m_1), F_k(m_2))$ (чья случайность исходит из Общий ключ $k \leftarrow \mathcal{K}$) вычислительно неотличим от равномерного распределения на $\mathcal{C}_1 \times \mathcal{C}_2$. Очевидно, мы можем показать, что распределение $Enc_k(m_1)$ вычислительно неотличима от равномерного распределения на $\mathcal{C}_1$ за счет снижения безопасности IND-CPA. Заменив $Enc_k(m_1)$ со случайным элементом $r_1 \leftarrow \mathcal{C}_1$, можно получить промежуточный гибрид $(r_1, F_k(m_2))$. Мой вопрос в том, что:

Можем ли мы тогда применить псевдослучайность $F$ заменить $F_k(m_2)$ с другим случайным элементом $r_2 \leftarrow \mathcal{C}_2$, чтобы доказать вышеупомянутую вычислительную неразличимость?

С моей точки зрения, две случайные величины $Enc_k(m_1)$ и $F_k(m_2)$ находятся нет независимы, так как они имеют одинаковую случайность $к$. Это напоминает причину, по которой мы должны рассматривать совместное распределение чьего-то кортежа представления-вывода, а не его представление в безопасных вычислениях. Итак, я полагаю, что общая случайность здесь не позволяет пройти простому гибридному аргументу. Верен ли этот вывод? Большое спасибо.

Marc Ilunga avatar
флаг tr
Всегда ли можно гарантировать, что $\mathcal C_1 \times \mathcal C_2$ неотличимо от случайного? Не будет ли злоумышленнику легко отличить $\mathcal C_1$, если шифрование является режимом, основанным на счетчике?
X. G. avatar
флаг in
@MarcIlunga, я думаю, что безопасность IND-CPA гарантирует, что вывод $Enc$ должен быть псевдослучайным, если в ключевом пространстве $\mathcal{K}$ достаточно энтропии, скажем, битов $\kappa$.
Marc Ilunga avatar
флаг tr
à не уверен, что CPA может *всегда* дать такую ​​гарантию. Патологический пример: измените схему CPA, чтобы добавить $0$. то есть $ctxt = c|0$ . Это остается безопасным CPA, но его можно отличить от случайного. Лучшим примером может служить режим работы CTR с одноразовыми номерами. поэтому $ctxt = n | с$. Я думаю, что также отличим от случайного, если $n$ является счетчиком, а не рандомизированным.
Marc Ilunga avatar
флаг tr
Оригинальный вопрос об общей случайности все еще интересен :)
X. G. avatar
флаг in
@MarcIlunga, спасибо за ваш комментарий. В моем вопросе действительно отсутствует формальное определение IND-CPA. Здесь я неофициально использую термин "IND-CPA" для обозначения того свойства, что схема шифрования может привести к псевдослучайным зашифрованным текстам в $\mathcal{C}_1$.
Marc Ilunga avatar
флаг tr
Я бы предложил явно добавить эту версию CPA в вопрос. Стоит отметить, что это не стандартное понятие цены за конверсию и кажется слишком строгим требованием.В примере CTR есть подтверждение стандартной цены за конверсию, но он не удовлетворяет этому нестандартному понятию цены за конверсию.
Рейтинг:1
флаг ng

Да, ты прав.

В моем вопросе действительно отсутствует формальное определение IND-CPA. Здесь я неофициально использую термин «IND-CPA» для обозначения того свойства, что схема шифрования может привести к псевдослучайным шифротекстам в $\mathcal{C}_1$

Это, конечно, более сильное предположение, чем IND-CPA, но указывать на это скучно. Действительно, это предположение можно записать как

$\mathsf{Enc}_k$ является семейством PRF.

Возможно, более просто думать об этом с точки зрения PRF, поэтому я быстро покажу, что если $F_k, G_k$ являются (отдельно) PRF, тогда $(F_k, G_k)$ не обязательно, напр. совместное использование ключей PRF может нарушить безопасность. Это из-за зависимости между левой и правой компонентами, как вы уже догадались.

Позволять $F_k$ быть PRF, и пусть $G_k = F_k^{\circ 2}$, т.е. $G_k(x) = F_k(F_k(x))$. Это просто увидеть $G_k$ является (отдельно) PRF --- любой различитель для него подразумевает различитель для $F_k$, так как вы можете эффективно эмулировать доступ к запросам $G_k$ предоставлен запрос на доступ к $F_k$.

В настоящее время, $(F_k, F_k^{\circ 2})$ не является ПРФ. Это потому, что, учитывая оракул $\mathcal{O}(\cdot)$ это либо реальное, либо случайное, вы можете.

  1. $(y_1, y_2)\gets\mathcal{O}(x)$,
  2. $(z_1, z_2) \получает\mathcal{O}(y_1)$,
  3. угадай РЕАЛЬНО, если $y_2 = z_1$, и RANDOM в противном случае.

ЕСЛИ $\mathcal{O}(x) = (F_k(x), F_k^{\circ 2}(x))$ это ваш PRF, тогда $y_2 = F_k^{\circ 2}(x)$, и $z_1 = F_k(y_1)= F_k(F_k(x)) = F_k^{\circ 2}(x)$ столкнуться. В случайной игре вероятность столкновения любых двух значений довольно мала, так что это сразу подразумевает довольно хороший различитель.

Однако есть более насущные проблемы. Один из способов построить $\mathsf{Enc}_k(m)$ XORing $м$ с ПРФ, например $\mathsf{Enc}_k(m) = (r, F_k(r)\oplus m)$. Это просто рандомизированный режим счетчика (где сообщения представляют собой единый блок). В этом случае совместная конструкция $(m_1,m_2)\mapsto (r, F_k(r)\oplus m_1, F_k(m_2))$. Опять же, запросив $(м_1, м_2)$, а затем запрос $(м_3, г)$, можно получить эффективный различитель. Это, так сказать, естественная конструкция (где $\mathsf{Enc}$ режим случайного счетчика) также небезопасен в ваших настройках.

X. G. avatar
флаг in
Большое спасибо за подробный пример!
флаг us
или просто $F=G$
Mark avatar
флаг ng
@Mikero, это на самом деле гораздо более интересный пример, поскольку он показывает, что $F, G$, являющиеся PRF по отдельности, недостаточно, чтобы показать, что $(F, G)$ является даже «слабым PRF», что означает, что противник может различить $ (F_k(x), G_k(x))$ из случайного, даже если $x$ выбирается случайно, а не враждебно. Я не смог показать это, используя мои примеры в моем ответе.

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

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