Sunteți pe pagina 1din 13

Prelegerea 1 Notiuni de baz ale criptograei a

1.1 Denitii i notatii preliminare s

Criptograa este o component a unui domeniu mult mai larg, numit securitatea informatiei. a Obiectivele urmrite de acesta pot sumarizate a n: 1. Condentialitate (privacy): proprietatea de a pstra secretul informatiei, pentru ca a aceasta s e folosit numai de persoanele autorizate. a a 2. Integritatea datelor: proprietatea de a evita orice modicare (inserare, tergere, s substitutie) neautorizat a informatiei. a 3. Autenticare: Proprietatea de a identica o entitate conform anumitor standarde. Este compus din a (a) Autenticarea unei entiti; at (b) Autenticarea sursei informatiei; 4. Non - repudierea: Proprietatea care previne negarea unor evenimente anterioare. Celelalte obiective legate de securitatea informatiei (autenticarea mesajelor, semnturi, a autorizare, validare, controlul accesului, certicare, timestamping, conrmarea receptiei, anonimitate, revocare) pot derivate din acestea. Denitia 1.1 Criptograa este studiul metodelor matematice legate de securitatea infor matiei, capabile s asigure condentialitatea, autenticarea i non-repudierea mesajelor, a s precum i integritatea datelor vehiculate ([1]. s Termenul criptograe nseamn scriere secret1 . Domeniul cuprinde att operatia de a a a criptare (cifrare) a unui text, ct i eventualele a s ncercri de descifrare i de aare a cheii a s
1

Cuvntul este format din cuvintele greceti cryptos ascuns i grae scriere a s s

PRELEGEREA 1. NOTIUNI DE BAZA ALE CRIPTOGRAFIEI

de criptare. unele lucrri, cadrul general de lucru este numit criptologie, termenul de In a criptograe desemnnd numai operatia de cifrare i descifrare legal. a s a Situatia general de care se ocup criptograa este urmtoarea: a a a Expeditor
6 -

Destinatar

Criptanalist Expeditorul (personalizat majoritatea lucrrilor cu apelativul Alice) dorete s trimit n a s a a destinatarului (numit Bob) un mesaj printr-un canal de comunicatie, canal cu un grad ridicat de nesigurant2 . Aceast insecuritate o prezint un adversar criptanalist (Oscar) a a a care dorete din diverse motive s cunoasc i eventual s modice continutul s a a s a mesajului, dei acesta nu este destinat. s i Aceast condentialitate solicitat de Alice i Bob se rezolv de obicei prin transfora a s a marea mesajului aa fel at el s nu poat eles de nici o persoan care l-ar putea n s nc a a nt a intercepta. Transformarea respectiv se numete criptare. a s general, hackerul Oscar poate avea dou tipuri de comportament: In a Pasiv: el se multumete s intercepteze mesajele i s le citeasc, folosindu-le s a s a a n scop personal; Activ: dorete s modice mesajele, s le schimbe ordinea sau s introduc propriile s a a a a acest caz, mesajul va sale mesaje, intentia de a acceptat de Bob drept Alice. In n trebui s verice a nafar de conditia de condentialitate i pe cea de autenticitate: a s Bob trebuie s e sigur c mesajul primit a fost de la Alice. a a unele cazuri, problema se poate complica prin faptul c exist anumite mesaje pe In a a acest caz trebuie prevzute care Alice neag c apartin, dei le-a trimis chiar ea. In a a i s a anumite protocoale care s areasc proprietile de autenticare; proprieti care a nt a at at s o sileasc pe Alice s si recunoasc propriile mesaje (non-repudiere). a a a a toate aceste scenarii nu exist personaje pozitive sau negative. Orice serviciu de In a criptare/decriptare are i o sectie de criptanaliz. Se pot da numeroase exemple din s a istorie care s arate rolul pozitiv al lui Oscar anumite situatii. general, a n In ntr-un triplet (expeditor, destinatar, criptanalist) nimeni nu are ncredere nimeni. Variantele n studiate care Alice are n ncredere Bob sau invers, sunt mult mai simple i de aceea n s extrem de rare.
Canalul de comunicatie poate suferi i perturbri de ordin zic: zgomote, tergeri, demodulri etc; s a s a studiul detectrii i corectrii erorilor de de transmitere a informatiei constituie tema altui domeniu, a s a numit Teoria Codurilor.
2

1.1. DEFINITII SI NOTATII PRELIMINARE

Pentru a ncepe un studiu sistematic al domeniului, s stabilim ai terminologia a nt folosit uzual: a Un mesaj forma sa originar este numit text clar. Expeditorul rescrie acest mesaj n a folosind o metod cunoscut numai de el (eventual i de destinatar); spunem c el cripteaz a a s a a (sau cifreaz) mesajul, obtinnd un text criptat. Destinatarul primete textul cifrat i a a s s l decripteaz tiind metoda folosit pentru criptare; deci Alice i Bob trebuie s stabileasc as a s a a ntr-o etap preliminar detaliile modalitii de criptare i de decriptare. a a at s Algoritmul care realizeaz operatiile descrise se numete sistem de criptare. Formal, a s Denitia 1.2 Un sistem de criptare este o structur (P, C, K, E, D), unde: a P= {w | w V } este multimea textelor clare, scrise peste un alfabet nevid V (uzual V = {0, 1}). C= {w | w W } este multimea textelor criptate, scrise peste un alfabet nevid W (uzual W = V ). K este o multime de elemente numite chei. Fiecare cheie K K determin o metod de criptare eK E i o metod de a a s a decriptare dK D. eK : P C i dK : C P sunt functii cu proprietatea s dK (eK (w)) = w, w P. general se consider C= { | a P, k K, = eK (a)}. In a Functia eK este evident injectiv3 ; dac eK este bijectiv (i deci dK = e1 ), sistemul a a a s K de criptare se numete simetric. s Pentru ca un sistem de criptare s e considerat bun, trebuie a ndeplinite trei criterii (enuntate de Francis Bacon sec. XV II): n 1. Fiind date eK i P, este uor de determinat eK (); s s 2. Fiind date dK i w C, este uor de determinat dK (w); s s 3. este imposibil de determinat din w, fr a cunoate dK . aa s Ultimul criteriu denete sub o form vag ideea de securitate a sistemului. s a a La aceste criterii, Bacon aduga i o a patra regul: a s a 4 Textul criptat trebuie s e un text banal, fr suspiciuni. a aa Aceast conditie este utilizat astzi doar de un subdomeniu strict al criptograei, numit a a a steganograe. termeni de complexitate, prin uor se elege folosirea unui algoritm polinomial In s nt de grad mic preferabil algoritm liniar; o problem se consider imposibil dac pentru a a a a rezolvarea ei nu se cunosc dect algoritmi de complexitate exponential. a a
3

Conditia de injectivitate nu este obligatorie pentru functia de decriptare dK .

PRELEGEREA 1. NOTIUNI DE BAZA ALE CRIPTOGRAFIEI

Observatia 1.1 Intreaga disciplin numit criptograe se bazeaz pe o conjectur no a a a a tat prescurtat P= N P 4 (pentru detalii a se vedea [5]). P reprezint clasa problemelor a a rezolvabile prin algoritmi a cror complexitate este mrginit superior de o functie polia a a nomial lungimea datelor de intrare. Modelul standard de calculabilitate este maina a n s Turing. N P este clasa problemelor rezolvabile prin algoritmi nedeterministic polinomiali (care sunt inclui n algoritmii de complexitate cel putin exponential). Evident, P N P, s a dar se pare c problema egalitii este nedecidabil ( termeni matematici). Oricum, a at a n pentru cei interesati, site-ul [4] este dedicat unei informri actualizate permanent a rezul a tatelor i s ncercrilor de rezolvare a acestei probleme. a Exemplul 1.1 Unul din primele sisteme de criptare cunoscute este sistemul de criptare Cezar. Conform istoricului Suetoniu, el a fost folosit de Cezar corespondenta sa. n S considerm alfabetul latin scris, ordine a a n ABCDEFGHIJKLMNOPQRSTUVWXYZ Fie k un numr ntreg din intervalul [0, 25]. El se va numi cheie de criptare. Rea scriem alfabetul latin permutat ciclic, ncepnd a cu litera avnd numrul de ordine a ns a a k (litera A are numrul de ordine 0). Aceast nou scriere o aezm sub prima scriere, a a a s a astfel (am presupus k = 2): ABCDEFGHIJKLMNOPQRSTUVWXYZ CDEFGHIJKLMNOPQRSTUVWXYZAB Dac Alice are un text clar pe care vrea s-l cripteze cu sistemul Cezar, ea va proceda a a astfel: S presupunem c acest text clar este NIMIC NOU. Alice va aeza sub ecare liter a a a s a acestui text, litera aat pe linia a doua din tabelul de sus, astfel: a NIMICNOU PKOKEPQW Textul criptat obtinut este P KOKEP QW (din motive suplimentare de securitate, spatiile dintre cuvinte se ignor de obicei). a La primirea textului, Bob care tie c este vorba de sistemul de criptare Cezar s a va proceda astfel: el cunoate (ind destinatar legal) cheia de criptare ek . Cheia sa de s decriptare este e26k . Pe baza ei Bob va putea construi cele doua linii ale tabelului, dup a care va proceda ca Alice: scrie textul criptat pe prima linie, iar pe a doua linie determin a literele corespunztoare, conform tabelului. a In cazul k = 2, Bob va folosi drept cheie numrul e262 = e24 , iar tabelul (litera 24 a corespunde lui Y) este ABCDEFGHIJKLMNOPQRSTUVWXYZ YZABCDEFGHIJKLMNOPQRSTUVWX Literele P KOKEP QW determin pe a doua linie textul N IM ICN OU . a
Aceasta este prima din cele cinci probleme ale mileniului, pentru rezolvarea crora se acord premii a a de cte un milion dolari. a
4

1.1. DEFINITII SI NOTATII PRELIMINARE

S rescriem sistemul Cezar n termenii Denitiei 1.2. Deoarece textele clare i cele a s criptate folosesc alfabetul latin, vom efectua prima etap o operatie de codicare: n a asociem literelor numere ntregi din intervalul [0, 25]: A B C D E F G H I J K 0 1 2 3 4 5 6 7 8 9 10 N O P Q R S T U V W X 13 14 15 16 17 18 19 20 21 22 23 L 11 Y 24 M 12 Z 25

In acest fel putem opera matematic pe un inel nit foarte simplu: Z26 . Vom avea P = C = K= Z26 . Pentru un K K ales arbitrar, eK (m) = m + K (mod 26) i s dK () = K (mod 26) Denitia 1.3 Procesul de determinare a unei chei K folosind un text criptat (asociat eventual cu alte informatii auxiliare) se numete criptanaliz. s a Deci decriptarea i criptanaliza au nal acelai scop: aarea textului clar. Diferenta s n s const faptul c criptanaliz el trebuie aat fr a ti cheia de decriptare. Exist o a n a n a aa s a regul de aur a creatorilor de sisteme de criptare: a Nu subestimati niciodat pe criptanalist. a care s-a vericat din punct de vedere istoric pentru toate sistemele create pn a a n prezent: acestea sau au fost sparte sau trebuie s se revizuiasc periodic pentru a rezista a a atacurilor permanente ale intruilor. s S studiem putin pozitia unui criptanalist (Oscar). Se presupune a ntotdeauna c el a are la dispozitie faciliti de calcul excelente, adesea superioare celor de care dispun cei at doi parteneri Alice i Bob. s Mai mult, se poate considera c Oscar cunoate sistemul de criptare. S-a constatat a s c practic acest lucru se ampl totdeauna. Ce nu cunoate a criptanalistul este a nt a s ns cheia K K. Cel mai simplu atac const parcurgerea tuturor cheilor posibile i vericarea textului a n s criptat, pn se gsete cheia corect. Este atacul prin fort brut i el reuete totdeauna, a a a s a a as s s pentru c exist a a ntotdeauna o cheie K, care a folosit la criptare. Deci, cazul cnd n n a numrul cheilor posibile este mic ( Exemplul 1.1 sunt numai 26 chei), aceast cheie se a n a poate aa foarte uor dup un numr nit de s a a ncercri. De aceea sunt folosite obligatoriu a sisteme de criptare cu card(K) foarte mare. Pentru o cheie care ocup n biti sunt necesare a n general 2 cutri (dac nu exist nici o informatie suplimentar). O extindere a n a a a a a lungimii cheii la n + 1 biti dubleaz deci spatiul de cutare. momentul de fat, tehnica a a In a de calcul ofer atacuri prin fort brut eciente pentru cheile de lungimi mai mici de 128 a a a

PRELEGEREA 1. NOTIUNI DE BAZA ALE CRIPTOGRAFIEI

biti; aa c sistemele de criptare actuale folosesc general chei de 1024 biti sau chiar mai s a n mult5 . general, un criptanalist este pus fata urmtoarelor situatii, care solicit strategii In n a i a diverse de urmat: 1. Stie numai textul criptat w; acest caz atacurile sunt direct legate de lungimea n textului. sisteme simple cum este Cezar sunt suciente texte scurte, pentru c o In a singur potrivire produce textul - clar. Pentru sistemele mai evoluate, este necesar a a o lungime mai mare a textului criptat. Metodele de criptanaliz folosesc diverse a conjecturi i informatii statistice relative la alfabetul textului - clar, la frecventa s aparitiei caracterelor etc. 2. Stie cel putin o pereche de caractere (text clar, text criptat); din cunoaterea ctorva s a perechi (x, eK (x)) cu x V criptanalistul va ncearca s decripteze a ntregul text criptat interceptat. Exemplul 1.2 La sistemul de criptare Cezar, o singur pereche (a, eK (a)), dezvluie a a imediat cheia i implicit duce la decriptare. s Exemplul 1.3 Aceasta a fost situatia care s-a aat orientalistul francez Cham n pollion cnd a descifrat hieroglifele,folosind piatra de la Rosetta (vezi [6]). a 3. Criptanalistul cunoate criptarea unor texte clare selectate de el; este atacul cu text s clar ales, considerat majoritatea studiilor de criptanaliz. Aceast situatie este n a a adesea superioar celei din cazul precedent; s exemplicm acest lucru. a a a Exemplul 1.4 Fie sistemul de criptare Hill, creat 1929 de Lester Hill. Fie d 2 n un numr ntreg xat. Se denesc a P= C= (Z26 )d , K= {M | M Md (Z26 ), det(M ) = 0}. Deci o cheie de criptare este o matrice M ptrat nesingular de dimensiune d, cu a a a 1 elemente din Z26 , iar M formeaz cheia de decriptare. a Textul clar w se mparte n blocuri de lungime d : w = 1 2 . . . n , |i | = d (ultimul bloc se completeaz eventual pn ajunge la lungimea d). Textul criptat va a a a x = 1 2 . . . n unde i = eM (i ) = i M (mod 26), (1 i n). Pentru decriptare se folosete relatia dM (i ) = i M 1 (mod 26). s S lum de exemplu d = 2 i cheia M = a a s
5

3 3 2 5

, cu inversa M 1 =

15 17 20 9

O exceptie o constituie sistemele bazate pe curbe eliptice, datorit aparatului matematic special. a

1.1. DEFINITII SI NOTATII PRELIMINARE

Dac textul clar este w = F RAC, vom avea a 1 = (F R) = (5 17), 2 = (A C) = (0 2) Din relatiile 1 = 1 M (mod 26) = (5 17) 2 = 2 M (mod 26) = (0 2) se obtine textul criptat x = XW EK. S ne situm acum pe pozitia lui Oscar: presupunem c am gsit dimensiunea d = 2 a a a a 1 i s ncercm s am matricea M (sau echivalent M ), tiind perechea (text a a a s clar, text criptat)= (F RAC, XW EG). Deci Oscar se a acum n fata urmtoarei probleme: care este matricea M = a a a b 5 17 a b 23 22 cu a, b, c, d {0, 1, . . . , 25}, astfel ca = . c d 0 2 c d 4 10 Pentru a putea aa aceast matrice, Oscar trebuie s ae inversa lui A = a a Cum det(A) = 10 i cmmdc(10, 26) > 1 = 101 s este inversabil. a 5 17 . 0 2 (mod 26) nu exist; deci A nu a 3 3 2 5 3 3 2 5 = (23 22) = (X W ) = (4 10) = (E K)

S presupunem acum c Oscar lucreaz ipoteza (3); alege un text clar a crui maa a a n a trice este inversabil i i a criptarea. Fie BRAD acest text clar, a crui matrice as a a 1 17 asociat este A = a . Oscar solicit criptarea lui BRAD i primete LKGP a s s 0 3 11 10 de matrice B = . Deci el dispune de perechea (BRAD, LKGP ). 6 15 Oscar detemin nti A1 = a a 1 3 0 9 . Apoi, din ecuatia A M = B, va gsi solutia a 11 10 6 15 = 3 3 2 5

M = A1 B =

1 3 0 9

4. Stie cheia de criptare; acum Oscar va cunoate cheia eK i s s ncearc s determine dK a a nainte de interceptarea mesajelor criptate. Aceasta este situatia tipic sistemelor de criptare cu cheie public: cheia de criptare a a eK este cunoscut public cu mult a nainte de a folosit pentru criptare. Deci a criptanalistul are la dispozitie destul de mult timp pentru prelucrarea ei i orice s claricare perioada cnd timpul este ieftin are o valoare deosebit; dup ce se n a a a primesc mesaje criptate, timpul devine scump, i el trebuie s e scurtat ct mai s a a mult.

PRELEGEREA 1. NOTIUNI DE BAZA ALE CRIPTOGRAFIEI

1.2

Sisteme simetrice de criptare

general, sistemele de criptare clasice se numesc i sisteme simetrice. Motivul este acela In s c odat cu aarea cheii de criptare eK , cheia de decriptare dK se obtine imediat, ind a a functia invers. a Exemplul 1.5 In Exemplul 1.1, la sistemul Cezar dK = e26K este cheia de decriptare pentru cheia de criptare eK . Sistemele de criptare simetrice se mpart dou clase mari: cifruri de permutare i cifruri n a s cu substitutie.

1.2.1

Cifruri de permutare

La aceste sisteme de criptare, textul clar se mparte blocuri de n (n 2) caractere, n dup care ecrui bloc i se aplic o permutare xat. a a a a 1 2 3 . 2 1 3 Atunci un text clar, de exemplu FLOARE ALBASTRA se mparte grupuri de cte trei n a caractere (s-a considerat i caracterul spatiu, notat ) s FLO ARE AL BAS TRA Textul criptat va LFO RAE A L ABS RTA sau eliminnd gruprile, LFORAEA LABSRTA. a a Exemplul 1.6 S presupunem c vom lua drept cheie de criptare permutarea a a Exemplul 1.7 Un sistem celebru de criptare cu permutri este sistemul Richelieu, prezena tat i literatur de Jules Verne, romanul Mathias Sandorf. Dm un exemplu de s n a n a utilizare a unui astfel de sistem. Fie cartonul 6 6, n care zonele haurate constituie guri. s a

Vrem s criptm textul a a EMINESCU A FOST UN MARE POET NATIONAL Vom scrie acest text sub forma unui tabel cu ase linii i ase coloane, astfel: s s s

1.2. SISTEME SIMETRICE DE CRIPTARE E M I C U O S T M A R O E T T I O N A S F U N E P N A N A L E

Aplicnd cartonul peste acest text, vor rmne vizibile 9 caractere: MNS TA AN (citite a a a de la stnga la dreapta i de sus n jos). a s Vom roti acum cartonul cu 90o n sensul acelor de ceasornic. El va arta a

Aeznd acum peste text, rmn vizibile caracterele F MPTNIL (primul caracter a fost s a a a un spatiu i l-am marcat cu pentru a-l face vizibil). s La a treia rotire a cartonului se obtine similar textul ICSUEETOA, iar la a patra EEUAOURO Deci textul criptat este MNS TA AN F MPTNILICSUEETOAEEUAOURO Operatia de decriptare se realizeaz similar. a S formalizm aceste informatii. a a Denitia 1.4 Fie n un numr natural nenul. Un cifru de permutare este un sistem a (P, C, K, E, D) unde P= C= (Z26 )n , K= Pn (multimea permutrilor de n elemente). a Pentru o cheie (permutare) e (a1 a2 . . . an ) = a(1) a(2) . . . a(n) d (b1 b2 . . . bn ) = b1 (1) b1 (2) . . . b1 (n) Lema 1.1 Un cifru de permutare este un sistem de criptare Hill. Demonstratie: Pentru ecare permutare Pn putem construi o matrice de permutare M = (mi,j ) denit a mi,j = 1 i = (j) Se veric uor faptul c sistemul de criptare Hill cu matricea M este echivalent cu un a s a 1 cifru de permutare bazat pe cheia . Mai mult, M = M1 .

10

PRELEGEREA 1. NOTIUNI DE BAZA ALE CRIPTOGRAFIEI

Exemplul 1.8 S relum Exemplul 1.6. Permutrii a a a

1 2 3 2 1 3

corespunde matricea i

0 1 0

de permutare 1 0 0 .

0 0 1 Operatia de criptare este imediat. De exemplu, criptarea textului F LO este a 0 1 0 (5 11 14) 1 0 0 = (11 5 14) 0 0 1

adic LF O. a

1.3

Exercitii

1.1 Textul clar NUMAR este criptat Orice vnt nu bate seara. S se descrie sistemul n a a de criptare. 1.2 Folosind atacul prin fort brut, decriptati mesajul WYPTBSJBYZ criptat cu un a a sistem Cezar. 1.3 O cheie K este auto-cheie dac dK = eK . Gsiti toate auto-cheile sistemului de a a criptare Cezar. 1.4 Fie p un numr prim. Arti c numrul matricilor 2 2 inversabile peste Zp este a a at a a 2 2 (p 1)(p p). 1.5 Cte matrici 2 2 sunt inversabile peste Zn pentru n = 6, 9, 26 ? a 1.6 S se cripteze textul clar INAINTE SI LA DREAPTA folosind sistemul de xriptare a Hill cu matricea 17 17 5 M = 21 18 21 2 2 19

sau

11 2 19 M = 5 23 25 20 7 1

1.7 Cte auto-chei sunt ntr-un sistem de criptare Hill cu d = 2 ? a 1.8 Determinati inversele matricilor (modulo 26):

2 5 9 5

11 8 3 7

10 5 12 3 14 21 , 8 9 11

1 11 12 4 23 2 17 15 9

1.3. EXERCITII

11

1.9 Demonstrati c ntr-un cifru de permutare, este o auto-cheie dac i numai dac a as a (i, j) [(i) = j = (j) = i]

Gsiti toate auto-cheile unui cifru de permutare cu n = 2, 3, 4, 5, 6. a 1.10 Considerm urmtorul cifru de permutare: Se xeaz numerele naturale p, q. Texa a a tul clar se mparte n blocuri de cte p q caractere. Fiecare astfel de bloc se scrie pe liniile a unei matrici de p linii i q coloane. Criptarea blocului se realizeaz scriind aceste matrici s a pe coloane. M A I N De exemplu, pentru p = 3, q = 4, textul clar MAINI CURATE se scrie I C U R A T E X (textul s-a completat cu litera X). Textul criptat va MIAACTIUENRX. Decriptati urmtorul text DJNOUDNAINPAPANONZ criptat a ntr-un mod similar. 1.11 S se a N T U M Z S D A I G A E tiind c s a decripteze mesajul I N I I I D D N I I G R A D V O R U A U C M L T A L E A R A C R P S A D E A P R R I D R E D D E a fost criptat cu matricea Richelieu

R I R T B E M C A I T U I A S Z E Z S T I E S E denit Exemplul a n

E E I I I T T E C E P 1.7.

A D I E N I E E A O E L

12

PRELEGEREA 1. NOTIUNI DE BAZA ALE CRIPTOGRAFIEI

Bibliograe
[1] A. Menezes, P. Oorschot, S. Vanstome, Handbook of Applied Cryptography [2] D. Stinton, Cryptography, Theory and Practice, Chapman & Hall/CRC, 2002 [3] A. Salomaa, Criptograe cu chei publice, Ed. Militar, 1996 a [4] http://www.win.tue.nl/ gwoegi/P-versus-NP.htm [5] S. Cook, http : //www.claymath.org/millennium/P vs N P/Of f icial P roblem Description.pdf [6] http://en.wikipedia.org/wiki/Rosetta stone

13