Atacul de blocare a cifrului

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 15 martie 2021; verificările necesită 2 modificări .

Un atac asupra unui cifru bloc  este o încercare de a sparge (decripta) datele criptate cu un cifr de bloc.

Toate tipurile majore de atacuri sunt aplicabile cifrurilor bloc, dar există unele atacuri care sunt specifice cifrurilor bloc .

Tipuri de atacuri

General

  1. Atacul doar cu text cifrat - Utilizatorii A și B își criptează datele, iar criptoanalistul încearcă să decripteze mesajul numai dacă textul cifrat este prezent .
  2. Atacul de text clar cunoscut - sunt cunoscute atât textul simplu, cât și textul cifrat. Scopul atacului este de a găsi cheia.
  3. Atacul cu text clar ales - Un criptoanalist poate alege textul simplu pe cont propriu. Este posibil să trimiteți orice număr de texte simple și să primiți ca răspuns textele cifrate corespunzătoare. Există tipuri de atacuri autonome (offline) și operaționale (online). În primul caz, alegerea textelor clare este pregătită în prealabil, înainte de primirea textelor cifrate. În al doilea caz, fiecare text simplu ulterior este selectat pe baza textelor cifrate deja primite .
  4. Atacul cu text cifrat ales - Un criptoanalist are capacitatea de a prelua atât text simplu, cât și text cifrat. Pentru fiecare text clar ales , criptoanalistul primește un text cifrat, pentru fiecare text cifrat ales, textul clar corespunzător.
  5. Atacurile bazate pe paradoxul problemei zilei de naștere (atac de naștere) - atacuri care și-au primit numele în onoarea paradoxului problemei zilei de naștere . Esența paradoxului este următoarea: dacă în cameră sunt 23 de persoane, atunci probabilitatea ca doi dintre ei să se fi născut în aceeași zi depășește 50%. Acest tip de atac se bazează pe faptul că aceleași valori apar mai repede decât v-ați aștepta.
  6. Atacul bilateral sau atacul „meet-in-the-middle” (meet-in-the-middle attack) - criptoanalistul construiește un tabel de chei pe care l-a ales el însuși. Diferența dintre un atac bazat pe paradoxul zilei de naștere și un atac bidirecțional este că în primul caz criptoanalistul așteaptă ca aceeași valoare să apară de două ori în setul de elemente, în atacul bidirecțional așteaptă cele două seturi. a se intersecta.

Specific

  1. Atac asociat cheie - introdus pentru prima dată de Eli Biham în 1993. Acest atac presupune că criptoanalistul are acces la mai multe funcții de criptare. Toate funcțiile funcționează cu chei necunoscute, totuși, cheile sunt legate de o anumită relație, care este cunoscută de criptoanalist. Multe sisteme reale folosesc chei diferite legate de o relație cunoscută. De exemplu, pentru fiecare mesaj nou, valoarea cheie anterioară este incrementată cu unu.
  2. Atacul cu cheia aleasă - criptoanalistul setează o parte a cheii și atacă restul cheii cu cheia asociată.
  3. Criptanaliza diferențială trunchiată este un atac asupra cifrurilor bloc, o generalizare a criptoanalizei diferențiale . Lars Knudsen a dezvoltat acest atac în 1994 [1] . În timp ce analiza diferențială obișnuită folosește diferența dintre două texte complete, criptoanaliza trunchiată ia în considerare diferența dintre părțile unui text. Prin urmare, folosind acest atac, este posibil să se prezică valorile doar a unor biți, și nu a întregului bloc.

Unii algoritmi de atac

Enumerarea completă

Atacul de forță brută (sau atac de forță brută ) - atacul se bazează pe un concept simplu: Oscar, atacatorul, are un text cifrat auzit și are o mică parte din textul simplu, de exemplu, antetul fișierului pe care îl decriptează. Oskar decriptează mai întâi o mică parte a textului cifrat cu toate cheile posibile. Cheia pentru acest cifr este tabelul de substituție. Dacă textul rezultat se potrivește cu o mică parte a textului simplu, a fost găsită cheia corectă.

Fie o pereche de text simplu și text cifrat și fie setul de toate cheile posibile . Atacul cu forță brută verifică pentru fiecare execuție: . Dacă egalitatea este îndeplinită, este găsită cheia corectă; dacă nu, următoarea cheie este verificată. În practică, metoda forței brute poate fi mai dificilă, deoarece cheile incorecte pot da rezultate pozitive incorecte.

XSL

