Puncte:2

Comandă rapidă pentru a lucra Diffie-Hellman Key Exchange

drapel cn

Încerc să calculez manual cheia partajată a lui Alice și Bob, fără a folosi un calculator, deoarece consider că aceasta este o trăsătură importantă atunci când progresez în criptografie.

Înțeleg că puteți folosi metoda pătratului și înmulțirii, totuși ni se învață o metodă de scurtătură pe care nu o înțeleg pe deplin.

Exemplu de întrebare:

Alice și Bob folosesc protocolul DH cu p = 19,g = 2 și secretele a = 6 și b = 8. Cu ce ​​cheie sunt de acord?

Ei ne-au oferit acest proces fără prea multe explicații: $$ K = 2^{6Ã8} â¡8^{2Ã8} â¡7^8 â¡11^4 â¡7^2 â¡11 \pmod{19} $$

2$^{6Ã8}$, nu sunt sigur cum să pun înmulțirea ca putere pentru problema de mai sus.

Dacă cineva ar putea explica în profunzime procesul de scurtătură finalizat mai sus, pas cu pas. Chiar aș aprecia

Înțeleg unele părți, de exemplu $g^a*b \pmod{19} = 6 = 2^3 = 8$, cu toate acestea devin ușor confuz de acolo.

fgrieu avatar
drapel ng
Am șlefuit o parte din întrebare, dar am lăsat ultimul paragraf așa cum este.
drapel cn
Vă mulțumesc foarte mult, În ceea ce privește calculele dvs. portabile, mă întrebam, unde ați făcut 2^48-18*2 - De ce l-ați înmulțit 2 la sfârșit și acesta este 2 Generatorul? La fel este g^48 mod(19-1)*g Și încă un lucru, de unde ai știut să folosești 19 și 215. Aici mă lupt cel mai mult.
fgrieu avatar
drapel ng
În cazul meu $48-18\times2=12$, $2$ este $\lfloor48/18\rfloor$, fără legătură cu $g$. Acesta este pentru a calcula $48\bmod18$, iar acel modul este $p-1$. În $4096-19\times215=11$, folosesc $19$ deoarece acesta este modulul $p$. $215$ ai mei au fost obținute (cifră cu cifră) ca $\lfloor4096/19\rfloor$. Acesta este pentru a calcula $4096\bmod19$. Am adăugat unele dintre acestea în [răspunsul meu](https://crypto.stackexchange.com/a/96047/555).
kelalaka avatar
drapel in
@fgrieu, din păcate, aceasta este o întrebare încrucișată cu [math](https://math.stackexchange.com/q/4301903/338051). anthonymicheals1, ar trebui să înveți că [aceasta nu este o etică bună în acest sens](https://meta.stackexchange.com/questions/64068/is-cross-posting-a-question-on-multiple-stack- site-uri-de-schimb-permis-dacă-the-qu)
kelalaka avatar
drapel in
Dacă răspunsul este bun, puteți vota în favoare (rep 15 minim necesar, că ați promovat), dacă răspunsul este satisfăcător îl puteți accepta. Acesta este calea [așa].
Puncte:2
drapel ng

Amintiți-vă că pentru $\forall x\in\mathbb N$, $\forall m,u,v\in\mathbb N^*$, tine ${(x^u\bmod m)}^n\equiv{(x^u)}^v\equiv x^{u\times v}\pmod m$, Unde $y\equiv x\pmod m$ mijloace $m$ desparte $x-y$, și $x\bmod m$ este întregul definit în mod unic $y$ astfel încât $0\le y<m$ și $y\equiv x\pmod m$.

Secretul împărtășit este $K=(g^a\bmod p)^b\bmod p=(g^b\bmod p)^a\bmod p$, sau echivalent $K=g^{a\times b}\bmod p$. Suntem însărcinați să evaluăm acest lucru pentru $a=6$, $b=8$, $g=2$, $p=19$.

Metoda din întrebare este: $$\begin{matrice}{} 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{matrice}$$ și că (păstrarea coloanei din dreapta) poate fi condensată la: $$K\equiv2^{6\times8}\equiv8^{2\times8}\equiv7^8\equiv11^4\equiv7^2\equiv11\pmod{19}\ \text{ astfel }\ K=11$$

Dacă ar fi să calculez acest lucru fără calculator, aș scrie asta ca $K=2^{48}\bmod19$, apoi utilizați Mica Teoremă a lui Fermat. Se spune că atunci când $p$ este prim și $g$ nu este un multiplu al $p$, dacă ține $g^{p-1}\bmod p=1$. Asta permite reducerea modulo $(p-1)$ orice exponent al $g$ la calculul modulo $p$. Calculul complet merge: $$\begin{matrice}{} 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\end{array}$$

Notă: În $48-18\times2=12$, cel $2$ se obține ca coeficient $\lfloor48/18\rfloor$, la fel ca în $4096-19\times215=11$ cel $215$ este $\lfloor4096/19\rfloor$.


Criptografia reală folosește numere întregi mult prea mari pentru calcule umane fiabile; de exemplu. $p$ ar putea fi de 2048 de biți, adică 617 cifre zecimale.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.