Sunteți pe pagina 1din 13

Prelegerea 1

Notiuni de baz
a ale criptografiei
1.1

Definitii si notatii preliminare

Criptografia este o componenta a unui domeniu mult mai larg, numit securitatea informatiei.
Obiectivele urmarite de acesta pot fi sumarizate n:
1. Confidentialitate (privacy): proprietatea de a pastra secretul informatiei, pentru ca
aceasta sa fie folosita numai de persoanele autorizate.
2. Integritatea datelor: proprietatea de a evita orice modificare (inserare, stergere,
substitutie) neautorizata a informatiei.
3. Autentificare: Proprietatea de a identifica o entitate conform anumitor standarde.
Este compusa din
(a) Autentificarea unei entitati;
(b) Autentificarea sursei informatiei;
4. Non - repudierea: Proprietatea care previne negarea unor evenimente anterioare.
Celelalte obiective legate de securitatea informatiei (autentificarea mesajelor, semnaturi,
autorizare, validare, controlul accesului, certificare, timestamping, confirmarea receptiei,
anonimitate, revocare) pot fi derivate din acestea.
Definitia 1.1 Criptografia este studiul metodelor matematice legate de securitatea informatiei, capabile sa asigure confidentialitatea, autentificarea si non-repudierea mesajelor,
precum si integritatea datelor vehiculate ([1].
Termenul criptografie nseamna scriere secret
a1 . Domeniul cuprinde atat operatia de
criptare (cifrare) a unui text, cat si eventualele ncercari de descifrare si de aflare a cheii
1

Cuvantul este format din cuvintele grecesti cryptos ascuns si grafie scriere

ALE CRIPTOGRAFIEI
PRELEGEREA 1. NOT
IUNI DE BAZA

de criptare. In unele lucrari, cadrul general de lucru este numit criptologie, termenul de
criptografie desemnand numai operatia de cifrare si descifrare legala.
Situatia generala de care se ocupa criptografia este urmatoarea:
Expeditor

Destinatar

Criptanalist
Expeditorul (personalizat n majoritatea lucrarilor cu apelativul Alice) doreste sa trimita
destinatarului (numit Bob) un mesaj printr-un canal de comunicatie, canal cu un grad
ridicat de nesiguranta2 . Aceasta insecuritate o prezinta un adversar criptanalist (Oscar)
care doreste din diverse motive sa cunoasca si eventual sa modifice continutul
mesajului, desi acesta nu i este destinat.
Aceasta confidentialitate solicitata de Alice si Bob se rezolva de obicei prin transformarea mesajului n asa fel ncat el sa nu poata fi nteles de nici o persoana care l-ar putea
intercepta. Transformarea respectiva se numeste criptare.
In general, hackerul Oscar poate avea doua tipuri de comportament:
Pasiv: el se multumeste sa intercepteze mesajele si sa le citeasca, folosindu-le n
scop personal;
Activ: doreste sa modifice mesajele, sa le schimbe ordinea sau sa introduca propriile
sale mesaje, n intentia de a fi acceptat de Bob drept Alice. In acest caz, mesajul va
trebui sa verifice nafara de conditia de confidentialitate si pe cea de autenticitate:
Bob trebuie sa fie sigur ca mesajul primit a fost de la Alice.
In unele cazuri, problema se poate complica prin faptul ca exista anumite mesaje pe
care Alice neaga ca i apartin, desi le-a trimis chiar ea. In acest caz trebuie prevazute
anumite protocoale care sa ntareasca proprietatile de autentificare; proprietati care
sa o sileasca pe Alice sa si recunoasca propriile mesaje (non-repudiere).
In toate aceste scenarii nu exista personaje pozitive sau negative. Orice serviciu de
criptare/decriptare are si o sectie de criptanaliza. Se pot da numeroase exemple din
istorie care sa arate rolul pozitiv al lui Oscar n anumite situatii. In general, ntr-un
triplet (expeditor, destinatar, criptanalist) nimeni nu are ncredere n nimeni. Variantele
studiate n care Alice are ncredere n Bob sau invers, sunt mult mai simple si de aceea
extrem de rare.
2

Canalul de comunicatie poate suferi si perturbari de ordin fizic: zgomote, stergeri, demodulari etc;
studiul detect
arii si corect
arii erorilor de de transmitere a informatiei constituie tema altui domeniu,
numit Teoria Codurilor.

1.1. DEFINIT
II SI NOTAT
II PRELIMINARE

Pentru a ncepe un studiu sistematic al domeniului, sa stabilim ntai terminologia


folosita uzual:
Un mesaj n forma sa originara este numit text clar. Expeditorul rescrie acest mesaj
folosind o metoda cunoscuta numai de el (eventual si de destinatar); spunem ca el cripteaza
(sau cifreaza) mesajul, obtinand un text criptat. Destinatarul primeste textul cifrat si l
decripteaza stiind metoda folosita pentru criptare; deci Alice si Bob trebuie sa stabileasca
ntr-o etapa preliminara detaliile modalitatii de criptare si de decriptare.
Algoritmul care realizeaza operatiile descrise se numeste sistem de criptare. Formal,
Definitia 1.2 Un sistem de criptare este o structur
a (P, C, K, E, D), unde:
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
a o metod
a de criptare eK E si o metod
a de
decriptare dK D. eK : P C si dK : C P sunt functii cu proprietatea
dK (eK (w)) = w, w P.
In general se considera C= { | a P, k K, = eK (a)}.
Functia eK este evident injectiva3 ; daca eK este bijectiva (si deci dK = e1
K ), sistemul
de criptare se numeste simetric.
Pentru ca un sistem de criptare sa fie considerat bun, trebuie ndeplinite trei criterii
(enuntate de Francis Bacon n sec. XV II):
1. Fiind date eK si P, este usor de determinat eK ();
2. Fiind date dK si w C, este usor de determinat dK (w);
3. este imposibil de determinat din w, fara a cunoaste dK .
Ultimul criteriu defineste sub o forma vaga ideea de securitate a sistemului.
La aceste criterii, Bacon adauga si o a patra regula:
4 Textul criptat trebuie sa fie un text banal, fara suspiciuni.
Aceasta conditie este utilizata astazi doar de un subdomeniu strict al criptografiei, numit
steganografie.
In termeni de complexitate, prin usor se ntelege folosirea unui algoritm polinomial
de grad mic preferabil algoritm liniar; o problema se considera imposibila daca pentru
rezolvarea ei nu se cunosc decat algoritmi de complexitate exponentiala.
3

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

ALE CRIPTOGRAFIEI
PRELEGEREA 1. NOT
IUNI DE BAZA

Observatia 1.1 Intreaga


disciplina numit
a criptografie se bazeaz
a pe o conjectur
a notat
a prescurtat P6= N P 4 (pentru detalii a se vedea [5]). P reprezint
a clasa problemelor
rezolvabile prin algoritmi a caror complexitate este m
arginit
a superior de o functie polinomial
a n lungimea datelor de intrare. Modelul standard de calculabilitate este masina
Turing. N P este clasa problemelor rezolvabile prin algoritmi nedeterministic polinomiali
(care sunt inclusi n algoritmii de complexitate cel putin exponential
a). Evident, P N P,
dar se pare ca problema egalitatii este nedecidabil
a (n termeni matematici). Oricum,
pentru cei interesati, site-ul [4] este dedicat unei inform
ari actualizate permanent a rezultatelor si ncercarilor de rezolvare a acestei probleme.
Exemplul 1.1 Unul din primele sisteme de criptare cunoscute este sistemul de criptare
Cezar. Conform istoricului Suetoniu, el a fost folosit de Cezar n corespondenta sa.
S
a consideram alfabetul latin scris, n ordine
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Fie k un numar ntreg din intervalul [0, 25]. El se va numi cheie de criptare. Rescriem alfabetul latin permutat ciclic, ncep
and ns
a cu litera av
and num
arul de ordine
k (litera A are numarul de ordine 0). Aceast
a nou
a scriere o asez
am sub prima scriere,
astfel (am presupus k = 2):
ABCDEFGHIJKLMNOPQRSTUVWXYZ
CDEFGHIJKLMNOPQRSTUVWXYZAB
Dac
a Alice are un text clar pe care vrea s
a-l cripteze cu sistemul Cezar, ea va proceda
astfel:
S
a presupunem ca acest text clar este NIMIC NOU. Alice va aseza sub fiecare liter
aa
acestui text, litera aflata pe linia a doua din tabelul de sus, astfel:
NIMICNOU
PKOKEPQW
Textul criptat obtinut este P KOKEP QW (din motive suplimentare de securitate,
spatiile dintre cuvinte se ignora de obicei).
La primirea textului, Bob care stie c
a este vorba de sistemul de criptare Cezar
va proceda astfel: el cunoaste (fiind destinatar legal) cheia de criptare ek . Cheia sa de
decriptare este e26k . Pe baza ei Bob va putea construi cele doua linii ale tabelului, dupa
care va proceda ca Alice: scrie textul criptat pe prima linie, iar pe a doua linie determina
literele corespunzatoare, conform tabelului.
cazul k = 2, Bob va folosi drept cheie num
In
arul e262 = e24 , iar tabelul (litera 24
corespunde lui Y) este
ABCDEFGHIJKLMNOPQRSTUVWXYZ
YZABCDEFGHIJKLMNOPQRSTUVWX
Literele P KOKEP QW determin
a pe a doua linie textul N IM ICN OU .
4

Aceasta este prima din cele cinci probleme ale mileniului, pentru rezolvarea carora se acorda premii
de cate un milion dolari.

1.1. DEFINIT
II SI NOTAT
II PRELIMINARE

S
a rescriem sistemul Cezar n termenii Definitiei 1.2. Deoarece textele clare si cele
criptate folosesc alfabetul latin, vom efectua n prima etap
a o operatie de codificare:
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

acest fel putem opera matematic pe un inel finit foarte simplu: Z26 . Vom avea
In
P = C = K= Z26 . Pentru un K K ales arbitrar,
eK (m) = m + K (mod 26)
si
dK () = K (mod 26)
Definitia 1.3 Procesul de determinare a unei chei K folosind un text criptat (asociat
eventual cu alte informatii auxiliare) se numeste criptanaliz
a.
Deci decriptarea si criptanaliza au n final acelasi scop: aflarea textului clar. Diferenta
consta n faptul ca n criptanaliza el trebuie aflat fara a sti cheia de decriptare. Exista o
regula de aur a creatorilor de sisteme de criptare:
Nu subestimati niciodat
a pe criptanalist.
care s-a verificat din punct de vedere istoric pentru toate sistemele create pana n
prezent: acestea sau au fost sparte sau trebuie sa se revizuiasca periodic pentru a rezista
atacurilor permanente ale intrusilor.
Sa studiem putin pozitia unui criptanalist (Oscar). Se presupune ntotdeauna ca el
are la dispozitie facilitati de calcul excelente, adesea superioare celor de care dispun cei
doi parteneri Alice si Bob.
Mai mult, se poate considera ca Oscar cunoaste sistemul de criptare. S-a constatat
ca practic acest lucru se ntampla totdeauna. Ce nu cunoaste nsa criptanalistul este
cheia K K.
Cel mai simplu atac consta n parcurgerea tuturor cheilor posibile si verificarea textului
criptat, pana se gaseste cheia corecta. Este atacul prin fort
a brut
a si el reuseste totdeauna,
pentru ca exista ntotdeauna o cheie n K, care a folosit la criptare. Deci, n cazul cand
numarul cheilor posibile este mic (n Exemplul 1.1 sunt numai 26 chei), aceasta cheie se
poate afla foarte usor dupa un numar finit de ncercari. De aceea sunt folosite obligatoriu
sisteme de criptare cu card(K) foarte mare. Pentru o cheie care ocupa n biti sunt necesare
n general 2n cautari (daca nu exista nici o informatie suplimentara). O extindere a
lungimii cheii la n + 1 biti dubleaza deci spatiul de cautare. In momentul de fata, tehnica
de calcul ofera atacuri prin forta bruta eficiente pentru cheile de lungimi mai mici de 128

ALE CRIPTOGRAFIEI
PRELEGEREA 1. NOT
IUNI DE BAZA

biti; asa ca sistemele de criptare actuale folosesc n general chei de 1024 biti sau chiar mai
mult5 .
In general, un criptanalist este pus n fata urmatoarelor situatii, care i solicita strategii
diverse de urmat:
1. Stie numai textul criptat w; n acest caz atacurile sunt direct legate de lungimea
textului.
In sisteme simple cum este Cezar sunt suficiente texte scurte, pentru ca o
singura potrivire produce textul - clar. Pentru sistemele mai evoluate, este necesara
o lungime mai mare a textului criptat. Metodele de criptanaliza folosesc diverse
conjecturi si informatii statistice relative la alfabetul textului - clar, la frecventa
aparitiei caracterelor etc.
2. Stie cel putin o pereche de caractere (text clar, text criptat); din cunoasterea catorva
perechi (x, eK (x)) cu x V criptanalistul va ncearca sa decripteze ntregul text
criptat interceptat.
Exemplul 1.2 La sistemul de criptare Cezar, o singur
a pereche (a, eK (a)), dezv
aluie
imediat cheia si implicit duce la decriptare.
Exemplul 1.3 Aceasta a fost situatia n care s-a aflat orientalistul francez Champollion cand a descifrat hieroglifele,folosind piatra de la Rosetta (vezi [6]).
3. Criptanalistul cunoaste criptarea unor texte clare selectate de el; este atacul cu text
clar ales, considerat n majoritatea studiilor de criptanaliza. Aceasta situatie este
adesea superioara celei din cazul precedent; sa exemplificam acest lucru.
Exemplul 1.4 Fie sistemul de criptare Hill, creat n 1929 de Lester Hill. Fie d 2
un numar ntreg fixat. Se definesc
P= C= (Z26 )d , K= {M | M Md (Z26 ), det(M ) 6= 0}.
Deci o cheie de criptare este o matrice M p
atrat
a nesingular
a de dimensiune d, cu
1
elemente din Z26 , iar M formeaz
a cheia de decriptare.
Textul clar w se mparte n blocuri de lungime d : w = 1 2 . . . n , |i | = d
(ultimul bloc se completeaza eventual p
an
a ajunge la lungimea d). Textul criptat va
fi x = 1 2 . . . n unde i = eM (i ) = i M (mod 26),
(1 i n).
Pentru decriptare se foloseste relatia dM (i ) = i M 1 (mod 26).
S
a lu
am de exemplu d = 2 si cheia M =
5

3 3
2 5

, cu inversa M

15 17
20 9

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

1.1. DEFINIT
II SI NOTAT
II PRELIMINARE

Dac
a textul clar este w = F RAC, vom avea
1 = (F R) = (5 17),
2 = (A C) = (0 2)
Din relatiile
!

1 = 1 M (mod 26) = (5 17)

3 3
2 5

2 = 2 M (mod 26) = (0 2)

3 3
2 5

= (23 22) = (X W )
= (4 10) = (E K)

se obtine textul criptat x = XW EK.


S
a ne situam acum pe pozitia lui Oscar: presupunem c
a am g
asit dimensiunea d = 2
1
si ncercam sa aflam matricea M (sau echivalent M ), stiind perechea (text
clar, text criptat)= (F RAC, XW EG).
Deci Oscar
se afla acum n fata urm
atoarei probleme:! care este! matricea M !=
!
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
!

5 17
Pentru a putea afla aceasta matrice, Oscar trebuie s
a afle inversa lui A =
.
0 2
Cum det(A) = 10 si cmmdc(10, 26) > 1 = 101 (mod 26) nu exist
a; deci A nu
este inversabila.
S
a presupunem acum ca Oscar lucreaz
a n ipoteza (3); alege un text clar a c
arui matrice este inversabila si i afl
arui matrice
!a criptarea. Fie BRAD acest text clar, a c
1 17
asociata este A =
. Oscar solicit
a criptarea lui BRAD si primeste LKGP
0 3
!
11 10
de matrice B =
. Deci el dispune de perechea (BRAD, LKGP ).
6 15
Oscar detemina ntai A1 =
M =A

1 3
0 9

B =

. Apoi, din ecuatia A M = B, va g


asi solutia

1 3
0 9

11 10
6 15

3 3
2 5

4. Stie cheia de criptare; acum Oscar va cunoaste cheia eK si ncearca sa determine dK


nainte de interceptarea mesajelor criptate.
Aceasta este situatia tipica sistemelor de criptare cu cheie publica: cheia de criptare
eK este cunoscuta public cu mult nainte de a fi folosita pentru criptare. Deci
criptanalistul are la dispozitie destul de mult timp pentru prelucrarea ei si orice
clarificare n perioada cand timpul este ieftin are o valoare deosebita; dupa ce se
primesc mesaje criptate, timpul devine scump, si el trebuie sa fie scurtat cat mai
mult.

1.2

ALE CRIPTOGRAFIEI
PRELEGEREA 1. NOT
IUNI DE BAZA

Sisteme simetrice de criptare

In general, sistemele de criptare clasice se numesc si sisteme simetrice. Motivul este acela
ca odata cu aflarea cheii de criptare eK , cheia de decriptare dK se obtine imediat, fiind
functia inversa.
Exemplul 1.1, la sistemul Cezar dK = e26K este cheia de decriptare
Exemplul 1.5 In
pentru cheia de criptare eK .
Sistemele de criptare simetrice se mpart n doua clase mari: cifruri de permutare si cifruri
cu substitutie.

1.2.1

Cifruri de permutare

La aceste sisteme de criptare, textul clar se mparte n blocuri de n (n 2) caractere,


dupa care fiecarui bloc i se aplica o permutare fixata.
!

1 2 3
Exemplul 1.6 Sa presupunem ca vom lua drept cheie de criptare permutarea
.
2 1 3
Atunci un text clar, de exemplu FLOARE ALBASTRA se mparte n grupuri de c
ate trei
caractere (s-a considerat si caracterul spatiu, notat )
FLO ARE AL BAS TRA
Textul criptat va fi
LFO RAE A L ABS RTA
sau eliminand gruparile, LFORAEA LABSRTA.
Exemplul 1.7 Un sistem celebru de criptare cu permut
ari este sistemul Richelieu, prezentat si n literatura de Jules Verne, n romanul Mathias Sandorf. D
am un exemplu de
utilizare a unui astfel de sistem.
Fie cartonul 6 6, n care zonele hasurate constituie g
auri.

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

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

9
E

S
F
U N
E
P
N A
N A L

Aplic
and cartonul peste acest text, vor r
am
ane vizibile 9 caractere: MNS TA AN (citite
de la st
anga la dreapta si de sus n jos).
Vom roti acum cartonul cu 90o n sensul acelor de ceasornic. El va ar
ata

Asez
and acum peste text, raman vizibile caracterele F MPTNIL (primul caracter a fost
un spatiu si l-am marcat cu pentru a-l face vizibil).
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
a similar.
Sa formalizam aceste informatii.
Definitia 1.4 Fie n un numar natural nenul. Un cifru de permutare este un sistem
(P, C, K, E, D) unde P= C= (Z26 )n , K= Pn (multimea permut
arilor de n elemente).
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 fiecare permutare Pn putem construi o matrice de permutare
M = (mi,j ) definita
mi,j = 1 i = (j)
Se verifica usor faptul ca sistemul de criptare Hill cu matricea M este echivalent cu un
cifru de permutare bazat pe cheia . Mai mult, M1 = M1 .

ALE CRIPTOGRAFIEI
PRELEGEREA 1. NOT
IUNI DE BAZA

10

Exemplul 1.8 Sa reluam Exemplul 1.6. Permut


arii

0 1 0

1 2 3
2 1 3

i corespunde matricea

de permutare 1 0 0 .

0 0 1
Operatia de criptare este imediat
a. De exemplu, criptarea textului F LO este

0 1 0

(5 11 14) 1 0 0
= (11 5 14)
0 0 1
adic
a LF O.

1.3

Exercitii

1.1 Textul clar NUMAR este criptat n Orice v


ant nu bate seara. S
a se descrie sistemul
de criptare.
1.2 Folosind atacul prin forta brut
a, decriptati mesajul WYPTBSJBYZ criptat cu un
sistem Cezar.
1.3 O cheie K este auto-cheie dac
a dK = eK . G
asiti toate auto-cheile sistemului de
criptare Cezar.
1.4 Fie p un numar prim. Aratati c
a num
arul matricilor 2 2 inversabile peste Zp este
2
2
(p 1)(p p).
1.5 C
ate matrici 2 2 sunt inversabile peste Zn pentru n = 6, 9, 26 ?
1.6 S
a se cripteze textul clar INAINTE SI LA DREAPTA folosind sistemul de xriptare
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 C
ate auto-chei sunt ntr-un sistem de criptare Hill cu d = 2 ?
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. EXERCIT
II

11

1.9 Demonstrati ca ntr-un cifru de permutare, este o auto-cheie dac


a si numai daca
(i, j) [(i) = j

(j) = i]

G
asiti toate auto-cheile unui cifru de permutare cu n = 2, 3, 4, 5, 6.
1.10 Consideram urmatorul cifru de permutare: Se fixeaz
a numerele naturale p, q. Textul clar se mparte n blocuri de cate p q caractere. Fiecare astfel de bloc se scrie pe liniile
unei matrici de p linii si q coloane. Criptarea blocului se realizeaz
a scriind aceste matrici
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 fi MIAACTIUENRX.
Decriptati urmatorul text DJNOUDNAINPAPANONZ criptat ntr-un mod similar.
1.11 S
a se
N T
U M
Z S
D A
I G
A E
stiind c
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
definit
a n Exemplul

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

ALE CRIPTOGRAFIEI
PRELEGEREA 1. NOT
IUNI DE BAZA

Bibliografie
[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, Criptografie cu chei publice, Ed. Militara, 1996
[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

S-ar putea să vă placă și