Рейтинг:2

Ярлык для разработки обмена ключами Диффи-Хеллмана

флаг cn

Я пытаюсь рассчитать общий ключ Алисы и Боба вручную без использования калькулятора, так как считаю, что это важная черта при переходе к криптографии.

Я понимаю, что вы можете использовать метод квадрата и умножения, однако нас учат сокращенному методу, который я не совсем понимаю.

Пример вопроса:

Алиса и Боб используют протокол DH с p = 19,g = 2 и секретами a = 6 и b = 8. О каком ключе они договорились?

Они дали нам этот процесс без особых объяснений: $$ K = 2^{6Ã8} â¡8^{2Ã8} â¡7^8 â¡11^4 â¡7^2 â¡11 \pmod{19} $$

$2^{6Ã8}$, не уверен, как поставить умножение как степень для вышеуказанной проблемы.

Если бы кто-то мог подробно объяснить процесс быстрого доступа, выполненный выше, шаг за шагом. Я был бы очень признателен

Я понимаю некоторые части, например $g^a*b \pmod{19} = 6 = 2^3 = 8$, однако я немного запутался оттуда.

fgrieu avatar
флаг ng
Я отшлифовал часть вопроса, но оставил последний абзац как есть.
флаг cn
Большое спасибо. Что касается ваших ручных вычислений, мне было интересно, где вы сделали 2 ^ 48-18 * 2 - Почему вы умножили это на 2 в конце, и это 2 Генератор? Так это g^48 mod(19-1)*g И еще, как вы узнали, что нужно использовать 19 и 215. Это то, с чем я больше всего борюсь.
fgrieu avatar
флаг ng
В моих $48-18\times2=12$ $2$ — это $\lfloor48/18\rfloor$, не связанный с $g$. Это нужно для вычисления $48\bmod18$, и этот модуль равен $p-1$. В моем $4096-19\times215=11$ я использую $19$, потому что это модуль $p$. Мои 215$ были получены (цифра за цифрой) как $\lfloor4096/19\rfloor$. Это нужно для вычисления $4096\bmod19$. Я добавил кое-что из этого в [мой ответ] (https://crypto.stackexchange.com/a/96047/555).
kelalaka avatar
флаг in
@fgrieu, к сожалению, это вопрос, отправленный с [математикой] (https://math.stackexchange.com/q/4301903/338051). anthonymicheals1, вам следует усвоить, что [это не является хорошей этикой] (https://meta.stackexchange.com/questions/64068/is-cross-posting-a-question-on-multiple-stack- сайты-биржи-разрешены-если-ку)
kelalaka avatar
флаг in
Если ответ хороший, вы можете проголосовать (требуется минимум 15 повторений, чтобы вы прошли), если ответ удовлетворяет, вы можете его принять. Это способ [так].
Рейтинг:2
флаг ng

Напомним, что для $\forall x\in\mathbb N$, $\forall m,u,v\in\mathbb N^*$, он держит ${(x^u\bmod m)}^n\equiv{(x^u)}^v\equiv x^{u\times v}\pmod m$, куда $у\экв х\пмод м$ средства $м$ делит $х-у$, и $х\bмод м$ однозначно определенное целое число $у$ такой, что $0\le y<m$ и $у\экв х\пмод м$.

Общий секрет $K=(g^a\bmod p)^b\bmod p=(g^b\bmod p)^a\bmod p$или эквивалентно $K=g^{a\times b}\bmod p$. Нам поручено оценить это для $а=6$, $б=8$, $г=2$, $р=19$.

Метод в вопросе идет: $$\начать{массив}{} K&={(2^6\bmod19)}^8\bmod19&&=2^{6\times8}\bmod19\ &=2^{(3\times2)\times8}\bmod19&={(2^3)}^{2\times8}\bmod19&=8^{2\times8}\bmod19\ &={(8^2)}^8\bmod19&=64^8\bmod19\ &&=(64-19\times3)^8\bmod19&=7^8\bmod19\ &={(7^2)}^4\bmod19&=49^4\bmod19\ &&=(49-19\times2)^4\bmod19&=11^4\bmod19\ &={(11^2)}^2\bmod19&=121^2\bmod19\ &&=(121-19\times6)^2\bmod19&=7^2\bmod19\ &=49\bmod19&=49-19\times2&=11\ \end{массив}$$ и это (сохраняя крайний правый столбец) можно сжать до: $$K\equiv2^{6\times8}\equiv8^{2\times8}\equiv7^8\equiv11^4\equiv7^2\equiv11\pmod{19}\ \text{ таким образом}\ K=11$$

Если бы мне нужно было вычислить это без калькулятора, я бы написал это как $K=2^{48}\bmod19$, затем используйте малую теорему Ферма. Там сказано, что когда $р$ является простым и $г$ не кратно $р$, если выполняется $g^{p-1}\bmod p=1$. Это позволяет уменьшить по модулю $(p-1)$ любой показатель $г$ при вычислении по модулю $р$. Полный расчет идет: $$\начать{массив}{} K&=2^{6\times8}\bmod19&&=2^{48}\bmod19\ &=2^{48\bmod(19-1)}\bmod19&=2^{48-18\times2}\bmod19&=2^{12}\bmod19\ &=4096\bmod19&=4096-19\times215&=11\конец{массив}$$

Примечание: в $48-18\times2=12$, $2$ получается как частное $\lэтаж48/18\rэтаж$, очень похоже на $4096-19\times215=11$ в $215$ является $\lfloor4096/19\rэтаж$.


В реальной криптографии используются целые числа, слишком большие для надежных вычислений человеком; например $р$ может быть 2048-битным, то есть 617 десятичных цифр.

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

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