Рейтинг:0

Какое отношение теорема Эйлера имеет к RSA?

флаг cn

В RSA мы вычисляем e (ключ шифрования) и d (ключ дешифрования). $\bмод фи(п)$ и нет $\bмод п$, так почему же, когда мы получаем ключи и шифруем и расшифровываем, мы используем $\bмод п$ нет $\bмод фи(п)$ используя следующие правила:

Шифрование: $C =(m^e) \bmod n$

Расшифровка: $m = C^d = (m^e)^d \bmod n = m^{e.d} \bmod n = m^1 \bmod n = m \bmod n$

Я не понимаю, почему $e \cdotd=1$ даже если это $\bмод п$ нет $\bмод фи(п)$? потому что на самом деле это не равно $1$. Чего я не понимаю, так это как это; если оно не равно $1$ он все равно будет успешно расшифровывать.


Пример:

Данный $р = 11$, $q = 3$ и $n = 33$, $phi(n) = (p-1)(q-1) = 20$, $е = 3$ следовательно $д = 7$ поскольку $e \cdot d = 1 \bmod phi(n)$

давайте зашифруем номер $15$

$$C = 15^3 \bmod n= 9$$

$$m = 9^{7} \bmod n=15$$

но

$$9^7 = (15^{3})^7 = 15^{7 \cdot 3}=15^{21} =15 \mod n$$

Как это возможно, что мы успешно расшифровали его, используя только $\bмод п$ и нет $\bмод фи(п)$? Следовательно $e \cdot d =21$ и нет $1$ и еще получил $м$? У меня такое ощущение, что теорема Эйлера ($m^{phi(n)}=1 \bmod n$) иметь к этому какое-то отношение, но я не знаю, как!

kelalaka avatar
флаг in
Это для доказательства правильности! Вы можете жить без него, потому что $a^{b \bmod \phi(n)} \mod n = a^b \mod n$. Вы видите, почему?
ezio avatar
флаг cn
@kelalaka Боюсь, я не понимаю, как это возможно?
kelalaka avatar
флаг in
https://crypto.stackexchange.com/a/2894/18298
Рейтинг:1
флаг ng

Для данного $n>1$, пусть целое $f>0$ быть таким, чтобы для всех $м$ в $[0,n)$ с $\gcd(m,n)\ne1$ это держит $m^f\bmod n=1$. Одно такое целое число $f$ это Эйлер тотиент из $n$, $\operatorname{фи}(п)$ он же $\varphi(n)$, $\Фи(п)$ или же $\фи(п)$. Среди множества теорем Эйлера, скорее всего, речь идет об этом свойстве эйлерова тотиента. Самый маленький такой $f$ является $\лямбда(п)$, куда $\лямбда$ это Функция Кармайкла.

Предполагать $е$ и $д$ были выбраны так, что $e\cdot d\bmod f=1$. По определению¹ того, что оператор$\bmod$ это когда слева нет открывающей скобки, это означает: существует целое число $к$ такой, что $e\cdot d=k\cdot f+1$$0\le1<f$, который стоит).

Теперь, предполагая $\gcd(m,n)=1$, $$\begin{выравнивание} \left(m^e\right)^d\bmod n&=m^{e\cdot d}&\bmod n\ &=m^{k\cdot f+1}&\bmod n\ &=m^{k\cdot f}\cdot m^1&\bmod n\ &=m^{f\cdot k}\cdot m&\bmod n\ &=\left(m^f\right)^k\cdot m&\bmod n\ &=1^k\cdot m&\bmod n\ &=1\cdot m&\bmod n\ &=м&\bмод п\ \end{выравнивание} $$ Мы доказали это при условии $\gcd(m,n)=1$, что и оригинальная бумага RSA делает, и многие введения в RSA делают. Но это оказывается правдой при условии, не включающем $м$: что $n$ является без квадратов, видеть это.

Этот «бесквадратный $n$"состояние гораздо более удовлетворительное, чем $\gcd(m,n)=1$ в контексте шифрования произвольного сообщения $м$, особенно когда мы используем искусственно малые $n$, так как мы не можем полностью исключить $\gcd(m,n)\ne1$ как маловероятно. В вопросе $n=33$, таким образом $\gcd(m,n)\ne1$ происходит для $м$ один из $0$, $3$, $6$, $9$, $11$, $12$, $15$, $18$, $21$, $22$, $24$, $27$, $30$, тем самым включая $м=15$ обдуманный!


¹ Для целого числа $s$ и целое число $t>0$, эквивалентные определения того, что оператор$\bmod$ это когда нет открывающей скобки слева от нее.

  • $s\bмод т$ однозначно определенное целое число $г$ с $0\le r<t$ и $s-r$ кратное $t$
  • $s\bмод т$ однозначно определенное целое число $г$ с $0\le r<t$ такое, что существует целое число $к$ с $s=k\cdot t+r$
  • в зависимости от знака $s$, $s\bмод т$ является
    • если $s\ge0$, остаток от евклидова деления $s$ к $t$
    • если $s<0$, либо
      • $t-((-s)\bmod t)$ если это не $t$
      • $0$, в противном случае

Это не следует путать с обозначением² $r\equiv s\pmod t$ с открывающей скобкой сразу слева от$\bmod$, эквивалентные определения которого включают:

  • $s-r$ является кратным $t$
  • существует целое число $к$ с $s=k\cdot t+r$

² $r\equiv s\pmod t$ предпочтительно читать с любым из возможных нескольких $\экв$ слева от$\pмод т$ читать как конгруэнтный или же эквивалент скорее, чем равный, и с паузой там, где стоит открывающая скобка. Эта пауза должна отметить, что$\pмод т$ уточняет сказанное. Это обычное использование $=$ вместо $\экв$, опустить$\pмод т$, или опустите открывающую скобку перед$\bmod$. Это также частая причина путаницы, когда разница между$\bмод т$ и$\pмод т$ вопросам, включая вычисление зашифрованного текста в RSA.

ezio avatar
флаг cn
Это означает, что существует целое число k такое, что e⋅d=k⋅f+1 Тут я запутался! и можно ли работать с двумя модулями в одном уравнении? e.d=1 верно только по модулю phi(n), а не по модулю n, извините, я новичок в криптографии
fgrieu avatar
флаг ng
@ezio: для положительных целых чисел $eâ d=1$ возможно только для $e=1=d$. Пожалуйста, прочитайте новые примечания 1 и 2 и будьте осторожны с обозначениями, RSA — это область, где это имеет решающее значение. Также имейте в виду, что когда мы пишем $m^{e\cdot d}\bmod n$, показатель степени $e\cdot d$ _не_ по модулю $n$ или любому другому модулю, и в общем случае не может быть уменьшен по модулю $n $. Показатель степени $e\cdot d$ можно уменьшить по любому модулю $f$, кратному $\lambda(n)$, отличному от нуля, включая $f=\varphi(n)$.
ezio avatar
флаг cn
сэр, ваше первое замечание щелкнуло у меня в голове, как будто я впервые объективно понимаю что-то в математике, это было приятно, спасибо, сэр, да даст вам Аллах все, что вы пожелаете.

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

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