Documente Academic
Documente Profesional
Documente Cultură
C 1
C 1
Notiuni de baz
a ale criptografiei
1.1
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
ALE CRIPTOGRAFIEI
PRELEGEREA 1. NOT
IUNI DE BAZA
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
!
3 3
2 5
2 = 2 M (mod 26) = (0 2)
3 3
2 5
= (23 22) = (X W )
= (4 10) = (E K)
=
.
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 =
1 3
0 9
11 10
6 15
3 3
2 5
1.2
ALE CRIPTOGRAFIEI
PRELEGEREA 1. NOT
IUNI DE BAZA
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
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:
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
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
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
(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