Рейтинг:3

Распознать, возводятся ли два случайных значения в одинаковую степень

флаг de

Алиса выбирает два случайных числа из конечного поля $Z_p$ : $а$ и $b$.

Боб случайным образом выполняет один из двух следующих шагов (иногда он делает шаг 1, иногда шаг 2):

  1. Он выбирает случайное число $г$ от $Z_p$ и вычисляет $a^r\;mod\;p$ и $b^r\;mod\;p$ и передает эти два значения Алисе
  2. Он выбирает два разных случайных числа $г$ и $г'$ от $Z_p$ и вычисляет $a^r\;mod\;p$ и $b^{r'}\;mod\;p$ и передает эти два значения Алисе

Существует ли какой-нибудь эффективный алгоритм, который Алиса может использовать, чтобы распознать, какой шаг сделал Боб?

poncho avatar
флаг my
Как указал Маниш, это кажется сложной проблемой (по крайней мере, для групп криптографического размера). Если вы хотите, чтобы это была простая задача, вы можете выполнить ту же операцию на удобной для сопряжения кривой; в этом случае $r = r'$ можно проверить, сравнив $e([r]a, b)$ и $e(a, [r']b)$
Рейтинг:3
флаг us

Немного здесь $а$ и $b$ следует выбирать из $\mathbb{Z}^*_p$ и $г$ между $1$ и $p-1$ эксклюзивный

Выглядит так, что кажется, что это имеет непосредственное отношение к проблеме DDH, по крайней мере, если существует некоторая $w$ такой, что либо $ а = б ^ ш $ или же $б = а^в$. Это если хотя бы один из $а$ или же $b$ генерирует подгруппу, содержащую другую, которая является заданной, если $р$ является безопасным простым числом [если оба являются квадратичными остатками / невычетами либо существуют, в противном случае, в зависимости от того, что является невычетом, является генератором], не уверен в других случаях. В таком случае $а, б^{г'}, а^{г}$ сделать триплет DDH, сгенерированный из $b$ или же $ б, а ^ г, б ^ {г'} $ сделать тройку DDH из $а$. В вашем случае сложность проблемы DDH не зависит от выбора $а$ и $b$. Если оба $а$ и $b$ создать ту же подгруппу с большим простым порядком, то считается, что задача DDH сложна для классического компьютера. Таким образом, в этом случае не существует известного эффективного классического алгоритма. Задача DDH может быть решена со значительно большей вероятностью, чем случайное предположение во многих других случаях. Например, если оба $а$, $b$ являются невычетами по модулю $р$ и среди $а^г, б^{г'}$ один является квадратичным вычетом, а другой не является вычетом, вы можете сказать, что один из $ г, г $ нечетно, а другое четно и, следовательно, $ г \neq г'$.

В вашем вопросе $а$ и $b$ генерируются случайным образом, поэтому я бы сказал, что они различимы. Не во всех случаях, но в случаях, о которых я упоминал ранее, есть преимущество, которое в информатике считается важным, чтобы считаться не неразличимым.

Я не уверен в случае, когда ни $а$ ни $b$ генерирует подгруппу, содержащую другую, потому что я не могу придумать, как связать ее с DDH, по крайней мере, не придумаю. В этом состоянии могут быть некоторые дополнительные случаи с преимуществом.

ОБНОВЛЕНИЯ: Вы заявили, что пытаетесь разработать протокол. Во-первых, неразумно пытаться это сделать без глубокого понимания криптографии. Предполагая, что вся безопасность системы зависит от этого, вы должны использовать $г$ который используется для создания $а$ и $b$ быть некоторым генератором большой подгруппы простого порядка $q$ и выбрать $ г, г $ между $1$ и $q$ чтобы убедиться, что проблема DDH считается сложной в классических компьютерах. Или используйте известные непарные дружественные группы EC, где предполагается, что проблема DDH является классически сложной. Но до сих пор я не знаю подробностей протокола. И его реализация по-прежнему имеет проблемы, такие как атаки по сторонним каналам и т. д.

Mahsa Bastankhah avatar
флаг de
вы указали на хороший момент. $a$ и $b$ не являются полностью случайными и генерируются следующим образом: $a = g^{xk}\;mod\;p$ и $b=g^k\;mod\;p$. $k$ и $x$ выбираются случайным образом. Я не упомянул об этом, чтобы сделать вопрос короче. Я понятия не имел, что это важно.
Manish Adhikari avatar
флаг us
В этом случае мы можем видеть $b$ как генератор группы и $a,b^{r'},a^r$, составляющие тройку DDH. Насколько мне известно, для классических компьютеров задача считается сложной, если $b$ порождает большую подгруппу простого порядка. В противном случае есть несколько отличительных случаев, один из которых: если $b$ является квадратичным невычетом по модулю $p$, а $x$ нечетно и только одно из $r,r'$ четно, мы знаем, что они не равны, как в ответе выше
Manish Adhikari avatar
флаг us
Не подскажете, где вы взяли вопрос? Потому что это противоречит политике сообщества отвечать на домашние вопросы больше, чем на подсказки и руководства, поэтому мне, возможно, придется удалить свой ответ. Вроде не так выразился...
Mahsa Bastankhah avatar
флаг de
Это не моя домашняя работа. Это просто вопрос, с которым я столкнулся, когда пытался разработать протокол. Я хочу посмотреть, просочилась ли какая-либо информация в мой протокол или нет
Manish Adhikari avatar
флаг us
Если да, прочитайте мои правки выше
Рейтинг:0
флаг in

Если Боб хочет помочь Алисе распознать случай 1, он может запустить протокол, подобный Шнорру, в качестве доказывающего. Он произведет ответ, рассматривающий $г$ в качестве закрытого ключа точно так, как указано в протоколе. Алиса проверит, соответствует ли этот ответ обоим случайным числам, рассматриваемым как два открытых ключа.

Mahsa Bastankhah avatar
флаг de
Нет, это не так. на самом деле Боб предпочитает, чтобы Алиса не могла его распознать. но Алисе любопытно
Manish Adhikari avatar
флаг us
Это был не вопрос ОП, но я только что заметил, что достаточно, чтобы доказывающая сторона использовала протокол Шнорра, чтобы доказать, что она знает DL $a^rb^{r'}$ над $ab$, если проверяющая может гарантировать, что доказывающая не знает DL $a$ над $b$ или наоборот. В качестве доказательства $a = b^x$ (согласно комментарию ОП выше). Тогда, если доказывающий знает $c$ s.t. $(ab)^c = a^rb^{r'}$, т. е. $c+cx \equiv xr + r' \pmod q $. Если $r \not\equiv r' \pmod q$, то $c \not\equiv r \not\equiv r' \pmod q$ и доказывающий может вычислить $x$.
Manish Adhikari avatar
флаг us
Но это должно быть сделано над одной подгруппой простого порядка порядка $q$, иначе доказывающий может обмануть, используя $r' = r+q$ или что-то в этом роде, если $a$ и $b$ образуют подгруппы малого порядка.
Manish Adhikari avatar
флаг us
*поправка на комментарий выше$(ab)^c \equiv a^rb^{r'} \pmod p$, вместо этого я написал $=$

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

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