Documente Academic
Documente Profesional
Documente Cultură
1
2 PRELEGEREA 1. NOŢIUNI DE BAZĂ ALE CRIPTOGRAFIEI
Bibliografie
Obiective:
1. Confidenţialitate (privacy): proprietatea de a păstra secretul informaţiei,
pentru ca aceasta să fie folosită numai de persoanele autorizate.
2. Integritatea datelor: proprietatea de a evita orice modificare (inserare,
ştergere, substituţie) neautorizată a informaţiei.
3. Autentificare: Proprietatea de a identifica o entitate conform anumitor
standarde. Este compusă din
(a) Autentificarea unei entităţi;
(b) Autentificarea sursei informaţiei;
4. Non - repudierea: Proprietatea care previne negarea unor evenimente
anterioare.
Celelalte obiective legate de securitatea informaţiei (autentificarea mesajelor,
semnături, autorizare, validare, controlul accesului, certificare, anonimi-
tate, timestamping, confirmarea recepţiei, revocare) pot fi derivate din aces-
tea.
Definiţia 1.1 Criptografia este studiul metodelor matematice legate de se-
curitatea informaţiei, capabile să asigure confidenţialitatea, autentificarea
şi non-repudierea mesajelor, precum şi integritatea datelor vehiculate.
4 PRELEGEREA 1. NOŢIUNI DE BAZĂ ALE CRIPTOGRAFIEI
În unele lucrări, cadrul general de lucru este numit criptologie, termenul
de criptografie desemnând numai operaţia de cifrare şi descifrare legală.
Expeditor - Destinatar
6
Criptanalist
1
Canalul de comunicaţie poate suferi şi perturbări de ordin fizic: zgomote, ştergeri, demodulări etc;
studiul detectării şi corectării erorilor de de transmitere a informaţiei constituie tema altui domeniu,
numit Teoria Codurilor.
1.1. DEFINIŢII ŞI NOTAŢII PRELIMINARE 5
• Activ: doreşte să modifice mesajele, să le schimbe ordinea sau să in-
troducă propriile sale mesaje, ı̂n intenţia de a fi acceptat de Bob drept
Alice.
În unele cazuri, problema se poate complica prin faptul că există anu-
mite mesaje pe care Alice neagă că ı̂i aparţin, deşi le-a trimis chiar ea.
În acest caz trebuie prevăzute anumite protocoale care să ı̂ntărească
proprietăţile de autentificare; proprietăţi care să o silească pe Alice să
ı̂şi recunoască propriile mesaje (non-repudiere).
În acest fel putem opera matematic pe un inel finit foarte simplu: Z26 . Vom
avea
P = C = K= Z26 . Pentru un K ∈ K ales arbitrar,
şi
dK (α) = α − K (mod 26)
1.1. DEFINIŢII ŞI NOTAŢII PRELIMINARE 11
Deci decriptarea şi criptanaliza au ı̂n final acelaşi scop: aflarea textului
clar. Diferenţa constă ı̂n faptul că ı̂n criptanaliză el trebuie aflat fără a şti
cheia de decriptare.
Cel mai simplu atac constă ı̂n parcurgerea tuturor cheilor posibile şi
verificarea textului criptat, până se găseşte cheia corectă. Este atacul prin
forţă brută şi el reuşeşte totdeauna, pentru că există ı̂ntotdeauna o cheie
ı̂n K, care a folosit la criptare. Deci, ı̂n cazul când numărul cheilor posibile
este mic, această cheie se poate afla foarte uşor după un număr finit de
ı̂ncercări.
De aceea sunt folosite obligatoriu sisteme de criptare cu card(K) foarte
mare.
Pentru o cheie care ocupă n biţi sunt necesare ı̂n general 2n căutări
(dacă nu există nici o informaţie suplimentară). O extindere a lungimii
cheii la n + 1 biţi dublează deci spaţiul de căutare.
În momentul de faţă, tehnica de calcul oferă atacuri prin forţă brută
eficiente pentru cheile de lungimi mai mici de 128 biţi; aşa că sistemele de
criptare actuale folosesc ı̂n general chei de 1024 biţi sau chiar mai mult.
(O excepţie o constituie sistemele bazate pe curbe eliptice, datorită
aparatului matematic special).
1.1. DEFINIŢII ŞI NOTAŢII PRELIMINARE 13
În general, un criptanalist este pus ı̂n faţa următoarelor situaţii, care ı̂i
solicită strategii diverse de urmat:
1. Ştie numai textul criptat w; ı̂n acest caz atacurile sunt direct legate
de lungimea textului.
În sisteme simple – cum este Cezar – sunt suficiente texte scurte,
pentru că o singură potrivire produce textul - clar. Pentru sistemele
mai evoluate, este necesară o lungime mai mare a textului criptat.
Metodele de criptanaliză folosesc diverse conjecturi şi informaţii sta-
tistice relative la alfabetul textului - clar, la frecvenţa apariţiei carac-
terelor etc.
2. Ştie cel puţin o pereche de caractere (text clar, text criptat); din
cunoaşterea câtorva perechi (x, eK (x)) cu x ∈ V criptanalistul va
ı̂ncerca să decripteze ı̂ntregul text criptat interceptat.
Exemplul 1.3 Aceasta a fost situaţia ı̂n care s-a aflat orientalistul
francez Champollion când a descifrat hieroglifele,folosind piatra de la
Rosetta (http://en.wikipedia.org/wiki/Rosetta stone)
Să ne situăm acum pe poziţia lui Oscar: presupunem că am găsit di-
mensiunea d = 2 şi ı̂ncercăm să aflăm matricea M (sau – echivalent –
M −1 ), ştiind perechea (text clar, text criptat)= (F RAC, XW EG).
a b
Oscar trebuie să afle matricea M = cu a, b, c, d ∈ {0, 1, . . . , 25},
c d
5 17 a b 23 22
astfel ca · = .
0 2 c d 4 10
5 17
Deci Oscar trebuie să afle inversa lui A = . Cum det(A) = 10
0 2
şi cmmdc(10, 26) > 1 =⇒ 10−1 (mod 26) nu există; deci A nu este
inversabilă.
Să presupunem acum că Oscar lucrează ı̂n ipoteza (3); alege un text clar
a cărui matrice este inversabilă şi ı̂i află
criptarea.
Fie BRAD acest text
1 17
clar, a cărui matrice asociată este A = . Oscar solicită criptarea
0 3
11 10
lui BRAD şi primeşte LKGP – de matrice B = . Deci el
6 15
dispune de perechea (BRAD, LKGP ).
1 3
Oscar detemină ı̂ntâi A−1 = . Apoi, din ecuaţia A · M = B, va
0 9
găsi soluţia
−1 1 3 11 10 3 3
M =A ·B = · =
0 9 6 15 2 5
1.2. SISTEME SIMETRICE DE CRIPTARE 17
Cifruri de substituţie
Cezar este un sistem generat de permutările ciclice din P26 . Fiind numai
26 chei posibile, el este extrem de vulnerabil la atacul prin forţă brută.
Sistemul Cezar cu cheie rezistă mai bine la atacul cu forţă brută, numărul
cheilor fiind acum card(P26 ) = 26!.
1.3. SISTEME DE CRIPTARE MONOALFABETICE 25
A B C D E
A A B C D E
B F G H I J
C K L M N O
D P Q R S T
E U V X Y Z
: . : : . : : : : : : : . :
28 PRELEGEREA 1. NOŢIUNI DE BAZĂ ALE CRIPTOGRAFIEI
Exemplul 1.8 Să considerăm că s-a interceptat următorul text, criptat cu
un sistem monoalfabetic (nu se ştie exact ce sistem a fost utilizat).
lqakc sp gcxk aca pcmgqb kq kxc pkersmpqsb vk vsmgxkbc
mkacpc tcacpbqlqs vk cgele cmtxq ms nocxgsb mbxcsp vk
exsgk oxcbqsbcbk texbslk spclbk gcxk cmgqpvkcq bxkgcbexslk
gqxbslk xktxknkpbcq tkpbxq mbxcsps qp cfkxbsmakpb mqtcxcbex
vcx lsatkvk pq bxkrqscq mc zsk txkc gqxsems psgs mc mk cmbktbk
mc czlk acxk lqgxq vk lc gkl gq gcxk fkpkcq sp gepbcgb
Caracter c k x b s q g p m l e p a v b n o f z
Frecvenţă 39 38 27 25 23 20 19 18 18 11 9 8 7 7 2 2 2 2 2
Deci caracterele cele mai frecvente sunt c şi k. Pe de-altă parte, cele mai
frecvente caractere din limba română sunt a, i şi e. În mod cert, a ∈ {c, k}.
Sunt patru opţiuni posibile, din care trei se elimină rapid.
Varianta c ←− a, k ←− e.
Vom nota cu litere mari caracterele din textul clar; prin ı̂nlocuirea lui c
cu A, a lui k cu E, textul devine
lqaEA sp gAxE aAa pAmgqb Eq ExA pEersmpqsb vE vsmgxEbA
mEaApA tAaApbqlqs vE Agele Amtxq ms noAxgsb mbxAsp vE
exsgE oxAbqsbAbE texbslE spAlbE gAxE AmgqpvEAq bxEgAbexslk
gqxbslE xEtxEnEpbAq tEpbxq mbxAsps qp AfExbsmaEpb mqtAxAbex
vAx lsatEvE pq bxErqsAq mA zsE txEA gqxsems psgs mA mE AmbEtbE
mA AzlE aAxE lqgxq vE lA gEs gq gAxE fEpEAq sp gepbAgb
Cuvântul ExA de pe primul rând are caracterul din mijloc (x) de frecvenţă
ridicată (27 apariţii); deci el trebuie să corespundă unei litere frecvente din
limba română şi – ı̂n plus – să aibă semnificaţie semantică. Concluzie:
acest cuvânt este ERA. Deci x ←− R.
30 PRELEGEREA 1. NOŢIUNI DE BAZĂ ALE CRIPTOGRAFIEI
Numai că acest sistem a fost spart de Kasiski ı̂ncă din 1863 (şi indepen-
dent de Babbage ı̂n 1854).
1.5. SISTEME DE CRIPTARE POLIALFABETICE 39
x0 xp x2p . . .
x1 xp+1 x2p+1 . . .
..
.
xp−1 x2p−1 x3p−1 . . .
Elementele de pe prima linie au fost criptate după formula
adică cu un sistem Cezar (k0 fiind o valoare fixată din Z26 ). În mod similar
şi celelalte linii.