Am citit ceva în sensul că constructul HMAC este capabil să diminueze problema coliziunilor în hash-ul subiacent.

Asta înseamnă că ceva de genul HMAC-MD5 ar putea fi considerat încă sigur pentru autentificarea datelor criptate?

Comentarii

Răspuns

Da, în prezent nu există atacuri cunoscute asupra HMAC-MD5.

În special, după primele atacuri de coliziune asupra MD5, Mihir Bellare (unul dintre inventatorii HMAC) a venit cu o nouă dovadă de securitate pentru HMAC care nu necesită rezistență la coliziune:

Rezumat: HMAC a fost dovedit de Bellare, Canetti și Krawczyk (1996) ca fiind un PRF presupunând că (1) funcția de compresie subiacentă este un PRF și (2) funcția hash iterată este slab rezistentă la coliziune. Cu toate acestea, atacurile recente arată că presupunerea (2) este falsă pentru MD5 și SHA-1, eliminând suportul bazat pe dovezi pentru HMAC în aceste cazuri. Această lucrare demonstrează că HMAC este un PRF sub singura presupunere că funcția de compresie este un PRF. Aceasta recuperează o garanție bazată pe dovezi, deoarece niciun atac cunoscut nu compromite pseudorandomia funcției de compresie și, de asemenea, ajută la explicarea rezistenței la atac pe care HMAC a arătat-o chiar și atunci când este implementată cu funcții hash a căror rezistență (slabă) la coliziune este compromisă. Arătăm, de asemenea, că o condiție chiar mai slabă decât PRF a funcției de compresie, și anume faptul că este un MAC care păstrează confidențialitatea, este suficientă pentru a stabili că HMAC este un MAC sigur atât timp cât funcția hash îndeplinește cerința foarte slabă de a fi aproape din punct de vedere computerizat universal, unde din nou valoarea constă în faptul că atacurile cunoscute nu invalidează ipotezele făcute. „

Cu toate acestea, acest lucru nu nu că ar trebui să utilizați HMAC-MD5 în noile modele de criptosisteme. Pentru a parafraza pe Bruce Schneier, atacurile „ devin mai bune, niciodată mai rele. div> „Avem deja atacuri practice de coliziune pentru MD5, arătând că nu îndeplinește obiectivele sale inițiale de securitate; este posibil ca, în orice zi, cineva să găsească o modalitate de a le extinde într-un nou atac care ar compromite securitatea HMAC-MD5. O alegere mult mai bună ar fi utilizarea HMAC cu o funcție hash care nu are atacuri cunoscute, cum ar fi SHA-2 sau SHA-3.

Comentarii

  • SHA-2 a cunoscut atacuri: en.wikipedia.org/wiki/SHA-2
  • @baptx Orice primitiva criptografică are " atacuri cunoscute ". Întrebarea este dacă acestea întrerup întreaga cantitate de runde în mod semnificativ. Pentru SHA-2, în prezent nu au ' t. Dacă nu puteți dovedi că SHA-2 a fost rupt cu vreo semnificație, aș dori să elimin aceste comentarii din răspuns.
  • " atacurile recente arată această presupunere (2) este fals pentru MD5 " care atacuri recente? atacul prefix ales? de ce înseamnă asta?

Răspuns

Răspunsul lui Ilmari Karonen este corect atunci când HMAC este utilizat pentru scopul intenționat, dar asta nu înseamnă că HMAC nu este complet afectat de coliziunile MD5:

hmac

Având în vedere o cheie specifică, rețineți că K xor opad și K xor ipad sunt independente de mesaj m. Aceasta înseamnă că orice coliziune din H((K xor ipad) || m) va avea ca rezultat o HMAC, chiar cu două mesaje diferite.

Pentru HmacMd5, K xor ipad ar avea 64 de octeți. Deci, dacă găsiți două mesaje m1 și m2 cu cel puțin 64 de octeți prefix comun pre, puteți calcula o cheie K = pre xor ipad care va crea o coliziune între H((K xor ipad) || m1) și H((K xor ipad) || m2), leadi până la o coliziune completă în întregul HMAC.

Acest lucru poate fi exploatat în două moduri:

  • Nu aveți încredere în persoana care a generat cheia, iar HMAC este utilizată greșit ca un fel de sumă de verificare.
  • Un atacator câștigă acces la cheie și poate folosi atacul prefix ales de MD5 pentru a provoca coliziuni.

Dar ca acceptat răspunsul afirmă, dacă cheia este secretă și controlată de dvs. sau de părți de încredere, HmacMd5 este încă sigur.

Comentarii

  • Da, a existat deja acest tip de răspuns până când a fost șters. Întrebarea menționează explicit " pentru autentificarea datelor criptate ". Utilizarea pentru calcularea sumelor de verificare și disponibilitatea cheii sunt perpendiculare pe acea parte a întrebării. Bine ați venit la criptare oricum, acest tip de răspunsuri bine scrise sunt foarte binevenite aici!
  • Sunt de acord, cu toate acestea, aceste informații vor fi utile multor oameni care ajung pe această pagină și nu oferă informații incorecte cu respect la întrebarea inițială. Se afirmă clar că hmacmd5 este încă sigur dacă este utilizat corect.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *