Puncte:1

De ce folosirea aceluiași nonce (IV) de două ori anulează confidențialitatea textului simplu sau chiar a cheii?

drapel in

Înțeleg aproximativ (fără detalii despre algebra GF) schema GCS/GMAC:

introduceți descrierea imaginii aici

IV trebuie pus în Counter-0, deci inițializarea contoarelor.

Se știe că utilizarea unui IV de două ori poate dezvălui nu numai textul simplu, ci și cheia AES în sine.

Nu inteleg nici pe primul, nici pe al doilea:

Î1: De ce se pierde confidențialitatea mesajelor când se utilizează același IV de două ori? Înseamnă că textul simplu poate fi dedus? Sau doar o parte din ea? Nu îmi pot imagina cum ar putea fi acest lucru... ce parte a informațiilor poate fi dedusă din textele clare și cum/de ce funcționează? Din principiu am putut vedea doar că rezultatul XOR(p1, p2) poate fi dedus deoarece linia superioară de date este aceeași - dar nu p1, p2 în sine.

Î2: Cum/De ce poate fi dezvăluită AES-Key prin utilizarea aceluiași IV de câteva ori?

Rețineți că vreau să înțeleg de ce și cum se poate face un astfel de atac; Eu cred că se poate.

drapel et
Răspunde asta la întrebarea ta? [Cât de rău este să folosești același IV de două ori cu AES/GCM?](https://crypto.stackexchange.com/questions/26790/how-bad-it-is-using-the-same-iv-twice-with -aes-gcm)
Puncte:3
drapel my

Î1: De ce se pierde confidențialitatea mesajelor când se utilizează același IV de două ori? Din principiu am putut vedea doar că rezultatul XOR(p1, p2) poate fi dedus deoarece linia superioară de date este aceeași - dar nu p1, p2 în sine.

De fapt, în destul de multe cazuri, cunoașterea $p_1 \oplus p_2$ poate fi folosit pentru a recupera o estimare bună $p_1, p_2$. Asta depinde de distribuție $p_1, p_2$ au fost extrase din - dacă există șiruri de biți aleatorii, care, evident, nu pot fi exploatate pentru a le recupera $p_1, p_2$ - pe de altă parte, dacă erau șiruri ASCII englezești, atunci este de fapt surprinzător de ușor (cu excepția că nu vei ști care este $p_1$ si care este $p_2$)

Î2: Cum/De ce poate fi dezvăluită AES-Key prin utilizarea aceluiași IV de câteva ori?

De fapt, nu veți recupera cheia AES în sine; puteți recupera valoarea internă $H$.

Autentificarea GCM funcționează astfel; eticheta este calculată prin extinderea AAD și a textului cifrat într-o serie de valori de 128 de biți $x_n, x_{n-1}, ..., x_1$ si calcul:

$$tag = x_n H^n + x_{n-1}H^{n-1} + ... + x_1H^1 + E_k(nonce)$$

Dacă obținem două mesaje distincte criptate cu același nonce, putem scădea cele două ecuații, rezultând [1]:

$$tag - tag' = (x_n - x'_n) H^n + (x_{n-1} - x'_{n-1} ) H^{n-1} + ... + (x_1 - x'_1)H^1$$

Deoarece textele cifrate (sau AAD) au fost diferite, vor exista niște coeficienți diferit de zero în aceste ecuații.

Și, știm toți coeficienții (spre deosebire de cazul unic GCM, unde nu știam valoarea $E_k(nonce)$); acesta este un polinom cunoscut al necunoscutului $H$ de grad $n$; se dovedește că, în câmpuri finite, acest lucru este practic de rezolvat.

Acum, cunoașterea $H$ nu ne permite să citim niciun text cifrat; ceea ce ne-ar permite să facem este să modificăm textele cifrate astfel încât să păstrăm eticheta valabilă, anulând astfel garanția de integritate a GCM.


[1]: Notă notațională minoră: deoarece lucrăm într-un câmp finit de caracteristica doi, operațiile $+$ și $-$ sunt de fapt aceleași și este tradițional să le scrieți întotdeauna ca $+$. L-am scris ca $-$ pentru a face mai evident ceea ce facem.

MichaelW avatar
drapel in
Asta explică multe! Înțeleg acum: un atacator poate afla câteva detalii ale textului simplu prin XOR. Mai mult, poate mai interesant, poate afla H destul de usor. astfel încât el poate schimba părți ale cifrului într-un mod care să păstreze T încă valabil. Acest lucru se poate face eficient. Cu toate acestea, puteți confirma, vă rog, atacatorul nu poate afla cheia AES în sine - nu? Deci, atacatorul din mijloc ar putea genera blocuri de cifră de gunoi cu semnătura potrivită. Acest lucru este destul de rău, dar în lipsa cheii nu este posibil să se genereze un cifr cu un anumit conținut de text simplu - nu?
poncho avatar
drapel my
@MichaelW: nu, nu poate învăța cheia AES (cu excepția cazului în care poate rupe AES în sine); totuși, dacă ghicește conținutul unui anumit text simplu (să zicem, folosind XOR-ul celor două texte cifrate), atunci el poate răsturna biți arbitrari în acel text simplu (și calculează valoarea etichetei modificate folosind valoarea H pe care a învățat-o); asta înseamnă că poate genera textul cifrat pentru orice text simplu care nu este mai lung decât originalul.
MichaelW avatar
drapel in
hmmm. Mai întâi trebuie să „digerez” asta... poate mai este o întrebare în curând. Dar momentan sunt supraincarcat ;-)
MichaelW avatar
drapel in
Înțeleg corect: Pentru simplitate, mă refer la imaginea mea despre algoritmul GCM: Să spunem că atacatorul a reușit într-un fel să afle textul-1 și text-2. Deoarece cunoaște și Ciphertext-1 și Ciphertext-2, el poate calcula înapoi cu ușurință valorile E_K(counter-1) și E_K(counter-2). Știind acest lucru, el poate acum introduce noi valori pentru Plaintext-1 și Plaintext-2 și poate calcula noi Valori pentru Ciphertext-1 și Ciphertext-2 plus o etichetă validă. Am inteles bine? Mi se pare destul de logic, dar nu sunt sigur... oricum: mi se pare că GCM/GMAC este în mod inerent puțin periculos...
poncho avatar
drapel my
@MichaelW: da, acesta este un mod de a spune. De fapt, l-aș exprima în termeni de răsturnări de biți (pentru a răsturna acest bit pe textul simplu, am răsturna acest bit din textul cifrat, și așa xor în acest model în etichetă, astfel încât să se valideze în continuare); cu toate acestea, ceea ce aveți pare a fi o abordare validă.

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.