Documente Academic
Documente Profesional
Documente Cultură
Criptografie Computationala
Motto:
Cryptography + Loose of discipline=HAOS.
Agenda
- Sistemul de Securitate al Informatiilor;
- Integrarea necesitatilor de Securitate a Informatiilor;
- Problema de Evaluare Criptografica & Cadrul de Testare;
- Terminologia utilizata. Definitii;
- Principii criptologice;
- Criterii de evaluare ale sistemelor criptografice;
- Operatii in criptanaliza;
Motto:
Cryptography + Loose of discipline=HAOS.
Agenda cont
Principii criptologice
- Nu trebuie subestimat adversarul;
- Numai un criptanalist poate evalua securitatea unui sistem criptografic;
- n evaluarea unui sistem criptografic se ia n considerare faptul c adversarul are
cunotine complete despre acesta: tot secretul unui sistem criptografic trebuie s
rezide numai n cheie;
- Complicaiile superficiale pot fi iluzorii iar acestea pot induce criptografului un
sentiment de fals siguran;
- n evaluarea unui sistem criptografic trebuie luate n calcul toate elementele, ca
de exemplu reglementrile referitoare la distribuia cheilor, a materialului
criptografic, etc.
10
11
12
Functii hash
Tema 1: Functii de Dispersie Criptografica (Functii Hash)
13
Generatoare pseudoaleatoare
Tema 2: Generatoare Pseudoaleatoare
14
15
Cifruri Bloc
Tema 4: Cifruri bloc
16
ntrebri
i
Rspunsuri
17
Functii de dispersie
Criptografica (Hash)
Agenda
Necesitatea autentificarii
Asigurarea autentificarii a fost impusa, in special de :
- existenta interceptarii active, cand atacatorul poate interveni asupra
continutului mesajelor interceptate;
- aparitia postei electronice, in care putine mesaje necesita a fi
secretizate dar pentru foarte multe mesaje este necesara
autentificarea.
In afara faptului ca destinatarul trebuie sa fie sigur ca mesajul receptionat este cel
trimis de expeditor, un sistem de autentificare trebuie sa asigure si solutionarea
eventualelor dispute intre cei doi corespondenti.
In cazul postei electronice autentificarea si eventualele dispute sunt solutionate
prin semnarea documentului de catre expeditor.
6
Semnatura Digitala
Semnatura digitala trebuie sa indeplineasca urmatoarele functii (ideale) :
- semnatura este nefalsificabila: semnatura este o dovada
semnatarul a semnat in mod deliberat documentul;
ca
Notiuni preliminare
Functii unidirectionale;
Exemple.
Functii unidirectionale
(One-Way Functions)
logaritmul discret:
fiind date numerele p (prim), g si y sa se gaseasca x astfel incat gx
=y mod p;
factorizarea: daca N este produsul a doua numere prime atunci:
1) Sa se factorizeze N;
2) Fiind date e si C, sa se gaseasca M astfel incat Me = C mod N;
3) Fiind date M si C sa se gaseasca d astfel incat Cd = M mod N;
4) Fiind dat x, sa se decida daca exista y astfel incat x = y2 mod N.
Functii hash
Definitii;
Algoritmi de hashing;
Functii hash bazate pe cifruri bloc;
Functii hash nebazate pe cifruri bloc.
11
Definitii
Functia hash este o functie care se aplica unui sir de lungime oarecare obtinandu-se un sir
de lungime fixata (de obicei, mai mica decat lungimea sirului de intrare);
Pentru a fi folosite pentru semnaturi digitale, functiile hash unidirectionale trebuie sa mai
indeplineasca, printre altele una din urmatoarele doua conditii:
1) oricare ar fi M dat, este greu de gasit M astfel incat H(M)=H(M);
2) este greu de gasit o pereche oarecare M, M astfel incat H(M)=H(M).
12
Algoritmi de hashing
13
Mesaj
D = 2 64
text.....
H
M*
H(M) = H(M*)
H
H
2128 imagini
{0, 1} 128
end
m(1)
m(2)
m(3)
m(i)
............
padding
m(n)
IV
H(i-1)
H(i)
H(n)
Functia de compresie f
14
Lucrari de impact
Unul dintre cele mai importante articole din domeniul criptanalizei functiilor hash a
fost cel al cercetatorilor chinezi Wang & Yu:
[1] X. Wang, D. Feng, X. Lai, H. Yu, "Collisions for Hash Functions MD4, MD5,
HAVAL-128 and RIPEMD", rump session, CRYPTO 2004, Cryptology ePrint Archive,
Report 2004/199, http://eprint.iacr.org/2004/199.
[2] X. Wang, X. Lai, H. Yu, How to Break MD5 and Other Hash Functions.
[3] X. Wang, X. Lai, H. Yu, Collision Search Attacks on SHA1.
precum si al criptologului ceh Vlastimil Klima:
[4] Finding MD5 Collisions on a Notebook PC Using Multi-message Modifications.
Acestia au prezentat coliziuni asupra functiei MD5 & SHA precum si metode de
generare a acestora [2], [3] si [4].
15
16
N = y[015], N* =y*[015], y*[i] = y[i], cu exceptia y*[4] = y[4] 231, y*[11] = y[11] -215, y*[14] = y[14] 231
H1
f
H2
IV
H1*
M*
N*
17
Mesajul de 1024 biti compus din cele doua blocuri M* si N* de 512 biti fiecare:
313838DD FC2932C7 C030B717 BAFC1BAE E673A8D7 9DDCF416 85D70859 99403DB0
0634ADD1 C0736004 9558BD1F 21E18982 CA94C90B 6AAE6E69 4BF61BF1 06B0E615
2E82D48B 16BDF161 CE10BD62 C3C6809D 36745639 FC0E06C7 6573A914 BEF0D753
537B8755 497B92E8 46F559C2 7D79B47A 0511D8B1 98EBEB68 49CA4559 EB10E037
19
Mesajul de 1024 biti compus din cele doua blocuri M* si N* de 512 biti fiecare:
3349F5AC A9741EDE E5B448C0 DB33CDD6 16E9A9A6 5C958038 DE975790 BF8D3F87
55AD3405 066EB4A0 FBFB907C 537B0254 1FADB99D 25D9FA81 A35F5A6C 4AEAC35A
25083C72 DFDD16EA AFEE301A 7003F1E2 D69377B5 0CF70D3D 1ADD33E7 4F9BDDDC
45D0FBF8 EF9F1BA7 D69BC765 794C569D BC8877BB 7A134473 6F1D7174 4DE89889
21
22
24
25
26
27
Aplicatii
29
Prover A
Ki
Ki
Rt
Cine esti? :
RES=F(Rt, Ki, Rv)
Verificator
Rv
Genereaza
Demonstreaza utilizand Rv ca cunosti Ki
o valoare aleatoare Rv
Cerere de autentificare
(Challenge)
30
Bibliografie
1. Menenzes A.J., et. al., Handbook of Applied Cryptography, CRC Press, 1997.
2. Schneier B., Applied Cryptography, Adison-Wesley, 1998.
3. Simion E., Preda V., Popescu A., Criptanaliza. Rezultate si Tehnici Matematice, Ed.
Universitatii Bucuresti, 2004.
4. Simion E., Functii de Dispersie Criptografica (Functii Hash), Note de Curs, 2008.
5. Stallings W., Cryptography and Network Security: Principles and Practice, Prentice
Hall, Second Edition, 1999.
6. Tilborg, Henk C.A. van, Fundamentals of Cryptology, Kluwer Academic Publisher,
Second Edition, 2001.
31
ntrebri
i
Rspunsuri
Criptografie Computationala
32
Generatoare aleatoare si
pseudoaleatoare
(RG si PRG)
dr. mat. Emil SIMION
e-mail: esimion@fmi.unibuc.ro
Agenda
- Prezentare general a contextului criptologic de utilizare a PRG si RG;
- Notiuni preliminare;
- Criterii de validare (teste statistice si criterii algoritmice);
- Modalitati de implementare a PRG si a RG;
- Aplicatii;
- Bibliografie;
- Intrebari si raspunsuri.
- Cheia de cifrare:
- iesirea RG (in acest caz avem un sistem cu cheie de unica folosinta (OTP one time
pad);
- iesirea PRG (in acest caz cheia de cifrare este incarcarea initiala a PRG);
Notiuni preliminare
(cifrurilor flux) , RG si
cifrurilor bloc);
- Criterii algoritmice (aplicabile numai PRG (cifrurilor flux) si cifrurilor bloc).
10
12
13
Criterii algoritmice - 1
- aplicabile numai PRG;
- presupun constructia unei functii n-multivariate de m variabile.
Criterii algoritmice - 2
- testarea criteriilor algoritmice se realizeaza in principal cu ajutorul transformatei
WALSH-HADAMARD.
- transformata WALSH-HADAMARD, ca orice alta transformare este o aplicatie
liniara, bijectiva:
16
- implementarea RG:
-zgomotul termic dintr-un tranzistor;
-decorelarea iesirii, de exemplu procedeul von Newmann;
-combinatii de RG prin intermediul unei functii algebrice;
17
Pachet de testare elaborat de NIST (National Institute for Standards and Technologies);
Cuprinde un numar de 16 teste statistice bazate pe intervale de incredere;
Manualul cuprinde pseudocodul si descrierea fiecaruia dintre cele 16 teste statistice,
precum si strategii de testare si interpretare a rezultatelor;
Testele au o acoperire a unui spectru larg de neregularitati;
Sunt disponibile atat sursele cat si un program ce dispune de un GUI;
Rata de respingere a testelor statistice este setata la 1%.
19
20
21
22
Date de intrare: p0=0,5, rata de respingere a testului alpha=0,05, secventa binara de lungime
N=4096, s=s0,,s4095.
Date de iesire: decizia referitoare la aleatorismul secventei s;
Limitele regiunii critice (regiunea de respingere): Se calculeaza, pe baza cuantilei repartitiei
normale u0,025=2,57, limita inferioara a numarului de 1 linf=1965 respectiv limita superioara a
numarului de 1 lsup= 2130;
Statistica testului: Se calculeaza numarul de biti de 1 din secventa s ca fiind 2100;
Decizia privind aleatorismul: daca linf <s <lsup accept ipoteza aleatorismului in caz contrar resping
ipoteza aleatorismului; In acest exemplu se accepta ipoteza aleatorismului, secventa testata
prezentand un numar mai mare, dar in cantitati rezonabile, de biti de unu decat bitii de zero;
23
Caracteristici:
- se implementeaza cu ajutorul a trei registre de deplasare liniare LSFR prin tehnica de
multiplexare;
- functia analitica: b(t) = a1 (t)a3(t) + a1 (t)a2 (t) = a2 (t) + a1 (t)(a2 (t) + a3(t)), unde + este
operatorul sumare modulor 2 iar este operatorul complement (negatie);
- complexitatea linear echivalenta: LC=
LC n3n1 + (n1 + 1)n2, unde ni sunt gradele celor trei
polinoame de feedback primitive;
- perioada minima garantata: P=(2n1-1)(2n2 - 1)(2n3 - 1), daca ni sunt relativ prime intre
ele.
24
25
Caracteristici:
- se implementeaza cu ajutorul a trei registre de deplasare liniare LSFR prin utilizarea
unor porti SI si SAU;
- functia analitica: b(t) = a3(t) + a2 (t) cu tactul lui a2 (t) controlat de a1 (t-1), unde + este
operatorul sumare modulo 2;
- complexitatea linear echivalenta: LC =(2n1 -1)n2 + n3, unde ni sunt gradele celor trei
polinoame de feedback primitive;
- perioada minima garantata: P=(2n1-1)(2n2 - 1)(2n3 - 1), daca numerele ni sunt relativ
prime intre ele.
26
Bibliografie
1. Menenzes A.J., et. al., Handbook of Applied Cryptography, CRC Press, 1997.
2. Schneier B., Applied Cryptography, Adison-Wesley, 1998.
3. Simion E., Preda V., Popescu A., Criptanaliza. Rezultate si Tehnici Matematice,
Ed. Universitatii Bucuresti, 2004.
4. Simion E., Cifruri Flux, Note de Curs, 2008.
5. Simion E., Analiza Statistico-Informationala, Note de Curs, 2008.
6. Stallings W., Cryptography and Network Security: Principles and Practice, Prentice
Hall, Second Edition, 1999.
7. Tilborg, Henk C.A. van, Fundamentals of Cryptology, Kluwer Academic Publisher,
Second Edition, 2001.
28
ntrebri
i
Rspunsuri
Criptografie Computationala
29
Cifrurile Bloc
-Modele si Tehnici Criptografice-
Agenda
- Conceptul de cifru bloc;
- Criterii de proiectare ale cifrurilor bloc;
- Moduri de lucru ale cifrurilor bloc;
- Metode de evaluare, testare & spargere ale cifrurilor bloc;
- Criptanaliza liniara;
- Criptanaliza diferentiala, diferentiale trunchiate, diferentiale imposibile;
- Exemplu: atacuri bumerang;
- Exemplu: AES (Advanced Encryption Standard);
- Bibliografie;
- Intrebari si raspunsuri.
2
Cifruri Bloc
Cifruri flux
nu au stare interna
Mesajul
Cheia
n
Functie
logica
n
Mesaj cifrat
n
Mesaj cifrat
Mesaj clar
+
(P)RKG
Mesaj clar
(P)RKG
12
Criptanaliza liniara
Tehnica introdusa de Matsui si Yamagishi in 1991: A new Method for known plain text
attack of FEAL cipher , Advances in Cryptology EUROCRYPT '92 Proceedings,
Springer-Verlag, 1993, pp. 81-91;
In esenta prin aceasta tehnica se gaseste o relatie liniara (in probabilitate) intre o parte
din biti din textul clar P, textul cifrat C si cheia K care se exploateaza optimal ulterior
gasindu-se mai intai bitii din cheie care satisfac relatia liniara si ulterior, prin cautare
exhaustiva, restul cheii;
Aplicata de:
M. Matsui, Linear Cryptanalysis Method for DES Cipher, Advances in
Cryptology, EUROCRYPT '93 Proceedings, Springer-Verlag, 1994, pp. 386-397;
The First Experimental Cryptanalysis of the Data Encryption Standard,
Advances in Cryptology, CRYPTO '94 Proceedings, Springer-Verlag, 1994, pp. 1-11.
K. Ohta si K. Aoki, Linear Cryptanalysis of the Fast Data Encipherment
Algorithm, Advances in Cryptology, CRYPTO '94 Proceedings, Springer-Verlag, 1994,
pp. 12-16.
13
14
15
Criptanaliza diferentiala
Tehnica a fost introdusa de Biham & Schamir in ,,Diferential Cryptanalysis of the Data
Encryption Standard, Springer-Verlag, 1993;
Face parte din categoria atacurilor cu text clar ales, in general dandu-se perechea
(D,D), numita caracteristica, tehnica consta in generarea de texte clare (P1,P2) cu D=P1
P2 astfel incat D=C1-C2 si aflarea unei parti a cheii, restul fiind cautata exhaustiv;
Operatia ,,- este operatia de grup care, spre exemplu in cazul cifrurilor bloc, consta in
adunarea cheii de runda;
Tehnica criptanalizei diferentiale aplicata de
S. Murphy, ,,The Cryptanalysis of FEAL-4 with 20 Chosen Plaintexts (Journal
of Cryptology, V. 2, N. 3, 1990, pp. 145-154;
L. Brown, J. Pieprzyk si J. Seberry, ,,LOKI: A Cryptographic Primitive for
Authentication and Secrecy Applications, Advances in Cryptology - AUSCRYPT '90
Proceedings, Springer-Verlag, 1990, pp. 229-236;
X. Lai si J. Massey, ,,A Proposal for a New Block Encryption Standard,
Advances in Cryptology - EUROCRYPT '90 Proceedings, Springer-Verlag, 1991, pp.
389-404;
E. Biham si A. Shamir, ,,Diferential Cryptanalysis of Snefru, Khafre, REDOC II,
LOKI, and Lucifer, Advances in Cryptology - CRYPTO '91 Proceedings, SpringerVerlag, 1992, pp. 156 -171.
16
17
19
20
Setarea cvartetului:
se genereaza (atac cu text clar ales)
P=P obtinandu-se C si C;
se genereaza (atac cu text cifrat ales
adaptiv) D=C si D=C;
se decripteaza D si D pentru a obtine
Q si Q.
21
22
23
Bibliografie
1. Menenzes A.J., et. al., Handbook of Applied Cryptography, CRC Press, 1997.
2. Schneier B., Applied Cryptography, Adison-Wesley, 1998.
3. Simion E., Preda V., Popescu A., Criptanaliza. Rezultate si Tehnici Matematice,
Ed. Universitatii Bucuresti, 2004.
4. Simion E., Cifruri Flux, Note de Curs, 2008.
5. Simion E., Cifruri Bloc, Note de Curs, 2007.
6. Simion E., Analiza Statistico-Informationala, Note de Curs, 2008.
7. Stallings W., Cryptography and Network Security: Principles and Practice, Prentice
Hall, Second Edition, 1999.
8. Tilborg, Henk C.A. van, Fundamentals of Cryptology, Kluwer Academic Publisher,
Second Edition, 2001.
24
ntrebri
i
Rspunsuri
Criptografie Computationala
25
The People:
Willian F. Friedman (1891-1969),
Alan M. Turing (1912-1954),
Marian Rejewski (1905-1980),
Hans Rohrbach (1903-1993).
Agenda
Cerinte de securitate pentru modulele criptografice;
Modele de securitate;
Evaluarea complexitatii atacurilor criptografice;
Clasificarea atacurilor criptanalitice;
Clasificarea atacurilor criptanalitice clasice;
Clasificarea atacurilor criptanalitice in mediul de operare (side channel attacks);
Atacuri asupra algoritmilor, cheilor, protocoalelor criptografice;
Atacurile TA, PA (SPA &DFA), FA, DFA, EMA (SEMA & DEMA) ;
Contramasuri;
Intrebari si raspunsuri.
2
Modele de securitate
1. Securitate neconditionata (Shannon): cheia cel putin la fel de mare ca lungimea textului
(de ex. One Time Padd);
2. Securitate impotriva unui atacator cu resurse de calcul polinomial;
3. Securitate demonstrabila:
-comparatie cu probleme ,,greu rezolvabile computational (log discret sau
factorizarea);
-rezistenta la anumite (sub)clase de atacuri criptanalitice;
4. Securitate practica (utilizata in evaluarea primitivelor criptografice in cadrul proiectului
NESSIE);
5. Securitate istorica: un algoritm se considera bun daca acesta a fost in atentia comunitatii
internationale pe o perioada suficient de mare si aceasta nu a gasit nici o vulnerabilitate in
ceea ce priveste securitatea acestuia.
10
11
decendo decimius.
Invatand pe altii invatam si noi.
12
13
16
17
Prover A
Ki
Verificator
Ki
Rt
Cine esti? :
RES=F(Rt, Ki, Rv)
Rv
Genereaza
Demonstreaza utilizand Rv ca, cunosti Ki
o valoare aleatoare Rv
Cerere de autentificare
(Challenge)
18
19
20
22
23
24
Contramasuri
25
Bibliografie
1. Menenzes A.J., et. al., Handbook of Applied Cryptography, CRC Press, 1997.
2. Schneier B., Applied Cryptography, Adison-Wesley, 1998.
3. Dent A., Mitchel C., Users Guide to Cryptography and Standards, Artech House Inc, 2005.
4. Joan Daemen, Vincent Rijmen, The design of Rijndael, Springer-Verlag, 2002.
5. NIST SP 800-21-1 (Ghid de implementare a criptografiei in guvernul federal).
6. NESSIE, Security Report, Version 2.0, February 19, 2003.
7. NESSIE, Performance Report, Version 2.0, February 19, 2003.
5. www.nist.gov -National Institute of Standards and Technologies.
6. www.nsa.gov -National Security Agency.
7. http://www.cryptonessie.org/ -NESSIE.
8. http://www.ipa.go.jp/security/enc/CRYPTREC/index-e.html -CRYPTREC.
26
ntrebri
i
Rspunsuri
Criptografie Computationala
27