Documente Academic
Documente Profesional
Documente Cultură
În criptografie se consideră atac orice încercare prin care un atacator încearcă să treacă de
barierele de securitate ale unui sistem. Candidaţii la ”titulatura” de atacator, împreună cu o
caracterizare a lor, sunt enumeraţi în tabelul 4.1.
Un atac poate distruge, altera sau să facă inutilizabile datele dintr-un sistem. Nu ne
propunem deocamdată să evaluăm ce înseamnă un astfel de atac pentru un mediu economic!
Succesul unui atac depinde de vulnerabilitatea sistemului şi de eficienţa (sau absenţa) măsurilor
de apărare.
Într-un limbaj cotidian terminologia folosită este de “a sparge” un sistem sau un algoritm.
Spargerea unui sistem criptografic înseamnă, în limbajul specific, obţinerea textului în clar din
cel criptat fără a avea cheia secretă; de fapt succesul real este dat de obţinerea cheii de criptare
care asigură atacatorul (sau criptanalistul) că va putea decripta şi următoarele mesaje.
Determinarea sau reconstituirea algoritmului folosit pentru a cripta un mesaj nu este un
obiectiv criptografic (implicit nici pentru un atac). Motivaţia este dată de faptul că majoritatea
algoritmilor folosiţi astăzi sunt cunoscuţi, datorită faptului că este greu să ţii un algoritm secret,
iar pe de altă parte adevărata validare a securităţii unui algoritm nu poate veni decât din partea
comunităţii criptografice.
În aceste condiţii cerinţa minimală de securitate pentru un sistem consider că este: oricine
are acces la textul criptat şi cunoaşte algoritmul de criptare (şi decriptare folosit) să nu poată
reconstitui în întregime textul clar.
Deşi literatura de specialitate nu abundă în detalii la capitolul atacuri, în acest capitol voi
face o trecere în revistă a unei liste a metodelor de atac (listă care nu are nici o pretenţie de a fi
completă) împreună cu câteva exemplificări. Am renunţat la o clasificare propriu-zisă pentru că
în practică este foarte greu să alegi o categorie de atacuri atunci când vrei să încerci
vulnerabilitatea unui sistem.
Una dintre problemele interesante (în general neglijată în literatura de specialitate) este
cine este interesat să “spargă” un sistem criptografic. Candidaţii, împreună cu obiectivelor pe care
59
Capitolul 4 – Metode de atac criptografice
60
Capitolul 4 – Metode de atac criptografice
4.1 Criptanaliza
Analiza criptografică este ramura care studiază metodele prin care încercăm să aflăm
informaţii despre textul în clar folosind frânturi de text clar şi de text cifrat (nu este o regulă);
metoda prioritară este “atacul”.
Un atac asupra unui sistem criptografic este o metoda criptografică, ce pornind de la nişte
informaţii minimale asupra unor bucăţi de text clar şi corespondentul său cifrat folosindu-se chei
(necunoscute), încearcă să deducă mai multe informaţii despre textul clar; în limbajul comun se
foloseşte terminologia de ”a sparge un cifru” cu înţelesul de a deduce textul clar folosind doar
informaţii despre textul cifrat.
În criptografie regulile sunt mai lejere: ”a sparge” un cifru înseamnă a găsi o slăbiciune a
cifrului (algoritmului) care să poată fi exploatată ulterior cu metode pentru care e suficient ca
timpul de căutare să fie evident mai mic decât pentru un atac care caută exhaustiv toate
combinaţiile posibile (care va fi definit în continuare ca atac de tip forţa brutală = ”brute-force”).
În criptologie este consacrat faptul că nici un sistem criptografic nu este considerat sigur
100%.
Convenţional spunem că un sistem criptografic este sigur dacă orice atac cunoscut asupra
sistemului este prea lent pentru a fi practic; dacă putem demonstra aceasta propoziţie atunci
putem avea încredere în acel sistem.
1
Ciphertext-only attack
2
Adaptive ciphertext attack
61
Capitolul 4 – Metode de atac criptografice
alege acele secvenţe de text clar + text criptat care dau informaţii revelatoare despre textul cifrat
sau despre cheile folosite pentru decriptare.
Conceptul a fost considerat multă vreme un concept doar teoretic (până în 1998) când
Daniel Bleicherbacher de la Bell Laboratories a demonstrat practic în lucrările sale [BKS98] şi
[Ble98] posibilităţile acestui tip de atac împotriva unui sistem care folosea algoritmul de criptare
RSA în asociere cu PKCS#1 v1 ca funcţie de criptare care includea şi o versiune de protocol SSL
folosit de mii de web servere din lume la acea data; în practică a trimis milioane de texte cifrate
către echipamentul de decriptare (web serverul echipat cu SSL) şi din analiza datelor gradual a
reuşit să obţină informaţii despre mesajul criptat cu RSA.
Prevenirea atacurilor
Pentru a preveni un astfel de tip de atac este necesară folosirea unui algoritm de criptare
care limitează maleabilitatea textului cifrat; o soluţie folosită în multe cazuri este folosirea pe
termen scurt a cheilor de criptare;
3
Chosen-plaintext attack
62
Capitolul 4 – Metode de atac criptografice
Atac în forţă
Multe sisteme criptografice nu au puncte vulnerabile cunoscute (cel puţin până acum); în
această situaţie singura modalitate rămâne un astfel de atac care constă în încercarea tuturor
codurilor posibile, a combinaţiilor sau a cheilor pentru a găsi pe cea corectă şi a decripta mesajul.
Acest mod de lucru se dovedeşte foarte dificil în multe cazuri datorită mai multor factori:
• lungimea cheilor;
• câte valori pot lua cheile;
• cât va dura derularea încercărilor.
O întrebare naturală care se ridică este: cât va dura un astfel de atac? Răspunsul depinde nu
numai de factorii enunţaţi anterior (lungimea cheilor şi spaţiul valorilor posibile) ci şi de puterea
de calcul disponibilă atacatorului (sau criptanalistului). Deoarece atunci cînd proiectăm un sistem
criptografic, dorim să-l facem utilizabil pentru mulţi ani, trebuie să estimăm evoluţia puterii de
calcul. Ajutorul vine din partea lui Gordon Moore, unul din fondatorii firmei Intel, care a estimat
că viteza de calcul se dublează la fiecare 18 luni (iar costul se înjumătăţeşte). Această estimare s-
a dovedit reală şi a devenit cunoscută ca ”legea lui Moore”.
Un astfel de atac presupune trecerea prin tot spaţiul cheilor fără a selecta în vreun fel cheile
neobişnuite care nu merită testate; în acest sens există atacuri care folosesc diferite tipuri de
selecţii (a se vedea atacul de tip dicţionar). Atacul în forţă garantează acoperirea tuturor
posibilităţilor şi deci în final un succes (abstracţie făcând de timpul necesar!)
Exemplu de calcul
Dacă un atac în forţă asupra unui document criptat folosind o cheie de 56 biţi necesită 265
zile (0.68 ani), conform proiectului RC5, atunci timpul necesar pentru a decripta un document
criptat pe 6144 biţi se obţine prin multiplicare cu 26144-56. Aceasta înseamnă că timpul necesar
4
Chosen key attack
63
Capitolul 4 – Metode de atac criptografice
pentru a reuşi un astfel de atac în forţă este de 0.68 * 26088 ani. Acest rezultat este o imagine reală
a şanselor de reuşită a unui astfel de atac,
5
Dictionary attack
6
Birthday attack
64
Capitolul 4 – Metode de atac criptografice
N), iar N este numărul total de elemente (în cazul nostru cele 365 zile dintr-un an) atunci
probabilitatea unei coliziuni se calculează astfel:
x*(x-1)/(2*N)
Consecinţa imediată este că dacă x ≥ N atunci probabilitatea ≥ 50%.
Traducerea concluziei în cazul încercărilor binare este că trebuie 2k/2 ( 2 k ) încercări din
cele 2k valori posibile înainte de a ne aştepta la o coliziune.
O variantă a paradoxului poate fi enunţată astfel: fie r numărul elevilor din două clase
diferite şi fie p(r) probabilitatea ca doi copii din clase diferite să aibă aceeaşi zi de naştere; care
este valoarea minimă a lui r astfel încât p(r) să fie mai mare sau egal cu ½? Răspunsul corect în
acest caz este 17.
Generalizarea problemei: dacă o funcţie f : A → B poate lua oricare din cele n valori din
mulţimea B cu probabilităţi egale (n fiind suficient de mare) atunci după calculul funcţiei pentru
n valori diferite este foarte posibil să găsim o pereche de argumente x1 şi x2 astfel încât
f(x1)=f(x2), eveniment denumit coliziune; conform observaţiilor lui Bellare şi Kohno [BeK04]
pentru funcţii distribuite impar coliziunea poate apărea şi mai devreme.
Semnătura digitală este susceptibilă de a fi supusă unui astfel de atac.
Concluziile atacului zilei de naştere pot fi folosite pentru calculul logaritmilor discreţi;
presupunem x şi y elemente dintr-un grup şi y este o putere a lui x; vrem să aflăm puterea la care
ridicat x să dea y. Un atac de tipul precedent calculează xr pentru multe valori întregi r şi yx-s
pentru alte valori s. După o vreme vom găsi o pereche r,s astfel încât xr=yx-s adică y=xr+s.
Dacă grupul are n elemente atunci metoda intuitivă de a încerca toţi exponenţii ar însemna o
medie de n/2 paşi; atacul zilei de naştere este mult mai rapid având o medie de doar 2 n paşi.
Un exemplu de aplicare este lucrarea [Bel04] a lui Mihir Bellare.
7
Man-in-the-middle attack
65
Capitolul 4 – Metode de atac criptografice
8
Meet-in-the-middle attack
66
Capitolul 4 – Metode de atac criptografice
Matematic, dacă avem N valori şi o mulţime are X elemente, iar cea de-a doua Y (astfel
încât: X+Y ≤ N ), atunci există X*Y perechi posibile de elemente astfel încât fiecare are 1/N şansă
de coliziune; probabilitatea coliziunii creşte cu cât mai aproape este (X*Y)/N de 1. Practic, pentru
eficienţă, analistul va folosi X valori dintr-o mulţime şi Y din cealaltă astfel încât
X*Y ≈ N sau de fapt X ≈ Y ≈ N
Prima aplicare se datorează lui de Merkle şi Hellman în 1981 în încercarea de a ataca o
dezvoltare a unui cifru bloc; dezvoltarea presupunea îmbunătăţirea securităţii algoritmului prin
folosirea a două chei independente pentru criptarea datelor de două ori; concluzia intuitivă ar fi că
securitatea se dublează prin folosirea unui algoritm de dublă criptare. Merkle şi Hellman au
dezvoltat o strategie care decriptează noul algoritm într-un timp doar dublu faţă de algoritmul
simplu. Atacul funcţionează prin criptare de la un capăt şi decriptare de la celălalt până la
întâlnirea la mijloc.
Presupunând că atacatorul cunoaşte o mulţime de texte în clar P şi texte criptate C cu cheile
k1 şi k2; atunci poate calcula EK(P) pentru toate cheile posibile K şi să memoreze rezultatele; apoi
poate calcula DK(C) pentru fiecare K şi să compare cu rezultatele memorate; dacă va găsi o
coincidenţă este ca şi cum ar fi găsit cele două chei şi poate verifica direct pe textul în clar şi cel
criptat. Dacă dimensiunea cheii este n, atacul va folosi doar 2n+1 criptări în contrast cu un atac
clasic (naiv în acest caz) care ar avea nevoie de 22n criptări.
Atacul în reluare9
Un atac în reluare, aşa cum este el descris de Schneier şi Menezes în [Sch98] şi respectiv
[MOV97] este un atac în care atacatorul memorează o sesiune de comunicare în ambele sensuri
(mesajele schimbate de ambii corespondenţi) sau bucăţi din sesiune.
Scopul înregistrării este de a retrimite, la o dată ulterioară, mesajul în forma care a fost
înregistrat aceluiaşi destinatar sau altuia; ideea atacului nu este de a decripta o sesiune de
comunicare ci de a crea confuzii şi mesaje false (exemplu: repetarea unui transfer bancar)
9
Replay atack
10
Related keys attack
67
Capitolul 4 – Metode de atac criptografice
Ideea fundamentală a acestui tip de atac este că atacatorul descoperă o relaţie între un set de
chei şi are acces la funcţiile de criptare cu astfel de chei relaţionate. Scopul declarat este de a găsi
chiar cheile de criptare. Atacul pare destul de solid din punct de vedere teoretic, dar destul de
greu de pus în practică. Acest tip de atac a pus în evidenţă slăbiciuni în cazul unor algoritmi (a se
vedea [KSW96] şi [KSW97] ): IDEA,GOST, 3-WAY,SAFER, DES-X,RC2 şi TEA.
O varianta a acestui tip de atac propusă mai recent este atacul de tip atac prin alunecare în
care se exploatează o relaţie a cheii cu ea însăşi.
unde Fi este rezultatul intermediar al blocului după i cicluri de criptare; notaţia corectă ar fi
Ci=Fi (Ci-1, ki), dar pentru simplificare, ţinând cont de consecvenţa cheii, am notat Fi.
În aceste condiţii un exemplu de alunecare ar fi următorul:
Dacă această premiză, necesară acestui tip de atac, este îndeplinită pentru o astfel de
pereche, adică F1(P0, K1)=P1, atacatorul va deduce prin inducţie Fr(C0, Kr)=C1 (datorită
alunecării) şi va deduce cheia de sesiune. În tehnica atacului o astfel de pereche (de text clar
împreună cu corespondentul său criptat) (P, C) şi (P”, C”) o numim pereche glisată dacă şi
numai dacă F(P)=P” şi F(C)=C”.
11
Slide attack
68
Capitolul 4 – Metode de atac criptografice
Atacul de corelaţie12
La prezentarea din capitolul 5.2 a cifrurilor şir bazate pe generatoare de tip LFSR (Linear
Feedback Shift Register) se afirmă că aceste generatoare sunt teoretic vulnerabile la atacul de
corelaţie. Atacul convenţional se efectuează asupra generatorului de filtrare (funcţia nonliniară
care având ca argumente biţi ai LFSR-ului generează bitul cheie de ieşire) în două faze. În prima
fază se determină o funcţie între şirul de biţi cheie generat şi biţii registrului de deplasare; o astfel
de funcţie există întotdeauna, chiar şi în cazul generatorului de filtrare cu memorie. Şirul de chei
este interpretat ca o versiune afectată de zgomot a şirului generat de LFSR.
Siegenthaler a dezvoltat versiunea originală a atacului de corelaţie care presupune o căutare
exhaustivă aplicată în toate fazele LFSR-ului pentru a găsi cel mai înalt grad de corelaţie [Sig85].
Meier şi Staffelbach au arătat ulterior că tehnicile de reconstrucţie iterative sunt mult mai rapide,
în special când funcţia de combinare este un polinom de grad mic [MeS89], iar Mihaljevic şi
Golic stabilesc condiţiile în care acest tip de atac rapid de corelaţie converge [MiG92].
Dacă funcţia de combinare polinomială f(x) este densă, se poate căuta un subşir de chei al
cărui polinom are un număr redus de coeficienţi folosind tehnici de întâlnire la mijloc [MeS89];
dacă f(x) are gradul n, numărul de operaţiuni necesare este de (n/2) 2n/2. van Oorschot şi Wiener
au arătat că este posibilă construcţia unui hardware specializat de căutarea a coliziunilor pentru
valori ale lui n până la 128. Astfel securitatea generatoarelor de filtrare nonliniare se reduce la
posibilitatea de a găsi corelaţii între şirul de chei şi biţii generaţi de LFSR. Această posibilitate
este garantată de rezultatele menţionate anterior, care afirmă existenţa acestor corelaţii, dar
condiţionată de construcţia unui algoritm care să găsească corelaţia maximă pe care un atacator o
poate spera. Un astfel de algoritm împreună cu limitele de convergenţă teoretice va stabili dacă
cifrul este vulnerabil la atacul de corelaţie rapidă.
12
Correlation attack
69
Capitolul 4 – Metode de atac criptografice
Dacă h(x) este funcţia nonliniară care dintr-un semnal arbitrar (zgomot aleator) generează
şirul de chei Ki, problema este să se determine cantitatea de informaţie despre semnalul arbitrar
care se poate deduce din h(x) şi Ki. Soluţia acestei probleme rezidă în natura nonliniară a funcţiei
h(x): dacă Ki = Si + Si + 1, cunoaşterea lui Ki nu aduce nici o informaţie asupra valorii lui Si, în
timp ce dacă Ki = Si Si + 1, atunci Ki = 1 implică Si = 1. Luând în considerare că atacul asupra
unui generator de filtrare conduce întotdeauna la o funcţie liniară, prin considerarea unor faze
diferite ale registrului de deplasare, este de real interes determinarea maximului de informaţie
relevată de h(l(x)) în spaţiul funcţiilor liniare l(x).
13
Fast correlation attack
14
maximum-likelihood
70
Capitolul 4 – Metode de atac criptografice
feedback al LFSR-ului. Algoritmul are complexitatea 2L, unde L este lungimea LFSR-ului ţintă.
Complexitatea poate fi redusă folosind algoritmi de decodare rapizi.
Tehnicile de decodare pentru atacuri de corelaţie rapidă folosesc algoritmi bazaţi pe
următoarele idei:
- Găsirea de relaţii numeroase de recurenţă liniară cu polinoame cu număr redus de
coeficienţi satisfăcute de şirul LFSR (aceste relaţii corespund unor multipli cu număr
redus de coeficienţi ai polinomialei de feedback) şi folosirea lor într-o procedură iterativă
de decodificare dedicată codurilor de verificare a parităţii (parity-check) de mică
densitate. Complexitatea acestui atac poate scădea semnificativ în cazul în care polinomul
LFSR-ului ţintă este cu număr redus de coeficienţi. În concluzie, folosirea polinoamelor
cu număr redus de coeficienţi trebuie evitată în generatoarele LFSR.
- Construirea unui cod convoluţional (sau turbo cod) din codul LFSR şi folosirea unui
algoritm de decodare corespunzător (algoritmul Viterbi).
- Construirea unui nou cod bloc liniar cu o dimensiune mai mică din codul LFSR şi
aplicarea unui algoritm de decodare similaritate maximă sau a unei tehnici de
reconstrucţie polinomială.
Această consideraţie matematică are implicaţii eficiente dacă luăm în considerare un cifru
simetric de tip bloc cu o cheie fixă necunoscută. Dacă textul criptat este scris ca un polinom (cu
coeficienţi necunoscuţi) funcţie de elementele textului clar şi gradul polinomului este suficient de
15
Interpolation attack
71
Capitolul 4 – Metode de atac criptografice
mic, atunci un număr limitat de perechi de text clar, criptat sunt suficiente pentru determinarea
funcţiei de criptare. Acest lucru permite atacatorului să cripteze sau să decripteze blocuri de date
fără a recupera propriu zis cheia de criptare.
O proprietate interesantă a atacului este faptul că el nu este afectat de structura internă a
cifrului. O altă observaţie este legată de faptul că un grad mic al polinomului nu este strict
necesar pentru un atac eficient; este suficient dacă numărul coeficienţilor necunoscuţi este mic,
caz întâlnit pentru cifrurile optimizate împotriva atacurilor liniare şi diferenţiale (exemplu: cifrul
KN propus de Knudsen şi Nyberg).
Acest tip de atac poate fi generalizat în multe moduri. Jakobsen a demonstrat în lucrarea sa
[Jak98] ) că ideea interpolării poate fi aplicată şi în cazul în care polinoamele sunt probabilistice.
Atacul temporal17
Atunci când durata de execuţie a unui echipament hardware de criptare nu este constantă,
această durată poate da informaţii despre parametrii implicaţi; în consecinţă analiza atentă şi
măsurarea timpului de execuţie poate duce în anumite conjuncturi la recuperarea cheilor secrete.
Această idee a apărut în literatura de specialitate în 1996 în lucrarea lui Kocher [Koh96].
Pentru a putea realiza un astfel de atac, atacatorul are nevoie de un set de mesaje împreună
cu durata lor de procesare pe echipamentul criptografic. Metodele de măsurare a timpului sunt
diverse: monitorizarea activităţii procesorului, măsurarea timpului într-o secvenţă de interogare /
răspuns etc.
16
Divide and conquer attack
17
Timing attack
72
Capitolul 4 – Metode de atac criptografice
O ţintă privilegiată pentru atacurile temporale sunt smart cardurile; un smart card clasic (aşa
cum este definit de ISO 7816) nu este echipat cu un ceas intern, dar îşi ia tactul de la terminalul la
care este conectat. Buna funcţionare a ceasului intern al terminalului influenţează direct
acurateţea măsurării timpului de rulare.
Atacul temporal este un atac care foloseşte o strategie de tipul ”divide şi cucereşte”. Cheia
secretă este recuperată din bucăţi prin predicţii şi verificând corelaţii între o valoare parţială a
cheii şi timpul estimat de execuţie. Pentru fiecare bucată din cheie atacul se derulează astfel: la
început pornind de la o presupunere pentru o secvenţă de cheie, defineşte o estimare pentru
timpul de execuţie, apoi verifică dacă timpul real de execuţie se potriveşte: dacă nu, atunci se
consideră o încercare ratată şi se reia logica pentru o altă presupunere.
Atacul a fost aplicat algoritmului RSA [SQK01], unor algoritmi simetrici (ex: RC5 analizat
în lucrarea [HaH98] şi unor protocoale de internet de tipul SSL în lucrarea [CHV03] .
Ca măsuri de prevenire a unui astfel de atac în literatura de specialitate sunt prezentate
următoarele sugestii:
Criptanaliza liniară
Criptanaliza liniară se aplică algoritmilor simetrici de tip bloc şi a fost introdusă de
M.Matsui la Eurocrypt 1993 [Mat93] ca un atac teoretic pentru DES , ca apoi să fie folosită cu
succes în criptanaliza practică a DES-ului [Mat94] .
73
Capitolul 4 – Metode de atac criptografice
Criptanaliza diferenţială
Criptanaliza diferenţială a fost prezentată prima dată de E.Biham şi A.Shamir la Crypto 90
şi apoi publicată în 1991 [BiS91]. Metoda a fost concretizată pentru DES şi rezultatele publicate
ulterior în [BiS93].
Criptanaliza diferenţială exploatează apariţiile cu mare probabilitate a diferenţelor din
textele în clar şi a diferenţelor în ultimul ciclu al cifrului. De exemplu, să considerăm un sistem
cu intrarea X = [X1 X2 ... Xn] şi ieşirea Y = [Y1 Y2 ... Yn]. Fie două intrări X’ şi X’’ cu ieşirile
corespunzătoare Y’ şi X’’ . Diferenţa între intrări este: ∆X = X’ ⊕ X’’unde "⊕" este funcţia
OR-exclusiv. Similar se notează ∆Y diferenţa între ieşirile corespunzătoare.
Probabilitatea ca o diferenţa de ieşire particulară ∆Y să apară, dându-se o diferenţă de
intrare particulară ∆X este de 1/2n, unde n este numărul de biţi ai lui X (în cazul unui cifru aleator
ideal).
Criptanaliza diferenţială caută să exploateze un scenariu în care probabilitatea de mai sus
este mult mai mare decât valoarea teoretică din cazul ideal. Criptanaliza diferenţială este un atac
cu texte în clar alese, adică atacatorul poate selecta intrările şi examina ieşirile în încercarea de a
deduce cheia.
18
Linear consistency attack
74
Capitolul 4 – Metode de atac criptografice
ecuaţii liniare, unde matricea A depinde de K1 iar vectorul b este determinat de biţii cunoscuţi din
textul clar; în aceste condiţii poate fi făcută o căutare exhaustivă a lui K1; valoarea corectă a lui
K1 poate fi deosebită de una incorectă verificând dacă sistemul liniar este consistent sau nu. O
dată K1 recuperat soluţia x a sistemului ne poate furniza biţi suplimentari ai cheii secrete.
1. Pornim cu bloc oarecare de text clar; folosind caracteristica cunoscută pentru prima parte
a cifrului, dacă operăm XOR cu un vector d1 (00100000 în figură), rezultatul după
jumătate din ciclul de criptare a celor doua blocuri de text clar, înainte şi după XOR vor
19
Boomerang attack
75
Capitolul 4 – Metode de atac criptografice
diferi prin c1 (00110110 în figură), dacă ceea ce vrem să aflăm despre cheie ar fi
adevărat.
2. Dacă această caracteristică este valabilă doar pentru prima jumătate a cifrului, rezultatul
după criptareA întregului bloc nu va fi sugestiv. Să luăm cele două rezultate şi să facem
XOR pentru fiecare cu d2 (01001011 în figură), d2 fiind vectorul corespunzător
caracteristicii specifice celei de-a doua jumătate a cifrului. În fiecare caz, operând XOR
între d2 şi un bloc de text criptat se aşteaptă ca rezultatul să se schimbe după decriptare cu
c2 (00010000 în figură), dacă ipoteza despre cheie este corectă.
3. Cu două rezultate intermediare care diferă prin c1, după ce fiecare a suferit o transformare
XOR cu c2, cele două rezultate după XOR vor diferi în continuare prin c1. Dacă această
diferenţă va putea fi recunoscută în ieşirea finală este o dovadă a corectitudinii ipotezei
despre cheia de criptare.
4.2 Concluzii
76
Capitolul 4 – Metode de atac criptografice
Categoria super- grea (necesită cunoştinţe ştiinţifice şi resurse serioase de tehnică de calcul)
• Analiză criptografică liniară
• Analiză criptografică diferenţială
• Atac cu text cifrat
• Atac cu text clar
• Atac cu text clar ales
• Atac adaptiv cu text clar ales
• Atac cu text cifrat ales
• Atac cu chei alese
77