Atacul XSL (eXtended Sparse Linearization) - o metodă bazată pe proprietățile algebrice ale cifrului, implică rezolvarea unui sistem special de ecuații . A fost publicat pentru prima dată în 2002 [2] .

Rezultatul funcționării blocurilor S ale unui sistem cu criptare cu mai multe runde este scris ca o ecuație:

Unde și  sunt, respectiv, biții de intrare și de ieșire ai blocurilor S din runda a I-a de criptare.

În plus, pentru diferite valori ale textelor de intrare și textele cifrate corespunzătoare , sunt compilate tabele de adevăr , pe baza cărora se determină valoarea cheii de sistem.

Atacul Shift

Slide attack (slide attack) - a fost propus în 1999 de Alex Biryukov și David Wagner [3] . În acest atac, numărul de runde de criptare nu contează. Spre deosebire de căutarea oricărui aspect al datelor aleatorii ale cifrului bloc, un atac prin schimbare analizează tabelul cheie, găsindu-i punctele slabe pentru a sparge cifrul. Cea mai comună hartă a tastelor este ciclarea tastelor. Atacul shift este strâns legat de atacul cheie asociat. O cerință necesară pentru un atac shift este identitatea rundelor algoritmilor cărora le este aplicat, posibilitatea împărțirii textului cifrat în mai multe runde de funcții identice .

Algoritm de atac:

  1. Un bloc de text cu o lungime de biți și o secvență de taste: este selectată orice lungime.
  2. Procesul de criptare este împărțit în funcții identice , care pot consta în mai multe runde de criptare, aceasta fiind determinată din secvența de chei. De exemplu, dacă criptarea folosește chei alternative pentru fiecare rundă și , atunci funcția va consta din două runde. Fiecare dintre taste va apărea cel puțin o dată în .
  3. Următorul pas este să obțineți parametrul: text clar - text cifrat. În funcție de caracteristicile textului cifrat, vor fi suficiente mai puține perechi, dar din paradoxul zilei de naștere vor fi necesare nu mai puțin de perechi. Aceste perechi sunt folosite mai târziu pentru a găsi perechea de diapozitive . Proprietatea perechii:

Odată ce o pereche este găsită, cifrul este rupt din cauza unei vulnerabilități cunoscute de atac de text simplu.

Diferențiale imposibile

Diferențialele imposibile  sunt o versiune fundamental nouă a criptoanalizei diferențiale propuse de Eli Biham , Adi Shamir și Alex Biryukov în 1998 [3] . Această metodă folosește diferențe cu probabilitate zero, spre deosebire de criptoanaliza diferențială.

Proces de hacking:

  1. Sunt selectate perechi de texte clare cu unele diferențe; se obțin texte cifrate corespunzătoare.
  2. Se efectuează analiza datelor primite, toate variantele cheii de criptare care conduc la diferențe imposibile sunt aruncate.
  3. Rezultatele duc la diferențe imposibile - fie singura variantă posibilă a cheii, fie un subset al setului de chei. Pentru a găsi cheia corectă dintr-un subset, de exemplu, se efectuează o căutare exhaustivă.

Metoda bumerangului

Metoda de atac cu bumerang a fost propusă în 1999 de David Wagner [3] . Această metodă este practic o îmbunătățire a criptoanalizei diferențiale, ea utilizează un cvartet (patru texte în loc de două) de texte clare și textele cifrate corespunzătoare.

Algoritm:

  1. Împărțim algoritmul -round în două părți pe runde.
  2.  este procedura de criptare pentru prima parte a algoritmului. Pentru un cvartet, alegem două texte deschise și , diferența dintre ele este o anumită valoare . Acţionând asupra textelor cu funcţia , obţinem diferenţa (presupunând că diferenţa este determinată de XOR): .
  3. Acum să criptăm textele și , aplicând procedura de criptare din partea a doua a acestora . Obținem texte cifrate și : ; .
  4. Un criptoanalist nu este interesat de diferența dintre și . Folosindu-le, obținem alte două texte cifrate și asociate cu ele prin diferența : .
  5. Acum cvartetul se formează în sens invers: la și se aplică , și : .
  6. și decriptează textele cifrate și : ; ;
Și .

Note

  1. Kovtun V. Yu. „Introducere în criptoanaliza. Criptanaliză a criptosistemelor simetrice: cifruri bloc” . Data accesului: 8 decembrie 2011. Arhivat din original pe 4 martie 2016.
  2. N. Courtois, J. Pieprzyk „Cryptology ePrint Archive: Report 2002/044” . Consultat la 8 decembrie 2011. Arhivat din original pe 27 februarie 2012.
  3. 1 2 3 Panasenko, 2009 .

Literatură