UNIVERSITATEA
TITU MAIORESCU
Facultatea de Ş tiin tiinţ a şi Tehnologia Informaţ iei iei
Conf. univ. dr. ing.
CIPRIAN R ĂCUCIU
Curs pentru învăţământul la distanţă
BUCUREŞTI – 2008
Prefaţă
Importanţa criptării informaţiilor este evidenţiată de utilizarea în tot mai multe domenii a leg ăturilor secretizate: comunica ţiile militare, comunica ţiile serviciilor speciale, comunica ţiile guvernamentale, comunica ţiile diplomatice, comunicaţiile din mediile financiar-bancare, comunica ţiile agenţilor economici, televiziunile companiilor private. Comunicaţiile protejate au ca scop p ăstrarea confidenţialităţii informaţionale şi a caracterului de secret, atât politico-diplomatic cât şi economico-financiar. Accesul neautorizat la comunica ţiile structurilor militare, ale altor institu ţii de stat sau ale agen ţilor economici, care nu respect ă strict regulile de trafic în reţelele proprii, care nu aplic ă măsuri de protecţie capabile s ă înlăture sau să diminueze stările de pericol generate de vulnerabilit ăţile sistemelor de telecomunicaţii sau ale celor de securitate, poate produce consecin ţe grave. Un sistem de comunica ţii este alc ătuit din componente diferite, distribuite spaţial, permiţând efectuarea cu uşurinţă de atacuri sau operaţii ilegale, aspect care subliniază necesitatea vital ă a protecţiei sistemului. În proiectarea securităţii unui sistem de comunica ţie trebuie avute în vedere următoarele categorii de protec ţii: Confiden ţ ialitatea ialitatea – protejarea informaţiei împotriva citirii sau copierii de către utilizatorii care nu au o autorizare explicit ă; Integritatea datelor – protejarea informaţiei împotriva ştergerii sau modificării f ăcute f ăr ă permisiunea proprietarului acesteia; Disponibilitatea Disponibilitatea – protejarea unui serviciu astfel încât acesta s ă fie disponibil permanent şi s ă nu poată fi inactivat f ăr ă autorizaţie din partea administratorului; Controlul accesului – gestionarea accesului la sistem. Împiedic ă utilizatorii neautoriza ţi să acceadă în sistem, periclitând integritatea resurselor şi confidenţialitatea informa ţiilor; – înregistrarea activit ăţii sistemului, pentru ca administratorul s ă Auditul – identifice în egal ă măsur ă utilizatorii şi acţiunile întreprinse, ţinînd cont că şi utilizatorii autoriza ţi pot face acţiuni eronate sau r ăuvoitoare care să afecteze sistemul. Fiecare organizaţie atribuie importan ţă diferită acestor aspecte, în funcţie de cerinţele şi obiectivele de securitate avute în vedere: mediul bancar – integritatea şi auditul sunt cele mai importante, pe plan imediat inferior fiind confiden ţialitatea şi disponibilitatea; •
•
•
•
•
•
I
Prefaţă
Importanţa criptării informaţiilor este evidenţiată de utilizarea în tot mai multe domenii a leg ăturilor secretizate: comunica ţiile militare, comunica ţiile serviciilor speciale, comunica ţiile guvernamentale, comunica ţiile diplomatice, comunicaţiile din mediile financiar-bancare, comunica ţiile agenţilor economici, televiziunile companiilor private. Comunicaţiile protejate au ca scop p ăstrarea confidenţialităţii informaţionale şi a caracterului de secret, atât politico-diplomatic cât şi economico-financiar. Accesul neautorizat la comunica ţiile structurilor militare, ale altor institu ţii de stat sau ale agen ţilor economici, care nu respect ă strict regulile de trafic în reţelele proprii, care nu aplic ă măsuri de protecţie capabile s ă înlăture sau să diminueze stările de pericol generate de vulnerabilit ăţile sistemelor de telecomunicaţii sau ale celor de securitate, poate produce consecin ţe grave. Un sistem de comunica ţii este alc ătuit din componente diferite, distribuite spaţial, permiţând efectuarea cu uşurinţă de atacuri sau operaţii ilegale, aspect care subliniază necesitatea vital ă a protecţiei sistemului. În proiectarea securităţii unui sistem de comunica ţie trebuie avute în vedere următoarele categorii de protec ţii: Confiden ţ ialitatea ialitatea – protejarea informaţiei împotriva citirii sau copierii de către utilizatorii care nu au o autorizare explicit ă; Integritatea datelor – protejarea informaţiei împotriva ştergerii sau modificării f ăcute f ăr ă permisiunea proprietarului acesteia; Disponibilitatea Disponibilitatea – protejarea unui serviciu astfel încât acesta s ă fie disponibil permanent şi s ă nu poată fi inactivat f ăr ă autorizaţie din partea administratorului; Controlul accesului – gestionarea accesului la sistem. Împiedic ă utilizatorii neautoriza ţi să acceadă în sistem, periclitând integritatea resurselor şi confidenţialitatea informa ţiilor; – înregistrarea activit ăţii sistemului, pentru ca administratorul s ă Auditul – identifice în egal ă măsur ă utilizatorii şi acţiunile întreprinse, ţinînd cont că şi utilizatorii autoriza ţi pot face acţiuni eronate sau r ăuvoitoare care să afecteze sistemul. Fiecare organizaţie atribuie importan ţă diferită acestor aspecte, în funcţie de cerinţele şi obiectivele de securitate avute în vedere: mediul bancar – integritatea şi auditul sunt cele mai importante, pe plan imediat inferior fiind confiden ţialitatea şi disponibilitatea; •
•
•
•
•
•
I
•
domeniul militar, diplomatic sau guvernamental – – confidenţialitatea este
pe prim plan, iar disponibilitatea disponibilitatea într-un plan secund; mediul universitar – integritatea şi diponibilitatea sunt cele mai importante. În cazul utiliz ării algoritmilor criptografici, indiferent de tipul acestora (criptografia clasică cu algoritmi simetrici sau cea cu chei publice), întrebarea care se pune este cum s ă se facă criptarea: hardware sau software? Până recent, toţi producătorii de sisteme de criptare î şi ofereau produsele sub forma unor cutii ce se ataşau unei linii de comunica ţii şi criptau datele de-a lungul liniei. De şi criptarea software devine tot mai dominant ă, cea hardware este înc ă cea mai cerută în aplicaţiile militare sau comerciale de mare importan ţă. Tendinţa actuală este ca tot mai multe companii s ă îşi secretizeze datele printr-un hardware specializat implementat în echipamentele de comunica ţie, existând însă în momentul de faţă şi cealaltă soluţie cel puţin la fel de atractivă. Orice algoritm de criptare poate fi implementat software. Dezavantajele, cel pu ţin până în prezent, constau în vitez ă, dezavantaj minimizat de apari ţia procesoarelor performante, şi lipsa de protec ţie în faţa atacurilor distructive. Avantajul este oferit de flexibilitate şi portabilitate, u şurinţă în folosire şi în efectuarea de upgrade-uri. Programele criptografice pot fi copiate foarte u şor şi instalate pe orice sistem şi se pot încorpora în aplicaţii complexe, cum ar fi cele de comunica ţii. •
Autorii
II
CUPRINS
1. Bazele matematice ale sistemelor de secretizare
1
1.1 Noţiuni de teoria numerelor 1.2 Congruenţe 1.3 Inele de polinoame
1 3 14
2. Bazele teoretice ale sistemelor secrete
26
2.1 2.2 2.3 2.4
Introducere Modelul matematic al sistemului secret Reprezentarea sistemelor secrete Compunerea sistemelor secrete
3. Succesiuni pseudoaleatoare în secretizarea informa ţiei 3.1 Succesiuni de numere aleatoare 3.2 Teste de aleatorism 3.3 Scheme liniare şi neliniare pentru generarea succesiunilor pseudoaleatoare
4. Metode de cifrare 4.1 Metode de cifrare bazate pe funcţii de permutare 4.2 Funcţii polinomiale 4.3 Metode de cifrare
5. Dispozitive şi maşini criptografice
26 26 27 29
41 41 44 48
55 55 58 58
68
6. Elemente de criptanaliză 6.1 Caracteristicile statistice ale limbajelor naturale 6.2 Metode de decriptare 6.3 Spargerea sistemelor criptografice 6.4 Spargerea sistemelor poligrafice
83 83 92 98 106
7. Mijloace criptografice moderne 7.1 Introducere 7.2 Echipamente de criptare pentru protecţia comunicaţiei terminal la terminal 7.3 Echipamente de secretizare de grup 8. Aspecte privind managementul secretiz ării în reţelele moderne de telecomunicaţii 8.1 Reţele de telecomunicaţii moderne. Prezentare generală 8.2 Sistemul de management 8.3 Managementul protecţiei informaţiilor 8.4 Protecţia datelor de management
111 111 112 130
136 136 137 138 141
CAPITOLUL 1 BAZELE MATEMATICE ALE SISTEMELOR DE SECRETIZARE
1.1 Noţiuni de teoria numerelor 1.1.1 Numere prime
Fiind date dou ă numere naturale m şi n, spunem că m divide pe n, sau că n este multiplu al lui m, dacă există un număr natural k astfel încât: n = m ⋅ k . În acest caz se scrie m/n sau m:n. Relaţia de divizibilitate pe ! o vom nota cu | . Pentru un număr n ∈ ! , un număr m ∈ ! se numeşte divizor al lui n dacă m/n. Deoarece n = 1 ⋅ n şi n = n ⋅ 1, avem 1/n şi n/n, deci 1şi n sunt divizori ai lui n pentru ∀n ∈ ! . Numerele 1 şi n se numesc divizori improprii ai lui n, iar orice alt divizor al lui n se va numi divizor propriu. Orice număr natural m este divizor al lui 0, deci 0 = m ⋅ 0 şi m/0. Cu excepţia numărului 1 care are un singur divizor, orice num ăr natural n >1 are cel pu ţin doi divizori distinc ţi, aceştia fiind 1 şi n. Un număr natural n >1 care are numai doi divizori se nume şte număr prim. Propriet ăţ i 1) Relaţia de divizibilitate este o rela ţie de ordine pe ! . 2) Pentru ∀n ∈ ! avem n/n deci relaţia este reflexivă. 3) Dacă m şi n sunt două numere naturale şi avem m/n şi n/m, putem scrie:
n = k1m şi m = k2n, unde k1, k 2 ∈ !
deci n = k1 ( k2 n ) = k1k2n = n ( k1k2 ) , ceea ce arat ă că n = 0 sau k1k 2 = 1 Dacă n = 0 , atunci m = k2n = 0 = n . Dacă k1k 2 = 1, atunci se demonstreaz ă că k1 = k 2 = 1 , deci m = n . Putem spune c ă relaţia este antisimetrică. 4) Dacă m, n si p sunt numere naturale şi avem: m/n şi n/ p atunci: n = k1m şi p = k2 n = k1k2m Deci m/ p şi relaţia / este tranzitivă. Defini ţ ie. Un număr natural p >1 este număr prim dacă şi numai dac ă pentru orice două numere naturale m şi n avem: p = m ⋅ n ⇒ m = 1 sau n = 1 .
Bazele matematice ale sistemelor de secretizare
Numerele prime sunt foarte importante în primul rând datorit ă faptului că orice număr natural nenul se scrie în mod unic ca un produs de numere prime . Acest rezultat, cunoscut sub numele de teorema fundamental ă a aritmeticii, a devenit, prin generaliz ările care i s-au dat instrumentul de baz ă în multe capitole ale teoriei algebrice a numerelor şi ale algebrei abstracte. Numerele prime sunt de asemenea importante deoarece multe teoreme despre numere prime sunt u şor de formulat, dar foarte greu de demonstrat. Unele din aceste „teoreme” se dovedesc adev ărate în toate cazurile accesibile calculului, prin mijloacele cunoscute pân ă în prezent, dar aceste mijloace se dovedesc insuficiente pentru a se verifica valabilitatea generala a „teoremei” respective. Una din primele probleme care s-a pus este dac ă mulţimea numerelor prime este infinită sau nu. R ăspunsul este dat de teorema lui Euclid. Teorema: Mulţimea numerelor prime este infinit ă. Demonstraţia se face foarte simplu dac ă, prin reducere la absurd presupunem că mulţimea numerelor prime este finit ă. Fie P = { p1, p2 ,..., pn } aceast ă mulţime: Consider ăm numărul natural: N = p1 ⋅ p2 ... pn + 1 . Deoarece ! > 1 , există un număr p astfel încât p / ! . Deoarece p ∈ P , rezultă p / p1 p2 ... pn şi deci p / N − ( p1 p2 ... pn ) = 1 . Aşadar p/1, ceea ce contrazice faptul c ă p este număr prim. Legat de faptul c ă mulţimea numerelor prime este infinit ă, s-a pus ( x) numărul numerelor problema distribuţiei acestor numere. Notând cu prime mai mici decât x, se pune problema g ăsirii unei formule de calcul pentru
∏
∏
( x) . Mai mulţi matematicieni au g ăsit experimental c ă:
∏
( x) ≅
x
ln x
, însă
abia la sfâr şitului secolului trecut J. Hadammar şi Ch. J. de la Valle Paussin au demonstrat că: ( x) ∏ lim =1
x →∞
x
ln x S-a pus şi problema dac ă anumite mulţimi de numere prime, cu anumite n proprietari sunt infinite sau nu. Astfel, numerele prime de forma 22 + 1 se numesc numere prime Fermat iar numerele prime de forma 2 p − 1 , unde p este număr prim, se numesc numere prime Mersenne. Nu se cunoa şte dacă mulţimea numerelor prime Fermat sau Mersenne este finit ă sau nu. n Teoremă . Dacă a şi n sunt numere naturale, a ≥ 1 şi n ≥ 2 astfel încât a − 1 este număr prim, atunci a = 2 şi n este număr prim. Într-adev ăr
Bazele matematice ale sistemelor de secretizare
an
− 1 = ( a − 1)( a n −1 + a n − 2 + " + a + 1)
şi în ipoteza ca a n − 1 este prim, rezult ă că a – 1=1 deci a = 2 . Dacă m/n, deci n = m ⋅ k avem:
2n − 1 = 2mk − 1 = ( 2m ) − 1 = ( 2m − 1) 2m( k −1) + ... + 2m + 1 . k
Rezultă că: 2mk − 1 = 2m sau mk = m, deci m = n sau k = 1. Deci n este număr prim. Se demonstreaz ă că nu numai n este prim dac ă şi numai dac ă:
n n − 1 m − m = 2 unde [ x ] = partea întreag ă a lui x. 1≤ m ≤ n
∑
Se întâlnesc dou ă situaţii: a) m/n, deci n = km si atunci
km − km − 1 = k − k + 1 = 1 ; m m b) m nu divide pe n, deci n = km + s; 1 ≤ s ≤ m km + s − km + s − 1 = k − k = 0 . m m Deci dacă n este un număr prim, atunci el are doar cei doi divizori improprii, iar daca n are τ( n) divizori atunci:
n n − 1 m − m = τ(n) 1≤ m ≤ n
∑
1.2 CONGRUENŢE 1.2.1 No ţ iunea de congruen ţ e Defini ţ ie. Fie n un număr întreg pozitiv. Pe inelul Z al numerelor întregi, definim o rela ţie liniar ă, numită congruen ţ a modulo n. Dacă a, b ∈ # spunem că a este congruent cu b modulo n şi scriem a ≡ b (mod n), dacă n/(a – b). Relaţia de congruen ţă este o relaţie de echivalen ţă. Într-adev ăr: 1) Dacă a ∈ # atunci n/(a–a) deci a ≡ a (mod n). Deci rela ţia este reflexiv ă. 2) Fie a, b ∈ # , astfel încât a, b ∈ # . Atunci n/(a – b) şi deci n/-(a – b) sau n/(b – a), adică b ≡ a (mod n). Aşadar relaţia este simetrică.
Bazele matematice ale sistemelor de secretizare
3) Fie a, b, c ∈ # astfel încât a ≡ b (mod n) şi b ≡ c (mod n). Atunci n/(a – b) şi n/(b – c) deci n/((a – b) + (b – c)) sau n/(a – c) de unde rezult ă a ≡ c (mod n). Deci relaţia este tranzitivă. Pentru a ∈ # notăm cu: d = {b ∈ # / a ≡ b ( mod n )} clasa de echivalen ţă a lui a, numită clasa de resturi modulo n. Mulţimea claselor de resturi modulo n o vom nota Z n : Z n
$ 1$,..., ( n − 1) = {0, }
Pe mulţimea claselor de resturi modulo n se definesc opera ţiile algebrice de adunare şi înmulţire a claselor de resturi modulo n în modul următor:
a + b$ = a + b $ a ⋅ b = ab, ∀a, b$ ∈ Z n . $
$
$
Mulţimea înzestrata cu opera ţiile de adunare şi înmulţire a claselor de resturi formeaz ă un inel unitar şi comutativ. Aceasta se verific ă simplu prin proprietăţile: 1. ( a + b$ ) + c$ = a + (b$ + c$ ) ; $
$
2. a + b$ = b$ + a ; 3. a + 0$ = 0$ + a ; 4. a + ( −a ) = ( −a ) + a = 0$ ; $
$
$
$
$
$
$
$
5. ( a ⋅ b$ ) ⋅ c$ = a ⋅ (b$ ⋅ c$ ) ; $
(
a ⋅ b$ + c$ $
6.
$
) = a ⋅ b$ + a ⋅ c$ ; $
$
(b$ + c$ ) a = b$ ⋅ a + c$ ⋅ a; $
$
$
7. a ⋅ 1$ = 1$ ⋅ a = a, ∀a, b$ , c$ ∈ # n . O clasă de resturi este ireversibil ă în inelul # n dacă şi numai dacă (a, n) = 1 (cel mai mare divizor comun). Ne propunem s ă descriem subnivelele şi idealele inelului # n . Orice ideal şi orice subinel al lui # n este în particular un subgrup al grupului aditiv ( # n ,+) $
$
$
$
^
al nivelului. Grupul ( # n ,+) este ciclic, fiind generat de exemplu de elementul 1 . Atunci orice subgrup al sau este de asemenea ciclic şi deci este de forma: d
$
= {da / a ∈ #}, unde d ∈ # n . $
$
Bazele matematice ale sistemelor de secretizare
Un astfel de subgrup este în acela şi timp şi subnivel şi ideal al inelului # n . Deci subinelele şi idealele lui # n coincid cu subgrupurile grupului ( # n ,+) al inelului. De exemplu să determinam idealele inelului # 6 : #6
$ 1$,2,3,4,5 $ $ . = {0, } $
$
Cum doar 1$ şi 5$ sunt inversabile în # 6 rezult ă că 1$ = 5$ . Considerând celelalte elemente din # 6 obţinem: 0$ = {0$}; $ 2 = 4 = {0,2,4 }; $
$
$
$
$ $ . 3$ = {0,3 }
Deci # 6 are patru ideale care sunt în acela şi timp şi subinelele sale: $ $ , 0,2,4 {0$},{0,3 } {$ }# 6 . $
$
Mulţimea # n are n elemente. În general numerele întregi a1, a2,...,an formeaz ă un sistem complet de resturi modulo n dacă: #n
= {a1, a 2 ,..., a n }. $
$
$
De exemplu mul ţimea: {0,1,2,3,4,5} formeaz ă un sistem complet de resturi pentru # 6 , dar şi {– 6,7,14,9,16,– 1} formează tot un sistem de resturi modulo 6. Mul ţ imea claselor de resturi care sunt relativ prime cu modulul formeaz ă sistemul redus de resturi împreuna cu numărul 1. În cazul # 6 , {1,5} este sistem
redus de resturi. Mulţimea # n , înzestrata cu opera ţiile de adunare şi înmulţire definite prin: a + b$ = a + b; $
a ⋅ b$ = a ⋅ b, $
este un inel unitar şi comutativ, iar aplica ţia p : # → # n definită prin p ( a ) = a, a ∈ # este un morfism de inele surjectitve. Intr-adev ăr : $
Bazele matematice ale sistemelor de secretizare
p ( a + b ) = a + b = a + b$ = p (a ) + p (b ); $
p ( a ⋅ b ) = a ⋅ b = a ⋅ b$ = p (a ) ⋅ p (b ). $
1.2.2 Congruen ţ a ax ≡ b (mod m )
Congruenţa ax ≡ b (mod m) are soluţii dacă şi numai dacă d , cel mai mare divizor comun al numerelor a şi m (d = (a, m)), divide pe b. Demonstra ţ ie. Fie x 0 ∈ # m , x0 ∈ # o soluţie a ecuaţiei date. Atunci ax0 ≡ b ( mod m ) , deci m / ( ax0 − b ) , adică exist ă y0 ∈ # astfel încât ax0 − b = my0 . Dar există d /a; d |m, rezultă d / ( ax0 − my0 ) , deci d /b. Reciproc, s ă presupunem că d |b. Se ştie că, există x0′ şi y0′ numere întregi, astfel încât Teoremă .
$
ax0′
+ my0′ = d . Luând
a ( x0′ b′ ) ≡ b ( mod m ) ,
b′ =
b d
∈ # , avem
b = db′ = a ( x0′ b′ ) + m ( y0′ b′) ,
deci
ceea ce arat ă că x0′ b′ ∈ # m este o solu ţie a congruen ţei
date. Fie d = ( a, m ) şi să presupunem c ă d /b. Atunci dac ă m′ =
m d
∈ # iar x0 este
soluţie a congruen ţei ax ≡ b ( mod m ) , avem că x0 , x0 + m′, x0 + 2m′,..., x0 + ( d − 1) m′ sunt toate solu ţii congruen ţei date. Evident că dacă (a, m)=1 atunci congruen ţa ax ≡ b (mod m) are solu ţie unică. Aceasta înseamn ă că dacă m şi a sunt relativ prime, atunci exist ă totdeauna a −1 ( mod m). Defini ţ ie: Un element a ∈ # m este unitate în # m dacă există b ∈ # m astfel încât ab=1 (mod m). Se poate astfel descrie grupul U (# m ) care conţine unităţile inelului # m : o
{
U (# m ) = ai1 , ai2 ,..., ain
}.
În acest caz num ărul n se numeşte indicatorul Euler al lui m şi este egal cu numărul elementelor relativ prime cu m plus 1. Aceasta se noteaz ă ϕ ( m ) . De exemplu U (#12 ) = {1,5,7,11} , deci ϕ (12 ) = 4 . Teorema lui Euler . Pentru orice num ăr întreg a relativ prim cu m avem ϕ( m ) a ≡ 1( mod m ) . Demonstra ţ ie:
Fie {a1, a2 ,..., aϕ(m )} un sistem redus de resturi modulo m.
Atunci şi aa1, aa2 ,..., aaϕ(m ) este de asemenea un sistem redus de resturi. a1a2 ...aϕ( m ) ≡ aa1 ⋅ aa2 ...aaϕ(m ) Produsul este comutativ, deci a1a2 ...aϕ( m )
≡ a ϕ(m ) ⋅ a1 ⋅ a2...aϕ(m ) . De aici rezult ă
a
ϕ( m )
≡ 1(modulo m ) .
Bazele matematice ale sistemelor de secretizare
Daca m = p, p fiind un număr prim, atunci orice num ăr a cu p/a avem (a, p) = 1 si prin urmare congruen ţa ax ≡ b ( mod m ) are soluţie unică pentru orice b ∈ # . În acest caz U ( # p ) = # p − {0} este corp. Este evident c ă în cazul p este număr prim, ϕ ( p ) = p − 1 . O consecin ţă imediat ă a teoremei lui Euler o constituie teorema lui Fermat . Pentru orice p număr prim şi a ∈ # astfel încât p/a, avem a p −1 ≡ 1( mod p ) . Indicatorul Euler al unui num ăr întreg m este o funcţie numerică multiplicativ ă. Deci dacă m = m1 ⋅ m2 , atunci ϕ ( m ) = ϕ ( m1 ) ⋅ϕ (m2 ) . Dacă m = p α , p fiind număr prim, atunci în şirul 1,2,..., p,..., p α sunt p α
− p α−1 termeni relativ primi cu p α . Deci ϕ ( p α ) = p α − pα−1 . Pe
aceast ă bază α α α m = p1 1 ⋅ p2 2 ... pk k .
se
poate
calcula
indicatorul
Euler
când
ϕ ( m ) = m 1 − 1 ⋅ 1 − 1 ... 1 − 1 . p1 p2 pk De exemplu, fie m = 120 = 23 ⋅ 3 ⋅ 5 1 1 1 1 2 4 ϕ (120 ) = 120 1 − ⋅ 1 − ⋅ 1 − = 120 ⋅ ⋅ ⋅ = 32 . 2 3 5 2 3 5 ϕ(d ) = n . Se demonstreaz ă că
∑ d /n
De exemplu, pentru n = 12, avem
∑ ϕ(d ) = ϕ(1) + ϕ(2) + ϕ(3) + ϕ(4) + ϕ(6) + ϕ(12) = d /n
= 1 + 1 + 2 + 2 + 2 + 4 = 12. Dacă notăm cu τ ( n ) numărul divizorilor lui n (inclusiv divizorii improprii) şi n este dat de rela ţia: n = p1α1 ⋅ p2α 2 ... pk αk , atunci τ ( n ) se determină cu ajutorul rela ţiei τ ( n ) = (α1 + 1) ⋅ (α 2 + 1)...(α k + 1) şi este egal cu num ărul termenilor produsului.
(
P = 1 + p1 + p12
+ ... + p1α1 )(1 + p2 + p22 + ... + p2α2 )...(1 + pk + pk 2 + ... + pk α k ).
Bazele matematice ale sistemelor de secretizare
Teorema chinez ă a resturilor
Fie m1, m2 ,..., ms numere întregi cu ( mi , m j ) = 1 pentru orice i, j ∈ {1,2,..., s} , i ≠ j şi b1, b2 ,..., bs numere întregi oarecare. Atunci exist ă un număr întreg x, soluţie a sistemului de congruen ţe: x ≡ b1 ( mod m1 ) x ≡ b2 ( mod m2 )
.......................... x ≡ b s ( mod ms ) si, pentru orice alt ă soluţie y a aceluiaşi sistem avem x ≡ y ( mod m ) , unde m = m1 ⋅ m2 ...ms . Demonstratie: Pentru fiecare i ∈ {1,2,..., s}
notăm ni =
m mi
, cu ( ni , mi ) = 1 .
Există numerele întregi ui , νi astfel încât ui mi + νi ni = 1. Luăm ei = νi ni şi atunci este evident c ă ei = 1( mod mi ) şi ei ≡ 0 ( mod m j ) , i ≠ j . Luând x ≡
s
∑= b e
i i
i 1
avem x ≡ bi ei ( mod m j ) , deci x ≡ bi ( mod mi ) ştiind că ei ≡ 1( mod mi ) . Exemplu: x ≡ 1( mod 7 ); x ≡ 4 ( mod9 ); x ≡ 3 ( mod5 );
Avem: m1 = 7; b1 = 1;
= 9; b2 = 4; m3 = 5; b3 = 3. m2
Deci
Bazele matematice ale sistemelor de secretizare
m = m1 ⋅ m2 ⋅ m3 = 315; n1 = n2
=
n3
=
m
= 45;
m1 m m2 m m3
= 35; = 63. 3
Soluţia general ă a sistemului de congruen ţe va fi x ≡
∑= b ν n (mod m ) . i i i
i 1
Se calculeaz ă ν i , (i = 1,2,3) , astfel: ni ⋅νi
≡ 1(mod mi ) .
Deci n1 ν1 ≡ 1( mod m1 );
3 ν1 ≡ 1( mod 7 ); 45 (mod 7 ) = 3 (mod7 );
ν1 ≡ 3ϕ(7 )−1; ϕ ( 7 ) = 6; ν1 ≡ 35 (mod 7 ) = 5 (mod7 ); n2 ν 2 ≡ 1( mod m2 ); 35 ( mod9 ) = 8 (mod9 ); 8 ν 2 ≡ 1( mod9 ); ϕ (9 ) = 6; ν 2 ≡ 85 ( mod9 ) = 8 ⋅ 8 ⋅ 8 ⋅ 8 (mod9 ); ν 2 ≡ 8 ( mod9 ); n3 ν3 ≡ 1( mod5); 63 (mod5 ) = 3 (mod5 ); 3 ν3 ≡ 1( mod 5); ν3 ≡ 33 (mod5 ) = 2 (mod5 ); x = 1 ⋅ 5 ⋅ 45 + 4 ⋅ 8 ⋅ 35 + 3 ⋅ 2 ⋅ 63 = 148 ( mod315). 1.2.3 Congruen ţ a de gradul al II-lea
Fie congruen ţa: ay 2 + by + c ≡ 0 ( mod s ), a ≠ 0 . Prin prelucr ări succesive, aceast ă congruen ţă poate fi adus ă la forma x 2 ≡ n ( mod m ) :
Bazele matematice ale sistemelor de secretizare
ay 2 + by + c ≡ 0 ( mod s ) / 4a
4a 2 y 2 + 4aby + 4ac ≡ 0 (mod 4as ) 2 ( 2ay + b ) + 4ac − b 2 ≡ 0 (mod 4as ).
2ay + b ≡ x Notăm b 2 − 4ac ≡ n şi ecuaţia devine x 2 ≡ n ( mod m ) . 4as ≡ m Numărul n ∈ # + relativ prim cu m se numeşte rest pătratic modulo m, dacă congruenţa x 2 ≡ n ( mod m ) are soluţii, şi nerest pătratic în caz contrar. În cazul m = 2, congruen ţa x 2 ≡ n ( mod2 ) are totdeauna solu ţii, şi anume: x = 1, pentru n = 1; x = 0, pentru n = 0. Pentru cazul m = p număr prim, m ≥ 3 , într-un sistem de resturi modulo p − 1 p − 1
p exist ă
p
resturi pătratice şi
p
neresturi p ătratice.
Stabilirea faptului c ă n este sau nu rest p ătratic modulo p se poate face cu
n
ajutorul simbolului lui Legendre care se define şte astfel: p
n 1n rest pătraticmod p p = −1n nerest pătraticmod p O serie de proprietari ale simbolurilor lui Legendre permit cu u şurinţă calculul acestora: n n ...n n n n a) 1 2 s = 1 ⋅ 2 " s ;
p p p p n1n22 n1 = ; b) p p −1 p − 1 c) = ( −1) ; 2 p 2 p 2 − 1 d) = ( −1) ; p 8 p p − 1 q − 1 q ⋅ e) = ( −1) . p q 2 2
Bazele matematice ale sistemelor de secretizare
Simbolul lui Legendre se utilizeaz ă în cazul în care p este număr prim. O generalizare a acesteia o reprezint ă simbolul lui Jacobi care este valabil şi pentru m = p1 ⋅ p2 ... pr , pi = numere prime, pi > 2
a = m
a a ⋅ ... . p1 p2 pr a a Pentru orice a ≡ a1 ( mod m ) avem = 1 . m m a
Simbolul lui Legendre se poate calcula şi cu ajutorul rela ţiei lui Euler:
n p2−1 p ≡ n ( mod p ) . Pentru aceast ă relaţie există şi o generalizare pentru resturi de ordin n şi anume: numărul a este rest de ordin n pentru modulul p atunci şi numai atunci când: p −1
a d
Există în acest caz
≡ 1( mod p ), unde d = (n, p − 1)
p − 1
resturi de ordin n faţă de modulul p.
d Numărul soluţiilor congruen ţei: x 2 ≡ n ( mod m ) îl notăm cu N ( n, m ) şi se calculeaz ă astfel: a) cazul m = p α , α ≥ 1 , p număr prim:
n 0, p = −1 N ( n, p α ) = 2, n = 1 p b) cazul m = p α ; n = pβ ⋅ n1; α > β : N p β ⋅ n1, p α
(
(
N p
β⋅
n1, p
α
) = 0 dacă β este impar;
β
) = p 2 ⋅ N (n1, pα−β ) pentru β număr par.
1.2.3 Logaritmi discre ţ i
Fie un sistem de secretizare cu chei publice de tip exponen ţial, R.S.A., în care modulul m este f ăcut public, iar exponentul de criptare e este p ăstrat secret.
Bazele matematice ale sistemelor de secretizare
Presupunem c ă un criptanalist a interceptat cel pu ţin o pereche ( M , M e ) şi încearcă să spargă sistemul, adic ă să găsească exponentul de decriptare d . Deci criptanalistul se g ăseşte în faţa problemei de a g ăsi log M M e ( mod m ) . Acesta este un caz special de calculare a logaritmilor discre ţi. Tăria metodei const ă tocmai în dificultatea calcul ării acestui logaritm. Dac ă consideram ecua ţia a x = y pentru numere reale pozitive, problema g ăsirii lui x cunoscând pe a şi y este aproape aceea şi cu a găsi pe y ştiindu-i pe a şi x. Găsirea solu ţiei presupune efectuarea unor calcule mai mult sau mai pu ţin complicate şi căutarea în tabele de logaritmi. Problema este complet diferit ă dacă se lucrează cu logaritmi discreţi. Noţiunea general ă de logaritm discret poate fi formulat ă după cum urmează. Fie g un element al unui grup finit G şi fie y un alt element din G. Atunci orice număr întreg pozitiv x, astfel încât g x = y se numeşte logaritm discret al lui y în baza g . Evident, orice element y al lui G are un logaritm discret în baza g dacă şi numai dacă G este ciclic cu generatorul g . De exemplu, în grupul multiplicativ al numerelor întregi modulat numai 1,2,4 au un logaritm discret în baza doi dar toate numerele au un logaritm discret în baza trei: y 1 2 3 4 5 6 x 3 = y ) x 6 2 1 4 5 3 ( Dacă x ∈ GF (32 ) , atunci cu ajutorul ecua ţiei x 2 + 2 x + 2 = 0 se pot genera toate elementele câmpului GF (32 ) ridicând la putere un element x numit element generator: i
2
1
3
4
5
6
7
αi α α + 1 2α + 1 2 2α 2α + 2 α + 2
8 1
şi atunci:
2 α α + 1 α + 2 2α 2α + 1 2α + 2 log α y 8 4 1 2 7 5 3 6 y
1
Grupurile cu cardinalitate mic ă nu prezintă dificult ăţi de calcul. Exist ă şi algoritmi eficien ţi de calcul al logaritmilor discre ţi pentru unele cazuri speciale. În general îns ă, calculul logaritmilor discre ţi sunt considera ţi de aceea şi dificultate ca şi algoritmi pentru factorizarea lui m. Algoritmul propus de Silver, Pohlig şi Hellman, probabil cel mai bun algoritm general de acest tip, este exemplificat dup ă cum urmează şi el lucreaz ă atunci când factorii primi ai lui m sunt mici.
Bazele matematice ale sistemelor de secretizare
Fie GF ( q ), q = p n un câmp finit. Consideram logaritmi discre ţi în baza g, unde g este generator pentru GF ( q ) . Pentru fiecare divizor d prim al lui q – 1, calcul ăm numerele: q −1 d ( mod q ), 0 ≤ i < p . a (i,d ) = g i
Dacă fiecare d care îl divide pe q – 1 este mai mic atunci m ărimea tabelei precalculate conţinând numerele auxiliare a (i, d ) este acceptabil ă, destul de u şor de realizat. De exemplu, GF (181) şi q = 2 (2 este într-adev ăr un generator). Acum 180 = 22 ⋅ 32 ⋅ 5 şi tabela numerelor a (i, d ) arată ca mai jos:
α
i 0 1
2
3
5
1 180
1
1
48 132
59 42 125 135
2 3 4
Să calcul ăm acum logaritmul discret al lui 62 în baza 2. În general dac ă q − 1 = πd α , atunci pentru a g ăsi logaritmul discret x al lui y în baza g este suficient s ă găsim ( x,moddα ) pentru fiecare d din factorizarea lui q – 1. Folosind teorema chinez ă a resturilor x este uşor de calculat din valorile ( x,moddα ) . Pentru a calcula ( x,moddα ) , consider ăm reprezentarea acestui număr în baza d :
( x,mod dα ) = x0 + x1d + ... + xα+1d α−1; 0 ≤ xi ≤ d − 1 . În exemplul dat ( z ,mod 181) = x0 + 3x1 .
consider ăm
factorul
d α = 32
şi
scriem
q −1 d Pentru a afla x0 calcul ăm y ,mod q , care este egal cu a(i, d ) pentru un număr i. Alegem x0 = i . În exemplul dat, (6260 ,mod181) = 48 , deci x0 = 1. Acest lucru este valabil, în general, deoarece ( g q −1,mod q ) = 1 deci.
Bazele matematice ale sistemelor de secretizare
α ( q −1)
q −1
y d
≡g
d
x0 ( q −1)
=g
≡ a ( x0 ,d )(mod q ) .
d
Pentru a-l ob ţine pe x1 , calculăm mai întâi inversul g − x0 al lui
q −21 x0 − x0 g ( mod q ) şi consider ăm y1 = yg . Dacă acum y1d ,mod q = a (i,d ) , atunci x1 = i . Pentru a-l ob ţine pe x2 , consider ăm numărul y2 = yg − x0 − x1d şi q −21 d calcul ăm y2 ,mod q . Procedura se repet ă până când este g ăsit ( x,moddα ) . În
exemplul
dat
g ăsim y1 = 31 .
Aceasta
implic ă
faptul
că
1802 y13 ,mod 181 = ( y120 ,mod 181) = 1 , deci x1 = 0 şi z ≡ 1(mod9) . Să consider ăm acum factorul d α = 22 . Trebuie să determin ăm x0 + 2 x1 . Deoarece (6290 ,mod181) = 1 , rezult ă că x0 = 0 . Acum y1 = y = 62 şi
(6245 ,mod181) = 1 , de unde x1 = 0 şi z ≡ 0 (mod 4) . Acum consider ăm d α = 51 . Trebuie determinat doar x2 . Deoarece
(6236 ,mod181) = 1 rezultă x0 = 0 şi z ≡ 0 (mod 5) . Deci avem de rezolvat congruen ţele: z ≡ 0 ( mod 4 ) z ≡ 0 ( mod 5)
⇒
z ≡ 0 (mod9 )
z ≡ 100 ( mod180 )
log62 = 100
1.3 Inele de polinoame 1.3.1 Propriet ăţ i generale
Fie R un inel comutativ şi unitar şi fie R( N ) mulţimea şirurilor f = (a0 , a1,..., an ,...), ai ∈ R care au numai un num ăr finit de termeni ai nenuli. Există deci un număr natural m astfel încât ai = 0 , pentru orice i > m.
Bazele matematice ale sistemelor de secretizare
1) Şirurile f
= (a0 , a1,..., an ,...) şi g = (b0 , b1,..., bn ,...) sunt egale dac ă şi
numai dacă: ai = bi pentru orice i. Pe mulţimea R( N ) se definesc dou ă operaţii algebrice, adunarea şi înmulţirea, în raport cu care R( N ) devine un inel comutativ şi unitar. ( N ) 2) Dacă f , g ∈ R , atunci k > max {m, n}
+ g = (a0 + b0 , a1 + b1,..., an + bn ,...) apar ţine de asemenea mul ţimii R( N ) . Într-adev ăr, dacă m şi n sunt două numere naturale astfel încât ai = 0 pentru orice i > m şi b j = 0 pentru orice j > n atunci ak + bk = 0 pentru orice k > max {m, n} . 3) Se verific ă uşor că ( R N , + ) formează un grup abelian, elementul nul f
fiind (0,0,0,...). 4) Pentru orice element f = (a0 , a1,..., an ,...) opusul său va fi − f = ( −a0 , − a1,..., −an ,...) . 5) Înmulţirea pe R( N ) se defineşte astfel: f ⋅ g = (c0 , c1,..., ck ,...) , unde ck = aib j pentru orice k = 0,1,2,...
∑
i + j = k
6) Să ar ătăm că f ⋅ g ∈ R ( N ) . Într-adevăr ck = 0 pentru orice k > m + n . 7) Înmulţirea pe R( N ) este asociativ ă, comutativ ă şi are element unitatea, (1,0,0,...), propriet ăţi care se verific ă cu uşurinţă. 8) În plus opera ţia de înmul ţire este distributiv ă faţă de adunare, adic ă: şi
f ( g + h ) = fg
+ fh ( f + g ) h = fh + gh
În concluzie, s-a demonstrat c ă ( R( N ) , + ) formează un inel unitar comutativ. Elementele acestui inel se numesc polinoame cu coeficien ţi în R. Gradul unui polinom se noteaz ă cu grad ( f ) şi este dat de coeficientul dominant an al polinomului f , deci: grad ( f ) = n dacă ai = 0 pentru orice i > n şi an ≠ 0 . Notăm prin X polinomul (0,1,0,...) care se nume şte nedeterminata x. n
Înmulţirea polinoamelor ne d ă X
= 0,0,..., 1,0,... cu 1 aflat pe pozi ţia (n + 1). %&'&( nori
Fie f un polinom de grad n ai cărui coeficien ţi sunt a0 , a1,..., an , adică f
= (a0 , a1,..., an ) .
Bazele matematice ale sistemelor de secretizare
Folosind adunarea şi înmulţirea definite pe R( N ) se obţine: f
= (a0 ,0,0,...,0 ) + (0, a1,0,...,0 ) + ... + (0,0,..., an,0 ) =
= ( a0 ,0,0,...) + ( a1,0,0,... ) ⋅ (0,1,0,...) + ... + ( an ,0,0,... ) ⋅ 0,0,..., 1,0,... , %&'&( nori n
2
n
deci f = a0 + a1x + a2 x + ... + an x =
∑= a x . i
i
0
i
Mulţimea R( N ) se mai poate nota R [ x] şi se numeşte inelul polinoamelor în nedeterminata X cu coeficien ţi în inelul R. Fie un inel şi f , g două polinoame din R [ x], atunci: 1. grad ( f + g ) ≤ max grad ( f ),grad ( g ) ; 2. grad ( fg ) ≤ grad ( f ) + grad ( g ) . Avem egalitate dac ă f şi g sunt nenule iar cel pu ţin unul dintre coeficien ţii dominanţi ai lui f şi g nu este divizor al lui zero. Fie R un inel comutativ şi unitar şi inelul polinoamelor R [ x]. Atunci au loc afirmaţiile: - un element a ∈ R este inversabil în R dacă şi numai dacă a este inversabil în R[ x]; - dacă R este domeniu de integritate, atunci R[ x] este de asemenea domeniu de integritate şi U ( R ) = U ( R [ x ]) , unde u : R → R [ x ] este un morfism al lui R pe R[ x] şi u ( a ) = ( a,0,0,...) . Teoremă . Fie R un inel comutativ şi unitar şi R[ x] inelul polinoamelor de o nedeterminat ă cu coeficien ţi în R şi u : R → R [ x ] morfismul canonic. Atunci oricare ar fi inelul comutativ unitar S , morfismul de inele ν : R → S şi x ∈ S , există un unic morfism de inele ϕ : R [ x ] → S astfel încât u ( x ) = x şi diagrama să fie comutativ ă. Demonstra ţ ie. Să definim mai întâi morfismul ϕ . Dacă f ∈ R [ x ] , m
f
=
m
∑= a x , atunci ϕ( f ) = ∑= ν (a )x . i
i
i
i
0
i
i
0
n
Ar ătam că ϕ are propriet ăţile din enun ţ. Fie g =
∑= b x un alt polinom i
i
i
0
din R[ x] şi să presupunem c ă n ≥ m. Completând eventual polinomul f cu termeni ai c ăror coeficien ţi sunt zero, putem scrie: n
f
=
∑= a x , i
i
i
0
Bazele matematice ale sistemelor de secretizare
unde am +1 = am + 2 = ... = an = 0 . Atunci
n i n i n ϕ ( f + g ) = ϕ ai x + bi x = ν ai + bi ) x i = ( i =0 i =0 i = 0
∑
∑
n
∑
n
n
∑= (ν (a ) + ν (b ))x = ∑= ν (a ) x + ∑= ν (b ) x = ϕ ( f ) + ϕ ( g ). Dacă notăm cu c , coeficien ţii produsului fg , avem c = ∑ a b , şi cum + = ν este un morfism de inele ob ţinem ν (c ) = ∑ ν ( a ) ⋅ν (b ) . + = =
i
i
i
i
i
0
i
i
i
i
0
i
0
k
k
i j
i j k
i
i
i
i j k
Ţinând seama de acest lucru se verific ă imediat că:
ν ( fg ) = ν ( f ) ⋅ ν ( g ) . Comutativitatea diagramei se verific ă uşor. Într-adev ăr dacă a ∈ ) , avem:
( ϕ⋅ u )( a ) = ϕ (u ( a )) = ϕ ( a ) = ϕ ( ax 0 ) = ν ( a ) x 0 = ν ( a ) . Deci ϕ ⋅ u = ν . 1.3.2 Factorialitatea inelelor de polinoame
Un inel R, se numeşte inel factorial sau cu descompunere unic ă în factori primi (ireductibili) dac ă orice element neinversabil şi nenul din R se descompune într-un produs finit de elemente prime. Orice inel de polinoame de o nedeterminat ă este un inel factorial. Teoremă . Fie R un inel factorial. Atunci inelul de polinoame R[ x] este factorial. Pentru demonstra ţie avem nevoie de o serie de rezultate preliminarii. n Lema 1. Fie a ∈ ) şi f = a0 + a1x + ... + an x ∈ ) [ x ] . Dacă a / f , atunci a / ai oricare ar fi i = 0,1,...,n. Demonstra ţ ie. Cum a / f rezult ă că: f
= a (b0 + b1x + ... + bn x n ) = ab0 + ab1x + ...abn x n ,
deci a / ai .
Lema 2. Fie R un domeniu de integritate. Daca p ∈ ) prim din R atunci p este un element prim în R[ x]. Demonstra ţ ie. Fie f , g ∈ R [ x ] astfel încât p / fg .
este un element
Presupunem c ă f = a0 + a1x + ... + an x n şi g = b0 + b1x + ... + bm x m şi că p / f şi p / g . Conform lemei anterioare, rezult ă că există un ak astfel încât p / ak . Analog, din p / g
Bazele matematice ale sistemelor de secretizare
rezultă că există bl astfel încât p / bl . Deci p / a0 , p / a1,..., p / ak −1 şi p / b0 , p / b1 ,..., p / bl −1 . Coeficientul lui x k +l este ck + l
=
a b = a b + + a b + ... + a − b + + a b + a + b − + ... + a + b . ∑ + = + i j
0 k 1
1 k
k 1 l 1
k l
k 1 l 1
k l
0
i j k 1
Deoarece p / aibi cu i ≠ k şi j ≠ l , iar p / ak bl , rezultă că p / ck +l , deci p / fg , deci contradic ţie, deci trebuie ca p / f sau p / g . Presupunem acum c ă inelul R este factorial şi fie f = a0 + a1x + ... + an x n un polinom din R[ x]. Vom nota cu c ( f ) cel mai mare divizor comun al elementelor a0 , a1,..., an ⋅ c ( f ) se numeşte conţinutul polinomului f. Dac ă c ( f ) = 1 , atunci polinomul f se numeşte primitiv. Se observ ă că f = c ( f ) ⋅ f ′ , unde f ′ este un polinom primitiv. Lema lui Gauss (3). Dacă R este un inel factorial şi f , g ∈ R [ x ] atunci c ( fg ) = c ( f ) ⋅ c ( g ) . Demonstra ţ ie. Cum f = c ( f ) ⋅ f ′ g = c ( g ) ⋅ g ′ , rezultă şi ′ ′ .Deci c ( fg ) = c ( f ) ⋅ c ( g ) ⋅ c ( f g′ ′ ) . fg = c ( f ) ⋅ f ′ ⋅ c ( g ) ⋅ g ′ = c ( fg ) f g ′ ′ ) = 1. Presupunem c ă c ( f ′g ′) ≠ 1 , deci exist ă Trebuie ar ătat că c ( f g p ∈ ) element prim, astfel încât p / c ( f ′g ′ ) . Deci p / f ′g ′ , deci p / f ′ sau p / g ′ rezultă că f ′ sau g ′ nu sunt primitive, rezult ă o contradic ţ ie. Lema 4. Fie R un inel factorial şi f , g ∈ ) [ x ] , unde g este un polinom primitiv. Dacă a ∈ ), a ≠ 0 , şi g / af , atunci g / f Demonstra ţ ie. af = gh, h ∈ R [ x ] ac ( f ) = c ( g ) ⋅ c ( h ) = c ( h ) Avem deoarece c ( g ) = 1 .Cum h = c ( h ) ⋅ h′ , rezultă că af = g ⋅ c ( h ) ⋅ h′ sau af = g ⋅ a ⋅ c ( f ) ⋅ h′ / : a ⇒ f = g ⋅ c ( f ) ⋅ h′ = c ( f ) ⋅ g ⋅ h′ , deci g / f . Lema 5. Fie R un inel factorial cu corpul de frac ţii K , iar f , g ∈ R [ x ] două polinoame primitive. Atunci f şi g sunt asociate în R[ x] dacă şi numai dacă sunt asociate în inelul K [ x]. Demonstra ţ ie. Evident că dacă f şi g sunt asociate în R[ x] sunt asociate şi în K [ x]. Invers, presupunem c ă f şi g sunt asociate în K [ x]. Deci exist ă u ∈ K [ x ] , a
element inversabil, astfel încât g = fu . Cum u ∈ K , atunci putem scrie u = cu a ∈ ) şi b ∈ ) , a ≠ 0, b ≠ 0 . asociate în inelul R[ x].
b
Deci bg = af şi f / g şi g / f , adică f şi g sunt
Bazele matematice ale sistemelor de secretizare
Fie R un inel factorial cu K corpul său de frac ţii şi f ∈ R [ x ] un polinom primitiv cu grad ( f ) ≥ 1 . Atunci f este ireductibil în R[ x] dacă şi numai dacă f este ireductibil în K [ x]. Demonstra ţ ie: Presupunem c ă f este ireductibil în R[ x] şi fie f = gh, cu g ∈ K [ x ] şi h ∈ K [ x ] şi grad ( g ) ≥ 1 , grad ( h ) ≥ 1 . Evident putem scrie Lema 6.
g
=
a
g 1 , a, b ∈ ) , ( a, b ) = 1 , şi g1 ∈ R [ x ] .
b h1 ∈ R [ x ] . În plus,
c
Analog h = h1 , c, d ∈ ) , ( c, d ) = 1 , d
grad ( g ) = grad ( g 1 ) şi grad ( h ) = grad ( h1 ) .
a
c
b
d
Deci f = g1 ⋅ h1 = g1 = c ( g1 ) ⋅ g 1′ ; h1 = c ( h1 ) ⋅ h1′;
ac
g1h1 . bd
( g 1′ şi h1′ sunt polinoame primitive).
Obţinem f = u ⋅ g1′ ⋅ h1′ ; u =
ac
c ( g1 ) ⋅ c ( h1 ) - element inversabil din R. bd în K [ x]. Deci f şi g1′ ⋅ h1′ sunt asociate şi în R[ x].
Deci f şi g1′ ⋅ h1′ sunt asociate Deci f = ν ⋅ g1′ ⋅ h1′, ν∈U [R ] . Cum grad g 1 ≥ 1 şi grad h1 ≥ 1 , aceasta implic ă că f nu este ireductibil în R[ x] rezultă deci o contradic ţ ie. Invers, presupunem c ă f este ireductibil în R[ x] şi că f = gh, g , h ∈ R [ x ] . Cum f este ireductibil în K [ x] rezultă că g este inversabil sau h este inversabil în K [ x]. Dacă g este inversabil în K [ x], rezultă că g ∈ K , adică g = a ∈ ) . Deci f = ah . Cum f este primitiv, rezult ă că a este inversabil în R. Deci f este ireductibil în R[ x]. Teoremă: Fie R un inel factorial. Atunci inelul de polinoame R[ x] este factorial. Demonstra ţ ie: Fie f ∈ R [ x ] . Putem scrie f = c ( f ) f 0 , unde f 0 este un polinom primitiv. Cum f 0 ∈ K [ x ] , iar K [ x] este un inel factorial, rezult ă că f 0 = f1 f 2 ... f n , unde f1, f 2 ,..., f n ∈ K [x ] şi sunt polinoame ireductibile. Putem scrie pentru fi , f i =
ai bi
g i ,unde ai , bi ∈ ) şi gi ∈ R [ x ]
este un polinom primitiv,
deci g i este ireductibil în R[ x]. Rezultă că f 0 se scrie sub forma f 0
=
a b
g1g 2 ...g n , unde a, b ∈ ) . Cum f 0
este primitiv şi produsul g1g 2 ...g n este
primitiv. Din lema 6 rezult ă f 0 = ug1g 2 ...g n , u ∈U [R ] . Cum c ( f ) este un produs finit de elemente prime în R, care sunt elemente prime şi în R[ x], rezultă conform lemei 3 c ă f este un produs de elemente ireductibile în R[ x]. Scrierea lui în produs de elemente ireductibile în R[ x] este unic ă. Să presupunem că
Bazele matematice ale sistemelor de secretizare
= g1g 2...g m , unde fi , gi ∈ R [x ] sunt elemente ireductibile în R[ x]. Dacă grad f i ≥ 1 , atunci evident c ( f i ) = 1. Deci putem scrie: f = f1 f 2 ... f s f s +1... f n = g1g 2...g r g r +1...g m , unde f1, f 2 ,..., f s , g1, g 2 ,..., g r ∈ ) , iar f s +1,..., f n , g r +1, g m au gradul ≥ 1 . Din f
=
f1 f 2 ... f n
lema lui Gauss rezult ă că f1, f 2 ,..., f s şi g1, g 2 ,..., g r sunt asociate în divizibilitate în R. Cum R este factorial, rezult ă că r = s şi abstrac ţie f ăcând de o renumerotare avem fi * g i ∗) oricare ar fi 1 ≤ i ≤ s . Rezultă: f s +1... f n = g r +1...g m . Din lema 7 rezult ă m = n, şi g k * f n în K [ x] oricare ar fi s + 1 ≤ k ≤ n , deci g k * f n în R[ x]. Deci descompunerea este unic ă. 1.3.3 Criterii de ireductibilitate 1) Criteriul lui Eisenstein.
Fie R un inel factorial şi K corpul funcţiilor sale, iar f = a0 + a1x + ... + an x n din R[ x]. Presupunem c ă există un element prim p ∈ ) cu propriet ăţile: i) p / a0 , p / a1,..., p / an −1 ; ii) p / an ; iii) p 2 / a0 . Atunci polinomul este ireductibil în K [ x]. Demonstra ţ ie. Putem presupune c ă polinomul f este primitiv. prin reducere la absurd vom presupune c ă f este reductibil în K [ x]. Deoarece f este primitiv, rezultă că el este reductibil şi în R[ x]. Fie atunci f = gh cu g , h ∈ R [ x ] , unde.
= b0 + b1x + ... + bm x m , bm ≠ 0; h = c0 + c1x + ... + cr x r , cr ≠ 0. Prin identificare rezult ă a0 = b0c0 . Din p / a0 rezult ă g
sau p / c0 şi cum p 2 / a0 avem că p nu divide în acela şi timp pe b0 şi c0 . Să presupunem că p / b0 şi p / c0 . Deoarece p / an este clar c ă polinomul g are coeficien ţi care nu se divid cu p. Fie i minim astfel încât p / bi şi să consideram ai
=
i −1
b c = b c + ∑b c − ∑ += = k l
k l i
∗) Relaţia
i
0
j i j
p / b0
cu i ≤ m < n .
j 1
” înseamnă asociat în divizibilitate. Dacă f
, rezultă f /
i / f
Bazele matematice ale sistemelor de secretizare
i =1
Deoarece p / b0 , p / bi ,..., p / bi +1 , rezultă că p
∑= b c − , j i j
i ≤ m < n , şi
j 1
cum p / bi c0 , avem evident c ă p / ai , contradicţie. Aplica ţ ie. Fie p un număr prim. Polinomul f = x p −1 + ... + x + 1 cu coeficien ţi întregi este ireductibil în Q[ x]. Într-adev ăr este suficient s ă demonstram că polinomul f ( x + 1) este ireductibil în Q[ x]. Avem: p −1
+ ( x + 1) p − 2 + ... + ( x + 1) + 1 ( x + 1) p − 1 ( x + 1) p − 1 = = = f ( x + 1) = 1 x + 1 − 1 x 1 p −1 + ... + c pp −1x + 1 − 1 p −1 1 p − 2 x p + c p x = = x + C p x + ... + C pp −1 ( x + 1)
x
Observ ăm că p / C pk , 1 ≤ k ≤ p − 1, p / 1 şi p 2 / C pp −1 . Conform criteriului lui Eisenstein, f ( x + 1) este ireductibil în Q[ x] şi deci f ( x) este de asemenea ireductibil în Q. 2) Criteriul de reduc ţ ie: Fie R şi S două inele factoriale, ϕ : R → S un morfism (unitar) de inele, ϕ : R [ x ] → S [ x ] morfismul de inele care extinde pe f = a0 + a1x + ... + an x n ∈ R [ x ] , dacă atunci ϕ , adică ϕ ( f ) = ϕ (a0 ) + ... + ϕ ( an ) x n . Presupunem c ă f este un polinom primitiv în R[ x] astfel încât grad ( f ) = grad (ϕ ( f )) şi ϕ ( f ) este ireductibil în S [ x]. Atunci polinomul f este ireductibil. Demonstra ţ ie. Prin absurd presupunem c ă f este reductibil în R[ x], adică f = gh cu g , h ∈ R [ x ] , iar g şi h nu sunt inversabile în R[ x]. Cum f este primitiv, atunci trebuie ca grad ( g ) ≥ 1 şi grad ( h ) ≥ 1 . Dar din egalitatea f = gh rezultă că ϕ ( f ) = ϕ ( g ) ⋅ϕ ( h ) . Cum grad (ϕ ( g )) ≤ grad ( g ) şi grad (ϕ (h )) ≤ grad ( h ) iar grad (ϕ ( f )) = grad ( f ) rezult ă că: grad ( ϕ ( g )) = grad ( g ) ≥ 1; grad ( ϕ ( h )) = grad ( h ) ≥ 1. Deci ϕ ( f ) nu este ireductibil în S [ x], contradic ţie. Caz particular : Fie p un număr prim, f = a0 + a1x + ... + an x n un polinom primitiv din Z [ x] şi f = a0 + a1x + ... + an x n polinomul din Z p [ x ] astfel încât ai este clasa de resturi modulo p a lui ai , pentru orice i = 0,1,...,n. Dacă grad ( f ) = grad ( f ) şi f este ireductibil atunci şi f este ireductibil.
Bazele matematice ale sistemelor de secretizare
Aplica ţ ie: Polinomul f = x 5 − 5 x 2 + 1 are coeficien ţi întregi şi este ireductibil în Z [ x]. Într-adev ăr, aplicăm criteriul de reduc ţie pentru p = 2. Avem f = x 5 + x 2 + 1∈ Z 2 [ x ] , grad ( f ) = grad ( f ) . Demonstr ăm că f este ireductibil în
Deoarece f ( 0 ) = 1 şi f ( 1 ) = 1 ≠ 0 , rezultă că f nu are divizori de gradul întâi. Deci x5 + x 2 + 1 = (ax 2 + bx + c )(αx3 + βx 2 + γx + δ ), a, b, c ,α, β, γ, δ∈ # 2 .
Z 2 [ x ] .
Prin identificare rezult ă:
aα = 1 αb + aβ = 0 aγ + bβ + cα = 0 aδ + bγ + cβ = 1 bδ+ cγ = 0 cδ = 1 Acest sistem nu are solu ţie, deci x5 + x 2 + 1 este ireductibil. 1.3.4 Polinoame ciclotomice
Pentru orice num ăr natural n ≥ 1 , r ădăcinile complexe ale polinomului f n ( x ) = x n − 1 se numesc r ădăcini de ordin n ale unităţii. Vom nota cu U n mulţimea acestora, adic ă Un
= {x ∈ C / x n = 1}.
Mulţimea U n conţine exact n elemente şi anume: xk = cos
2k π n
k π + i sin 2 ; k = 0,1,2,..., n − 1 . n
Mulţimea U n înzestrata cu opera ţia de înmul ţire este un „grup ciclic”, adică un grup în care toate elementele sunt puteri ale unui anumit element. Dac ă π π α = cos 2 + i sin 2 , iar atunci se demonstreaz ă că dacă α p = 1 , atunci p este n
n
multiplu de n. Un element xk = cos
2k π n
+ i sin
2k π n
se numeşte generator al grupului U n
(dacă prin ridicări succesive la putere se genereaz ă toate elementele mul ţimii U n ) dacă şi numai dac ă (k , n) = 1.
Bazele matematice ale sistemelor de secretizare
Grupul ciclic U n are ϕ ( n ) generatori care sunt r ădăcinile primitive de ordinul n ale unităţii. Pentru n numai prin mul ţimea r ădăcinilor primitive de ordin n este P n =
{α, α2 ,..., αn −1},
unde:
α = cos
2k π n
2k π
+ i sin
n
, 0 ≤ k ≤ n −1.
Pentru orice n ∈ N ∗ , polinomul
=
f n
(x − α) ∏ α∈ P n
se numeşte al n-lea polinom ciclotomic (al n-lea polinom de diviziune circular ă). Rela ţ ia lui Dedekind : Pentru orice n ≥ 1 are loc egalitatea x n
∏ f ,
−1 =
d
d /n
unde produsul se face dup ă divizorii naturali d ai numărului n. Această relaţie, a cărei demonstraţie este relativ simpl ă, poate fi utilizat ă ca o rela ţie de recuren ţă cu ajutorul c ăreia se pot determina din aproape în aproape polinoamele ciclotonice. De exemplu, ne propunem s ă calcul ăm polinoamele ciclotonice f1, f 2 , f 3 , f 4 , f 5 şi f 6 . Evident f1 = x − 1 şi apoi x 2 − 1 = f1 ⋅ f 2 . Deci f 2 = x + 1 x3 − 1 = f1 ⋅ f 3 , rezultă f3 = x 2 + x + 1 ; x
4
x
x
6
− 1 = f1 ⋅ f 2 ⋅ f 4 , deci f4 =
5
− 1 = f1 ⋅ f 5 , deci f5 =
− 1 = f1 ⋅ f 2 ⋅ f 3 ⋅ f 6 , deci f6 =
x 4 − 1
( x − 1)( x + 1)
x 5 − 1 x − 1
= x 4 + x3 + x 2 + 1; x 6 − 1
( x − 1)( x + 1)( x 2 − x + 1)
Pentru n = p număr prim: p −1
f p
= x2 + 1;
=
∑= x . i
i
0
= x2 − x + 1.
Bazele matematice ale sistemelor de secretizare
Polinomul f p este în acest caz ireductibil. Mai mult, se demonstreaz ă (teorema lui Dedekind) c ă orice polinom f n , n ≥ 1, n ∈ N este ireductibil în inelul Z [ x] şi în inelul Q[ x]. Polinoamele ciclotonice pot fi exprimate cu ajutorul func ţiei lui Möbius care este definit ă astfel:
1,dacă n = 1; k µ ( n ) = ( −1) , n = P1P2 ...Pk , n liber de p ătrate; 0,dacă există p 2 / n, p număr prim. Pentru orice n ≥ 1, n ∈ N avem egalitatea f n
=
∏(
n µ x d − 1 d .
)
d /n
De exemplu f 6
=
µ(2 )
= ( x − 1)µ(6) ⋅ ( x − 1)µ(3) ⋅ ( x3 − 1) ( x − 1) ( x 6 − 1)
( x 2 − 1)( x3 − 1)
µ(1)
⋅ ( x 6 − 1)
=
= x 2 − x + 1,
deoarece
µ (1) = 1; µ ( 2 ) = −1; µ (3) = −1; µ (6 ) = 1. Pentru demonstrarea acestei rela ţii se utilizeaz ă teorema de inversiune a lui Möbius. Vom prezenta formulele de inversiune ale lui Möbius f ăr ă demonstra ţie: a) formula aditiv ă Dacă
f (n ) =
∑
g ( d ) ,
d d /n
1; d = 1 k µ ( d ) = ( −1) ; d = P1P2 ...Pk α 0; d = P1P2...P j , α > 1
atunci
g ( n ) =
∑ d d /n
n µ ( d ) f , d
unde
Bazele matematice ale sistemelor de secretizare
b) formula multiplicativ ă Dacă f ( n ) =
∑ g (d ) , atunci g (m) = ∑ d d /n
n n/m
m µ f ( n ) n .
CAPITOLUL 2 BAZELE TEORETICE ALE SISTEMELOR SECRETE
2.1 Introducere Primele informa ţii referitoare la criptografie dateaz ă de acum circa 4000 de ani şi provin din Egiptul antic, dar abordarea teoretic ă a acesteia şi descrierea modelului matematic al unui sistem secret sunt de dat ă mult mai apropiat ă de zilele noastre. O contribuţie deosebit ă a avut-o, pe aceast ă linie C. E. Shannon care a introdus o serie de concepte şi idei originale cum ar fi no ţiunile de secret într-un sistem de cifrare şi redundan ţa unui anumit limbaj. 2.2 Modelul matematic al sis temului secret Figura 2.1 ilustreaz ă un sistem de cifrare sau, cum este deseori numit, un sistem de secretizare. Fig. 2.1 Un sistem de cifrare
Interceptorul este introdus în schem ă pentru a ar ăta unde este cel mai probabil să aibă loc interceptarea. Înainte ca un mesaj s ă fie transmis cele doua par ţi implicate numite cifrator şi receptor î şi stabilesc o cheie particular ă din mulţimea disponibil ă, cheie care este p ăstrată secret ă. Folosind mesajul ce urmeaz ă a fi transmis şi cheia aleas ă, cifratorul îl cifreaz ă cu ajutorul algoritmului utilizat înaintea transmiterii. Mulţimea tuturor mesajelor posibile pe care cifratorul le poate transmite este numită „spaţiul mesajelor” şi o vom nota cu M . Mulţimea tuturor criptogramelor posibile este numit ă „spaţiul criptogramelor” şi o vom nota cu C , iar mulţimea tuturor cheilor o vom nota cu K . Mulţimile M , C şi K sunt mulţimi finite dar, de obicei prea mari pentru a le enumera explicit elementele. Procedura de cifrare poate fi redefinit ă după cum urmează: - cifratorul şi receptorul î şi aleg o cheie; - cifratorul î şi alege şi apoi folose şte algoritmul de cifrare f ca să determine în mod unic c ∈ C . Fiecare cheie ki ∈ K împreun ă cu algoritmul de cifrare determin ă o transformare tk : M → C .
Bazele teoretice ale sistemelor secrete
Deci putem privi sistemul de cifrare ca un triplet ( M ,T ,C ) unde T cuprinde totalitatea transform ărilor posibile. Este foarte posibil ca utilizând dou ă chei diferite s ă obţinem aceeaşi transformare. Pot fi uneori mai multe chei decât transformări. Acest lucru poate determina ca la probabilit ăţi egale ale cheilor s ă obţinem probabilit ăţi inegale ale transform ărilor. Pe de alta parte o anumit ă cheie determin ă în mod unic o transformare. Pentru simplificare vom considera că transform ările şi cheile sunt acelea şi. O cerinţă de bază a unui sistem de cifrare este urm ătoarea: cunoa şterea criptogramei, cheii şi a algoritmului trebuie s ă facă receptorul s ă determine în mod unic mesajul. C = t (m ) Deci dacă , atunci −1 m = t (c ) Putem da acum defini ţia lui Shannon pentru un sistem de cifrare: „un sistem de cifrare este o familie de transform ări ireversibile dintr-o mulţime de mesaje M într-o mulţime de criptograme. Cele trei mul ţimi T , M şi C se consideră, de obicei finite ”. Diferen ţa între cunoştinţele receptorului şi interceptorului const ă în aceea că receptorul cunoa şte care k a fost folosit ă în timp ce interceptorul poate cunoaşte doar probabilit ăţile „apriori” ale diferitelor transform ări. Dacă toate
cheile sunt egal probabile atunci interceptorul are numai lista tuturor transformărilor posibile. Definiţia unui sistem de cifrare permite ca transform ările şi cheile s ă aibă probabilităţi diferite şi este important de observat c ă acest lucru se poate întâmpla şi chiar se întâmpla. 2.3 Reprezentarea sistemelor secrete Sistemele secrete pot fi reprezentate în diferite moduri. Unul dintre acestea folose şte schemele liniare ar ătate în figura urm ătoare. Fig. 2
Mesajele posibile reprezint ă punctele din stânga iar criptogramele posibile puncte din dreapta. Dac ă o anumită cheie (de exemplu 3) transform ă mesajul M 2 în criptograma C 4 , punctele M 2 şi C 4 se unesc cu o linie pe care se trece cifra 3. Pentru fiecare cheie din fiecare mesaj trebuie s ă rezulte numai o linie. Dacă acest text este adev ărat şi pentru fiecare criptogram ă, sistemul secrete se numeşte sistem închis. O metod ă mai general ă de descriere a sistemului secret constă în prezentarea opera ţiei cu ajutorul c ăreia, operând asupra mesajului cu o cheie oarecare se poate ob ţine criptograma. De asemenea se poate determina probabilitatea diferitelor chei fie indicând metoda de alegere a cheilor, fie descriind modul cum, de regul ă,
Bazele teoretice ale sistemelor secrete
adversarul alege cheile. Probabilit ăţile mesajelor se determin ă din datele apriori care se cunosc despre con ţinutul probabil al mesajului sau din orice informa ţie special ă care se refer ă la criptogramă. Dacă fiecare mesaj sau criptogram ă conţine N caractere dintr-un alfabet finit de L simboluri şi dacă se noteaz ă cu Rc = log 2 L viteza absolut ă de generare a limbajului, caracteristicile de baz ă ale sistemului, arat ă în figura de mai jos: Fig. 3
sunt următoarele: Ln = 2 RoN - numărul de mesaje posibile şi egal cu num ărul de criptograme: R 2 RN - mulţimea mesajelor cu sens, cu probabilitatea apriori a 2− RN ( R viteza de generare a limbajului); 2 RoN − 2 RN - mulţimea mesajelor f ăr ă sens în limbaj, atribuindu-li-se probabilitatea probabilitatea aprioric aprioric ă egală cu 0; 2 H (k ) - mulţimea cheilor, toate egal prealabile şi apriori independente de mesaj: H ( R ) entropia cheii. Se observă că o linie cu numărul i indică cifrarea mesajului din stânga cu criptograma din dreapta, când s-a folosit cheia i. În figur ă sunt prezentate 12 mesaje şi două chei, deci H (k ) = 1 . Se observ ă că aceeaşi criptogramă poate rezulta prin cifrarea a dou ă sau mai multe mesaje diferite dac ă se folosesc chei diferite. Mesajele ob ţinute prin descrierea unei criptograme folosindu-se o alt ă cheie decât cea utilizat ă la cifrare se numesc mesaje false. Num ărul mesajelor false nm este o variabil ă aleatoare fiind determinat ă de cifru şi de criptogram ă. Dacă nm ia valori mari cu probabilit ăţi apropiate de 1 sistemul este sigur chiar dacă criptanalistul are posibilit ăţi nelimitate de calcul. Poate exista şi situaţia când o criptogram ă este descifrat ă în acelaşi mesaj cu mai multe chei. Astfel criptanalistul ştie care mesaj a fost transmis dar nu ştie care din chei a fost folosit ă. Această situaţie se numeşte descriptare cu cheie falsă. Dacă notăm cu nk numărul de descript ări cu cheie fals ă, atunci în cazul unui cifru cu o bun ă folosire a cheii trebuie ca nk = nm . În timp ce nm prezint ă interes mai mare, este mai simplu de calculat nk . Astfel dacă l (c ) reprezint ă numărul de linii care se termin ă în criptograma C , atunci nk ( c ) , numărul descifr ărilor corecte cu cheie fals ă când este recep ţionată criptograma C , este: nk (c ) = max{l (c ) − 1 , 0}
Bazele teoretice ale sistemelor secrete
2.4 2.4 Compun erea erea sis temelor secrete Fiind date dou ă sisteme secrete T şi R ele pot fi combinate în diferite feluri pentru ob ţinerea unui nou sistem secret S . Dacă R şi T au acelaşi spaţiu al mesajelor se poate forma o sum ă ponderat ponderat ă: S = pT + qR; q + p = 1
Dacă T constă din prezent ările: T1,T2 ,..., T m cu probabilit ăţile p1, p2 ,..., pm iar R din reprezent ările: R1, R2 , ..., Rk cu probabilit ăţile q1, q2 ...qk sistemul rezultat, S , are reprezent ările: T1, T2 , ..., T m , R1, R2 , ..., Rk cu probabilit ăţile; PP1, P P2 , ..., PPm , q q1, q q2 , ..., q qk Generalizând se poate forma suma mai multor sisteme: m
S
= P1T + P2 R + ... + PmU ;
∑= P = 1 i
i 1
O altă metodă de combinare a dou ă sisteme secrete const ă în formarea produsului produsului lor, aşa ca în figura de mai jos. Fig. 4
Să presupunem c ă T şi R sunt două sisteme astfel încât spa ţiul mesajelor sistemului R poate fi identificat cu spa ţiul criptogramelor sistemului T . În acest caz se poate folosi sistemul T la mesajele ini ţiale iar apoi sistemul R, la rezultatul primei opera ţii ceea ce d ă o operaţie rezultat ă S care se poate scrie sub forma: S
= RT
Cheia sistemul S constă atât din cheia sistemului T cât şi din cea a sistemului R, aceste chei alegându-se independent şi cu probabilit ăţile lor iniţiale. Dacă sistemul T are m chei cu probabilit ăţile P1, P2 ...P m iar sistemul R are n chei cu probabilit ăţile P j ⋅ q j , i = 1, m şi j = 1, n . Cifrurile produs se folosesc în mod frecvent. Trebuie remarcat c ă produsul, produsul, în general, nu este comutativ, comutativ, adic ă nu totdeauna RT = TR . În schimb produsul produsul este asociativ: asociativ: R ( ST ) = ( RS )T
= RST
Se verific ă de asemene: - legea asociativ ă ponderat ă pentru adunare; p ( p′T + q′R ) + qS
= pp′T + Pq′
Bazele teoretice ale sistemelor secrete
- legea distributiv ă la stânga şi la dreapta: T ( pR + qS ) = pTR + qTS .
( pR + qS )T = pRT + qST . Sistemele la care spa ţiile M şi C coincid (caz frecvent când succesiunea la litere se transform ă tot în succesiune de litere) se numesc endomorfe. Sistemul endomorf T poate fi ridicat la putere: T n există deci. Dacă T ⋅ T = T sistemul se numeşte independent. De aceste combina ţii de combinare rezult ă metode pentru construirea unor noi tipuri de sisteme secrete din ni şte sisteme secrete date. Propriet ăţile prezentate mai sus se pot folosi pentru descrierea situa ţiilor pe care le poate întâlni criptanalistul când încearc ă să descifreze o anumit ă criptogram ă. În mod real adversarul descifreaz ă sistemul secret de tipul: T
= p1 A + p2 B + ... + pn S + p′X ;
∑p
j
=1
j
unde A, B,..., S sunt cifruri cunoscute cu probabilit ăţile lor apriori pi iar p′x reprezint ă probabilitatea folosirii unui cifru nou necunoscut. Sistemul la care pentru fiecare din transform ările Ti , T j , T k există transformarea T S astfel c ă, dacă cheile sunt echiprobabile are loc rela ţia: TiT j − 1Tk = T s se numeşte sistem omogen. În caz contrar sistemul se nume şte neomogen. Fig. 2.5
Sistemele omogene au o serie de propriet ăţi: - în cifrul omogen opera ţia care transform ă spaţiul mesajelor în sine însuşi, Ti−1T j , formeaz ă un grup de ordinul m, unde m este numărul de chei diferite; - produsul produsul a două cifruri omogene comutative este un cifru omogen; - mesajele se pot împ ăr ţi în clase de resturi R1′R2′ ...RS ′ . Aceste clase de resturi sunt disjuncte, con ţin toate mesajele posibile, dac ă se cifreaz ă un mesaj din clasa Ri se obţine o criptogram ă din clasa Ri , fiecare mesaj din clasa de resturi Ri poate fi cifrat în fiecare criptogram ă din Ri′ cu ajutorul a exact K / ϕi chei diferite ( K reprezint ă numărul de chei iar ϕi numărul de mesaje din clasa Ri ). Se spune despre dou ă sisteme că sunt asemenea dac ă există o transformare A care are o transformare A−1m , astfel încât: R = AS
Bazele teoretice ale sistemelor secrete
Aceasta înseamn ă că cifrarea cu R dă acelaşi rezultat ca şi cifrarea cu S dacă aceasta din urm ă este aplicat ă ulterior transform ării. Dacă notăm R ≈ S ( R asemenea cu S ) atunci se poate scrie: R ≈ R ( reflexivitate )
R ≈ S ⇒ R ≈ T ( tranzitivitatea ) S ≈ T Dacă R ≈ S ⇒ S ≈ R (simetrie) Deci dacă R ≈ S atunci cele dou ă sisteme sunt echivalente din punct de vedere al descifr ării. Într-adev ăr dacă criptanalistul advers intercepteaz ă o criptogram ă din sistemul S , el o trece într-o criptogram ă din sistemul R aplicând o transformare A. Invers criptograma deci sistemul R poate fi trecut ă într-o criptogram ă din sistemul S prin transformarea A−1 . Din punct de vedere teoretic se pun o serie de probleme în ceea ce prive şte asigurarea secretului. Se pune întrebarea cât de rezistent este un sistem secret, dac ă criptanalistul advers nu este limitat de timp şi are la dispozi ţie speciali şti şi mijloace tehnice pentru analizarea criptogramelor interceptate. De asemenea se pune întrebarea dac ă o criptogram ă oarecare are una sau mai multe solu ţii şi ce volum de text cifrat întrun anumit sistem trebuie s ă fie interceptat pentru a se ob ţine o rezolvare unic ă. Trebuie dat r ăspunsul la întrebarea dac ă există sisteme secrete la care nu se poate găsi rezolvarea unic ă indiferent de volumul textului cifrat interceptat. Pentru a putea defini un sistem secret perfect s ă presupunem că există un număr finit de mesaje M1, M 2 ...M n cu probabilit ăţile lor apriorice p1, p2... pn . Aceste mesaje sunt transformate în criptogramele C1, C2...C n astfel încât s ă se păstreze regula de cifrare C = Ti m . După interceptarea unei criptograme se pot calcula probabilităţile aposteriori ale diferitelor mesaje, P ( M / C ) . Din rezolvarea acestor calcule rezult ă că sistemul secret perfect se defineşte ca un sistem la care pentru toate criptogramele C , probabilit ăţile sunt egale cu probabilit ăţile apriori ale mesajelor, f ăr ă a depinde de acestea. În caz contrar, când probabilit ăţile aposteriori se deosebesc de cele apriori pentru anumite mesaje de chei, adversarul poate s ă-şi corecteze ac ţiunile sale privind alegerea cheilor. Cu alte cuvinte, dac ă un sistem secret este perfect, adversarul nu prime şte nici o informaţie suplimentar ă la recepţionarea unei noi criptograme. Dac ă notăm P ( M ) = probabilitatea apriori a mesajului M ; P (C / M ) = probabilitatea condiţionată a criptogramei C cu condi ţia că s-a ales mesajul M . P (C ) = probabilitatea c ă se obţine criptograma C ; P ( M /C ) = probabilitatea aposterioar ă a mesajului M , în condiţia că s-a recepţionat criptograma C , atunci se poate scrie condi ţia necesar ă şi suficientă pentru ca un sistem secret s ă fie perfect;
Bazele teoretice ale sistemelor secrete
P ( M / C ) =
P ( M ) ⋅ P (C / M ) P (C )
Probabilitatea P (C / M ) nu trebuie s ă depind ă de mesaj, deci P (C / M ) = P (C ) şi P ( M / C ) = P ( M ) . Astfel spus probabilitatea total ă a tuturor cheilor care transform ă mesajul M i în criptograma C este egală cu probabilitatea total ă a cheilor care transform ă mesajul M j în aceeaşi criptogramă C pentru orice M i , M j şi C . În cazul sistemului secret perfect trebuie ca num ărul mesajelor M să fie egal cu numărul criptogramelor C , deoarece, pentru orice i dat, transformarea T i dă o coresponden ţă univoc ă între toate mesajele M şi unele criptograme din C . Mai mult, exist ă cel puţin o cheie care transform ă pe M dat în orice criptogram ă C . Toate cheile care transform ă pe M dat în diferite criptograme C trebuie s ă fie diferite, deci num ărul de chei nu trebuie s ă fie mai mic decât num ărul mesajelor M . Un sistem secret perfect este reprezentat în figura de mai jos: După cum se observ ă fiecare mesaj se leag ă cu fiecare criptogram ă cu câte o linie, toate cheile fiind echiprobabile. Cantitatea de informa ţie obţinută la alegerea mesajului sau cheii este: m
∑= P (M )log P (M )
H ( M ) = −
i
i
i 1
m
∑= P (C )log P (C )
H (C ) = −
j
j
j 1
Fig. 2.6
Aceasta este maxim ă când mesajele sunt echiprobabile deci P ( M i ) =
1
n
şi
rezultă: H ( M )max
≤ log n
Această informaţie este complet ascuns ă când nedeterminarea cheii este maximă, adică: H (C ) = log n
Deci cantitatea de nedeterminare care poate fi introdus ă într-un sistem secret nu poate fi mai mare decât nedeterminarea cheii, deci decât log n.
Bazele teoretice ale sistemelor secrete
În practică sistemele perfecte se folosesc pentru transmiterea unor documente de importan ţă deosebit ă sau când numărul de mesaje este mic. Neajunsul principal îl constituie faptul c ă aceste sisteme necesit ă chei cu volum mare. Pentru depistarea unui text este necesar s ă se intercepteze un num ăr suficient de litere N . Dacă N este suficient de mare este posibil ă rezolvarea univoc ă a deriptării. Probabilit ăţile apriori ale literelor pentru diferite mesaje şi cifruri se pot calcula din timp iar cele aposteori se pot determina dup ă interceptarea criptogramelor. Pe m ăsur ă ce N creşte probabilitatea ca literele respective s ă reprezinte anumite mesaje cre şte, iar pentru alte mesaje scade. Procesul continu ă până când r ămâne un singur mesaj cu probabilitatea tinzând către 1. Această situaţie este similar ă cu cea din teoria informa ţiei unde semnalul transmis este deformat de perturba ţii, ceea ce a determinat introducerea no ţiunii de entropie condi ţionată ca măsur ă a nedetermin ării semnalului transmis când se cunoaşte semnalul recep ţionat. Deci este normal s ă se foloseasc ă ca măsur ă a secretului entropia condiţionată a cheii şi a mesajului.
∑ P (K ,C )log P (K / C ) H ( M / C ) = − ∑ P (C , M ) log P ( M / C ) H ( K / C ) = −
K ,C
C , M
unde P ( K , C ) este probabilitatea cheii K şi criptogramei C , P ( K /C ) = probabilitatea aposterioar ă a cheii K dacă s-a interceptat criptograma C , iar P (C , M ), P ( M /C ) probabilit ăţile analoge pentru mesaje. Din aceste rela ţii se observ ă că rezisten ţa sistemului secret este egal cu zero când cheia are probabilitatea egal ă cu 1, iar la toate celelalte probabilit ăţi este 0. Entropia depinde de num ărul de N interceptate, ea sc ăzând când N creşte. Rezisten ţa sistemului secret are câteva propriet ăţi interesante dintre care menţionăm: - rezisten ţa cheii H ( K /C ) este o func ţie necrescătoare cu N . Dacă s-au recepţionat N litere rezisten ţa primelor N litere ale mesajului este mai mică sau egală cu rezisten ţa cheii, deci: H ( K / C , S )
H ( K / C , N ),
H ( M / C , S )
H (M / C , N )
H ( M / C , N )
H ( K / C , N )
S N
- rezisten ţa secretului în cazul unui sistem produs S = T R nu este mai mică decât rezisten ţa unui sistem R. Dacă M1, C 1 şi C 2 sunt mesajul şi respectiv criptogramele corespunz ătoare celor dou ă cazuri atunci:
Bazele teoretice ale sistemelor secrete
H ( M / C2 ) ≥ H ( M / C 1 )
- pentru o sumă ponderat ă de sisteme rezisten ţa H este limitat ă de inegalitatea:
∑ P H ≥ H > ∑ P H − ∑ P log P i
i
i
i
i
i
i
i
i
unde H i putând fi rezisten ţa cheii sau rezisten ţa mesajului. Un sistem secret este ideal dac ă H ( K /C ) şi H ( M /C ) nu tind spre zero când N tinde spre infinit. Sistemul este strict ideal dac ă: H ( X / C ) = H ( K )
Un exemplu de sistem secret ideal este simpla substituire folosit ă la un limbaj artificial în care toate literele sunt egal probabile. În cazul limbajelor naturale sistemele secrete pot în general s ă se apropie de caracteristica ideal ă dar acesta duce la cre şterea rapid ă a complexit ăţii sistemului. Sistemele secrete reale au o serie de neajunsuri: - sistemul trebuie s ă se găsească în strictă concordan ţă cu limbajul deci cel care realizeaz ă cifrul trebuie s ă cunoască profund structura limbii; - structura limbajelor naturale fiind complex ă înlăturarea reductan ţei cere transformări complicate, iar dispozitivul ce ar realiza aceast ă transformare ar trebui s ă fie foarte complicat; - transform ările folosite pot duce la multiplicarea erorilor. Eroarea produsă în transmiterea unei litere duce la erori într-un sector mare, definit de lungimea leg ăturilor statistice în limbajul ini ţial. Orice sistem de cifrare cu un num ăr finit de mesaje poate fi ilustrat în felul următor: în stânga se scrie o coloan ă de puncte reprezentând mul ţimea mesajelor şi în dreapta o mul ţime de puncte reprezentând mul ţimea criptogramelor. Dac ă un mesaj mi se transformă cu o cheie K j într-o criptograma C k atunci o s ăgeată etichetat ă K j va uni mi cu C k . Fig.
O dată definit sistemul secret se pot analiza cele cinci principii care stau la baza sistemelor secrete, principii elaborate de Shannon în 1940. Analiza va trebui să ţină seama de evolu ţia tehnologiei în perioada care a trecut de atunci mai ales în ceea ce prive şte tehnica de calcul. Cele cinci principii propuse de Shannon erau: 1. Cantitatea de secretizare oferit ă; 2. Mărimea „cheii”; 3. Simplitatea opera ţiunilor de cifrare şi descifrare;
Bazele teoretice ale sistemelor secrete
4. Propagarea erorii; 5. Extensia mesajului. Importan ţa primului principiu este evident ă, complexitatea şi tăria sistemelor secrete fiind direct propor ţională cu importanţa mesajelor transmise. În ceea ce prive şte „cheia” aceasta trebuie ţinută secret ă, periodic ea trebuie schimbat ă şi transmisă coresponden ţilor de către cel care gestioneaz ă sistemul de „chei”. Deci cheia ar trebui s ă fie cât mai scurt ă posibil. Pe de alt ă parte „lungimea cheii” poate determina num ărul de chei, deci mul ţimea transformărilor f ăcute, care trebuie s ă fie cât mai mare. De aici rezult ă că mărimea „cheii” trebuie s ă satisfac ă două cerinţe contradictorii. Uneori se poate împar ţi sistemul de chei în clase cum ar fi: - chei de sistem; - chei de mesaj. Operaţiile de cifrare şi descifrare pot fi f ăcute manual sau automat. Dac ă se lucrează manual complexitatea poate duce la erori sau la cre şterea timpului necesar efectu ării operaţiilor respective. Dac ă se lucrează automat complexitatea poate duce la necesitatea unor ma şini sofisticate şi scumpe. În anumite sisteme secrete apari ţia unor erori de transmitere se poate propaga afectând por ţiuni întregi din mesaj sau chiar întregul mesaj. De aceea este bine ca erorile de propagare s ă fie minimizate. În multe cazuri în urma opera ţiunii de cifrare lungimea textului creste. O astfel de extensie a mesajului este de nedorit pentru majoritatea sistemelor de comunica ţie. Din cele ar ătate mai sus rezulta c ă există o anumită incompatibilitate între cerinţele celor cinci principii şi este practic imposibil s ă fie satisf ăcute. Problema realiz ării unor sisteme de secretizare „sigure” a preocupat dintotdeauna proiectan ţii unor asemenea sisteme. Pentru a putea realiza sisteme cat mai rezistente la atacuri criptanalitice, trebuie cunoscute amenin ţările la adresa sistemelor secrete. Trebuie presupus întotdeauna c ă un criptanalist are cuno ştinţe despre sistemul de secretizare, dispune de mijloacele şi for ţele necesare pentru a încerca să „spargă” sistemul secret analizat. Proiectan ţii trebuie s ă fie capabili s ă evalueze „t ăria” sistemului realizat sau timpul de „acoperire” (timpul necesar unui criptanalist pentru a-l „sparge”). În scopul evalu ării securităţii unui sistem se fac urm ătoarele presupuneri care se consider ă a fi condi ţii fundamentale: - C1. Criptanalistul are cuno ştinţe complete despre sistemul de cifrare; - C2. Criptanalistul a acumulat un volum considerabil de text cifrat; - C3. Criptanalistul are la dispozi ţie un anumit volum de text clar şi echivalentul s ău cifrat. Condiţia C1 implică faptul că nu există siguran ţă în sistemul de cifrare însuşi şi securitatea trebuie s ă fie dată de cheia utilizat ă. Fireşte, sarcina criptanalistului este mult mai grea dac ă nu cunoaşte metoda folosit ă. Dar este
Bazele teoretice ale sistemelor secrete
posibil ca algoritmul de cifrare sa fie in posesia criptanalistului (uneori acesta este public). În ceea ce prive şte celelalte dou ă condiţii este posibil ca prin acumularea unui volum mare de text cifrat şi prin faptul c ă toate comunica ţiile între dou ă surse încep cu un anumit antet, criptanalistul s ă aibă la dispozi ţie text clar şi echivalentul s ău cifrat. O întrebare pe care trebuie s ă şi-o pună criptograful (realizatorul unui sistem de cifrare) este dificil s ă determini par ţial sau în totalitate mesajul cunoscând criptograma plus o mic ă parte din textul clar echivalent. Manual, r ăspunsul depinde de anumi ţi factori printre care şi lungimea textului cunoscut. Desigur cele trei condi ţii sunt destul de pesimiste din punct de vedere al criptografului, dar dac ă un sistem de secretizare nu ţine seama de ele, acel sistem poate fi considerat necorespunzator. Dezvoltarea sistemelor de cifrare a fost mult influen ţată de demonstraţia lui Shannon ca sistemul cu şir cu unică folosin ţă este practic imbatabil. Sistemul constă în aceea c ă sistemul de chei este un şir aleator de lungime mult mai mare decât mesajul şi care se utilizeaz ă o singura dat ă. De exemplu dac ă mesajul este un şir de biţi: m = 01001011101..., iar cheia, un alt şir de biţi: k = 101100010111000....,
atunci criptograma C se poate ob ţine „însumând” cele dou ă şiruri (anticoinciden ţă): m = 01001011101... k = 10110001011... C = 11111010110. Mulţi criptografi şi-au dat seama c ă dacă realizeaz ă un sistem mai bun decât acesta, sistemul realizat ar asigura un înalt grad de securitate. Un astfel de cifru ar putea fi cel reprezentat mai jos. Fig.
Pe baza unui sistem de chei şi a fig. 2.7 unui algoritm, se ob ţine un şir „infinit” aleator. Shannon a sugerat criptografilor utilizarea a dou ă tehnici de cifrare numite de el „difuzie” si „confuzie”. Ideea de „difuzie” se refer ă la împr ăştierea caracteristicilor statistice ale spa ţiului mesajelor într-o structur ă statistică ce implica lungi combina ţii de litere din criptogram ă. De exemplu se urm ăreşte modificarea frecven ţei de apari ţie a caracterelor din spa ţiul mesajelor în sensul micşor ării dispersiilor.
Bazele teoretice ale sistemelor secrete
Efectul este ca un criptanalist trebuie s ă intercepteze o criptogram ă mult mai lungă pentru a putea încerca o descifrare statistic ă. Prin tehnica „confuziei” se urm ăreşte corelarea cât mai complex ă între criptogram ă şi cheie aceasta implic ă dependenţa fiecărui caracter cifrat de întreaga structura de „cheie”. Sistemul secret cu acoperire unic ă prezentat mai sus se bazeaz ă pe tehnica „confuziei”. În plus acest sistem nu prezint ă fenomenul de propagare a erorii necesitând în schimb o sincronizare perfect ă între transmi ţător şi receptor. Spargerea acestui sistem implic ă cunoaşterea şirului aleator în întregime, cunoaşterea unor secven ţe mai scurte sau mai lungi nu compromit întregul sistem. În general s-ar putea asocia „t ăria” unui sistem secret cu entropia cheii care este cu atât mai mare cu cât num ărul lor este mai mare şi cu cât au probabilităţi mai apropiate. n
∑= P log P
H ( k ) = −
i
2 i
i 1
Dacă P i =
1
n
atunci H (k ) = log2 n .
Se poate considera c ă sunt două concepte diferite în ce prive şte securitatea unui sistem: „securitate teoretic ă” şi „securitate practic ă”. Din punctul de vedere al criptografului mai important este conceptul de „securitate teoretic ă”, el fiind interesat de şansele obţinerii unei solu ţii unice prin încercarea fiec ărei chei asupra criptogramei interceptate precum şi din determinarea cantit ăţii de criptograma necesar ă pentru obţinerea solu ţiei unice. În sistemul secret se poate recurge la alegeri statistice: acelea ale mesajului clar şi ale cheii. Entropia mesajului H ( M ) este dată de relaţia:
∑∈ P (m ) ⋅ log P (m )
H ( M ) = −
2
m M
şi
reflect ă siguranţa cu care putem aprecia ca un mesaj particular va fi transmis. Criptanali ştii încearcă să determine ce mesaj a fost transmis şi ce cheie a fost utilizat ă. Acest lucru ne conduce la ideea de entropie condi ţionată, numită de Shannon, echivocitate. Dacă pentru mulţimea criptogramelor C şi întregul pozitiv n notăm cu C n mulţimea criptogramelor de lungime n, putem defini echivocit ăţile: H C ( M , n ) = −
∑∈ P (c, m ) ⋅ log P (m ) c
m n c∈C n
H C ( K , n ) = −
P (c, k ) ⋅ log P (k ) ∑ ∈
k K c∈C n
c
Bazele teoretice ale sistemelor secrete
P (c, m)
reprezint ă probabilitatea cu care se recep ţionează criptograma C fiind transmis mesajul m, iar Pc (m ) este probabilitatea aposteori cu care mesajul m a fost transmis ştiind că s-a recepţionat criptograma C . Probabilitatea de a fi transmis oricare mesaj este egal ă cu probabilitatea de a fi aleas ă cheia corespunz ătoare şi deci: H C ( m, n ) = H C (k , n )
Dacă se consider ă numărul literelor alfabetului egal cu 26 (deci mul ţimea mesajelor are 26 de elemente) atunci, folosind logaritmul zecimal ob ţinem: H C ( M ,1) = 1,26 H C ( M ,2 ) = 0,948 H C ( M ,3) = 0,394 H C ( M ,4 ) = 0,206
Echivocitatea d ă o oarecare măsura cantitativ ă incertitudinii pe care o avem în prezicerea mesajului transmis (sau altfel spus cheia utilizat ă). Creşterea lui n nu garantează uşurarea decript ării. Dacă alfabetului sursei de mesaje are L caractere iar sistemul folose şte mesaje de lungime n atunci vor exista Ln mesaje posibile. Dacă notăm r0 = log 2 L atunci numărul de mesaje de lungime n posibile va fi: 2r0 ⋅n . Cele 2r0 ⋅n mesaje posibile pot fi împ ăr ţite în dou ă grupe: - mesaje cu semnifica ţie care au probabilit ăţi aproximativ egale 2rn ⋅n H ( m, n ) unde r n = c ; n
- mesaje f ăr ă semnifica ţie care au probabilit ăţi neglijabile: 2r0 n − 2rm n . Dacă sistemul are h chei egal probabile, atunci h = 2 H (k ) . Probabilitatea ca un mesaj ales la întâmplare s ă aibă semnifica ţie este: 2− r0n + rn n = 2− n( r0 − r n ) . Astfel dac ă un mesaj m se codifică într-o criptogram ă C atunci probabilitatea de a g ăsi un mesaj cu semnifica ţie prin descifrarea lui C este: 2− n( r0 − r n ) . Dacă r0 = r m atunci aceast ă probabilitate este egal ă cu 1. Dacă însă rn << r 0 atunci aceast ă probabilitate este mic ă. Diferen ţa d n = r0 − r n se numeşte redundan ţă a sistemului secret. Deci dacă avem redundanţă d n , probabilitatea de a ob ţine o decodificare
(
)
semnificativ ă este 2−nd n . Dacă încercăm toate cheile posibile 2 H (k ) atunci numărul decodific ărilor cu semnifica ţie va fi: 2 H (k ) ⋅ 2− nd n = 2 H (k )−nd n . Dacă H ( k ) este mult mai mare decât nd n atunci probabilitatea de a ob ţine o
Bazele teoretice ale sistemelor secrete
decodificare semnificativ ă este mai mare, deci probabilitatea de a determina mesajul corect este mic ă. În practica mesajele nu au totdeauna aceea şi lungime. Dac ă n devine oricât de mare s-a constatat c ă redundan ţa tinde asimptotic spre o anumit ă valoare d . Dacă intercept ăm primele q litere ale unei criptograme, num ărul aşteptat de decodific ări semnificative pentru aceste q poziţii este: Aceasta sugereaz ă să determin ăm cel mai mic întreg n0 care dă decodificarea unic ă aşteptată cu relaţia: n0
=
H ( k ) d
Vom încerca s ă determin ăm n0 pentru un cod monoalfabetic. Având 26! chei egal probabile, atunci H (k ) = log 2 26! ≅ 88,4 . Alfabetul are 26 de litere, deci L = 26 şi deci r 0 = log 2 26 ≅ 4,7 . Pentru calculul lui d trebuie determinat debitul real al limbii r n . Nu există nici o cale de a furniza o evaluare precis ă a probabilităţii oricărui cuvânt al limbii, dar diferite studii statistice ofer ă anumite aproximări ale probabilit ăţilor diferitelor cuvinte. De exemplu pentru limba englez ă Hellmann estimeaz ă r n ≅ 1,5 , iar Deavours, r n 1. Deci d = 4,7– 1,5 = 3,2 .(redundan ţa mai arat ă cât la sut ă din caracterele unui text sunt 3,2 redundante. De exemplu dac ă d = 3,2 iar r 0 = 4,7 atunci 68% din 4,7 caractere sunt redundante.). Este de aşteptat că pentru orice criptogram ă de lungime mai mare ca 28 s ă avem soluţie unică. În practic ă însă e nevoie de mai mult de 28 de litere pentru a determin ă soluţia unică. Dar cu cât se intercepteaz ă mai multe criptograme, cu atât redundan ţa limbajului cre şte şi deci unicitatea solu ţiei se ob ţine mai uşor. De asemenea numărul de caractere interceptate trebuie s ă facă astfel încât probabilitatea de utilizare a tuturor literelor s ă fie suficient de mare. Una din cerin ţele unui sistem secret aleator este ca pentru orice criptogram ă dată C , decodificarea folosind toate cheile conduce la o selec ţie aleatoare a tuturor mesajelor, în particular la o selec ţie aleatoare atât a mesajelor semnificative cât şi nesemnificative. Aceasta implic ă în mod clar c ă numărul decodific ărilor este mai mic decât putem garanta, dac ă am ştiut că decodificarea unei criptograme, care a provenit de la un mesaj semnificativ trebuie s ă dea un mesaj semnificativ. Aceasta ultim ă condiţie impune ca şi spaţiul criptogramelor să fie împăr ţit în două grupe: - criptograme care provin de la codificarea mesajelor semnificative; - criptograme care nu provin din codificarea mesajelor semnificative. Dacă este posibil ă o astfel de împ ăr ţire a spa ţiului criptogramelor atunci se poate reduce spa ţiul mesajelor astfel ca toate mesajele s ă fie semnificative. !
!
Bazele teoretice ale sistemelor secrete
Dar îndepărtarea mesajelor nesemnificative este echivalent ă cu îndepărtarea redundan ţei sistemului şi în acest caz orice sistem de cod ar satisface din punct de vedere al securit ăţii. Acest lucru este practic imposibil. Structura tuturor limbajelor naturale este mult mai complex ă. Un sistem secret se poate considera ideal dac ă creşterea volumului de text interceptat nu este în mod necesar de ajutor, deci dac ă H c (k , n ) nu tinde spre zero când n creste oricât de mult. Un exemplu de sistem ideal ar fi un cifru monoalfabetic pe un limbaj artificial în care toate literele sunt echiprobabile, iar literele succesive sunt alese independent.
CAPITOLUL 3 SUCCESIUNI PSEUDOALEATOARE ÎN SECRETIZAREA INFORMAŢIEI 3.1 SUCCESIUNI DE NUMERE ALEATOARE O succesiune finit ă de numere sau evenimente de orice fel este aleatoare dacă ea a fost ob ţinută într-un mod care s ă nu permită prevederea apari ţiei diferitelor elemente ale succesiunii. Noţiunea de aleatoriu se refer ă la condiţiile apriorice pentru formarea succesiunii şi nu la stabilirea aposterioric ă a caracterului şi propriet ăţilor succesiunii. De cele mai multe ori succesiunile aleatoare se ob ţin în mod determinist dintr-o secven ţă scurtă cu ajutorul unor generatoare de succesiuni cum ar fi registrul de deplasare cu reac ţii liniare. Cunoaşterea mai multor secven ţe din şir nu permite stabilirea legii de generare şi de aceea se urm ăreşte generarea unor succesiuni cu perioade lungi de repeti ţie care sunt apoi testate asupra propriet ăţilor lor aleatoare. Un şir de numere reale
{un } = u0 , u1,..., un ,...,0 ≤ ui ≤ 1 se numeşte succesiune de numere aleatoare dac ă ele sunt alese la întâmplare. Aceste succesiuni se dovedesc utile în multe tipuri de aplica ţii: - simularea fenomenelor naturale; - selectarea unui e şantion aleator pentru ob ţinerea de informa ţii despre ceea ce poate constitui comportare tipic ă; - analiza numeric ă; - luarea deciziilor în criptografie. Şirul { xn } = x0 , x1, x2 ,... se numeşte şir b-nar dac ă oricare termen al şirului este unul din numerele întregi 0, 1,2,...,(b- 1). Un şir binar (2-nar) este format din 0 şi 1. La început cei ce voiau s ă obţină numere aleatoare în diferite lucr ări ştiinţifice le realizau prin simularea unor evenimente aleatoare (aruncarea unei monede sau extragerea unei bile dintr-o urn ă etc.). După introducerea calculatoarelor electronice ob ţinerea numerelor aleatoare se face prin intermediul unor programe. Asupra acestor metode s-a ridicat obiec ţia cu privire
Succesiuni pseudoaleatoare în secretizarea informa ţiei
la caracterul aleator al şirului generat deoarece fiecare num ăr obţinut este complet determinat de predecesorii s ăi. Şirurile de acest tip, generate în mod determinist sunt numite succesiuni pseudoaleatoare. Generarea succesiunilor aleatoare lungi s-a dovedit o opera ţie dificilă. Pericolul const ă în acea c ă şirul degenereaz ă şi tinde să se stabilizeze la anumite cicluri de elemente. De aceea s-au elaborat metode adecvate care s ă garanteze obţinerea unor şiruri lungi de numere cu propriet ăţi aleatoare. O clasă de metode de generare o constituie metodele matematice. Una dintre aceste metode este şi metoda congruen ţ ial-liniar ă. În conformitate cu aceast ă metodă şirul { xn } se obţine pe baza unei rela ţii de recurenţă, xn +1 = axn + c (modulo m) - m este modulul şi m > 0 ; - a se numeşte multiplicator, 0 < a < m ; - c se numeşte increment, 0 ≤ c < m <; - x0 este termenul ini ţial, 0 ≤ x0 < m . Aceşti parametri, care se mai numesc şi numere magice trebuie s ă ia astfel de valori încât s ă permită obţinerea unui şir cât mai mare. Trebuie ca şirul de numere s ă aibă o distribuţie uniformă pe o mulţime finită (deci toate numerele s ă aibă aceeaşi probabilitate de ob ţinere). Dacă se ia m = 10 şi x0 = a = c = 7 , atunci şirul obţinut va fi 6,9,0,7 dup ă care se repet ă. Şirul obţinut nu este aleator. În general şirurile care se ob ţin prin relaţii de recuren ţă xn +1 = f ( xn ) au aceast ă proprietate de a se închide într-un ciclu (bucl ă) care apoi se repet ă. Ciclul care se repet ă se numeşte perioad ă. În exemplul de mai sus, perioada este 4, cu valorile alese, dar perioada maxima este 10. Pentru rezultate bune trebuie ca parametrii m, a, c, x0 să îndeplineasc ă anumite condi ţii: - m să fie cât mai mare, având în vedere c ă perioada maximă este egal ă cu m; - (c, m) = 1; c şi m să fie relativ prime între ele; - a să fie de forma a = p + 1, unde p este un divizor prim al lui m. Dacă c = 0 generatorul se nume şte congruenţial multiplicativ, rela ţiile devenind: în care:
xn +1 = axn ( modulo m ); x0
≠ 0 şi ( x0 , m ) = 1.
Numărul a trebuie s ă fie un element primitiv modulo m. Deci, dac ă (a, m) = 1 iar λ este cel mai mic num ăr întreg pentru care a λ = 1( mod m ) ,
Succesiuni pseudoaleatoare în secretizarea informa ţiei
numărul λ este numit ordinul lui a modulo m. Orice număr a pentru care λ este maxim posibil, (în cazul nostru m – 1) se numeşte element primitiv modulo m. Von Neumann a lansat ideea folosirii procedeelor aritmetice pentru generarea algoritmic ă de numere cu propriet ăţi aleatoare. Astfel acesta propune metoda aşa numită a, păr ţii de la mijlocul p ătratului, metoda care const ă în următoarele: - să presupunem c ă avem o reprezentare în baza b a numărului cu care lucr ăm (b = 2 sau b = 10); - dacă numărul are 2a cifre atunci p ătratul său va avea 4 a cifre (dac ă numărul nu are 2 a cifre se adaug ă un 0 în faţă); - se extrage din p ătratul numărului un număr format din 2 a cifre aflate la mijloc. Deci:
xn2 xn2 2a xn +1 = a − 3a ⋅ b , b b
unde prin [ x] se înţelege partea întreag ă a lui x. Dar, de exemplu, dac ă x0 = 3792 a=2 b = 10 x02
= 14379264,
rezultă x1 = x0 .
x 2 x 2 x 2 − r Notând 3a = k şi a = a atunci găsirea numărului care se b b b
repetă revine la studierea ecua ţiei diofantice: x
2
− b a x = r + b3a k ,
unde x ∈ 0, b 2a r , k ∈ 0, b a .
A fost găsit ulterior un algoritm care permite determinarea numerelor repetabile în func ţie de a, b şi r . congruen ţ ial ial aditivă aditivă adică: Altă metodă este metoda congruen ţ xn
= a1x n −1 + a2 xn − 2 + ... + ak xn − k (modulo m ) .
Dacă m = p număr prim, atunci din teoria corpurilor finite se cunoa şte că şirul definit de { xn } cu relaţia de mai sus are perioada maximă maximă de lungime k k − p k − 1 . Dacă polinomul f ( x ) = x − a1x 1 − ... − ak este primitiv modulo p, adică are o r ădăcină care este element primitiv în corpul cu p k elemente,
Succesiuni pseudoaleatoare în secretizarea informa ţiei
constantele a1, a2 ,..., ak se pot determina astfel încât perioada maxim ă să fie
( p k − 1) . Pe lângă metodele matematice de generare a succesiunilor aleatoare pot fi utilizate unele procedee care se bazeaz ă pe fenomene fizice, de exemplu zgomotul electronic sau radioactiv. De asemenea s-au realizat tabele cu numere întâmpl ătoare. Aceste tabele conţin de obicei numere întregi conform distribuite pe un interval. Cea mai mare tabelă de numere aleatoare este „A Million Random Digits and 100.000 Normal Deviates” publicat ă în 1955 de Rand Corporation.
3.2 Teste de aleatorism 3.2.1 Conceptul de aleatorism
Se pune problema de a decide dac ă o secvenţă periodic ă are sau nu proprietăţi care s ă o apropie de o secven ţă aleatoare. Evident nici o secven ţă periodică nu este aleatoare în întregime. În criptografie ceea ce se dore şte de la o secven ţă periodic ă este să fie nedeterminat ă, astfel încât un criptanalist s ă nu poată prevedea ce urmeaz ă în continuare din secven ţa interceptat ă. În primul rând trebuie ca textul cifrat s ă fie mult mai scurt decât secven ţa periodic ă. Aşa cum s-a v ăzut secven ţele utilizate sunt pseudoaleatoare generându-se cu ajutorul unor registre de deplasare cu reac ţie. Dar textul cifrat prin utilizarea unei astfel de secven ţe trebuie s ă capete propriet ăţile specifice unui text aleator. Pentru a putea da o defini ţie aleatorismului trebuie definit o serie de termeni specifici şirurilor aleatoare binare. Vom utiliza astfel termenul de serie ca fiind un num ăr de biţi identici. De exemplu în secven ţa 1011000101100 sun 8 serii: - 3 serii de lungime 2; - 1 serie de lungime 3. Daca o anumit ă secvenţă de lungime m are perioada p, atunci simbolurile de pe pozi ţiile m şi m + p satisfac rela ţia: Sm + p
= S m .
Pentru fiecare τ fixat putem compara bi ţii secvenţei date cu bi ţii secven ţelor translatate cu τ biţi. Dacă notăm cu A numărul de coinciden ţe şi cu D numărul ( p p – A A), atunci se poate defini func ţia de autocorela ţie C (τ): C ( τ ) =
A− D p
Evident C ( p + τ ) = C (τ ) pentru orice τ, astfel c ă putem considera c ă τ verific ă relaţia 0 ≤ τ < p . Dacă τ = 0 atunci avem autocorela ţie în faz ă, caz în
Succesiuni pseudoaleatoare în secretizarea informa ţiei
care A = p şi D = 0, iar C (0) (0) = 1. Pentru τ ≠ 0 vom avea autocorela ţie în afara fazei. Golomb a propus trei criterii de aleatorism pentru secven ţele binare: C1. Dacă p este par atunci secven ţa de lungime p va avea p/2 biţi de valoare 0 şi p/2 biţi de valoarea 1. Dacă p este impar, atunci num ărul de zerouri si numărul de cifre unu difer ă printr-o unitate; C2. Într-o secven ţă de lungime p, jumătate din numărul seriilor va avea lungimea 1, 1/4 va avea lungimea 2,..., 1 / 2k din numărul seriilor va avea lungimea k ; C3. Autocorela ţia defazat ă este constant ă. Vom considera în continuare aceste trei criterii ca o necesitate acceptat ă pentru a putea spune spune c ă o secvenţă este „bună”. 3.2.2 Teste de aleatorism
Pe lângă criteriile de aleatorism propuse de Gaulomb care sunt necesare dar nu şi suficiente se folosesc o serie de teste statistice pentru a determina proprietăţile aleatoare ale unei secven ţe. Vom prezenta în continuare cinci asemenea teste statistice care pot fi realizate pentru a demonstra o m ăsur ă cantitativ ă a aleatorismului. Este de asemenea s ă stabilim anumite niveluri de încredere pentru fiecare test astfel încât s ă putem decide dac ă o secven ţă a trecut sau nu testul respectiv. Vom nota în continuare cu n0 numărul de zerouri şi cu n1 numărul de „1”. frecven ţă Testul 1: Testul de frecven ţă Acesta este testul cel mai evident şi se aplic ă pentru a ne asigura ca n0 ≅ n1 . Pentru aceasta se calculeaz ă 2
χ2 =
( n0 − n1 ) n
,
unde n = n0 + n1 . Evident că dacă n0 = n1 , rezultă χ 2 = 0 ⋅ χ 2 este cu atât mai mare cu cât este mai mare discrepan ţa dintre frecven ţele observate şi cele aşteptate. Pentru a decide dac ă valoarea ob ţinută este destul de bun ă astfel că secven ţa analizat ă să treacă testul, trebuie doar s ă compar ăm valoarea ob ţinută cu un tabel al distribu ţiei χ 2 (tabele care exist ă şi în care g ăsim valoarea lui χ 2 pentru anumite niveluri de semnifica ţie). Dacă valoarea ob ţinută este mai mic ă decât cea aflat ă în tabel, atunci secven ţa trece testul, în caz contrar ea este respins ă. De asemenea, secven ţa este respins ă dacă χ 2 = 0 , deoarece fiind prea bun ă poate fi suspect ă. Testul 2: Testul serial Testul serial este folosit pentru a asigura c ă probabilit ăţile de tranzi ţii sunt egale sau foarte apropiate, ceea ce ar demonstra c ă fiecare bit este independent
Succesiuni pseudoaleatoare în secretizarea informa ţiei
de predecesorul s ău. Să presupunem c ă perechea 0 1 apare de n01 ori, perechea 10 de n10 ori, 00 de n00 ori şi 11 de n11 ori. Evident că:
n00 + n01 = n0 sau n0 − 1 n + n = n sau n − 1 1 10 11 1 (Apare n0 − 1 sau n1 − 1 deoarece într-o secven ţă de lungime n sunt doar n – 1 tranzi ţii).
n −1
Ideal ar fi ca n00 = n01 = n10 = n11 =
4
.
Pentru valorile n00 , n01, n10, n11, n1 şi n0 determinate, se calculeaz ă valoarea: 4
l
l
∑∑
n − 1 i =0 j =0
( nij )
2
−
2
l
∑
n i=0
2
( ni ) + 1,
unde l este numărul de caractere distincte. Această valoare are o distribu ţie χ 2 cu două grade de libertate. Exist ă tabele corespunz ătoare cu valorile lui χ 2 . Se compar ă valoarea ob ţinută cu cea din tabele şi se decide dac ă secvenţa trece testul sau nu. Testul 3: Testul packer Pentru orice num ăr întreg m sunt 2m posibilităţi distincte pentru o secţiune de lungime m. În acest test împ ăr ţim secvenţa noastr ă în blocuri de lungime m şi apoi număr ăm fiecare tip de sec ţiune de lungime m din secvenţa analizat ă. 2m −1
Dacă frecven ţele sunt f 0 , f1,..., f 2m −1 , atunci
∑= i
fi
0
n = F = , unde cu m
n am notat cel mai mare întreg care nu este mai mare decât m
n m
(partea
întreag ă), n – lungimea total ă a secven ţei. Atunci evalu ăm:
χ2 = 2
m
2m −1
∑
F i = 0
2 ( fi ) − F .
Se compara în final valoarea ob ţinută cu cea g ăsită în tabele ale variabilei χ 2 cu 2m − 1 grade de libertate şi se decide dac ă secvenţa trece sau nu testul. O variantă de aplicare a acestui test ar fi urm ătoarea: - se împarte secven ţa în blocuri de m biţi (de exemplu m = 4); - se transformă în baza 10 numărul scris cu patru bi ţi obţinându-se numerele de la 0 la 15;
Succesiuni pseudoaleatoare în secretizarea informa ţiei
- şirul de numere astfel ob ţinut se împarte la rândul s ău în grupe de câte 5 a căror structur ă poate fi: - cinci numere identice; - patru plus unu; - trei plus dou ă; - două plus două, plus unu; - trei plus unu, plus unu; - două plus unu, plus unu, plus unu; - cinci numere diferite. - se determin ă frecvenţele de apari ţie ale acestor grupuri şi se compar ă cu valorile calculate pentru un şir de numere aleatoare; - pe baza unor diferenţe admise se decide dac ă secvenţa analizată trece sau nu testul. Testul 4: Testul de autocorelare Dacă secvenţa de n biţi pe care o test ăm este a1, a2 ,..., an atunci se calculeaz ă: A ( d ) =
n − d
∑= a a + ; i i d
0 ≤ d ≤ n − 1.
i 1 n
Dacă d = 0 atunci A (0 ) =
n
∑= a = ∑= a = n . 2
i
i
i 1
1
i 1
Dacă secvenţa are n0 cifre 0 şi n1 cifre 1 care sunt distribuite aleator atunci valoarea estimat ă a lui A(d ), d ≠ 0 este 2
µ=
n1 ( n − d ) n2
Pentru o secven ţă de n biţi se poate determina corela ţia care exist ă între secven ţa dată şi orice deplasare circular ă a acesteia cu q biţi (0 < q < n). De exemplu pentru q = 1 se calculeaz ă coeficientul de corela ţie serial ă c: 2
c=
n ( a1a2 + a2a3 + a3a4 + ... + an −1an ) − ( a1 + a2 + ... + an ) n a1 + a22 + ... + an2
(
2
2
) − (a1 + a2 + ... + an )
.
Aceste coeficient apare frecvent în statistic ă si are valori cuprinse între -1 şi 1. Dacă c este 0, sau foarte apropiat de 0 indic ă o slabă corela ţie între bi ţii secven ţei, iar dac ă c tinde spre 1 indică o dependenţă liniar ă totală. Testul 5: Testul spectral Se datoreaz ă lui COVEYOU şi Mc. PHERSON şi s-a impus datorit ă faptului că s-a dovedit c ă toate secven ţele care au trecut toate celelalte teste de aleatorism sunt acceptate şi de acest test, iar cele care au fost respinse de unul dintre teste sunt respinse şi de acesta.
Succesiuni pseudoaleatoare în secretizarea informa ţiei
Testul se bazeaz ă pe tehnica transform ărilor Fourier aplicate func ţiilor de variabile întregi, transform ări care permit scoaterea în eviden ţă a caracterului aleator al unei secven ţe de numere întregi.
3.3 Scheme liniare şi neliniare pentru generarea succesiunilor pseudoaleatoare Pentru a produce secven ţe aleatoare lungi dintr-un cod scurt, lucru dorit în criptologie, se utilizeaz ă în mod frecvent generatoare formate din registre de deplasare cu reac ţie. Un exemplu de registru de deplasare cu trei celule de memorie şi un număr ător modulo 2 este dat in figura de mai jos: Fig.
Dacă iniţial conţinutul registrului este 111, prin deplas ări succesive combinaţiile formate din st ările ieşirilor celor trei celule Q1, Q2 , Q3 vor fi: 011 101 010 001 100 110 111
La ieşire se ob ţine şirul 1110100 care se care se repet ă şi care se adun ă cu mesajul obţinându-se criptograma C . Perioada secven ţei depinde de num ărul de celule care compun registrul precum şi de alegerea conexiunilor la sumatorul modulo 2. Pentru tratarea teoretic ă a succesiunilor şi a schemelor generatoare, acestora li se ata şează polinoame ale c ăror coeficien ţi ( ai ) sunt elemente din câmpul GF (2). Succesiunea ob ţinută la ieşire se poate de asemenea exprima polinomial, astfel: a ( x ) = a0 + a1x + ... + an x n ,
unde a0 , a1,..., an constituie şirul de la ie şirea generatorului. În exemplul de mai sus, a ( x ) = 1 + x + x 2 + x 4 . Polinoamele care sunt ata şate schemelor semnific ă, prin coeficien ţii acestora, conexiunile sumatoarelor de la diferite celule ale registrului. De exemplu, în schema de mai sus, g ( x ) = 1 + x 2 . Conţinutul informa ţional al registrelor se poate exprima de asemenea printr-un polinom de grad egal cu num ărul de celule ale registrului de deplasare,
Succesiuni pseudoaleatoare în secretizarea informa ţiei
cu puterile mici spre rangurile inferioare de la intrarea registrului şi cu puterile mari spre rangurile de la ie şire. În figura de mai jos se prezint ă un registru de deplasare cu conexiune invers ă care calculeaz ă relaţiile de recuren ţă liniar ă: ai + k
k −1
∑= h ⋅ a +
=−
j
j
i j
.
0
Se poate determina ak şi următoarele valori, pe baza celor k valori anterioare ale succesiunii. Structura schemei este determinat ă de polinomul: h ( x ) = h0
+ h1x + ... + hk x k ,
unde h0 ≠ 0 şi hk = 1. Conţinutul iniţial al registrului este secven ţa a0 , a1,..., ak . Prin deplas ări succesive, la ie şirea schemei se ob ţine la început con ţinutul registrului, apoi elementele formate pe baza combina ţiilor liniare, pân ă când se va găsi un moment n după care succesiunea se repet ă. Perioada de repeti ţie a succesiunii este dat ă de cel mai mic num ăr natural n pentru care polinomul x n − 1 se împarte exact la h ( x ) : x n
−1
h(x)
= g ( x ) .
Polinomul h ( x ) se numeşte polinom caracteristic al succesiunii {an } şi al registrului de deplasare care o genereaz ă. Dacă gradul polinomului h ( x ) este k , gradul polinomului g ( x ) este ( n − k ) . O succesiune generat ă de un registru de deplasare cu reac ţie cu k ranguri (celule) are lungimea maxim ă dacă perioada sa este 2 k − 1 . Dacă secvenţa {an } are lungimea maxim ă atunci polinomul h( x x) este ireductibil peste câmpul coeficien ţilor. Reciproca acestei afirma ţii nu este adevărată, deci pot exista polinoame caracteristice ireductibile care nu dau succesiuni de lungime maxim ă. De exemplu, polinomul: h ( x ) = 1 + x + x 2 + x 3 + x 4 este ireductibil peste GF (2) (2) dar nu este primitiv. El divide polinomul x5 − 1 iar schema respectiv ă genereaz ă o succesiune de lungime 5 care nu este de perioad ă maximă n = 24 − 1 = 15 . x) este reductibil, h( x x) = s( x x) t ( x x), atunci exponentul lui h( x x) este Dacă h( x x) şi t ( x x). cel mai mic multiplu comun al exponen ţilor lui s( x
Succesiuni pseudoaleatoare în secretizarea informa ţiei
Când polinomul h( x x) este ireductibil şi primitiv succesiunea ob ţinută la ieşirea registrului de deplasare nu depinde de condi ţiile ini ţiale (cu excep ţia conţinutului zero peste tot care trebuie evitat ă). Dacă 2k − 1 = p este un număr prim, atunci fiecare polinom primitiv de grad p corespunde unei succesiuni de lungime maxim ă. În cazul în care polinomul este un trinom de forma: x p + x q + 1 , se demonstreaz ă că rezultate mai bune se ob ţin dacă gradul p este astfel ales încât însuşi 2 p − 1 să fie un num ăr prim (astfel de numere prime se numesc numere prime Mersenne). Mersenne). Funcţionarea registrului poate fi descris ă matriceal. Fiecare stare a unui registru de deplasare cu reac ţie având k ranguri poate fi considerat ă ca un vector k - dimensional. În acest caz, registrul de deplasare este un operator liniar care schimbă fiecare stare în starea urm ătoare. Matricea unui registru de deplasare cu reacţie este o matrice p ătrată k × k având forma:
h1 1 0 h 2 0 1 M = " " " h k −1 0 0 hk 0 0
! "
0 0
" " , " "
1
0
unde hi sunt coeficien ţii polinomului caracteristic. Dacă notăm cu S (i) vectorul coloan ă având k elemente din GF (2) (2) care dau starea celulelor registrului la momentul i:
a0i i a S (i ) = 1 , # ai k −1 unde cu a ji am notat starea celulei j la momentul i. Se poate u şor observa c ă: a0i +1 = h1a0i + h2 a1i + " + hk ak i −1 ai +1 = ai 1
0
#
aki +−11 = ak i − 2
Deci starea registrului la momentul i + 1 va fi:
Succesiuni pseudoaleatoare în secretizarea informa ţiei
S (i + 1) = M T ⋅ S (i ) şi
(
S (i + j ) = M
T
j
)
⋅ S (i ) .
Dacă se cunosc 2 k biţi ai succesiunii de ie şire se poate stabili atât conţinutul iniţial al registrului cat si conexiunile la sumatoare prin rezolvarea unui sistem de 2 k ecuaţii liniare, sau matriceal. Dacă notăm cu S (1) un vector coloan ă format din primii k biţi ai şirului de ieşire, S (2) (2) un alt vector coloan ă format din k biţi începând cu al doilea etc., se pot forma forma două matrice p ătrate de dimensiune k × k : X (1) = S (1) , S ( 2 ), ..., S ( k ) ; X ( 2 ) = S ( 2 ) , S (3), ..., S (2 k ) .
Între cele dou ă matrice exist ă relaţia: X ( 2 ) = T ⋅ X (1) .
Matricea T este matrice de trecere şi are forma:
0 1 0 0 0 1 T = " " " 0 0 0 h1 h2 h3
" " " " "
0 0 " .
hk 1
Se observ ă cu uşurinţă legătura dintre matricele M ş M şi T . Deci T se poate calcula cu rela ţia: T
−1
= X ( 2 ) ⋅ ( X (1)) .
Inversarea matricei X (1) necesit ă cel mult opera ţii de ordinul k 3 şi se pot uşor efectua cu ajutorul calculatorului pentru orice k . Pentru funcţionarea mai sigur ă a schemelor secven ţiale registrul de deplasare se completeaz ă cu o logic ă neliniar ă. În figura de mai jos se prezint ă un registru de deplasare cu reac ţie pentru generarea unei succesiuni, care apoi este filtrat ă neliniar cu o func ţie f pentru a realiza o distribu ţie uniformă între biţii de 0 si cei de 1, secvenţa care se poate utiliza drept cheie pentru cifrarea mesajelor: Există o clasă de generatori neliniari realizat ă pe baza de polinoame caracteristice primitive şi cu logic ă neliniar ă la două ranguri pentru a asigura ieşirea. Schema unui astfel de generator neliniar este dat mai jos:
Succesiuni pseudoaleatoare în secretizarea informa ţiei
Succesiunea la ie şire poate fi privit ă ca o soluţie generală a ecuaţiei caracteristice a unui generator liniar echivalent, determinat de polinomul X 6 + X 5 + X 4 + X 3 + X 2 + X + 1. Analiza se poate extinde la generatoare având mai mult de dou ă ranguri combinate neliniar, a şa cum se arata în figurile de mai jos: Schema din dreapta reprezint ă echivalentul liniar al schemei din stânga. Procesul neliniar analizat poate fi extins la sinteza unor generatoare mai complexe. Un astfel de generator este dat mai jos: Dacă cele trei registre R1, R2 şi R3 au polinoame caracteristice primitive de grade respectiv r , s şi t atunci se demonstreaz ă că generatorul rezultat va avea complexitatea echivalenta cu: rs + ( s + 1) t . Perioada de repeti ţie va fi egal ă cu cel mai mic multiplu comun al numerelor: 2r − 1; 2 s − 1; 2t − 1. Succesiunea ob ţinută poate fi combinat ă cu alte succesiuni generate în mod analog într-un dispozitiv asem ănător celui de mai jos: La aceste scheme se poate încerca maximizarea complexit ăţii succesiunii în funcţie de numărul total de ranguri con ţinute în registre. A şadar combinând registrele de deplasare cu reac ţie liniar ă cu un număr mic de ranguri cu ajutorul operaţiilor neliniare se pot ob ţine generatoare foarte complexe cu perioade mari de repetiţie care pot fi folosite cu succes în criptografie. Aplica ţ ie Să analizam în continuare generatorul din figura de mai jos:
Dacă se încarcă iniţial registrul cu starea: 1,0,0 atunci tabela de adev ăr care conţine funcţionarea acestuia este: Y Q1 Q2 Q3 1 0 0 0 1 1 0 0 1
0
1 1
1
0
1 1 1
1 1 1
1 0 0 0 1 1 0 0 Se define şte funcţia de autocorela ţie R(i) astfel: R (i ) =
2n −1
∑
2n − 1 pentru i = 0 Q (k ) ⋅ Q (k + i ) = 0 în rest
Succesiuni pseudoaleatoare în secretizarea informa ţiei
R(i)
este o func ţie periodic ă cu perioada 2 n − 1 , deci R (i ) = R (i + 2n − 1) .
Q(k + i)
reprezint ă decalarea ciclic ă cu i biţi a secven ţei obţinută la ieşirea registrului. Dacă îi asociem lui 0 valoarea numeric ă – 1, iar lui 1 valoarea numeric ă 1, atunci pentru ie şirea: Y = 0011101 se obţine: Q(k ): -1 -1 1 1 1 -1 1 Q(k + 0): -1 -1 1 1 1 -1 1 Q(k + 1): 1 -1 -1 1 1 1 -1 Q(k + 2): -1 1 -1 -1 1 1 1 1 -1 1 -1 -1 1 1 Q(k + 3): 1 1 -1 1 -1 -1 1 Q(k + 4): Q(k + 5): 1 1 1 -1 1 -1 -1 Q(k + 6): -1 1 1 1 -1 1 -1 R(0) = (-1) (-1) + (-1) (-1) + 1 + 1 + 1 + (-1) (-1) + 1=7 R(1) = (-1) + (-1) (-1) + (-1) + 1 + 1 + (-1) + (-1)= -1 În mod analog: R(2) = -1 R(3) = -1 R(4) = -1 R(5) = -1 R(6) = -1 Existenţa maximului pronun ţat în graficul func ţiei de autocorela ţie face posibilă utilizarea acestei secven ţe pseudoaleatoare ca secven ţa de sincronizare în transmisiunile de date. Dac ă se intercaleaz ă în mod periodic la transmitere o astfel de succesiune şi se face corela ţia dintre secven ţa recepţionată cu o secven ţă generată local atunci la ie şirea corelatorului va apare un maxim ori de câte ori va apare secven ţa respectiv ă. Avantajul utiliz ării acestei secven ţe într-o astfel de aplica ţie constă în faptul c ă sincronizarea se poate face chiar dac ă, „e” 2n − 1 biţi ai acestuia au fost erona ţi, cu condi ţia ca e < (deci e < 3). 2 În registrele din schemele de generare a succesiunilor trebuie evitat ă situaţia în care toate celulele sunt în starea 0 deoarece nu se mai poate ie şi din aceast ă stare. Un exemplu de evitare a acestei st ări este dat în schema de mai jos: Presupunând c ă se cunosc primii 6 bi ţi ai succesiunii s ă determin ăm acum structura şi starea ini ţială a registrului. Pe baza celor 6 bi ţi cunoscuţi: 001110 se construiesc matricele X (1) şi X (2).
0 0 X (1) = 0 1 1 1
0 1 ; X ( 2 ) = 1 1 1 1
1 1
. 0
1 1 1
Succesiuni pseudoaleatoare în secretizarea informa ţiei
−1
Din relaţia: X ( 2 ) = T ⋅ X (1) se obţine T = X ( 2 ) ⋅ X (1) . Dar
0 1 1 −1 X (1) = 1 1 0 , 1 0 0 deci:
0 1 1 0 1 1 0 1 0 T = 1 1 1 ⋅ 1 1 0 = 0 0 1 . 1 1 0 1 0 0 1 0 1 Rezultă că h1 = 1; h2 = 0; h3 = 1 . Primii trei bi ţi ai şirului ne arat ă starea ini ţială a celor trei celule: Q3 = 0; Q2 = 0 şi Q1 = 1.
CAPITOLUL 4 METODE DE CIFRARE
4.1 Metode de cifrare bazate pe funcţii de permutare 4.1.1 Câmpuri Galois
Fie câmpul GF (2) în care GF (q ) în care q = p n şi care se noteaz ă cu F . Elementele x ∈ F pot fi reprezentate printr-un set de q polinoame: x = C0t
n −1
+ C1t n− 2 + ... + Cn − 2t + C n −1
unde 0 ≤ ci < p , iar t este un element primitiv al câmpului F , adică orice x ≠ 0 poate fi exprimat prin x = t k , 1 ≤ k ≤ q − 1 . În plus t q −1 = 1 unde q – 1 este cel mai mic întreg pozitiv cu aceast ă proprietate. Deci se poate scrie: F = {0, t , t 2 ,..., t q − 1}. Elementul t satisface o ecua ţie ireductibil ă de forma: f (t ) = t n
+ k1t n −1 + k 2t n − 2 + ... + k n −1t + k n = 0
unde 0 ≤ ki < p . Polinomul f (t ) se numeşte polinom primitiv peste câmpul F iar ecuaţia f (t ) = 0 se poate folosi pentru a converti orice form ă de puteri ( x = t k ) n n−1 n −1−i n într-o formă polinomial ă x = cit exprimând t = − ki t n −i . i =1 i =0 De asemenea, fiec ărui element x ∈ F i se poate atribui o valoare numeric ă
∑
∑
cu ajutorul rela ţiei: f
=
n −1
∑= i
Ci p n
−1− i
, 0 ≤ f ≤ q −1
0
Dacă x = (C0 , C1,..., C n −1 ) iar y = ( d 0 , d1,..., d n −1 ) , atunci x + y = (C0 + d 0 , C1 + d1,..., Cn −1 + d n −1 ) ( modulo p ) . Dacă x = t k iar q = t m atunci xy = t k + m unde k + m se calculeaz ă modulo (q – 1). Aşadar orice element al câmpului F poate fi exprimat în dou ă moduri:
Metode de cifrare
- prin componentele sale (C0 , C1,..., C n −1 ) ; - sub forma de puteri ( t k ), în afara elementului x = 0. Vom ilustra remarcile de mai sus considerând câmpul GF (33 ) căruia îi asociem polinomul primitiv f (t ) = t 3 + 2t + 1 . Elementele câmpului vor fi: F
= (0, t , t 2 ,..., t 26 ) . 0 = (0,0,0 ) cu
= (0,1,0 ) 2 t = (1,0,0 ) t 3 = ( 0,1,2 ) t
=0 f 1 = 3 f 2 = 9 f 0
se obţine cu ajutorul polinomului primitiv f (t ), t 3 + 2t + 1 = 0 adică: 3 t = −2t − 1 = t + 2; f 3 = 5 .
Metode de cifrare
4
= (1,2,0 ) f 4 = 15 5 t = ( 2,1,2 ) f 5 = 23 6 t = (1,1,1) f 6 = 13 7 t = (1,2,2 ) f 7 = 17 8 t = ( 2,0,2 ) f 8 = 20 9 t = ( 0,1,1) f 9 = 4 0 t1 = (1,1,0 ) f 10 = 12 t11 = (1,1,2 ) f 11 = 14 2 t1 = (1,0,2 ) f 12 = 11 3 t1 = ( 0,0,2 ) f 13 = 2 4 t1 = (0,2,0 ) f 14 = 6 5 t1 = ( 2,0,0 ) f 15 = 18 6 t1 = (0,2,1) f 16 = 7 7 t1 = ( 2,1,0 ) f 17 = 21 8 t 1 = (1, 2,1) f 18 = 16 19 t = ( 2,2,2 ) f 19 = 26 20 t = ( 2,1,1) f 20 = 22 21 t = (1,0,1) f 21 = 10 22 t = (0,2,2 ) f 22 = 8 23 t = ( 2,2,0 ) f 23 = 24 24 t = ( 2,2,1) f 24 = 25 25 t = ( 2,0,1) f 25 = 19 26 t = (0,0,1) f 26 = 1 t
Se observ ă că fiecare element al câmpului are dou ă reprezent ări şi i se asociaz ă o valoare numeric ă. Pentru efectuarea opera ţiilor de înmul ţire şi împăr ţire se folose şte reprezentarea exponen ţială, iar pentru opera ţiile de adunare şi scădere reprezentarea polinomial ă. De exemplu:
Metode de cifrare
⋅ t 25 = t 30 = t 4 = (1,2,0 ) 5 25 0 t + t = ( 2,1,2 ) + ( 2,0,1) = (1,1,0 ) = t 1 3 4 29 4 5 t : t1 = t : t 1 = t 1 = ( 2,0,0,0 ) t
5
4.2 Funcţii polinomiale
Un polinom f ( x ) = a0 x n + a1x n −1 + ... + an −1x + an cu coeficien ţi ai ∈ GF ( q ) este numit polinom de permutare dac ă pentru cele q elemente ale câmpului ( x1, x2 ,..., xq ) imaginile ( f ( x1 ), f ( x2 ) ,..., f ( xq ) ) reprezint ă o permutare a elementelor câmpului. Fie de exemplu elementele câmpului GF (7) şi polinomul f ( x) = 2 x + 3. Acest polinom realizeaz ă următoarea permutare:
0 1 2 3 4 5 6 3 5 0 2 4 6 1 Aceste funcţii de permutare pot fi utilizate în criptografie dac ă literelor unui alfabet L li se asociaz ă valori numerice corespunz ătoare, iar cifrarea are loc după următoarea schemă:
α → x → f ( x ) → α′ Deci unei litere α i se asociază valoarea numeric ă x. Se calculeaz ă f ( x) care corespunde literei α'. Această procedur ă realizeaz ă o substituţie simplă. În scopul de a da o complexitate mai mare se folose şte o permutare polinomial ă cu mai mulţi parametrii care să fie modificaţi după o anumită regulă. De exemplu polinomul: f ( x) = ax + b, a ≠ 0 a, b ∈ GF (q ) asigur ă o substitu ţie simplă a şi b putând fi considerate ca elemente ale cheii de cifrare. În general dac ă permutarea este reprezentat ă prin: yi = f ( xi , a1, a2 ,..., ar ) , ai ∈ GF ( q ) unde a1, a2 ,..., ar pot fi supu şi unor anumite restric ţii impuse de funcţia utilizat ă, atunci descifrarea va impune utilizarea func ţiei de permutare inverse f −1 ( x ) . Deci xi = f −1 ( yi , a1, a2 ,..., ar ) . 4.3 Metode de cifrare Vom prezenta mai multe metode bazate pe func ţiile de permutare care pot fi aplicate în raport cu num ărul de litere al alfabetului N şi de câmpul asociat.
Metode de cifrare
4.3.1 Metoda utilizat in cazul N = P n
Vom ilustra aceasta metod ă printr-un exemplu. Fie câmpul GF (33 ) , deci N = 33 = 27 litere (cele 26 de litere ale alfabetului plus cuvântul - spa ţiu), si fie polinomul de permutare: yi = ai xi + bi cu ai ≠ 0 . Între parametrii ai şi bi vom stabili o anumit ă regulă de recuren ţă, de exemplu: ai + 2 = ai +1 + ai ; i = 1,2,3,... bi + 2 = bi +1 ⋅ bi ; i = 1,2,3,... şi valorile ini ţiale: 6
a1 = ( 0,2,1) = t 1
= (1,1,1) = t 6 3 b1 = ( 0,0,2 ) = t 1 0 b2 = (1,1,0 ) = t 1 a2
(a) (b) (c) (d) (e) (f) (g) (h) (i)
Cifrarea cuvântului SECRET poate fi realizat ă astfel: S E C R E 5 3 5 19 18 (2,0,1) (0,1,2) (0,1,0) (2,0,0) (0, 1,2) 25 3 25 1 15 (0,2,1) (1,1,1) (1,0,2) (2,1,0) (0,1,2) 6 3 16 12 17 (0,0,2) (1,1,0) (2,2,0) ( 1,2,2) (1,2,0) 20 26 24 16 18 T P Z R X (a) textul în clar ( xi ) ; (b) valorile numerice asociate literelor; (c) reprezentare polinomial ă; (d) reprezentare exponen ţială; (e) ai reprezentate polinomial; (f) ai reprezentate ca puteri; (g) bi reprezentate polinomial; (h) valori numerice ob ţinute pentru reprezent ările cifrate; (i) criptograma ( yi ) . Pentru descifrare se folose şte funcţia invers ă: xi = ai−1 ( yi − bi ) .
T 20 (2,0,2) 8 (2,2,2) 19 (1,1,2) 17 Q
Metode de cifrare
4.3.2 Metoda utilizat ă în cazul M = p n + 1 .
Carmichael a prezentat o metod ă de cifrare bazat ă pe utilizarea func ţiilor de permutare introducând simbolul ∞ la elementele câmpului GF ( p n ) , metoda care poate fi utilizat ă atunci când num ărul literelor din alfabet poate fi scris sub forma: M = p n + 1 . Vom ilustra aceast ă metodă utilizând ca func ţie de permutare o func ţie raţională R( x): R ( x ) = yi
=
+ bi , aibici ∈ GF ( p n ) şi ai di − bi ci ≠ 0 . ci xi + d i ai xi
Simbolul ∞ este reprezentat sub forma
Astfel R −
d i
= ∞ ci
ci
≠ 0 şi R (∞ ) =
ai ci
x
0
( x ≠ 0 ) unde
( ).
x ∈ GF p n
, iar dacă ci = 0 atunci R (∞ ) = ∞ .
Vom utiliza elementele câmpului GF (52 ) cu polinomul primitiv f (t ) = t
2
+ 4t + 2 . Alfabetul este cel al limbii engleze cu 26 = 52 + 1 litere, iar
corespondenta între litere şi elementele câmpului GF (52 ) este dată mai jos: A B C D E F G H I J K L M N (a) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 (b) (0,0) (1,0) (1,3) (4,3) (2,2) (4, 1) (0,2) (2,0) (2, 1) (3,1) (4,4) (3,2) (0,4) (4,0) O P Q R S T U V W X Y Z (a) 14 15 16 17 18 19 20 21 22 23 24 (b) (4,2) (1,2) (3,3) (1,4) (0,3) (3,0) (3,4) (2,4) ( 1,1) (2,3) (0,1) Linia (a) cuprinde reprezentarea exponen ţială iar linia ( b) reprezentarea polinomială a elementelor de câmp. Vom folosi ca regul ă de variaţie a parametrilor ai , bi , ci şi d i selectând două matrice pătrate de ordinul 2 cu elemente ale câmpului GF (52 ) şi stabilind:
ai bi M i + 2 = M i × M i +1, deci M i ≠ 0 şi M i = ci d i (1,2 ) (0,1) ( 2,3) (3,3) M şi folosind = Fie de exemplu M1 = ; 2 (1,2) (1,0) (3,4 ) ( 2,0 )
regula stabilit ă calculăm M 3 :
M 3
(0,4 ) (3,0 ) = 1 4, 2,0 ( ) ( )
Metode de cifrare
= (1,2 ) ⋅ (2,3) + (0,1) ⋅ (1,2 ) = t15 ⋅ t 23 + t 24 ⋅ t 15 = = t14 + t 15 = ( 4,2 ) + (1,2 ) = (0,4 ) 5 6 24 b3 = (1,2 ) ⋅ (3,3 ) + (0,1) ⋅ (1,0 ) = t1 ⋅ t1 + t ⋅ t = = t 7 + t = ( 2,0 ) + (1,0 ) = (3,0 ) 20 23 7 5 c3 = (3,4 ) ⋅ ( 2,3 ) + (2,0 ) ⋅ (1,2 ) = t ⋅ t + t ⋅ t 1 = = t19 + t 22 = (3,0 ) + (1,1) = ( 4,1) 20 16 7 d3 = (3,4 ) ⋅ (3,3) + ( 2,0 ) ⋅ (1,0 ) = t ⋅ t + t ⋅ t = = t12 + t 8 = (0,4 ) + ( 2,1) = ( 2,0 ) a3
Se observ ă că: a1d1 − b1c1 = (3,2 ) ≠ 0 a2d 2 − b2c2
= (3,1) ≠ 0 a3d3 − b3c3 = (3,4 ) ≠ 0 Cifrarea cuvântului COD se va face astfel: C O D (a) 2 3 14 (b) (1,3) (4,2) (4,3) (c) (3,0) (2,3) (3, 1) (d) T X J
⋅ t 15 + (0,1) (1,4 ) + (0,1) (1,0 ) Y 1 = = 20 15 = = = c1x1 + d 1 t ⋅ t + ( 2,0 ) (3,2 ) + ( 2,0 ) (0,2 ) a1x1 + b1
=
t 6
t
t
2
= t 19 = (3,0 )
+ b2 t 23 ⋅ t 14 + (3,3) (4,0 ) + (3,3 ) (2,3 ) = = = = Y 2 = c2 x2 + d 2 t15 ⋅ t 14 + (1,0 ) ( 4,1) + (1,0 ) (0,1) a2 x2
= t 23 = ( 2,3 ) ⋅ t 3 + (3,0 ) (1,2 ) + (3,0 ) (4, 2 ) = = = = Y 3 = c3 x3 + d 3 t 5 ⋅ t 3 + ( 2,0 ) ( 2,1) + ( 2,0 ) ( 4,1) a3 x3 + b3
=
t 1
4
5
t
2
t1
= t 9 = (3,1)
Descifrarea se face folosind transformarea invers ă:
Metode de cifrare
xi
=−
− bi ci yi − ai di yi
4.3.3 Metoda de cifrare a mai multor câmpuri şi func ţ ii de permutare
Metoda care va fi prezentat ă în continuare este echivalent ă cu cifrarea independent ă şi simultană a mai multor mesaje, fiecare cifrat printr-o metod ă diferit ă dintre tipurile prezentate anterior. Fie un alfabet L având l litere. Dacă se vor cifra câte n litere simultan, cifrare poligrafic ă, se poate spune c ă avem de-a face cu un alt alfabet A care are N = l n caractere ( n-grame) de forma λ = l1l2 ...ln , li ∈ L . La cifrare textul clar compus din literele alfabetului L se împarte în blocuri de lungime n. Numărul N se poate scrie ca o suma de k numere astfel: N = N1 + N 2 + ... + N k în care M i = Pimi sau Ni = Pi mi + 1 . k
Alfabetul A este astfel parti ţionat în K subalfabeturi astfel încât A = ! Ai i =1
subalfabetele fiind disjuncte dou ă câte două. Fiecărui subalfabet îi este destinat un câmp GF ( pimi ) = Fi şi o funcţie de permutare fi ( x ) care poate fi polinomială dacă Ni = pimi sau raţională dacă M i = pimi + 1. Modul în care cele N n-grame sunt împ ăr ţite în cele k subalfabete este următorul: - se repartizeaz ă fiecărei litere ale alfabetului ini ţial L o valoare numeric ă din secvenţă: 0,1,2,...,(l– 1). Această reparti ţie poate fi diferit ă pentru mesaje diferite. - fiecare n-gramă se scrie sub form ă numerică λ = ( v1, v2 ,..., v n ) unde vi este valoarea numeric ă a literei li din n-gramă; fiecărei n-grame i se ata şează un număr σ = v1l n −1 + v 2l n − 2 + ... + v n −1l + v n care reprezint ă valoarea numeric ă asociat ă acesteia; - în subalfabetul A1 vor fi incluse toate n-gramele pentru care 0 ≤ σ ≤ N 1 − 1 ; - în subalfabetul A2 vor fi incluse toate n-gramele pentru care N1 ≤ σ ≤ M 1 + M 2 − 1 ; - în subalfabetul Ak vor fi incluse toate n-gramele pentru care N1 + N 2 + ... + N k −1 ≤ σ < N − 1 ;
Metode de cifrare
Se define şte în continuare pentru fiecare n-gramă numărul ρ astfel ρ = σ − ( N1 + N 2 + ... + N i −1 ) astfel încât 0 ≤ ρ ≤ N i − 1, n-gramă fiind inclus ă în subalfabetul Ai . Se scrie ρ sub formă polinomial ă:
ρ = Coρimi −1 + C1ρimi − 2 + ... + Cmi − 2ρi + Cmi −1 ρ = (Co , C1, C2 ,..., Cm i −1 ) Procedura de mai sus define şte o bijec ţie între n-gramele fiec ărui subalfabet Ai şi elementele câmpului F i . Cu ajutorul func ţiilor fi ( x ) se face apoi cifrarea dup ă metodele descrise anterior. Vom ilustra aceast ă procedur ă printr-un exemplu. S ă consideram cazul n = 2 şi l = 26 iar repartizarea valorilor numerice pentru literele alfabetului normală: A = 0 H = 7 0 = 14 V = 21 B = 1 I = 8 P = 15 W = 22 C = 2 J = 9 Q = 16 X = 23 D = 3 K = 10 R = 17 Y = 24 E = 4 L = 11 S = 18 Z = 25 F = 5 M = 12 T = 19 G=6 N=13 U=20 Numărul de bi-grame este N = 262 = 676 . Acesta se poate scrie astfel: 262 = 73 + 132 + (34 + 1) + (34 + 1) Deci: N1 = 7
3
= 343 2 N 2 = 13 = 169 4 N 3 = 3 + 1 = 82 N 4 = 34 + 1 = 82
N1 + N 2
= 51 2 N1 + N 2 + N 3 = 594
Vom avea deci pentru subalfabete A1, A2 , A3 şi A4 . O bigramă λ va apar ţine: - subalfabetului A1 dacă 0 ≤ σ ≤ 342 ; - subalfabetului A2 dacă 343 ≤ σ ≤ 511; - subalfabetului A3 dacă 512 ≤ σ ≤ 593 ; - subalfabetului A4 dacă 594 ≤ σ ≤ 675 . Fie diagrama: λ = RM = (17,12).
Metode de cifrare
Deci: σ = 17 σ = 17 × 26 + 12 = 454 şi de aici rezult ă că această diagramă apar ţine subalfabetului A2 ( RM ∈ A2 ) . Se calculeaz ă ρ:
ρ = σ − N 1 = 454 − 343 = 111 Subalfabetului A2 îi este asociat câmpul GF (132 ) şi valorii 111 îi corespunde elementul (8,7) din GF (132 ) deoarece (8 × 13 + 7 = 111) . Câmpului GF (73 ) corespunz ător primului subalfabet îi ata şăm polinomul primitiv f (t ) = t 3 − t − 5 . Celui de-al doilea subalfabet îi asociem câmpul
( 2 ) şi polinomul primitiv f (t ) = t 2 + t + 2 , celui de-al treilea subalfabet îi asociem câmpul GF (132 ) şi polinomul primitiv f (t ) = t 2 + t + 2 , la fel şi celui GF 13
de-al patrulea subalfabet ( A4 ) . Cele patru func ţii de permutare utilizate vor fi: 5 - pentru A1 yi = xi + ai ; 5 - pentru A2 yi = xi + bi ; 1
- pentru A3
yi
= ci +
- pentru A4
yi
= d i +
3
+1
xi
1 3
x1
+1
; .
Modul de varia ţie a parametrilor este urm ătorul: ai +1 = (1,0,2 ) ai
+ (2,3,6 );
a1 = (2,4,5 )
bi +1 = (7,8 ) bi ;
b1 = (7,10 )
ci +1 = (1,0,0,0 ) ci ;
c1 = (1,1,0,1)
di +1 = (1,0,0,0 ) di ;
d 1 = (1,2,2,0 )
În cazul nostru: x1 = (8,7 ) . 5
Se calculeaz ă y1 = x15 + b1 = (8,7 ) + (7,10 ) . Pentru descifrare se vor aplica func ţiile inverse care pentru A2 este: 5
= yi − bi xi = 5 yi − bi xi
Dacă n = 3 atunci vom avea N = 263 = 17576 care se poate scrie: 3 5 6 3 N = 26 = 7 + 3 + 3 + 13 şi se vor putea cifra trigrame.
Metode de cifrare
4.3.4 Metoda de cifrare prin folosirea unui singur câmp, cazul
Vom prezenta o metod ă de cifrare în care num ărul de litere ale alfabetului N este mai mic decât elementele câmpului asociat. Fie A = (α1, α 2 ,..., α N ) alfabetul utilizat şi F = GF ( p n ) câmpul asociat,
(8n > N ) . Se face parti ţionarea elementelor câmpului în dou ă seturi: = ( x1, x2 ,..., x N )şi S ′ = F − S = ( x1′ , x2′ ,..., xq′ −1 ); S
q= p
n
Se stabileşte o bijecţie între cele N litere ale alfabetului A şi cele N elemente ale câmpului S . Folosind o func ţie polinomial ă de permutare de forma yi = f ( xi , ai ) să cifr ăm textul clar: P1P2 P3... . Se stabile şte bijecţia între literele textului clar şi valorile numerice λ1, λ 2 , λ3... unde λi ∈ S şi se evalueaz ă apoi f (λi ai ) = g i . Acum dacă gi ∈ S şi gi corespunde literei C i atunci Pi este cifrat în C i . Dacă gi ∈ S ′ se repetă procedura ob ţinându-se şi aşa mai departe. Deoarece S' este finit, şi dacă prin alegerea f ăcută se evită situaţia: f ( xi , ai ) = xi
atunci după cel mult (q – N ) paşi se va ob ţine un element din S . Pentru un parametru αi fixat dac ă x j ≠ xk se va ob ţine yi ≠ yk însă prin variaţia parametrilor αi este posibil ca pentru xi ≠ xk să se obţină yi = yk . Vom ilustra aceast ă procedur ă prin două exemple: Exemplul 1: Fie câmpul GF (u1 ) şi polinomul de permutare yi = ai xi + bi unde: ai = 6i ( mod 41) iar bi + 2 = bi +1 + bi ( mod41) şi b1 = 1 iar b2 = 5 . În setul S vor intra elementele câmpului care au valori între 0 şi 25, deci: S = ( 0,1,2,...,25 )
iar S = (0,1,2,...,25) iar S ' = (26,27,..,40) Să cifr ăm textul PERMUTARE. P E R M U T 17 12 19 (a) 15 4 20 11 (b) 6 36 25 27 39 (c) 5 6 28 1 11 17 (d) 9 24 24 15* 14* 1* (e) J P O Y Y H (a) valorile numerice asociate textului clar (b) ai = 6i i = 1,2,3,4,5,6,7,8,9
A 0 29 4 4 E
R 17 10 32 2* C
E 4 19 36 13* N
Metode de cifrare
(c) bi i = 1,9 (d) valorile numerice ale literelor criptogramei (e) criptograma. Valorile marcate cu " * " s-au ob ţinut după mai multe itera ţii. Pentru descifrare se folose şte funcţia invers ă: vi = 640 −i ( yi − bi ) aplicându-se acelea şi iteraţii în cazul ob ţinerii unor elemente din S ' Exemplul 2: Fie un alfabet cu N = 1000 caractere utilizate, format din 26 de litere, 26 × 26 = 676 diagrame şi 298 dintre cele mai frecvente trigrame: 3 2 1000 = 26 + 26 × 26 + 298 . Cifrarea se face în câmpul GF (11 ) care con ţine 1331 elemente şi care pot fi generate cu ajutorul polinomului primitiv: 3 f (t ) = t + 10t + 4 . Se utilizeaz ă funcţia de generare polinomial ă: yi
= ai xi3 + bi
Elementele câmpului GF (113 ) sunt partiţionate în dou ă seturi: setul S de 1000 de elemente şi setul S' cu 33 1 elemente: S = {0,1,2,...,999} şi S' = {1000,1001,...,1331} Se face coresponden ţa între cele 1000 de caractere
ale alfabetului şi
elementele setului S, sub forma: A = 000 TE = 789 STR = 672 etc. Pentru cifrare se împarte textul în clar în secven ţe de lungime 1,2 sau 3 elemente con ţinute în A; fie acestea λ1λ 2λ3... . Se înlocuie şte secvenţa λi prin elemente de câmp xi cu valoarea stabilit ă prin corespondenţă. Parametrii ai şi bi pot fi variaţi în modul următor: ai
= t 3i+1
bi
= t n
2
+ n+ 2
iar reprezent ările cifrate se ob ţin cu relaţia: yi = ai xi3 + bi şi dacă yi ∈ S atunci el corespunde caracterului λ k . Deci λi s-a cifrat prin λ k . Dacă însă yi ∈ S ′ atunci se repet ă procedeul cu aceea şi parametrii pân ă când y ∈ S . Ca text cifrat poate fi folosit şi cel ob ţinut din în şiruirea valorilor numerice ale elementelor yi ∈ S obţinute în urma procesului iterativ de cifrare.
Metode de cifrare
1
Pentru descifrare se utilizeaz ă funcţia invers ă: xi = ( yi − bi ) / ai 3 cu 1
specificaţia că t 3 = t 887 .
CAPITOLUL 5 DISPOZITIVE
ŞI MAŞINI
CRIPTOGRAFICE
Criptografia a jucat un rol foarte important în istorie, iar produc ătorii de cifruri au dorit realizarea unor sisteme de cifrare cât mai rezistente. Dac ă la început şi-au pus mai pu ţin problema operativit ăţii şi a productivit ăţii, odată cu creşterea volumului de coresponden ţă ce trebuia cifrat ă, aceste probleme au devenit foarte importante. De asemenea, crescând complexitatea metodelor de cifrare a crescut şi riscul de a gre şi. Toate acestea au impus necesitatea realiz ării unor dispozitive care s ă facă mai sigur ă şi mai rapidă activitatea de cifrare. Au apărut mai întâi simple rigle, discuri, abace, apoi acestea au fost mereu perfecţionate ajungându-se la adev ărate maşini la început mecanice, apoi electromecanice ajungându-se ast ăzi la realizarea unor sisteme de cifrare bazate pe utilizarea calculatoarelor şi a microprocesoarelor specializate. Toate aceste dispozitive şi maşini pot fi grupate în şase genera ţii care urmăresc evolu ţia dezvolt ării tehnicii şi tehnologiilor de realizare precum şi a metodelor şi principiilor de cifrare. În prima genera ţ ie pot fi incluse acele dispozitive simple bazate pe principiul riglei şi care au ap ărut începând se pare cu anul 475 î.e.n. Dintre acestea cel mai vechi dispozitiv de cifrat a fost SKYTALA spartanilor care va fi descris ă ulterior. A doua genera ţ ie este genera ţia maşinilor mecanice bazate pe cilindri, tamburi, roţi dinţate şi pârghii. Acestea au ap ărut la sfâr şitul secolului al XIX-lea, s-au dezvoltat apoi rapid atingând apogeul în timpul primului r ăzboi mondial. Aceste ma şini utilizează, pentru asigurarea secretului, cheile în num ăr foarte mare şi practic nerepetabile. Deci, algoritmul de cifrare se complic ă dar se automatizeaz ă, iar cele mai perfec ţionate maşini din aceast ă generaţie asigur ă şi tipărirea textelor clare şi a criptogramelor. Acest lucru elimin ă greşelile de transcriere, m ăreşte siguranţa şi operativitatea cifr ării. A treia genera ţ ie apare la mijlocul secolului al XIX-lea, fiind condi ţionată de apariţia telegrafului. Ea se dezvolt ă în paralel cu a doua genera ţie împrumutându-i multe din principiile şi modalităţile practice de realizare. Aceast ă generaţie impune metode de cifrare şi criptanaliz ă, maşinile fiind în general electromecanice. A patra genera ţ ie este genera ţia aparaturii electrice şi începe s ă se impună puţin înainte de izbucnirea primului r ăzboi mondial. Primele realiz ări au utilizat
Dispozitive şi maşini criptografice
sisteme cu relee sau se bazau pe transform ări ale ma şinilor de scris electrice şi pe utilizarea roţilor de cod. Ele au fost considerate mult timp deosebit de rezistente chiar dac ă în 1929 Friedman a reu şit să spargă un asemenea cod. Mai târziu prof. ABRAHAM SINKOV de la universitatea din ARIZONA a demonstrat eficacitatea utilit ării teoriei grupurilor la spargerea acestor coduri. A cincea genera ţ ie a debutat pu ţin înaintea izbucnirii celui de-al doilea r ăzboi mondial, odat ă cu accentuarea dezvolt ării electronicii şi apariţia calculatoarelor cu memorii magnetice. Alături de telegraf, comunica ţiile prin radio influen ţează tot mai mult criptologia impunând o dezvoltare rapid ă a criptoanalizei. A şasea genera ţ ie apărută după deceniul al VI-lea al secolului XX se impune ca fiind genera ţia microelectronicii, a informaticii, a procesoarelor specializate. Se bazeaz ă pe algoritmi complec şi, iterativi, pe utilizarea cheilor aleatoare şi unice, pe trecerea de la folosirea ca supor ţi de informa ţie a benzilor sau colilor de hârtie la dischete sau benzi magnetice. Dar evoluţia acestor mijloace este departe de a fi încheiat ă ea continuând şi astăzi într-un ritm şi mai alert. Înainte de a trece la prezentarea unor dispozitive şi maşini criptografice consider ăm util să facem o prezentare a principalilor beneficiari ale acestora. Beneficiarii de mijloace criptoanalitice pot fi clasifica ţi în cinci categorii mai importante: - militari; - diplomaţi; - servicii de informa ţii; - oameni de afaceri; - coresponden ţi particulari. Din aceste categorii militarii sunt de departe principalii utilizatori ai mijloacelor criptologice. Un exemplu este edificator pe aceast ă linie. Astfel la foarte scurt timp după ce inginerul suedez Boris Hagelin a inventat ma şina de codificat C-36, uzinele Smith-Carana au construit pentru armata SUA circa 14000 de exemplare ale acestei ma şini cu denumirea „CONVERTER M-209”. Se disting dou ă tipuri de maşini criptografice militare: - modele „strategice” care func ţionează la eşaloanele superioare ale armatelor; - modele „tactice” care servesc la transmisiuni de campanie. Dintre acestea, ma şinile „strategice” trebuie s ă asigure un grad superior de securitate şi de aceea sunt mai costisitoare. Mesajele prelucrate cu aceste ma şini pot păstra valabilitatea şi importanţa, perioade mai îndelungate de timp de ordinul anilor sau chiar deceniilor. Maşinile „tactice” nu trebuie s ă fie atât de complexe pentru c ă informaţiile de la acest nivel au o valoare limitat ă în timp. Astfel, pozi ţia unei
Dispozitive şi maşini criptografice
subunit ăţi s ă zicem, nu mai prezint ă nici un interes pentru inamic la un interval de câteva zile, chiar ore dup ă transmiterea mesajului. Aceste ma şini vor utiliza coduri de campanie care nu necesit ă în practică mult timp şi efort pentru a fi decodificate. Ar fi gre şit să se cread ă că serviciile diplomatice nu reprezint ă decât o piaţă restrânsă pentru dispozitivele de codificare. S ă admitem că, de exemplu, 120 de state fac schimb de reprezentan ţe, se ob ţine un total de peste 28000 de maşini criptografice dac ă se consider ă doar câte dou ă maşini pentru ambasad ă sau consulat şi alte două la Ministerul de Externe al fiec ărui stat. Serviciile de informa ţii sunt la rândul lor mari „consumatoare” de ma şini de cifrat dac ă avem în vedere aria larg ă a activit ăţilor pe care le desf ăşoar ă: contraspionaj, securitate na ţională, şi în multe situa ţii spionaj (economic, militar, etc.). Dispozitivele şi maşinile criptografice folosite de industria şi şi oameni de afaceri reprezint ă mai puţin de 5% din totalul acestora. Mai trebuie luate în considerare aici organismele financiare (marile b ănci, instituii de credit, companii de asigur ări) care utilizeaz ă în mod frecvent ma şinile criptografice. Costul relativ mare al aparaturii de cifrare face ca particularii care le utilizeaz ă să fie extrem de pu ţini. În sfâr şit organizaţiile criminale, în special cele ce se ocup ă cu traficul de orice natur ă, recurg deseori la criptografie. De exemplu, în perioada prohibi ţiei navele care soseau în SUA cu alcool, primeau prin radio instrucţiuni codificate de la c ă peteniile traficanţilor. Dar numai între anii 1927– 1929 o echip ă condusă de o femeie Elisabeth Smith Friedman a descifrat peste 12000 din aceste mesaje. Iar poli ţia dispunea la rândul ei de p ăzitoare de coast ă dotate cu laboratoare de decodificare. Să facem în continuare o prezentare a dispozitivelor şi maşinilor criptografice respectând pe cât posibil ordinea cronologic ă a apariţiei lor, dar f ăcând în acela şi timp distinc ţie între cele dou ă categorii. SKYTALA apărută în secolul V î.e.n. era un baston în jurul c ăruia se înf ăşura spir ă lângă spir ă o panglica foarte îngust ă de piele, papirus sau pergament pe care, pe generatoare se scriau literele mesajelor. Dup ă scrierea textului panglica era dublat ă, mesajul devenea indescifrabil, întrucât literele erau dezasamblate. Mesajul se putea descifra numai de persoana care dispunea de un baston de lungime şi grosime identice cu dimensiunile ini ţiale pe care s ă fie înf ăşurate din nou panglica primit ă. Ea realiza o transpozi ţie, fiind o prim ă formă a acestei metode de cifrare. Criptograful lui Alberti . Era alcătuit din dou ă discuri concentrice cu diametre diferite, suprapuse. Fiecare disc era împ ăr ţit în 24 de sectoare pe care erau înscrise literele şi cifrele. Pe discul magnetic erau înscrise 20 de litere (f ăr ă H, J, K, U, W) şi cifrele de la 1 la 4, iar pe al doilea 23 de litere (f ăr ă H, K, Y) şi conjunc ţia „ET”. Ordinea lor era arbitrar ă. Pentru cifrare se stabilea o cheie de exemplu D = A. Aceasta însemna c ă pentru cifrare litera D de pe discul mic se aşează în dreptul literei A de pe discul mare şi apoi începea cifrarea. Alberti
Dispozitive şi maşini criptografice
recomanda pentru m ărirea rezisten ţei schimbarea cheii dup ă un număr de cuvinte. Criptograful lui Alberti a fost perfec ţionat de Silvester, Argenti şi alţii constituind un element de baz ă pentru criptografele de tip disc ap ărute ulterior. Silvester Porta a împ ăr ţit discurile în 26 de sectoare utilizând apoi toate cele 26 de litere, criptograful s ău permiţând o substitu ţie simplă dar complet literal ă. Criptograful lui Wheatstone. A fost inventat în 1867, este realizat tot cu două discuri şi realizeaz ă o substituţie dublă cu cheie finit ă. cele dou ă discuri erau fixe, pe unul din ele cele 26 de litere fiind dispuse în mod normal iar pe cel de-al doilea literele erau a şezate aleator conform unei chei. Peste cele dou ă discuri se mi şcau două ace într-un raport 27 la 26 de rotiri producându-se astfel un decalaj continuu şi ciclic între cele dou ă alfabete. Aparent se produce o cifrare cu autocheie, ceea ce i-a f ăcut pe mulţi speciali şti să-l declare indescifrabil. Mai târziu îns ă Kerchoffer a demonstrat c ă numărul alfabetelor este limitat şi că de fapt el realizeaz ă o substituire cu dubl ă cheie. Cifrarea se face pornind de la o cheie, de exemplu A = C , adică acul mare se afla la A iar acul mic se afla la C . În continuare se duce acul mare la prima liter ă a textului clar şi se ia drept liter ă cifrat ă, litera pe care se opre şte acul mic. Operaţia se repet ă pentru a doua liter ă ş.a.m.d, deplasarea f ăcându-se în sensul acelor de ceasornic. La descifrare se procedeaz ă invers plecând din acelea şi puncte determinate de cheie şi se deplaseaz ă acele până când acul mic ajunge la pozi ţia primei litere din criptogram ă, prima liter ă a textului în clar fiind litera la care a ajuns acul mare. Criptograful Bazaries. A fost inventat în 1891 fiind considerat o mare realizare din punct de vedere criptologic la vremea respectiv ă. Era realizat dintr-un ax şi 20 de inele care aveau înscrise pe marginea exterioar ă un număr, o liter ă de identificare şi un alfabet de 25 de litere (f ăr ă W). Cheia sistemului se formeaz ă din litere sau cifre şi reprezint ă ordinea de montare a inelelor pe ax, ea fiind valabil ă atât la cifrare cât şi la descifrare. Cifrarea se face împ ăr ţind textul clar în grupe de 20 litere şi apoi aranjând inelele, astfel încât, pe o generatoare s ă apar ă înscrise cele 20 de litere ale primei grupe. Textul cifrat poate fi considerat oricare alt grup de litere de pe o alt ă generatoare. Descifrarea se face în mod identic. Rezisten ţa acestui criptograf const ă în numărul mare al cheilor: 20! S-a stabilit c ă cifrarea cu ajutorul cilindrului lui Bazaries a asigurat secretul mesajelor în func ţie de pregătirea criptanali ştilor, de la 6 ore pân ă la 3 zile. De aceea, ca m ăsur ă de protecţie a secretului, cheia era schimbat ă la fiecare 6 ore. Criptograful lui Soudart . A fost inventat în anul 1914 şi realizează un cifru bazat pe dubla transpozi ţie. Principiul este asem ănător celui al lui Bazaries având tot 20 de inele montate pe un ax. Marginea exterioar ă este împăr ţită în
Dispozitive şi maşini criptografice
două, pe partea stâng ă erau trecute cele 25 de litere ale alfabetului (f ăr ă W), iar pe marginea din dreapta, în dreptul literelor erau trecute literele textului clar. Cheia de cifrare era literal ă sau numerică putând fi format ă din cel mult 20 de caractere (litere sau cifre de la 1 la 20) într-o ordine aleatoare. De exemplu cheia DISCRET va deveni în numeric 246 1537 ceea ce determin ă montarea inelelor pe cilindru în ordinea dat ă de cheie. Dup ă montare se rotesc inelele pân ă apare pe pozi ţia iniţială cuvântul cheie. 2 DM ER FA GA
4 IE JI KF LS
6 ST TP UI VI
1
CO DT EC FC
5 RD SO TE UE
3 EE FG GC HP
7 TC UR VL XT
În locurile din dreapta r ămase libere se înscriu literele textului dar pe linii de la stânga la dreapta şi de sus în jos. Fie textul clar: METODE CRIPTOGRAFICE CLASICE. Punctul s-a folosit cu PT. Se scot inelele şi se montează în ordine numerică normală. 1
CO DT EC FC
2 DM ER FA GA
3 EE FG GC HP
4 IE JI KF LS
5 RD SO TE UE
6 ST TP UI VI
7 TC UR VL XT
Se realizeaz ă a doua transpozi ţie aliniind inelele dup ă alfabetele înscrise la stânga. Criptograma va fi: OTCCM/ RAAEG/ CPEIF/ SDOEE/ TPIIC/ RLT. Dintre criptografele de tip rigl ă exemplific ăm: Rigla Saint-Cyr . Aceasta realizeaz ă o substituţie polialfabetic ă. Se compune dintr-un suport fix pe care este înscris câte un alfabet într-o anumit ă ordine şi un cursor. Cifrarea se execut ă simplu, plecând de la o cheie literal ă care realizeaz ă coresponden ţa dintre litera de pe cursor şi litera respectiv ă de pe suport. Litera cifrat ă se citeşte pe suport în dreptul literei clare de pe cursor. Cheia determin ă poziţia începutului alfabetului de pe cursor fa ţă de alfabetul de pe suport. De exemplu, dac ă prima litera a cheii este D, atunci cifrarea literei C va fi F . Riglele au fost perfec ţionate în permanen ţă şi se folosesc şi azi. S-au realizat rigle la care alfabetul s-a completat cu cifre şi semne de punctua ţie. Cea
Dispozitive şi maşini criptografice
mai reprezentativ ă este rigla universal ă. Aceasta este format ă din 20 de riglete care se deplaseaz ă orizontal, astfel încât pe coloana orificiilor s ă apar ă cheia numeric convenient ă. Această riglă ofer ă foarte multe posibilit ăţi cum ar fi: cifrarea numeric ă, duplicarea transpozi ţiilor, utilizarea de chei multiple literale sau numerice. Oricât de complicate ar fi, criptografele nu sunt dispozitive care ajut ă pe cel ce execut ă cifrarea s ă elimine greşeli de transcriere, s ă scurteze timpul de lucru. Spre deosebire de ele ma şinile de cifrat automatizeaz ă procesul cifr ării eliminând în întregime gre şelile de transmisie, r ămânând doar gre şelile de operare dependente de instruirea şi antrenamentul cifratorului. Transform ările realizate cu ma şinile de cifrat nu sunt simple transpozi ţii de elemente, existând posibilitatea realiz ării unor funcţii de transformare, bazate pe calcule complexe. În ceea ce prive şte productivitatea, aceasta este mult superioar ă procedeelor de cifrare utilizate anterior. Perfec ţionarea maşinilor de cifrat este indiscutabil legat ă de nivelul de dezvoltare al ştiinţei şi tehnicii din epoca respectiv ă. Concepute pentru mecanizarea opera ţiunilor de cifrare şi descifrare, maşinile clasice, tradi ţionale constituie sisteme criptografice complexe, îndeplinind atât cerin ţa transparen ţei algoritmilor de cifrare-descifrare pentru utilizatori, cât şi mutarea ponderii secretului pe sistemul de chei utilizat. În linii mari o maşină de cifrat, respectiv descifrat, trebuie s ă cuprindă următoarele elemente: - mulţimea (algoritmul) transform ărilor; - sistemul de chei; - dispozitive auxiliare care s ă permită introducerea datelor şi cheilor, adaptarea acestora la canalul de leg ătura etc. Din punct de vedere al metodei utilizate ma şinile de cifrat polialfabetice pot fi împăr ţite în trei categorii: - maşini polialfabetice simple care realizeaz ă substitu ţii diferite la fiecare liter ă a textului în clar în func ţie de numărul de alfabete utilizate. Nu pot exista mai mult de 26 de alfabete diferite şi acest impediment duce la apari ţia repetărilor, factor deosebit de decisiv în bătălia descifr ărilor; - maşini polialfabetice bazate pe principiul autocifr ării. Substitu ţiile realizate depind atât de num ărul alfabetelor cât şi de caracteristicile textului cifrat. Aceasta duce le reducerea num ărului de repet ări, deci îngreuneaz ă lucrul criptanali ştilor dar complic ă în acelaşi timp descifrarea. - maşini polialfabetice complexe la care exist ă posibilitatea schimb ării aleatoare a rangurilor diferitelor alfabete utilizate. Dintre maşinile din aceasta categorie vom prezenta ma şina „Enigma”. Este o maşină polialfabetic ă complex. A fost fabricat ă în Germania şi larg utilizat ă în timpul celui de-al doilea r ăzboi mondial. De altfel, enigma
Dispozitive şi maşini criptografice
„Enigmei” înc ă nu a fost elucidat ă pe deplin. Speciali ştii oscileaz ă de la a-i atribui în întregime e şecul Germaniei, pân ă la a o trata doar ca un factor conjunctural, complementar, în desf ăşurarea celei mai mari conflagra ţii mondiale din istoria omenirii şi deci f ăr ă contribu ţie semnificativ ă la destinul beligeranţilor. Înainte de a încerca s ă tratăm şi noi acest subiect, s ă vedem ce a însemnat din punct de vedere criptografic, ma şina Enigma. Algoritmul criptografic al ma şinii avea la baz ă o substituţie polialfabetic ă complex ă, realizat ă cu ajutorul a trei discuri mobile, prev ăzute fiecare cu câte 26 de contacte pe o fa ţă şi 26 de ace pe cealalt ă. Contactele şi acele sunt legate electric între ele; dou ă câte două, dar nu direct, ci într-o anumit ă ordine. Există şi un al patrulea disc, fix, prev ăzut cu 26 de contacte, legate dou ă câte două. Discurile sunt coaxiale şi montate în a şa fel încât acele unuia preseaz ă contactele celuilalt, realizându-se astfel 13 linii paralele, formate din câte 3 segmente cu varia ţie independent ă. Circuitul electric se realizeaz ă de la surs ă la tastă, care marcheaz ă prin apăsare litera clar ă (la cifrare) sau pe cea cifrat ă (la descifrare), prin contactul acesteia la o contraplac ă cu 20 de contacte fixe, apoi prin discurile I, II şi III, după circuite realizate din segmentele cu varia ţie independent ă, la discul al patrulea, fix, şi prin una din cele 13 perechi de contacte ale acestuia se înapoiaz ă prin alt circuit, format din segmente de c ătre cele trei discuri mobile, la un bec ce ilumineaz ă litera cifrat ă (la cifrare) sau pe cea clar ă (la descifrare). Complexitatea ma şinii const ă în numărul de segmente, care realizeaz ă variaţia circuitelor, datorit ă rotirii celor trei discuri func ţie de tastele ap ăsate şi de caracteristicile componentei textului clar. La fiecare ap ăsare de tast ă, funcţie de cheia adoptat ă, cele trei discuri se deplaseaz ă unul faţă de celălalt, cu un anumit num ăr de pozi ţii, astfel încât se realizeaz ă de fiecare dat ă, un anumit circuit electric şi deci o anumit ă coresponden ţă între litera clar ă apăsată şi litera cifrat ă iluminat ă. Cele trei discuri, cu diferite scheme de legaturi între contactele şi acele acestora, se pot schimba între ele, realizând practic în acest fel o alt ă variant ă a maşinii. De altfel, în afara celor trei discuri montate, fiecare ma şină dispunea şi de un alt set de discuri cu leg ături complet diferite. Dacă se consider ă că fiecare dintre cele cinci discuri poate fi realizat întrun alt mod, se ob ţine o succesiune de patru alfabete diferite, din care trei fiind realizate de discurile mobile, sunt permutabile. Dar datorit ă legăturilor întreţesute se poate considera c ă la fiecare transformare de liter ă clar ă în litera cifrat ă contribuie şapte alfabete (sase realizate de traseele - dus şi întors - din discurile mobile şi unul în cel de-al patrulea disc). Făr ă îndoială, aceste posibilit ăţi de schimbare a alfabetelor determin ă un număr foarte mare de transform ări, greu de descifrat, chiar şi în cazul în care se posedă o variantă a maşinii de cifrat.
Dispozitive şi maşini criptografice
Un alt element caracteristic al ma şinii îl constituie cheia; aceasta define şte ordinea discurilor, pozi ţia iniţială şi deplasările relative ale discurilor în timpul cifr ării unei anumite litere. Deşi robustă şi comodă, datorită faptului că nu avea posibilitatea de a imprima textul cifrat sau clar (acestea se culegeau şi se notau sau se scriau la altă maşină) greşelile de transcriere erau destul de frecvente. La acestea se mai adăugau şi câteva necazuri tehnice produse de imperfec ţiunea unor contacte, arderea becurilor şi scăderea capacit ăţii sursei de alimentare. Pentru a vedea cum se lucra cu aceast ă maşină (din care armata noastr ă a achizi ţionat şi exploatat circa 100 de bucăţi), vom reproduce câteva pasaje (cu eliminarea unor elemente caracteristice de limbaj) din „Instruc ţiunile de întrebuin ţare a maşinii de cifrat Enigma”, editate la 12 ianuarie 1937 de către Marele Stat Major, reactualizate cu unele preciz ări organizatorice la 13 ianuarie 1940. „Extinderea întrebuin ţării maşinii de cifrat Enigma la toate Sec ţiile Armatei se ordon ă de către Comandamentul Suprem al Armatei”. Lungimea minimă a unei radiograme cifrate cu ma şina de cifrat Enigma nu este limitat ă, dar cea maxim ă nu va depăşi 250 de litere. Cheile se vor schimba zilnic la orele 00.00. Tabelele cu cheile zilnice se distribuie lunar. Cheile zilnice pentru cifrare impun schimbarea: - poziţiei discurilor (în cifre romane); - poziţiei inelelor (în cifre arabe sau litere); - legaturilor fi şelor (în litere). Coresponden ţa dintre literele şi numerele cheii este normal ă: A = 01, B = 02,...,Y = 25 şi Z = 26. Poziţia discurilor (II, I, III etc.) ne arat ă ordinea în care acestea sunt introduse în ma şina de cifrat, de la stânga la dreapta. Poziţia inelelor ( 13 08 11) ne arat ă aranjarea lor ini ţială. Coresponden ţa dintre poziţia discurilor şi ordinea numerelor ce reprezint ă poziţia inelelor se realizeaz ă pentru fiecare caz în parte. Pentru exemplu dat: II-- 13, I--08 şi III--11. Legaturile fi şelor se realizeaz ă conform succesiunii indicate de perechile de litere din cheie. Dacă cheia legaturilor fi şelor este: AO BI DV EH GZ KW LX MU RY QT. atunci se realizeaz ă următoarele legaturi: A cu O, B cu I, etc. Cheia unei radiograme se va determina printr-o grup ă cu cinci litere, din care primele dou ă sunt f ăr ă semnifica ţie (se vor schimba la fiecare radiogram ă), iar următoarele trei indic ă cheia din „Tabelul cu chei”. La telegramele compuse din mai multe fragmente, fiecare fragment va avea litere diferite ca grup ă de recunoaştere şi alte dou ă litere f ăr ă semnifica ţie. Grupa de recunoa ştere se transmite prima şi nu se cifreaz ă
Dispozitive şi maşini criptografice
Cele trei litere care formeaz ă poziţia inelelor vor fi alese din combina ţii de la AAA la ZZZ, excluzându-se cele cu semnifica ţie, prescurt ări -RGT-, indicative de apel, comenzi de trafic, litere în ordine alfabetic ă normală sau invers ă -ABC şi CBA etc. Cifratorul aşează tamburii, literele în ferestruici şi cablurile de leg ătur ă conform cheii zilnice. LA
A
DOUA
RADIOGRAMA
POZITIA
MODIFICĂ CU CHEIA DE RADIOGRAMĂ.
INELELOR
SE
După aşezarea cheii de radiogram ă, se bate textul în clar, iar literele luminate -cifrate- se culeg pe formularul de radiogram ă, în grupe de câte cinci. La descifrare, cifratorul va aranja ma şina conform cheii zilnice. Va extrage apoi cheia de radiogram ă (cele trei litere cifrate din preambulul radiogramei ad ăugate după cele trei litere de baz ă şi o va descifra, ap ăsând tastele corespunz ătoare. După descifrarea cheii de radiogram ă se vor stabili pozi ţiile celor trei inele, în concordan ţă cu pozi ţiile discurilor indicate în cheia zilnic ă. În tabel, o cheie zilnic ă se prezint ă astfel: 4;I II III; 16 11 13; BN KE VZ CO DI FR HU JW LS TX; adq nuz opw vxz, unde: -4 - era data (ziua); -I - poziţia discurilor; -16 - poziţia inelelor; -BN - legăturile fişelor; -nuz - grupele indicative. Pentru exemplificare, o radiogram ă va ar ăta astfel: 1755-139-wep hfi ulznu sgexu nfopr salmc ydr jd.............................. unde: - 1755 - ora expedierii; - 139 - numărul literelor; - wep - pozi ţia de bază; - hfi - cheia cifrat ă a telegramei sau radiogramei; - ul - litere f ăr ă semnifica ţie; - znu - grupa de recunoa ştere; - sgexu - textul cifrat. Pentru exerci ţiu se vor folosi un anumit num ăr de combina ţii de chei, care însă nu se vor întrebuin ţa şi pentru transmiterea radiogramelor. După analiza acestor instruc ţiuni, ne putem da seama c ă pentru a evita greşelile şi mai ales încurc ăturile în fixarea cheilor, operatorii trebuiau preg ătiţi şi antrenaţi. De asemenea, o mare parte din posibilit ăţile maşinii erau puse în valoare sau estompate de sisteme de realizare a cheilor şi de frecven ţa lor de schimbare.
Dispozitive şi maşini criptografice
Greşelile de operare, de schimbare a cheilor, repetarea radiogramelor care aveau elemente ini ţiale greşite şi lungimea excesiv ă a textelor erau elemente ce puteau compromite maşina, lucru care de altfel s-a şi întâmplat. Dacă maşinile polialfabetice realizeaz ă o cifrare caracter cu caracter, există şi tipuri de ma şini care fac o cifrare a n-gramelor, prin n-grame înţelegând grupuri de n caractere. Principiul cifr ării poligramice a fost imaginat în deceniul trei al acestui secol de Lester S. Hill şi publicat în „The American Mathematical Moutley” în 1929 şi se bazeaz ă pe calcule matematice. Se alocă literelor alfabetului valori numerice de la 0 la 25 în mod aleator. Se pot imagina diverse combina ţii între numerele asociate literelor, opera ţii care se pot materializa practic cu ajutorul unei ma şini de cifrat. Toate opera ţiile se efectueaz ă modulo 26. De exemplu, fie alfabetul: A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,5,10,21,6,25,14,24,18,0,1 1,17,1,22,7,15,2,19,12,8,23,3, 16,9,20,Y,Z, 13,4. Dorim să cifr ăm trigrame ale textului clar: C R I P T O G R A F I E
Aceste trigrame vor fi: CRI-PTO-GRA-FIE. Alegând cheia de cifrare: ENIGMATIC, forma numeric ă fiind 25 7 0/ 24 22 5/ 23 0 2 1, pentru prima criptogram ă se pot scrie ecua ţiile: 25 × C + 7 × R + 0 × I = 25 × 21× 7 × 12 + 0 × 0 = 11 → J 24 × C + 22 × R + 5 × I = 24 × 21 + 22 × 12 + 5 × 0 = 14 → F 23 × C + 0 × R + 21× I = 23× 21 + 0 × 12 + 21× 0 = 15 → O Deci trigramei CRI îi corespunde trigrama JFO. Descifrarea se face în mod asem ănător. Se pleac ă de la trigrama cifrat ă şi folosind alţi coeficienţi se determin ă mesajul clar. Practic se rezolv ă sistemul:
K1x + K 2 y + K 3z = C 1 K x + K y + K z = C 4 5 6 2 K x + K y + K z = C 8 9 1 7 unde: x, y, z sunt valorile numerice ale literelor textului clar; K1, K 2 ,..., K 9 sunt valorile numerice ale literelor care constituie cheia; C1, C2 , C 3 sunt valorile numerice ale literelor criptogramei. În cazul nostru vom avea: 25 x + 7 y + 0 z = 11 24 x + 22 y + 5 z = 14 mod 26 ( ) 23 x + 0 y + 21z = 15
Dispozitive şi maşini criptografice
Soluţia sistemului este x = 21, y = 12, z = 0. Această soluţie se obţine în mod practic din urm ătoarele calcule:
x = K1′C1 + K 2′ C2 + K 3′C 3 y = K ′ C + K ′C + K ′C 4 1 5 2 6 3 z = K ′ C + K ′C + K ′C 7 1 8 2 9 3 În lucrarea „ SOME
CRYPTOGRAPHIC
APPLICATIONS
OF
PERMUTATION POLYNOMIALS”
Jack Levine şi J.V. Brawley prezint ă o altă metodă de cifrare poligrafic ă prin utilizarea mai multor câmpuri şi permutarea polinomial ă. Fie un alfabet P cu L litere. Cu cele L litere pot fi construite N = Ln poligrame (fiecare având n litere) descrise de succesiunile:
λ = L1L2 ...L2 ; Li ∈ P; i = 1, n Consider ăm acum cele N poligrame ca fiind litere ale unui alfabet A. La cifrare textul clar compus din literele alfabetului P se divide în grupuri de n litere ob ţinând astfel un num ăr de poligrame. Numărul N se poate descompune sub forma: N = N i , unde : Ni = P imi sau Ni = P i mi + 1 , iar P i = numere
∑ i
prime. Se poate realiza astfel o parti ţionare a alfabetului A în K subalfabete, astfel că; k
A =
! Ai i =1
Subalfabetului Ai , i se repartizeaz ă N 1 poligrame, un câmp Galois extins
(
mi
GF P i
)
şi
o permutare polinomial ă Pi ( xi ) dacă Ni = P i mi sau o funcţie
raţională Ri ( xi ) , dacă Ni = P i mi + 1 . Modul în care se face împ ăr ţirea poligramelor este urm ătoarea: 1. Se asociaz ă fiecărei litere ale alfabetului P o valoare numeric ă din secven ţa 0,1,2,...,( L – 1). 2. Schimbăm orice poligram ă λ = Li1 Li2 " Lin cu o formă numerică β = Vi1Vi2 "V in , unde V i este valoarea numeric ă a literei Li . 3. Fie σ = Vi1 Ln −1 + Vi2 Ln − 2 + " + Vin−1 L + Vin pe care o definim ca fiind valoarea numeric ă repartizat ă poligramei λ (0 ≤ σ ≤ Ln − 1) .
Dispozitive şi maşini criptografice
4. În subalfabetul A1 vor fi repartizate poligramele pentru care 0 ≤ σ ≤ N 1 − 1 , în subalfabetul A2 acele poligrame pentru care N1 ≤ σ ≤ N 2 − 1 ş.a.m.d. 5. Definim un număr ρ astfel: ρ = σ − ( N1 + N 2 + ... + N i −1 ) asociat poligramelor subalfabetului Ai . Se observ ă că 0 ≤ ρ ≤ N i −1 . 6. Se exprimă numărul ρ în baza P i , astfel:
ρ = C0 Pi mi + C1Pimi − 2 + " + Cmi −1 = (C0 , C1,..., Cmi− 1 ) , unde C0 , C1,..., C mi −1 sunt elementele câmpului GF ( P i mi ) . 7. Printr-o procedur ă oarecare stabilim o coresponden ţă între poligramele fiecărui subalfabet Ai şi elementele câmpului GF ( P imi ) care sunt cifrate cu folosirea unui polinom de permutare sau a unei func ţii de permutare, dup ă cum m m Ni = P i i sau Ni = P i i + 1 .Vom ilustra diferitele etape ale procedurii printr-un exemplu. Se consider ă cazul cifr ării diagramelor, deci n = 2, L = 26 având repartizate literelor urm ătoarele valori numerice: A = 0, b = 1, C = 2,..., Z = 25 . Vor fi deci N = 26 × 26 = 676 pe care îl parti ţionăm astfel: 676 = 73 + 132 + (34 + 1) + (34 + 1) Deci N 1 = 73 = 343 cu câmpul GF (73 ) ;
= 132 = 169 cu câmpul
GF 132
( ); N 3 = N 4 = 34 + 1 = 82 cu câmpul GF (34 ) . N 2
Vom împăr ţi cele 676 diagrame în patru subalfabete, astfel: subalfabetul A1 , dacă 0 ≤ σ ≤ 342 ; subalfabetul A2 , dacă 343 ≤ σ ≤ 511; subalfabetul A3 , dacă 512 ≤ σ ≤ 592 ; subalfabetul A4 , dacă 593 ≤ σ ≤ 675 . Având de exemplu diagrama RM = (17,12) calculam: σ = 17 × 26 + 12 = 454 . Deci diagrama RM face parte din subalfabetul A2 . Calculăm ρ = σ − N 1 = 454 − 343 = 111, valoare pe care o exprim ăm în baza 13.
Dispozitive şi maşini criptografice
111 = (8,7 )
(baza 13), adică 111 = 8 × 13 + 7 .
Rezultă că RM = (8,7). Dacă folosim polinomul de permutare de forma yi = xi5 + bi având b1 = (12,8 ) , se obţine yi = 88 deoarece x1 = 111 , iar bi = 164 . Toate aceste operaţii se fac modulo 169, câmpul utilizat fiind GF (132 ) .
σ = 88 + 343 = 431 = (16,15) = QP (adică 16 × 26 + 15 ). Deci diagramei RM îi corespunde criptograma QP . Această metodă necesitând o serie de calcule complicate impune utilizarea calculatorului pentru executarea opera ţiei de cifrare şi descifrare. O altă categorie de ma şini de cifrat o constituie ma şinile de cifrat tomogramice. Fracţionarea literelor (tomogramia) în scopul cifr ării, a fost şi continu ă să fie, chiar şi cu mijloace moderne, o tem ă de studiu deosebit de atractiv ă. De la substitu ţii cu numere frac ţionare, pân ă la accesul pe bit al criptologiei moderne, iată gama procedeelor tomogramice utilizate în acest tip de cifrare. Alfabetul lui Collon, trifidul lui Delastelle, alfabetul Morse şi codul Baudot iat ă numai câteva din cifrurile tomogramice. Collon realiza un alfabet de substitu ţie cu grupe formate din dou ă
simboluri, bazate pe utilizarea combinatorie a 5 sau 6 simboluri diferite. Trifidul lui Delastelle realiza substitu ţia prin grupe de câte trei cifre, rezultate din combinarea cifrelor 1, 2 şi 3. Alfabetul Morse, bazat pe combina ţii de puncte, linii şi spaţii şi mai ales codul Baudot sunt larg cunoscute şi utilizate şi în telegrafia modern ă. Ele nu mai reprezint ă de mult un secret pentru un mare num ăr de oameni şi, deci, din punct de vedere criptografic nu mai au demult nici o valoare. Sunt considerate, acum, la fel ca şi alfabetele limbilor de circula ţie mondial ă şi utilizate ca elemente de reprezentare a textelor clare şi ca atare supuse unor transform ări comparatorii, bazate pe diferite combina ţii. Sistemul Vernam a fost inventat în decembrie 1917 şi apoi larg r ăspândit până la sfâr şitul primului r ăzboi mondial. El are marele merit c ă a realizat un dispozitiv practic de mixare a textelor clare transpuse pe banda perforat ă (în cod Baudot) cu o succesiune de grupe, în acela şi cod, transpuse pe alt ă bandă. Din punct de vedere criptografic, procedeul de mixare reprezint ă algoritmul sistemului, iar cheile - benzile suport ale grupelor utilizate pentru mixaj. Se cunoaşte c ă în cod Baudot literele sunt reprezentate prin grupe de câte cinci simboluri ( 1 şi 0, perforaţii pentru 1 sau pentru 0 pe banda de hârtie, impulsuri electrice pozitive si respectiv negative, etc.). De exemplu: A = 11000 şi I = 01100 etc.
Dispozitive şi maşini criptografice
Metoda Vernam se bazeaz ă pe o relaţie de tip modulo 2 între aceste simboluri, conform urm ătoarei conven ţii: 1+1=0 1+0=1 0+1=1 0+0=0 Dacă se consider ă că textul clar este A şi cheia B se obţine ca text cifrat G, astfel: A = 11000 B = 10011 G = 01011 Ca să mixeze impulsurile electrice, Vernam a inventat un dispozitiv realizat cu magne ţi, relee şi bobine. Cum cifrarea şi descifrarea erau reciproce, acelaşi aparat era folosit la ambele opera ţii. Dacă cineva intercepteaz ă aceste mesaje, ob ţine doar secven ţe de 0 şi 1 sau şiruri de caractere f ăr ă semnifica ţie. De asemenea, a crescut mult operativitatea cifr ării şi s-au eliminat, aproape în întregime erorile de transcriere. Prin sistemul Vernam s-a impus în lumea criptografiei schimbarea accentului preocup ării principale de la algoritmul de criptare la strategia cheilor. În primele zile, cheile pentru acest aparat se ob ţineau prin perforarea benzilor cu simboluri aleatoare. Apoi s-au căutat şi s-au găsit şi alte metode de elaborare a cheilor. Cu ajutorul simbolurilor utilizate în codul Baudot se poate realiza un tabel de 32 x 32, în care pe rând coloanele puteau s ă fie socotite chei. Întrucât secretul sistemului Vernam const ă tocmai în cheia folosit ă, s-a renunţat la utilizarea unor chei repetate în favoarea unora foarte lungi. Aceste chei foarte lungi prezentau îns ă inconveniente de manipulare. Dificultatea a fost rapid escaladat ă, datorită ideii inginerului Morshouse de a combina dou ă chei scurte, ca şi cum una ar fi servit la cifrarea celeilalte. Rezultatul ob ţinut era o cheie foarte lung ă, denumită apoi cheie secundar ă. Cheia secundar ă se obţine din două chei primare scurte datorit ă diferen ţei numerelor de perfora ţii (semne) în cele dou ă cazuri. Astfel dac ă prima cheie primar ă avea 1000 de semne, iar a doua 999, datorit ă diferen ţei de un semn, prin combina ţii succesive, se putea ob ţine o cheie cu 999000 de semne. Acest lucru însemn ă că în loc de a utiliza o cheie de 4000 de m lungime se utilizau dou ă chei de aproximativ 4 m. Acest procedeu îns ă nu exclude complet repeti ţiile, mai ales pe anumite sectoare de band ă şi impune cert marcarea sfâr şitului cheii, neexcluzând în totalitate nici sensul, inconveniente prompt „speculate” de criptanali şti, ceea ce f ăcea ca rezisten ţa sistemului Vernam s ă scadă pe măsura ce el era mai cunoscut şi mai des utilizat.
Dispozitive şi maşini criptografice
Saltul următor l-a f ăcut Mauborgne prin introducerea „cheii cu o singur ă utilizare”, rezultat ă din aplicarea pentru realizarea unei chei atât a principiului aleatorismului, cât şi al non-repeti ţiei. Sistemul Jammet realizat de Jammet Onde Electrique în august 1926, este analog sistemului Vernam bazându-se îns ă pe alfabetul Morse. Problema cea mai grea pentru acest sistem a fost sincronizarea manipulatoarelor şi, bineînţeles, extragerea semnalului clar la recep ţie din cel secretizat. Sistemul a reprezentat un interesant experiment tehnic, dar s-a dovedit f ăr ă valoare criptografic ă. Sistemul Belin este un prim sistem de secretizare a transmiterilor imaginilor. Principiul de func ţionare se baza pe exploatarea optic ă a imaginii şi transformarea impulsurilor luminoase în impulsuri electrice. Succesul acestui tip de transmisii era asigurat de sincronizarea perfect ă a discurilor transmi ţătoare şi receptoare. Pentru a evita recep ţia unor astfel de imagini Belin a realizat un sistem de variaţie controlat ă a vitezelor celor dou ă discuri, astfel ca orice interceptare şi încercare de reproducere produceau o imagine deformat ă, neinteligibil ă.
CAPITOLUL 6 ELEMENTE DE CRIPTANALIZ Ă
6.1 Caracteristicile statistice ale limbajelor naturale Din punct de vedere al teoriei informa ţiei limba poate fi socotit ă ca o sursă de comunicări, care creeaz ă o oarecare cantitate de informa ţie, măsurată în biţi. În orice limb ă s-ar face exprimarea, comunic ările se compun din combina ţii şi şiruri de litere şi cuvinte care nu sunt cu totul întâmpl ătoare cum ar p ărea la prima vedere. Şirurile de litere formeaz ă cuvinte şi fraze cu o structura specific ă unei anumite limbi. Studierea unei astfel de structuri specifice fiec ărei limbi permite să se obţină o economie de timp în transmiterea textelor cu ajutorul liniilor de telecomunica ţii, prin codificarea optim ă a comunicărilor şi literelor. În scopuri ilustrative, în studiul limbilor se folosesc uneori limbaje abstracte sau artificiale. În acest caz se consider ă fie că toate literele au aceea şi probabilitate şi se succed independent una de alta ( aproxima ţ ie de ordin 0), fie ca literele se succed independent dar cu probabilit ăţile limbilor reale (aproxima ţ ie de ordin 1). Se poate impune de asemenea s ă se ţină seama de structura diagramelor, adic ă după fixarea unei anumite litere, litera urm ătoare se alege în func ţie de frecventele cu care diferitele litere se succed dup ă litera fixată (aproxima ţ ie de ordin 2). Se poate tine seama de asemenea de structura trigramelor, adic ă literele se aleg în func ţie de probabilit ăţile de apari ţie care depind de primele dou ă litere ale trigramei ( aproxima ţ ie de ordin 3). Aşadar teoretic se poate calcula entropia medie, H 0 , care revine unei litere de text (în care literele au aceea şi frecven ţă) dacă se cunoaşte numărul n de litere al alfabetului. De exemplu dac ă alfabetul are 8 litere: (a, b, c, d, e, f, g, h) iar probabilit ăţile lor de apari ţie sunt p = 0,125 pentru fiecare liter ă, atunci entropia medie pe liter ă este dată de mărimea: H 0 = log 2 8 = 3 biţi/liter ă H 0 = log 2 26 = 4,7 bi ţi/liter ă.
În cazul alfabetului latin care con ţine 26 de litere, entropia medie pe liter ă H 0 dă o indicaţie destul de vag ă asupra entropiei unei limbi (de fapt H 0 reprezint ă entropia alfabetului). În realitate frecven ţele de apari ţie a literelor nu sunt acelea şi şi ţinând seama de probabilit ăţile de apari ţie a diferitelor litere se ob ţine entropia de ordin 1 cu relaţia:
Elemente de criptanaliz ă
n
∑= p log
H1 = −
i
2 pi
< H 0
i 1
În tabelul de mai jos sunt prezentate entropiile de ordin 0 şi 1 ale câtorva limbi de circula ţie mondială, precum şi ale limbii romane: Limba Englez ă Rusă Germană Franceză Română
H 0
H 1
4,7 5 4,75 4,7 4,7
4,03 4,34 4,08 3,94 4,47
Dar nici aceast ă mărime nu este precis ă deoarece în calculul entropiei H 1 s-au neglijat dependen ţele ce exist ă între diferitele litere. La limbile reale se observ ă că unele litere apar de cele mai multe ori împreuna. Pentru a ţine seama de aceasta se va lua în considera ţie şi probabilitatea de tranzi ţie P ( j/i): probabilitatea ca dup ă litera αi să urmeze litera α j . O altă metodă echivalent ă pentru redarea acestei structuri const ă în stabilirea probabilit ăţilor diagramelor, P (i, j): P (i, j ) = P (i ) ⋅ P ( j / i ) Calculul entropiei medii pe litera H 2 va fi dată de relaţia: H 2
∑ P (i, j ) ⋅ log P ( j / i )biţi/liter ă
=−
2
i, j
Ilustrarea modului de calcul a probabilit ăţilor diagramelor poate fi f ăcută cu exemplu de mai jos: Presupunem c ă alfabetul con ţine trei litere A, B şi C cu următoarele probabilităţi: P (i ) = 1 P ( j / i ) J I P (I) I A B C A 0,33 A 0 0,8 0,2 B 0,60 B 0,5 0,5 0 C 0,07 C 0,5 0,4 0,1
∑
Elemente de criptanaliz ă
P ( A, A ) = P ( A ) ⋅ P ( A / A ) = 0,33 ⋅ 0 = 0 P ( A, B ) = P ( A ) ⋅ P ( B / A ) = 0,33 ⋅ 0,8 = 0,264 P ( A,C ) = P ( A ) ⋅ P (C / A ) = 0,33 ⋅ 0,2 = 0,066 P ( B, A ) = P ( B ) ⋅ P ( A / B ) = 0,6 ⋅ 0,5 = 0,3 P ( B, B ) = P ( B ) ⋅ P ( B / B ) = 0,6 ⋅ 0,5 = 0,3 P ( B, C ) = P ( B ) ⋅ P (C / B ) = 0,6 ⋅ 0 = 0 P (C , A ) = P (C ) ⋅ P ( A / C ) = 0,07 ⋅ 0,5 = 0,035 P (C , B ) = P (C ) ⋅ P ( B / C ) = 0,07 ⋅ 0,4 = 0,028 P (C , C ) = P (C ) ⋅ P (C / C ) = 0,07 ⋅ 0,1 = 0,007
= −0, 264log 2 0,8 − 0,066log 2 0,2 − 2 ⋅0,3log 2 0,5 − −0, 035log 2 0, 5 − 0, 021log 2 0, 4 − 0,007log 2 0,1 = 3,3biţi
H 2
A fost calculat ă H 2 pentru diferite limbi, astfel pentru limba englez ă s-a găsit H 2 = 3,3biţi/liter ă iar pentru limba rus ă H 2 = 3,51 biţi/liter ă . Calculul frecven ţelor de apari ţie a combinaţiilor de trei litere şi mai multe este necesar ă pentru descrierea statistic ă a unei limbi. De şi foarte complexe, calculele referitoare la stabilirea frecven ţei trigramelor au fost efectuate pentru mai multe limbi europene, calculându-se entropia de ordinul 3, H 3 . Aceasta este 2,98 biţi/liter ă pentru limba engleza, 3 bi ţi/liter ă pentru limba rus ă. Calculul frecven ţelor de apari ţie a combinaţiilor de 4,5 sau 6 litere este foarte complicat şi până acum nu s-a efectuat analitic pentru nici o limb ă. S-au f ăcut însă unele determin ări experimentale care arat ă că pentru texte mai lungi care cuprind 100 de litere şi mai mult entropia scade în jurul valorii de 1 bit/liter. Studierea limbii ca mesaj conduce la necesitatea calcul ării cantităţii de informaţie pe care el o con ţine, iar măsura cantit ăţii de informa ţie o constituie entropia limbii. O valoare mare a acesteia denot ă o anumită claritate a limbii. Din considerentele de mai sus se vede c ă eficacitatea cu care limba (ca surs ă) produce informaţie, depinde de distribu ţia probabilit ăţilor de apari ţie a literelor care compun comunicarea; cu cât distribu ţia este mai uniform ă cu atât cantitatea de informaţie adusă de liter ă este mai mare. Raportul dintre entropia medie pe litera şi entropia maxim ă, H max = log2 n (n fiind numărul de litere utilizat), se numeşte entropie relativ ă şi exprimă gradul de compresie al comunic ării în funcţie de structura ei statistic ă. Cantitatea R = 1 −
H H max
util în cazul masajelor lungi.
se numeşte redundan ţă şi reprezint ă un indicator
Elemente de criptanaliz ă
Până nu demult frecven ţa de apari ţie a literelor se determin ă manual solicitând o munc ă laborioas ă în special pentru texte lungi. Dacă toate combinaţiile de litere ar forma cuvinte atunci într-un alfabet de 30 de litere ar exista: 30 de cuvinte de o liter ă; 302 cuvinte de două litere; ................................................ 30n cuvinte formate din n litere. În realitate în fiecare limb ă vorbit ă numărul de cuvinte este mai mic de 50000, deci numai o parte foarte mic ă dintre combinaţii formează cuvinte, restul fiind combina ţii f ăr ă sens. Fie un mesaj M de lungime N şi să presupunem că numărul literelor distincte din M este egal cu n ( n ≤ N ) . Dacă L este numărul tuturor literelor din alfabetul limbii în care este redactat textul. Dac ă la mesajul M ataşăm pe rând câte o liter ă din alfabet ob ţinem un număr de L texte de lungime ( N + 1) din care: ( L – n) vor avea ( n + 1) litere distincte restul de n texte vor r ămâne cu n litere distincte. Deci, în medie, num ărul literelor distincte pentru fiecare din cele L texte este:
( L − n )( n + 1) + n 2 L
=
n ( L − 1) + L L
Dacă notăm cu ∆ n variaţia numărului de litere distincte corespunz ătoare unei variaţii ∆ N a lungimii textului avem:
n ( L − 1) + L L−n ∆n = − n ⋅ ∆N = ⋅ ∆n L L Această relaţie poate fi asimilat ă cu o ecuaţie diferen ţială cu variabile separabile, adic ă: dn =
L − n L
dN
Prin integrare se ob ţine: Constanta k se determină din condiţiile la limit ă: n = 0 pentru N = 0 rezultă n = 0. 0 = L − e − k ; k = − ln L ;
deci
Elemente de criptanaliz ă
− N n = L 1 − e L Corelând aceast ă relaţie cu rezultatele ob ţinute printr-o cercetare statistic ă rezultă că relaţia finală este de forma:
− N n = L0 1 − e L În aceast ă relaţie L0 reprezint ă numărul literelor din alfabet cu o frecven ţă de apariţie mai mare decât 1%. În tabelul urm ător se dau valorile indicatorului „numărul literelor distincte” ( n) pentru texte de diferite lungimi calculate cu relaţia de mai sus pentru diferite limbi: Limba Italiană Română Germană Engleză Francez ă
L0
N = 30
N = 40
N = 50
N = 100
18 18 21 21 19
12,69 12,69 14,8 14,8 13,39
13,98 13,98 16,31 16,31 14,76
15,57 15,57 18,16 18,16 16,43
17,96 17,96 20,95 20,95 18,98
Din analiza acestor date rezult ă că pentru texte având mai mult de 100 de litere intervine o anumit ă stabilitate, în sensul c ă în astfel de texte vor ap ărea în medie, toate cele L0 litere din alfabet şi deci nu mai are rost calculul num ărului de litere distincte cu aceasta rela ţie. În tabelul de mai jos se prezint ă frecven ţele relative de apari ţie ale literelor în câteva limbi europene determinate la un text de 1000 de litere: Engleză litera frecven ţa e 0,131 t 0,105 a 0,086 o 0,08 n 0,071 r 0,068 i 0,063 s 0,061 h 0,053 d 0,038 1 0,034
Rusă litera frecven ţa 0,090 0,072 0,062 0,053 0,045 0,040 0,038 0,035 0,028 0,024 0,025
litera a b c d e f g h i j k
Română text ziar text liter ă 0,105 0,093 0,0092 0,0092 0,053 0,054 0,04 0,039 0,12 0,1 0,008 0,009 0,006 0,008 0,007 0,005 0, 13 0,11 0,00 14 0,002 – –
Elemente de criptanaliz ă
Engleză litera frecven ţa f 0,029 c 0,028 m, u 0,025 p,y, q 0,020 w 0,015 b 0,014 v 0,009 k 0,004 x 0,002 J,g,z 0,00 1
Rusă litera frecven ţa 0,023 0,02 1 0,018 0,0 16 0,014 0,013 0,0 12 0,0 10 0,009 0,007 0,006 0,006 0,003 0,0002
litera l m n o p q r s t u v w x y z ţ ş
Română text ziar text liter ă 0,046 0,046 0,039 0,04 0,056 0,064 0,025 0,04 0,026 0,03 1 – – 0,062 0,07 0,024 0,046 0,065 0,053 0,074 0,06 0,012 0,013 – – – – – – 0,008 0,008 0,006 0,00 1 0,17 0,02
Un alt indicator util în criptanaliz ă este raportul dintre num ărul vocalelor şi cel al consoanelor. S-au f ăcut cercetări statistice pe aceast ă temă şi în tabelul următor sunt sintetizate unele rezultate: Limba % vocale consoane
Română 49,4 50,6
Franceză 43,36 56,64
Italiană 47,74 52,26
Germană 38,86 6 1,14
Engleză 37,4 62,6
Rangul pe care îl ocup ă literele în cadrul cuvântului constituie un indicator preţios în criptanaliz ă. Cercetarea literelor ini ţiale şi finale ale cuvintelor ofer ă o serie de rezultate specifice dat fiind c ă parte iniţială din cuvânt deţine un loc principal în privin ţa cantităţii de informa ţie conţinută în cuvântul respectiv. În tabelul de mai jos sunt date în ordine descresc ătoare a frecven ţelor de apari ţie cele mai des întâlnite litere ini ţiale şi finale: Limba română germană englez ă
Rangul literei iniţială finală iniţială finală iniţială finală
Litere SCPAIDMNTUVL… EAITRUMD… DASIEWV… NERSTHDI… TASIOWCFRDB… ESTNDYOR
Elemente de criptanaliz ă
Limba
Rangul literei iniţială finală iniţială finală
italiană francez ă
Litere ADOVRCUSP… EAOILN LEDASCPV ?
Cuvintele scurte cele mai frecvente constituie de asemenea un indicator preţios pentru criptanali şti. În tabelul de mai jos sunt prezentate cele mai frecvente cuvinte scurte din câteva limbi europene: Limba Francez ă Germană Engleză Italiană
Cuvinte scurte A, DE, DU, EST, ET, LA, LE, LES, PAR, QUE… AN, DASS, DEN, DER, DIE, ES, IN, IST, UND… A, AND, AT, FOR, HAS, IN, IT, IS, OF, THE… A, CHE, CON, DI, E, HA, HO, IN, PER
Cercet ările statistice efectuate asupra cuvintelor au condus la rezultate deosebit de interesante atunci când s-a adoptat drept criteriu num ărul silabelor componente. S-a stabilit c ă indiferent de limba folosit ă, distribuţia de probabilitate a cuvintelor dup ă numărul silabelor componente este o distribu ţie de tip Poisson. Astfel dacă P (n) este probabilitatea de apari ţie a unui cuvânt format din n silabe şi cu I lungimea medie a cuvintelor, în silabe, într-o anumit ă limbă avem:
= 1 ⋅ P (1) + 2 ⋅ P + ... + n ⋅ P (n ) a n −1 ⋅ e − a P ( n ) = , unde a = I − 1 ( n − 1)! I
Luând în considerare apropierea limb ă-cod (limba fiind considerat ă ca un cod limitat probabilistic) se poate calcula cantitatea de energie informa ţională conţinută într-un mesaj oarecare. Energia informa ţională este o noţiune introdus ă de matematicianul român Octav Onicescu şi se defineşte astfel: - fie A un sistem oarecare şi A1, A2 ,..., An diferitele sale st ări. Notând cu P1, P2 ,..., P n
n probabilit ăţile stărilor P i , mărimea I ( A) calculată cu relaţia: i =1
∑
I ( A ) =
2 P1
+ P22
2
+ ... + Pn =
n
∑= i 1
P i n
Elemente de criptanaliz ă
se numeşte energie informa ţională. Acest indicator reflect ă starea de organizare 1 a sistemului. În cazul în care P1 = P2 = ... = P n = energia informa ţională este n
1 minimă: I ( A ) = . n
Deoarece probabilit ăţile P i nu se cunosc, ele vor fi estimate cu ajutorul frecven ţelor relative, astfel c ă expresia energiei informa ţionale devine: 2
n
1 n 2 ni I ( A ) = N = N 2 ni i =1 i =1
∑
∑
n
unde ni reprezint ă frecvenţa absolută a stării Ai , iar N =
∑= n . i
i 1
Cea mai bună aproximaţie pentru I ( A) se obţine folosind pentru probabilităţile P i o estimare eficient ă şi absolut corect ă şi în acest caz expresia energiei informa ţionale devine: n
I ( A ) =
ni ( ni −1 )
∑= N (n − 1) i 1
Cercet ările statistice au determinat probabilit ăţile de apari ţie a cuvintelor în funcţie de lungimea lor. Pentru limba român ă aceste probabilit ăţi sunt date în tabelul de mai jos: Lungimea 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Probabilit ăţile de apari ţie 0,0206 0,2723 0,1066 0,1396 0,1146 0,0966 0,0990 0,0603 0,0505 0,0173 0,0152 0,0063 0,0033 0,0006
Elemente de criptanaliz ă
Se observă că, având probabilitatea de apari ţie de 0,2723 cuvintele de două litere sunt cele mai frecvente. Lungimea medie a cuvântului se poate calcula cu rela ţia: n
lmed
=
∑= Pl i i
i 1
n = cea mai mare lungime a unui cuvânt din limba român ă. S-a obţinut lungimea medie l med = 4,6 litere/cuvânt. Dacă se ia n = 14 şi dacă toate cuvintele ar fi egal probabile atunci:
1 14 lmed = l = 7,5 litere. 14 i =1 1
∑
Pentru un limbaj natural L şi un text T de lungime n al cărui vocabular conţine N cuvinte avem: Fγ ⋅ γ = k ( L, n );
γ = 1,2,..., N ,
lege cunoscut ă sub numele de legea ESTOUP-ZIPP şi în care F γ reprezint ă frecven ţa cuvântului γ , iar k este o constant ă care difer ă în funcţie de limb ă şi de lungimea textului n. Există şi o extindere natural ă a acestei legi: Fγ ⋅ γ a 0 = ka0 ,
unde a0 este o constant ă reală pozitiv ă caracteristic ă limbajului. Pentru calculul lui a0 şi a constantei k a0 , se poate folosi rela ţia: ka ( L ) =
1
N
∑
N γ=1
F γ ⋅ γ a
Pentru limba român ă s-a calculat a0 = 0,8 şi k a0 = 655 . O altă lege util ă criptanali ştilor este legea rang-frecven ţă: într-o list ă de frecven ţă produsul dintre rangul unui cuvânt şi frecvenţa corespunz ătoare este constant ă. Prin rang se înţelege numărul de ordine al unui cuvânt în cadrul unei liste de frecvenţe. Lista de frecven ţ e este un vocabular special în care cuvintele sunt aşezate în ordinea descresc ătoare a frecven ţelor cu care apar în text. Vocabularul unui text cuprinde num ărul total de cuvinte diferite din text. Există şi legea MANDELBROT: −b Fγ = P ⋅ L ⋅ ( γ + a ) ,
în care: L este lungimea textului în cuvinte; a, b doi parametrii caracteristici ai limbii; p este o constant ă care se calculeaz ă cu relaţia:
Elemente de criptanaliz ă
1 P
=
1
+ b
(1 − a )
1 b
(2 − a)
+ ... +
1 b
(N − a)
Un indicator interesant pentru limbajele naturale legat de num ărul şi lungimea şirurilor repetate (secven ţe) care pot s ă apar ă şi care este implicit legat de transformările la care sunt supuse textele prin aplicarea unor prelucr ări criptografice a fost introdus de ELLIOT FISCHER. Fie A un alfabet finit şi fie L( s) lungimea unui şir S din A1 , unde A1 reprezint ă mulţimea tuturor şirurilor de lungime finită din A care se repet ă. Notăm cu S (i, j) un subşir al lui S care începe cu pozi ţia i şi se termin ă cu poziţia j. Un şir R obţinut prin concatenarea a dou ă şiruri S şi Q îl notăm: R = SQ. Spunem că R este reproductibil din S dacă Q este un sub şir al lui S . Spunem că R este productibil din S dacă şirul RQ1 format prin ştergerea ultimului simbol din Q este reproducibil din S . Deci reproductibilitatea presupune copierea, iar productibilitatea permite apari ţia unui simbol nou la sfâr şitul operaţiei de copiere. Dându-se un şir S din A îl putem considera fie ca rezultat al unei concaten ări fie ca rezultat al unui proces de producere în care fiecare nou ă secven ţă este productibil ă din secven ţa deja existent ă. 6.2 Metode de decriptare Prin decriptarea unui sistem de cifrare S se înţelege eviden ţierea textelor clare pe baza analizelor criptogramelor realizate prin intermediul lui S , f ăr ă a avea cunoştinţe despre sistemul utilizat şi cheia folosit ă. Cifrarea are ca efect perturbarea unor caracteristici statistice ale limbajelor de redactare a mesajelor, perturbări mai accentuate sau mai pu ţin accentuate în func ţie de complexitatea sistemului respectiv. După ce volumul textului interceptat a trecut de punctul de unicitate criptograma are o rezolvare unic ă. Textul cifrat poate fi decriptat prin încercarea succesiv ă a tuturor cheilor posibile. Aceast ă metodă numită metoda sistemului complet de încerc ări nu este îns ă practic ă. De exemplu dac ă o cheie are 26! posibilităţi ( ≅ 2 ⋅1026 ) care apar în cazul unei simple substitu ţii şi care se
consider ă a avea un volum mic. Dacă adversarul (criptanalistul) are un calculator pentru încercarea cheilor cu o viteza de 1 cheie/microsecund ă şi dacă el va g ăsi cheia adev ărată f ăcând jumătate din încerc ările posibile ar avea nevoie de 2 ⋅1026 2 1 ≅ ⋅ 3 0 ani . 2 6 2 ⋅ 60 ⋅ 24 ⋅ 365 ⋅ 10 Deci metoda sistemului complet de încerc ări nu poate fi f ăcută în practică. În analiza criptografic ă se foloseşte metoda încerc ărilor de o factur ă special ă
Elemente de criptanaliz ă
încerc ările f ăcându-se în ordinea descresc ătoare a probabilit ăţilor de utilizare a cheilor, mai mult decât atât încerc ările se refer ă la o grupă cât mai mare de chei şi nu la o cheie anume. În acest caz mul ţimea cheilor se împarte în submul ţimi care con ţin aproximativ acela şi număr de chei. Cu ajutorul unor încerc ări se determin ă submulţimea cheilor din care face parte cheia utilizat ă. În cazul de mai sus num ărul de încerc ări s-ar reduce la 26 × 5 = 130 de încerc ări. Deci în timp ce metoda sistemului complet de încerc ări face că numărul acestora să fie egal cu num ărul cheilor, metoda împ ăr ţirii în subgrupe reduce numărul încerc ărilor şi-l face s ă fie egal cu volumul cheii exprimat în bi ţi. Deci procesul de reducere al num ărului de încerc ări constă în împăr ţirea mulţimii cheilor în submul ţimi echiprobabile, iar num ărul mediu de încerc ări va fi: h=
H (c )
log2
.
Dacă fiecare încercare are S rezultate posibile, iar fiecare rezultat corespunde posibilit ăţii găsirii cheii într-una din S grupe echiprobabile, atunci numărul mediu de încerc ări va fi: h=
H (c )
log s
.
Dacă S = 2, fiecare încercare aduce 1 bit de informa ţie faţă de
1 biţi în 1,25
cazul sistemului complet de încerc ări. În analiza criptografic ă repetările din textul criptat care pot fi cauzale sau accidentale, au un rol însemnat. Repetările cauzale reprezint ă repetările cifr ării textului clar care a trecut prin prelucrarea criptografic ă. Repetările accidentale sunt cele care prin circumstan ţe neprevăzute provin din cifr ările diferitelor elemente ale textului clar. G ăsirea repet ărilor de diferite lungimi (4,5 sau mai multe caractere) duce de obicei la rezolvarea criptogramelor. Alteori dacă repetările de diferite lungimi sunt insuficiente se pune problema dacă ele sunt cauzale sau accidentale, evaluându-se semnifica ţia criptografic ă a elementelor cifrate repetate. În analiza criptografic ă prin text aleator se în ţelege textul în care elementele cifrate vor apare aproximativ cu aceea şi probabilitate. Pentru exemplificare presupunem c ă avem un text aleator de N elemente ale unui sistem secret cu n elemente diferite (de exemplu N = 50 litere ale unui
Elemente de criptanaliz ă
alfabet care con ţine n = 26 litere); probabilitatea de apari ţie a unui anume 1 1 element va fi pi = = . n 26 În mod similar dac ă dispunem de un text cu N = 376 de diagrame din cele 1 676 posibile probabilitatea de apari ţie a unei anumite diagrame este pd = . 676 Dar nu toate cele n elemente posibile vor apare în textul de N elemente. Numărul de elemente care nu apar este un indicator semnificativ în criptanaliz ă. Pentru a putea fi utilizat este necesar s ă se cunoasc ă distribu ţia teoretic ă a elementelor care nu apar (blancuri). Probabilitatea c ă există un număr de exact r blancuri este: n − r
N
1 − r + i . P ( r ) = ( −1) r ! i =0 n!( n − r − i )! n n!
∑
i
1
S-au tabulat valorile lui P (r ) pentru N = n = 10 (deci cazul cifrelor). r
P (r )
0 1 2 3 4 5 6 7 8 9
0,00036288 0,0163296 0,13608 0,3556224 0,34514424 0,1285956 0,01718892 0,00067176 0,000004549 0,00000000 1
Numărul probabil al blancurilor dintr-un text aleator cu N elemente, întrun sistem în care exist ă n caractere diferite este dat de rela ţia: N
1 B N = n 1 − n
S-a determinat num ărul mediu de blancuri pe mul ţimi de n elemente ale unui text aleator format din N elemente. Rezultatele sunt prezentate în tabelul de mai jos pentru cazul N = 200 şi n = 10.
Elemente de criptanaliz ă
r
0 1 2 3 4 5 6 7 8 9
200 P (r ) 0,08 3,26 27,22 71,12 69,02 25,72 3,44 0,14 0 0 200
Frecvenţa ( f ) 0 8 22 72 72 21 4 1 0 0 200
r × f
0 8 44 216 288 105 24 7 0 0 692
Deci numărul mediu al blancurilor pe submul ţimi de 10 simboluri distincte este: 692 = 3,46 200 Pentru un text aleator de N = 100 diagrame din cele n = 676 posibile se poate calcula numărul estimat de blancuri: 100
1 B = 676 1 − ≅ 582 676
Deci textul va con ţine 94 de diagrame distincte. Prin text nealeator se înţelege un text în care elementele sunt bine stabilite în concordan ţă cu prelucrarea lor criptografic ă. Deci din punct de vedere statistic textul clar şi textul nealeator sunt identice. Dac ă n elemente posibile ale unui sistem au probabilit ăţile de apari ţie P1, P2 ,..., P n atunci media blancurilor într-un text compus din N elemente: B N
= (1 − P1 ) N + (1 − P2 )N + ... + (1 − P N )N ,
sau cu o bun ă aproximaţie: n
B N =
∑= e−
NP i
i 1
Pentru un text în limba englez ă cifrat monoalfabetic num ărul blancurilor are valoarea din tabelul de mai jos:
Elemente de criptanaliz ă
n
10 20 30 40 50 60 70 80 90 100
Numărul blancurilor 18,50 14,13 11,55 10,03 8,84 7,98 7,33 6,74 6,29 5,83
n
110 120 130 140 150 160 170 180 190 200
Numărul blancurilor 5,64 5,46 5,21 5,04 4,88 4,78 4,67 4,56 4,44 4,4
Pentru texte cu caracter nealeator, în analizele criptografice se utilizeaz ă aşa numitul test. Să consider ăm un text având N caractere dintr-un sistem cu n elemente posibile. Presupunem c ă din cele n elemente sunt posibile f1, f 2 ,..., f N elemente astfel încât f1 + f 2 + ... + f N = N . Deci elementul α1 apare de f 1 ori, elementul α 2 apare de f 2 ori şi aşa mai departe. Dacă definim mărimea Φ cu ajutorul rela ţiei:
Φ = f1 ( f1 − 1) + f 2 ( f 2 − 1) + ... + f n ( f n − 1) , atunci se poate calcula valoarea medie a acestuia ca fiind E (Φ ) : E ( Φ ) = S 2 N ( N − 1) ,
unde S 2 reprezint ă suma pătratelor probabilit ăţilor de apari ţie a fiecărui element din cele n elemente posibile din sistem. Pentru un sistem aleator: n
S 2
=
1
∑= n i 1
2
=
1 n
Pentru un text aleator în care gruparea literelor a fost monografic ă (caracter cu caracter), diagrafic ă (grupuri de dou ă caractere cifrate odat ă) şi trigrafice (grupuri de trei caractere cifrate odat ă) s-a calculat ob ţinându-se valorile următoare: - grupare monografic ă, S 2 = 0,038 ; - grupare digrafic ă S 2 = 0,0015 ; - grupare trigrafic ă S 2 = 0,000057 . Pentru un text clar şi pentru mai multe limbi s-au ob ţinut următoarele valori:
Elemente de criptanaliz ă
Limba Englez ă Francez ă Rusă Germană Română
E ( Φ )
text monografic 0,0661 N ( N – 1) 0,0778 N ( N – 1) 0,0529 N ( N – 1) 0,0762 N ( N – 1) 0,08595 N ( N – 1)
text digrafic 0,0069 N ( N – 1) 0,0093 N ( N – 1) 0,0058 N ( N – 1) 0,0112 N ( N – 1)
Având la dispozi ţie aceste date statistice se poate stabili din ce limb ă face parte următorul text şi ce fel de cifrare s-a folosit: IBMQO PBIUO MBBGA JCZOF MUUQB Textul conţinând 25 de caractere are urm ătoarea distribu ţie: A B CD E F GH I JK L MN O PQ U Z RS T V W X Y 1 5 1001 10210 0 3 0 31 2 31 00 0 0 0 0 0 Valoarea testului Φ va fi:
Φ = 1(1 − 1) + 5 (5 − 1) + 1(1 − 1) + 1(1 − 1) + 1(1 − 1) + 2 (2 −1) +1(1 −1) + +3(3 − 1) + 3(3 − 1) + 1(1 − 1) + 2 ( 2 − 1) + 3(3 −1) + 1(1 −1) = 42 În limba englez ă E (Φ ) = 0,0661 × 25 × 24 = 39,6 pentru cifrare monografic ă. Pentru un text aleator: E (Φ ) = 0,038 × 25 × 24 = 22,8 . Deoarece 39,6 este mult mai apropiat de 42 decât 22,8 se poate spune c ă mai curând este un text în englez ă decât un text întâmpl ător. Dacă se iau în considerare p ătratele numerelor care reprezint ă frecvenţele de apariţie ale literelor:
Ψ = f12 +
f 22 + ... + f n2 ,
atunci Ψ = S2 N 2 + (1 − S2 ) N care reprezint ă testul Ψ pentru diagrame. Multe tipuri de cifruri pot fi sparte cu ajutorul analizei statistice, mai ales când textul interceptat are mai mult de 200 de caractere. O metodă care poate fi utilizat ă în descifrare este metoda cuvintelor probabile. Cuvintele probabile sunt acele cuvinte sau expresii care pot fi întâlnite mai ales într-un mesaj ca urmare a faptului c ă sunt caracteristice pentru sursa de mesaje respectiv ă. Cuvintele probabile pot fi considerate comune sau silabele care se întâlnesc mai frecvent într-o limb ă; de exemplu: are, cu, şi, ile, lor etc. pentru limba română. Metoda se poate utiliza astfel: - presupunând c ă o anumită parte a criptogramei reprezint ă un anumit cuvânt al mesajului se g ăseşte o parte a cheii. Aceast ă parte se folose şte pentru descifrarea celorlalte p ăr ţi ale criptogramei. Metoda cuvintelor probabile s-a
Elemente de criptanaliz ă
dovedit destul de eficace în special pentru mesaje destul de lungi. Sunt pu ţine cifruri clasice care având un volum mic al cheii r ămân mult timp nedecriptate prin metoda cuvintelor probabile. De aceea aceast ă metodă se foloseşte pentru verificarea calit ăţii cifrurilor. În practic ă metoda se utilizeaz ă împreun ă cu alte metode. 6.3 Spargerea sistemelor criptografice Orice sistem criptografic con ţine două elemente esen ţiale: - procedeul general de cifrare; - cheia specific ă utilizat ă. De exemplu cifrul lui Caesar este un procedeu general monoalfabetic care opereaz ă asupra unui alfabet standard şi în care cheia specific ă este cheia 3. Deci relaţia de cifrare ar fi: ci = mi + 3
unde ci este valoarea numeric ă a literei criptogramei nu valoarea numeric ă a literei din mesajul clar mi . Presupunând c ă nu este cunoscut ă cheia: ci
= mi + a ( modulo 26) ,
unde mi ∈ {A, B, C ,..., Z } iar a trebuie determinat ă. Pentru un criptanalist aceast ă problemă nu este dificil ă, el neavând de efectuat decât 25 de încerc ări. Este posibil ca numai prin efectuarea deplas ărilor succesive ale literelor unui singur cuvânt din textul cifrat s ă se afle cheia specific ă. De exemplu fie cuvântul din criptograma: K I T K C T C T C Q K
I
T
K
C
T
C
T
C
Q
J
H
S
J
B
S
B
S
B
P
I
G
R
I
A
R
A
R
A
O
H
F
Q
H
Z
Q
Z
Q
Z
N
G
E
P
G
Y
P
Y
P
Y
M
F
D
O
F
X
O
X
O
X
L
E
C
N
E
W
N
W
N
W
K
D
B
M
D
V
M
V
M
V
J
C
A
L
C
U
L
U
L
U
I
Deci după 8 deplasări ale literelor s-a ob ţinut un cuvânt cu sens în limba română. Aşadar cheia de cifrare este –8 iar rela ţia de cifrare este ci = mi + 8 (modulo 26).
Elemente de criptanaliz ă
În acest caz s-a presupus c ă se cunoaşte procedeul general de cifrare şi s-a reuşit stabilirea cheii specifice. Mergând de la simplu la complex se presupune că există situaţia când trebuie determinat şi procedeul de cifrare prin metode criptanalitice. Determinarea procedeului general de cifrare se poate face cu ajutorul frecven ţei relative de apari ţie a diferitelor litere din alfabet. În acest scop se consider ă un eşantion de text clar şi se determin ă frecvenţa de apariţie a literelor, folosind în acest sens rela ţia: f i
=
ni N
unde N este numărul de litere pe care îl con ţine textul clar iar ni reprezint ă numărul de apari ţii a literei αi . Se determin ă apoi frecvenţele de apari ţie ale literelor din textul criptat şi prin comparaţie se pot stabili anumite corespondente între literele din textul criptat şi literele alfabetului. Pentru exemplificare s ă analizam o criptogram ă obţinută prin transform ări de tipul: c = am + b , unde perechea a, b reprezint ă cheia specific ă. Această transformare nu mai realizeaz ă o simplă translaţie a literelor din alfabet ci o substitu ţie oarecare, iar constanta a nu trebuie s ă fie divizor al lui 26. Fie criptograma: JAHGZTGTH JFJMTRTOXG NGFAMXZGHWFNT TJMT X XATGHMFT QFWFNFOH NHGT JXOFNFMH RPOMH MTUHNFMHMT Lungimea criptogramei este 80 iar frecven ţele de apari ţie ale literelor sunt: Litera A F G H J M N O
Frecven ţa 3 10 7 10 5 9 6 4
Litera P Q R T U W X Z
Frecven ţa 1 1 2 12 1 2 5 2
Comparând aceste frecven ţe cu frecven ţele literelor din limba român ă se pot face unele corespondente: - Tc → E m (T din criptogramă corespunde lui E ); - Fc → J m ? ( F din criptogramă corespunde lui I ). Pe baza acestor corespondente se poate scrie sistemul:
Elemente de criptanaliz ă
19 ≡ 4a + b 5 ≡ 8a + b (modulo 26) Scăzând cele dou ă ecuaţii între ele se ob ţine: −4a ≡ 14 (modulo 26) 22a ≡ 14 (modulo 26) 11a0 ≡ 7 (modulo 13)
≡ 7 ⋅1111 (modulo 13) a0 = 3 şi a1 = 16 a0
Pentru a0 se obţine: iar pentru: a1 = 16 se obţine: b = 5 − 11 = 5 + 15 = 20
Deci s-au obţinut două soluţii: c = 3m + 7 (modulo 26) c = 16m + 20 (modulo 26) Aplicând pe rând cele dou ă transform ări numai prima solu ţie duce la obţinerea unui text cu în ţeles în limba român ă: SPARGEREA SISTEMELOR CRIPTOGRAFICE ESTE O OPERAŢIE DIFICILĂ CARE SOLICITĂ MULTĂ TENACITATE Pentru descifrare s-a folosit rela ţia: m = 3−1 (c − 7)
(modulo 26)
Dar: 3−1 ( mod 26 ) = 9 (modulo 26 ) −7 ( mod 26 ) = 19 ( modulo 26 ) Deci m = 9c + 15 (modulo26) A doua solu ţie nu este posibil ă deoarece (16,26) = 2 şi deci 16 nu are invers în mul ţimea claselor de resturi modulo 26. Să analiz ăm un alt exemplu în care s-au folosit substitu ţii simple cu reprezent ări unice şi uniforme. Fie criptograma: 33. 15. 44. 35. 14. 15. 32 .15./ 13. 42. 24. 41. 44. 35. 22. 42. 11. 21. 24. 13. 15./ 44. 42. 15. 12. 45. 24. 15./ 43. 44. 45. 14. 24. 11. 44. 15./ 13. 11./ 45. 34./ 13. 11. 41. 24. 44. 35. 32./ 43. 4 1. 15. 13. 24. 11. 31./ 11. 32./ 43. 13. 42. 24. 43. 45. 32. 45. 24./ 32. 11./ 34. 35. 24./ Pentru început facem urm ătoarele ipoteze: - mesajul clar este redactat în limba român ă;
Elemente de criptanaliz ă
- criptograma respect ă împăr ţirea pe cuvinte a mesajului, fiecare liter ă având ca reprezentare cifrant ă un grup de dou ă cifre; - nu sunt folosite semne de punctua ţie. Vom căuta acum s ă vedem în ce măsura ipotezele de mai sus se verific ă. În primul rând lungimea medie a cuvintelor este: 2 ⋅ 8 + 1 ⋅ 13 + 3 ⋅ 7 + 4 ⋅ 2 + 1 ⋅ 3 + 1 ⋅ 9 l med = = 5,83 litere 13 Valoarea de 5,83 este foarte apropiat ă de lungimea medie a cuvintelor din limba română. Frecvenţele de apari ţie ale reprezent ărilor cifrante sunt prezentate în tabelul următor: Reprezentare cifrant ă Frecvenţă Reprezentare cifrant ă Frecvenţă
11
12
13
14
15
21
22
23
24
25
7
1
6
2
8
1
1
–
9
–
31
32
33
34
35
41
42
43
44
45
–
6
1
2
4
3
4
4
6
5
Criptograma con ţine în total 70 de litere din care 17 distincte. Pentru un text în limba român ă, de lungime N = 70 se obţine:
− 70 l0 = 26 1 − e 26 = 16,80 . Deci ipoteza c ă avem de-a face cu o substitu ţie de litere ca reprezent ări unice de lungime 2 devine plauzibil ă. Reprezentarea cifrant ă 24 este cea mai frecvent ă apărând de 9 ori şi s-ar putea face coresponden ţa 24 → A ( I sau E ). Aşezând reprezent ările cifrante cele mai frecvente în ordinea descresc ătoare a numărului de apari ţie s-ar putea face urm ătoarele corespondente: Reprezentare cifrant ă liter ă
24 A
15 E
11 I
13 R
44 T
32 N
Înainte de a înlocui aceste posibile echivalente în criptogram ă facem următoarele observa ţii: - cea mai frecvent ă reprezentare din finalul cuvintelor este 15, de aici coresponden ţa 15 → E ; - diagramele 11.32 şi 32.11 cele mai plauzibile ar fi: AL-LA sau NU-UN, dar în corela ţie cu frecven ţele de apari ţie ale literelor decidem 11 → A ; 32 → L . Deci în tabelul de mai sus oper ăm două modificări:
Elemente de criptanaliz ă
Reprezentare cifrant ă liter ă
24 A
15 E
13 R
11 I
44 T
32 N
- reprezent ările cele mai frecvente ca liter ă iniţială sunt 43 şi 13, iar în limba română C şi S, deci putem avea S → 13 (43) C → 43 (13) . Dar există un cuvânt care începe cu 43. 13 care nu poate fi CS… ci SC... Aşadar 43 → S şi 13 → C . R ăspândind în criptogram ă echivalentele probabile stabilite se ob ţine în final mesajul: METODELE CRIPTOGRAFICE TREBUIE STUDIATE CA UN CAPITOL SPECIAL AL SCRISULUI LA NOI, iar tabelul de substituţie este: V
1
2
3
4
5
A F K P V
B G L R W
C H M S X
D I N T Y
E J O U Z
0 1 2 3 4 5
Literele care nu apar în text s-au trecut în tabel pe baza observa ţiei ca primă linie format ă din litere care apar în criptogram ă a fost scris ă în ordine alfabetică normală. În exemplul de mai sus am folosit faptul c ă criptograma a respectat împăr ţirea reală pe cuvinte a mesajului. Acest lucru nu este îns ă esenţial şi o criptogram ă poate fi descifrat ă şi în cazul în care nu sunt puse în eviden ţă spaţiile dintre cuvinte. Vom analiza în continuare tehnicile folosite pentru spargerea sistemelor criptografice polialfabetice, la care deci lungimea cheii este mai mare decât 1. Decriptarea acestor sisteme comport ă două etape: - determinarea lungimii cheii de cifrare; - determinarea efectiv ă a alfabetelor folosite şi apoi descoperirea textului clar. În cifrarea polialfabetic ă cu cât numărul de alfabete este mai mare cu atât distribu ţia reprezent ărilor cifrante este mai uniform ă. Dacă mesajul este scurt sau daca num ărul alfabetelor folosite la cifrare este mic atunci examinarea distribu ţiei frecven ţelor poate fi total neconcludent ă. Neuniformitatea distribuţiei variabilei aleatoare implicat ă de un mesaj se caracterizeaz ă prin coeficientul M R (măsura neuniformit ăţii) care se define şte astfel:
Elemente de criptanaliz ă
2
N
P − 1 M R = i N i =1 unde P i este probabilitatea de apari ţie a literei αi .
∑
Se observ ă că dacă: P1 = P2
= ... = P N =
1 N
,
atunci M R = 0 . N
Având în vedere c ă
∑= P = 1, atunci M i
R
se mai poate scrie:
i 1
N
N 1 1 2 2 2 P 2 i M R = P1 − N + N = Pi − N N + N N 2 = i =1 i =1
∑
N
=
∑=
P i 2
i 1
−
∑
1 N 26
1 . 26 i =1 Pentru text clar având 1000 de litere coeficientul M R are valoarea determinat ă experimental de 0,047592. A şadar M R poate lua valori cuprinse între 0 şi 0,047492, şi permite stabilirea cu o anumit ă probabilitate dac ă cifrarea a fost monoalfabetic ă sau polialfabetic ă. Dificultatea const ă în calcularea sumei p ătratelor probabilit ăţilor de apariţie a literelor. Având în vedere c ă P i 2 se poate interpreta c ă probabilitatea evenimentului ca doua litere selectate la întâmplare din textul considerat s ă fie
Iar dacă N = 26, atunci M R =
∑
P i 2
−
N
identice, apare posibilitatea de a estima
∑= P
2
i
f ăr ă a cunoaşte P i cu
i 1
probabilitatea ca dou ă litere luate la întâmplare s ă fie identice ceea ce este echivalent cu calculul raportului dintre num ărul dubletelor şi numărul total de diagrame din textul considerat. Dacă notăm cu f A frecvenţa absolut ă a literei A din textul considerat atunci numărul dubletelor AA va fi: 1 C f2 A = f A ( f A − 1) 2 Dacă numărul total de litere din text este N atunci probabilitatea unui dublet este:
Elemente de criptanaliz ă
P i 2
=
fi ( f i − 1) N ( N − 1)
N
N
iar
∑= P = 2
i
i 1
∑= f ( f − 1) i
i
i 1
N ( N − 1)
şi semnifică şansa ca dou ă litere dintr-o distribu ţie să
fie identice, iar acest num ăr se numeşte indice de coinciden ţă ( I c ) putând lua valori cuprinse între 0,038 şi 0,086 la un alfabet format din 26 de litere. Limita inferioar ă corespunde unei distribu ţii uniforme, iar cea superioar ă unui cifru monoalfabetic. O măsur ă a modului în care num ărul de alfabete folosite la cifrare influen ţează indicele de coinciden ţă se poate determina statistic şi I c se poate exprima cu ajutorul rela ţiei: m− N 1 N − m ⋅ 0,086 + 1 ⋅ ⋅ 0,038 I c = ⋅ m N −1 m N − 1 în care: N -lungimea textului cifrat; m - numărul alfabetelor folosite; Dacă N = m atunci I c tinde spre valoarea 0,038 iar dac ă m = 1 atunci I c = 0,086 . S-au determinat valorile lui I c pentru texte mai lungi de 1000 de litere şi pentru diferite valori ale lui m (numărul de alfabete utilizat), rezultatele fiind prezentate în tabelul de mai jos: m
I c
1 2 5 7 10 > 10
0,086 0,068 0,047 0,044 0,042 0,038
În cazul utiliz ării indicelui de coinciden ţă pentru determinarea num ărului de alfabete utilizate la cifrare trebuie s ă se ţină seama de caracterul statistic al lui I c ; deci pentru mesaje scurte valoarea calculat ă poate fi foarte diferit ă faţă de valoarea aşteptat ă. De asemenea, trebuie avut în vedere c ă valoarea scontat ă a lui I c presupune folosirea alfabetelor de cifrare de acela şi număr de ori. Deci cuvântul cheie nu trebuie s ă conţină litere identice. Un alt indicator pentru stabilirea num ărului de alfabete utilizat se poate obţine datorit ă propriet ăţilor algoritmului de cifrare polialfabetic şi anume:
Elemente de criptanaliz ă
- dacă se scrie textul clar sub cuvântul cheie, atunci literele textului clar de pe o coloană se cifrează monoalfabetic prin coresponden ţa stabilit ă de litera cheii din coloana respectiv ă. Ca urmare, dac ă se repetă un cuvânt sau un şir de litere în textul clar şi dacă se întâmplă ca literele identice s ă fie în aceea şi coloană, atunci şi în textul cifrat apar secven ţe de litere identice. Observaţia este prezentat ă mai jos şi este esen ţială în spargerea sistemelor: Fig.
Să presupunem că o cheie de cifrare de lungime K şi d este multiplu de K , deci d = K x m atunci este evident c ă por ţiunile [ AB] şi [CD] vor fi cifrate cu aceeaşi cheie şi dacă ele cuprind por ţiuni identice atunci vor apare în criptogram ă ca secven ţe identice. Deci calculând distan ţele dintre secven ţele identice din criptogram ă şi luând factor comun cel mai frecvent al acestora vom putea g ăsi lungimea cheii. Apoi se împarte textul cifrat în coloane (în num ăr de K ) fiecare reprezentând cifr ări monoalfabetice. Fie criptograma: WBHNS/ PGHRF/ SGGGH/ EFHVW/ CCFHK/ ASNSP/ GBWCH/ HRSFC/ ZFXZD/ VCDTS/ SGFVQ/ BDNSV/ KWQTS/ WGZH. Se observ ă că secvenţele NSPG se repet ă la o distanţă de 24 de litere, grupul NS mai apare odat ă la distanţa de 30 de litere, iar grupul TS mai p ărea odată la 15 caractere. Putem trage concluzia c ă lungimea cheii este 3. Deci vom avea trei criptograme cifrate monoalfabetic: 1) W N G F G E V C K N G C R C X V T G Q N K T G; 2) B S H S G F W F A S B H S Z Z C S F B S W S Z; 3) H P R G H H C H S P W H F F D D S V D V Q W H. Aplicând acum observa ţiile de la cifrurile monoalfabetice şi rezolvând unele congruen ţe modulo 26 se g ăseşte pentru prima criptogram ă cheia 2, pentru a doua cheia 14, iar pentru a treia cheia 3. Cu acestea solu ţia apare simplu: UNELE METODE DE SECRETIZARE IMPLEMENTATE PE CACULATOARELE PERSONALE ŞI ÎN REŢELE. Dacă sistemele de cifrare au folosit reprezent ări multiple propor ţionale, vom urmări reducerea acestora la sisteme bazate pe substitu ţii simple cu reprezent ări unice uniforme. În cazul reprezent ărilor multiple pentru aceea şi liter ă a mesajului clar rezultă că numărul elementelor cifrante este mai mare decât num ărul de litere din alfabet şi trebuie g ăsite acele reprezent ări cifrante care sunt echivalente în sensul că reprezint ă aceeaşi liter ă.
Elemente de criptanaliz ă
Dacă de exemplu în criptogram ă apar două secven ţe asemănătoare cum ar fi: 13 11 42 70 53 13 11 42 70 53 este aproape sigur c ă 42 şi 18 sunt reprezent ări cifrante ale aceea şi litere. Toate echivalentele care se fac trebuie verificate c ăutând alte secven ţe care le cuprind. Metoda dă rezultate îns ă necesit ă un volum mare de text interceptat. 6.4 Spargerea sistemelor poligrafice Pentru o mai bun ă mascare a caracteristicilor statistice ale variabilei aleatoare implicate de textul cifrat se recurge adeseori la un algoritm de cifrare în care unitatea de prelucrare este un şir de litere (dou ă sau mai multe). Procedura de decriptare a unui astfel de cifru se exemplific ă în cele ce urmează: 1 FFTVT SPUCM BAUKA BVCAA PMYIK KWEXO 2 UKABY ECUXJ XXYCY PETKE HOYRX WCMZY 3 XIOGIP ZDAZI FFZVP JNNCH GIOUL WGAZC 4 IMSXR ZPBTV LPDAN FFFZI BLYLP UDUKP 5 CMERG IXGZV VYPMD FEGVC SYDQZ VVYPM 6 DFDPU RPUPZ EBTSO UVQTV TSKIX XUSFL 7 XWAST YKGNB GKZRA DYCLW HKHW CXXFL 8 IMLPJ FLCYE CUZJX XOGFR MORVK XXZZ 9 JRFFA BNANP XXUUA CQUNU RMDFD FQUJM 10 SOYLX XUFRI JHZRN FRFIM ZZXNF ITAZI 11 VAJEF IGYXF 12 HQDFN NGYFF DHXJO AGIWN XOABW EKSVU 13 WWDUL HOUKG NBRYL PCHNF GAKGO UFBET 14 PUAAN LRMWX OUQUG AKGOU BANQD FNN
Sarcina primordial ă a criptanalistului este de a ob ţine anumite date privind sistemul criptografic folosit la cifrare. Pentru aceasta se stabile şte distribuţia monografic ă a variabilei aleatoare implicate de textul cifrat şi se calculeaz ă indicele de coinciden ţă: Z
∑= f ( f − 1) i
I .C . =
i
i A
N ( N − 1)
În cazul criptogramei date, N = 418 caractere, rezult ă I.C. = 0,036 ceea ce arată că cifrarea nu este monoalfabetic ă. Pentru a verifica dac ă cifrarea este sau nu polialfabetic ă se examineaz ă şirurile de litere care se repet ă în criptogramă.
Elemente de criptanaliz ă
În criptograma recep ţionată astfel de şiruri de litere cu lungimea minim ă egală cu 4 sunt urm ătoarele: Şiruri de litere care se repet ă ZVVYPMOF HQDFNN GAKGOU TVTS KIXX
Poziţia primei litere 129 145 330 412 380 404 169 3 173 235
l – lungimea
intervalului 16 62 24 166 82
Divizorii primi ai lui l 2 2; 31 2; 3 2; 83 2; 41
Este foarte pu ţin probabil c ă repeti ţiile formate din 8, respectiv din 6 litere să fie accidentale. Singurul factor prim comun al intervalelor de repeti ţie fiind 2 se verifică dacă s-a executat sau nu cifrarea cu ajutorul a dou ă alfabete. Totu şi 2 fiind factor pentru fiecare din intervalele de repeti ţie se pune întrebarea dac ă sistemul de cifrare este digrafic. Pentru a r ăspunde la aceast ă întrebare se întocmeşte tabelul de frecven ţe de apariţie a diagramelor din textul cifrat. Într-un fel sistemul digrafic se poate considera ca un sistem monoalfabetic însă pe un alfabet de 262 = 676 caractere. Fiecare dintre aceste caractere (diagrame) are o frecven ţă caracteristic ă în textul clar. În acest caz se poate aplica raţionamentul de la decriptarea monoalfabetic ă. Calculând pentru un eşantion de text clar (2500 de diagrame) suma p ătratelor frecven ţelor caracteristice ale celor 676 de diagrame rezult ă: ZZ
P = 0,0116 , ∑ = 2
i
i AA
ceea ce arat ă că gradul de neuniformitate a distribu ţiei (generate) digrafice, ţinând seama c ă pentru o distribu ţie uniformă acest coeficient este egal cu (1/676) = 0,0015. Cu ajutorul frecven ţelor de apari ţie a digramelor se determin ă indicele de coinciden ţă: ZZ
f ( f − 1) ∑ = i
I .C . =
i
i AA
N ( N − 1)
= 0,00989 ≈ 0,001
unde N = 209 este numărul de digrame din criptogram ă. Având în vedere c ă I.C este o aproximare liniar ă a sumei P i2 = 0,0116 , rezultă că sistemul folosit este digrafic; în cadrul acestui sistem ori de câte ori apare o digramă din textul clar, ea este întotdeauna înlocuit ă cu aceeaşi digramă de cifru. În continuare se pune problema stabilirii tipului sistemului digrafic de
∑
Elemente de criptanaliz ă
cifrare precum şi a cheii specifice de cifrare. Exist ă mai multe tipuri de sisteme digrafice. De exemplu, transformarea liniar ă ilustrat ă de ecuaţia matricial ă:
C1 a11 C = a 2 21
a12 M1
a22 M 2
Pentru a verifica acest lucru se realizeaz ă o serie de texte speciale. Astfel dacă s-ar putea identifica dou ă sau mai multe corespondente de digrame de forma C1C2 → M1M 2 atunci cu ajutorul echivalentelor numerice ale literelor C1, C2 , M 1 şi M 2 se poate ob ţine un sistem de congruen ţe de forma:
M1 = C1b11 + C2b12 (mod26) M = C b + C b 2 1 21 2 22 ( mod26 ) Matricea sistemului fiind invers ă matricei din transformarea liniar ă de mai sus rezult ă:
b11 b 21
b12
−1
a11 = a b22 21
a12
a22
Căutarea digramelor componente se face în mod similar cu c ăutarea literelor pentru solu ţionarea unui sistem de cifrare monoalfabetic ă. Dacă s-ar putea stabili dou ă corespondente de forma C1C2 → M1M 2 atunci se pot scrie patru congruen ţe, suficiente pentru calcularea necunoscutelor bij (i, j = 1,2 ) . Daca apar ambiguitati pentru valorile coeficientilor bij atunci este necesar s ă se examineze un text cifrat suplimentar pentru ob ţinerea soluţiei corecte. Desigur se presupune c ă echivalentele numerice ale literelor sunt cunoscute. În căutarea digramelor corespunz ătoare se pleac ă de la frecven ţele de apariţie a digramelor şi a şirurilor de litere din textul cifrat şi din textul în clar în eşantion. Digrame în ordine descresc ătoare (la un text clar):
Elemente de criptanaliz ă
TI
TO
AT
IC
DE
OK
IN
RA
ER
EN
TE
MI
UL
NT
RE
PE
AR
SI
TA
UN
ST
EC
CA
IE IT
Din exemplul: OU
LP
XX
QU
DF
TV
FG
ZI
PU
ZV
AB
FF
GA
Se încearc ă 3 comparaţii:
→ TI m XX c → AT m DFc → DE m OU c
Acestea conduc la un sistem de congruen ţe: 19 ≡ 14b11 + 20b12 8 ≡ 14b21 + 20b22 0 ≡ 23b11 + 23b12 ( mod 26 ) 19 ≡ 23b21 + 23b22 3 ≡ 3b11 + 5b12 4 ≡ 3b21 + 4b22
Elemente de criptanaliz ă
din rezolvare rezult ă un sistem incompatibil.
→ IE XX → TI DF → TA OU
8 ≡ 14b11 + 20b12 4 ≡ 14b + 20b 22 22 19 ≡ 23b11 + 23b12 (mod 26 ) 8 ≡ 23b21 + 23b22 19 ≡ 3b11 + 5b12 0 ≡ 3b22 + 5b22 Se rezolv ă primele 4 grupându-le astfel:
8 ≡ 14b11 + 20b12 ⋅23 4 ≡ 14b21 + 20b22 8 ≡ 23b + 23b 1 ≡ + ⋅ 9 23 b 23 b 20 21 22 11 12 184 ≡ 322b11 + 460b12 380 ≡ 460b11 + 460b22 Soluţiile 1,4,5 şi 8 verifică şi congruenţele din sistemul dat mai sus (cu 6 ecuaţii). Având în vedere c ă soluţia 1 duce la matricea neinversabil ă:
5 6 1 4
P =
deci aceasta nu poate fi o solu ţie a transformării liniare:
18 19 1 1 5 7
P 8 =
CAPITOLUL 7 MIJLOACE CRIPTOGRAFICE MODERNE
7.1
INTRODUCERE
Acest capitol î şi propune s ă prezinte câteva din mijloacele criptografice moderne. Selectarea acestora a fost realizat ă pe baza relevan ţei şi consisten ţei caracteristicilor tehnice oferite de bibliografie. În JANE'S MILITARY COMMUNICATIONS 1991-1992, editat de John Williamson, la capitolul ENCRYPTION & SECURITY (pag. 494 la 53 1) sunt menţionate echipamentele criptografice produse de peste 30 de firme care au preocupări în domeniul criptografic din 15 ţări, dintre care amintim: - Alcatel Bell-SDT, Belgia; - Thomson CSF, Franta; - Siemens AG, Germania - Rhode and Schwartz, Germania; - Tele Security Timman, Germania; - Tadiran, Israel; - Marconi Italiana, Italia; - Philips Crypto BV, Olanda; - Alcatel STK A/S, Norvegia; - Ericsson Radio Sytems, Suedia; - Crypto AG, Elveţia; - Ascom Radiocom Ltd., Military Communications Milcom, Elvetia; - Marconi Secure Radio, Regatul Unit; - Racal-Comsec Ltd., Regatul Unit; - Datotek Inc.,SUA; - Tehnical Communications Corp, SUA; - Motorola Inc., SUA. În cele ce urmeaz ă, vor fi prezentate câteva echipamente care vor fi grupate în func ţie de destina ţie astfel: - echipamente de criptare pentru protec ţia comunicaţiei terminal la terminal, utilizate în secretizarea (on-line) a comunica ţiei pe un canal telefonic sau radio a convorbirilor, leg ăturilor facsimil şi transmisiilor de date cu diferite viteze precum şi în cifrarea (off-line) mesajelor de tip text şi transmiterea acestora pe linie;
Mijloace criptografice moderne
- echipamente de secretizare de grup destinate protec ţiei fluxului numeric primar/secundar în re ţele digitale ISDN sau militare (conform normelor EUROCOM). 7.2
ECHIPAMENTE DE CRIPTARE PENTRU PROTECŢIA COMUNICAŢIEI TERMINAL LA TERMINAL
7.2.1 Echipament de secretizare a semnalului vocal TRC 762
TRC 762 este un echipament de secretizare care prelucreaz ă în timp şi frecven ţă semnalul vocal în vederea transmiterii acestuia pe canale radio HF/SSB şi VHF/FM. Acest echipament se conecteaz ă între microreceptor şi staţia radio şi este utilizat la nivel tactic. Prelucrarea în frecven ţă presupune divizarea spectrului audio în 2 p ăr ţi variabile în timp care sunt apoi inversate. Prelucrarea în timp presupune permutarea a 4 segmente de 85 ms fiecare. TRC 762 permite memorarea a 2 chei de lucru. Diversitatea cheilor este de 2. în vederea utilitarii, firma produc ătoare (Thomson CSF, Fran ţa) pune la dispozi ţie următoarele echipamente: - generator de chei CRY 103-A; - modul pentru transportul şi introducerea cheilor (în 2 variante) CRY- 104 şi CRY 106-1; - modul pentru generarea şi introducerea cheilor CRY- 107-1. Alte caracteristici mai importante sunt: - spectrul audio: 400-2400 Hz; - consum maxim 180 mA; - alimentare: 12-32 Vcc (din sta ţia radio); - temperatura de operare: -25 ÷ + 55°C. Acest echipament a început s ă fie produs înc ă din 1982. 7.2.2 Echipament de secretizare a semnalului vocal TRC 763
TRC 763 reprezint ă un succesor al echipamentului TRC 762, având aceeaşi destinaţie ca şi acesta din urma dar cu deosebiri esen ţiale care provin din: - utilizarea unui algoritm de secretizare care presupune prelucrarea numerică a semnalului vocal unei transformate Fourier rapide în dou ă dimensiuni, nefiind astfel necesar ă sincronizarea: - memorarea a 4 chei de lucru; - diversitatea cheilor este de 10 dar din motive practice accesibile operatorului sunt numai 10;
Mijloace criptografice moderne
- spectrul audio: 300-3000 Hz; - introducerea cheilor se poate face atât de la un dispozitiv extern cât şi manual de la tastatura proprie, de c ătre operator. 7.2.3 Echipament de secretizare a semnalului vocal TRC 773 B
TRC 773 B este un echipament de secretizare militar, ce asigur ă un grad ridicat de protec ţie a comunica ţiilor radio în gamele VHF şi UHF. Aceasta se realizeaz ă însumând modulo 2 bit cu bit, fluxul numeric de 16 Kbps rezultat în urma conversiei semnalului analog în semnal numeric cu modula ţie delta, cu un flux numeric de 16 Kbps produs de un generator pseudoaleator pe baza cheii interne şi a cheii externe corespunz ătoare. Cheia internă este stabilit ă în atelier prin pozi ţionarea corespunz ătoare a unor microcomutatoare. Diversitatea cheilor interne este de 6,5 x 10. Cheile externe, în num ăr de 2, pot fi introduse utilizând modulul de transport şi introducere a cheilor CRY 106-1. Acestea sunt generate cu echipamentul de generare a cheilor CRY 103-A. Diversitatea cheilor externe este de 3,5 x 10. TRC 773 B este prev ăzut cu buton de ştergere în caz de urgen ţă a cheilor care astfel sun men ţinute pe baza tensiunii de alimentare care provine de la sta ţia radio. Ca şi TRC 762 şi TRC 763 acest echipament se conecteaz ă între microreceptor şi staţia radio. TRC 773 B permite sincronizarea automat ă în mai puţin de 5 ms de la începerea conversa ţiei (care presupune ap ăsarea clapei de vorbire). TRC 773 B este produs tot de Thomson-CSF, Fran ţa, şi poate fi folosit cu staţiile radio din familie TRC 550 şi TR-PP-13. 7.2.4 Telefon cu modul de criptare încorporat TRC 7700
TRC 7700 combin ă funcţiile unui telefon clasic cu ale unui echipament de secretizare a semnalului vocal numeric şi a semnalului provenit de la facsimil. Semnalul vocal analogic este transformat în form ă numerică prin intermediul unui vocoder cu predic ţie liniar ă. Pentru transmiterea în linie (numai în modul criptat) a semnalului vocal numeric, criptat, şi a semnalului provenit de la facsimil, secretizat, este folosit un modem care permite: - lucrul simplex (pentru facsimil)/full-duplex (pentru telefon) cu viteza maximă de 3 Kbps; -sincronizarea şi resincronizarea în mod automat. Managementul cheilor presupune existen ţa a trei nivele de chei: 1) chei de comunica ţie cu următoarele caracteristici: - introduse manual de c ătre utilizator; - lungime: 32 de cifre zecimale;
Mijloace criptografice moderne
- diversitate: 1032 ; 2) chei de sistem a c ăror diversitate este 1075 ; 3) chei de mesaj cu urm ătoarele caracteristici: - schimbare în mod automat la fiecare trecere în modul de lucru secretizat; - lungime: 64 de bi ţi; - diversitate: 1019 . Algoritmul de secretizare este numeric, neliniar, multidimensional. Echipamentul permite memorarea a 8 chei de comunica ţie (şi implicit a unei chei de sistem). TRC 7700 este produs tot de firma Thomson-CSF, Fran ţa. 7.2.5 Echipament de criptare a semnalului vocal DSP 9000 HS
DSP 9000 HS face parte din completul sta ţiei radio DSP 9000 RB, ambele produse de Tehnical Communications Corporation (TCC), SUA, reprezentând în fapt un microreceptor militar cu modul de secretizare încorporat. Are rolul de a asigura un grad ridicat de protec ţie a comunica ţiilor radio HF, VHF şi UHF. Algoritmul de criptare este proprietate de firm ă şi constă în prelucrarea numerică, controlat ă de un generator neliniar, a spectrului audio. Managementul cheilor presupune existen ţa a 3 niveluri de chei: - chei de sistem cu o diversitate de 8,39 × 1079 ; - chei de re ţea cu o diversitate de 6,55 × 104 ; - chei locale cu o diversitate de 7,2 × 1016 . DSP 9000 HS permite memorarea a 200 de chei locale, introduse de la tastatura proprie sau de la un modul extern de transport şi încărcare a cheilor, şi care se împart în 2 grupe de câte 100 de chei. Alte caracteristici mai importante sunt: - autotest încorporat; - spectrul audio: 200 ÷ 2800 Hz; - temperatura de operare: - 20 ÷ +60 °C; - sincronizarea este realizat ă prin transmiterea unei secven ţe de 74 biţi modulată FSK în banda audio; - deviaţia de frecven ţă maxim admisă datorat ă acordului sta ţiei radio este de ± 120 Hz (pentru HF/SSB); - protecţia echipamentului la acces neautorizat se realizeaz ă prin parola; - schimbarea cheilor se poate face manual sau automat la 1,12,24,48 sau 120 ore prin indexare de la 00 1 la 100 şi în ambele situa ţii numărul curent al noii chei locale este transmis pe linia radio echipamentului DSP 9000 HS aflat pe recep ţie; - la lucrul în clar se transmite local semnal de avertizare;
Mijloace criptografice moderne
- la terminarea lucrului în modul de lucru secretizat, se poate reveni automat în clar pentru a permite recep ţia atât clar cât şi secretizat; - întârzierea datorat ă prelucr ării în vederea secretiz ării semnalului poate fi 524 ms/262 ms func ţie de calitatea canalului (HF/VHF şi UHF). Similar cu DSP 9000 HS din punct de vedere al prelucr ării semnalului vocal, sincroniz ării şi managementului cheilor, firma TCC produce echipamentul DSP 9000 destinat secretiz ării comunicaţiilor prin fir şi radio inclusiv HF-SSB, FM, microunde, satelit, telefonie şi telefonie mobil ă în modurile de lucru semi-duplex (standard) şi duplex (op ţional). În plus DSP 9000 permite şi secretizarea semnalelor analogice provenite de la un modem de vitez ă mică (până la 1200 bps). 7.2.6. Echipament de secretizare pentru voce, fax si date CSD 3324E
CSD 3324E este un echipament care realizeaz ă secretizarea convorbirilor telefonice, transmisiilor de date şi legăturilor facsimil, fiind produs tot de firma TCC. Algoritmul este proprietate a firmei TCC. Managementul cheilor presupune existen ţa a 3 nivele de chei: - chei de sistem, cu o diversitate de 1,16 × 1077 ; - chei de re ţea, cu o diversitate de 1,84 × 1019 ; - chei locale, cu o diversitate de 1,84 × 1019 . CSD 3324E poate memora 2 grupe cu câte 200 de chei fiecare folosind o memorie nevolatil ă, timp de minim 12 ore f ăr ă alimentare extern ă. La deschiderea capacului din spate este eliberat un comutator care conduce la ştergerea cheilor. Introducerea cheilor locale şi de reţea se poate face de la tastatura proprie precum şi de la un modul de transport şi introducere a cheilor. De asemenea, CSD 3324E permite generarea cheilor locale şi de reţea, verificarea aleatorismului acestora precum şi încărcarea lor în unul sau mai multe module de transport şi introducere a cheilor. Pentru prelucrarea semnalului vocal se utilizeaz ă vocoder cu predic ţie de tip: - MPLP (Multi Pulse Linear Predictiv) pentru viteza de 9600 bps; - CELP (Code Excited Linear Predictiv) pentru viteza de 4800 bps. De asemenea, transmiterea secretizat ă a datelor provenite de la o surs ă extern ă (are în complet şi un PC portabil) se realizeaz ă la viteze de la 600 la 9600 bps pentru transmiterea sincron ă şi de la 75 la 19200 pentru transmiterea asincron ă, iar transmiterea informa ţiei provenit ă de la fax (are în complet şi fax de dimensiuni reduse, portabil) se realizeaz ă la 9600 şi 4800 bps. Operarea la CSD 9000E este simpl ă şi pe baza de meniuri, iar în ceea ce priveşte schimbarea cheii locale aceasta se poate realiza manual, de la tastatura
Mijloace criptografice moderne
proprie precum şi automat pe baza unui ceas de timp real dup ă 1,12,24,48 sau 168 ore, prin indexare de la 00 1 la 200, numărul curent al cheii fiind transmis în cadrul protocolului de sincronizare echipamentului CDS 3324E corespondent. Alte caracteristici mai importante sunt: - tensiunea de alimentare: 115 Vca/60 Hz, 230 Vca/50 Hz sau 10/30 Vcc; - putere consumat ă: maxim 7 W; - temperatura de operare 0÷50°C. 7.2.7 Echipament de secretizare a semnalului vocal ConTact SR 320
SR 320 este un echipament militar de secretizare, pentru protec ţia comunica ţiilor VHF şi UHF/FM la nivel tactic, conectat între microreceptor şi staţia radio. Semnalul analogic este transformat în semnal numeric utilizând modula ţia delta adaptiv ă cu frecvenţa de eşantionare de 9,6/ 12 Khz. Fluxul numeric rezultat este mai întâi împ ăr ţit în segmente de 16 biţi care sunt permutate între ele, apoi însumat modulo 2 bit cu bit cu un flux numeri creat pe baza cheilor de lucru de c ătre un generator pseudoaleator acela şi care genereaz ă şi permutarea. Semnalul numeric astfel rezultat este transmis în linie folosind un modem. Pentru o leg ătura cât mai sigur ă la începerea leg ăturii în mod secretizat, informaţia de start este transmis ă cu o mare redundan ţă (de 100 de ori) pentru o recepţie sigur ă, iar la fiecare 25 ms se transmite o secven ţă de resincronizare. Alte caracteristici mai importante sunt: - lungimea cheii de lucru: 87 bi ţi; - diversitatea cheilor este de: 1026 ; - numărul cheilor memorate: 2; - spectrul audio: 200 ÷ 4500 Hz (la 9,6 Kbps); 200 ÷ 5500 Hz (la 4,8 Kbps); - cheile sunt introduse manual; - temperatura de operare: – 40 ÷ 60°C. SR 320 se află din 1992 în produc ţie, fiind produs de c ătre firma Ericsson, Suedia. 7.2.8 Telefon cu modul de criptare încorporat CRYPSET 100
CRYPSET 100 combină funcţiile unui telefon clasic cu ale unui echipament de secretizare a semnalului vocal. Prelucrarea presupune utilizarea unui vocoder cu predic ţie liniar ă LPC-10E pentru a transforma semnalul vocal analogic în form ă numerică cu o viteza de 2400 bps. Algoritmul de secretizare presupune însumarea modulo 2 a acestui flux numeric cu un flux numeric care provine de la un generator pseudoaleator. Echipamentul permite şi transmiterea de date secretizat ă cu vitezele 2400bps (sincron) şi 600 bps (asincron).
Mijloace criptografice moderne
Lungimea cheii de lucru este de 128 biţi. Diversitatea cheilor de lucru este 1038 . Protecţia la accesul neautorizat se realizeaz ă folosind un num ăr personal de identificare (PIN - Personal Identification Number). Nici o cheie de lucru nu este memorat ă în echipament. Pentru introducerea cheii de lucru se utilizeaz ă o cartelă electronic ă cu protecţie la citire neautorizat ă şi cu un număr limitat de introduceri (maxim 2000). Pe aceast ă cartel ă sunt stocate informa ţii şi coduri semnificative despre fiecare din abona ţii autoriza ţi. Fiecare combina ţie posibilă a perechilor de abona ţi din cadrul aceluia şi grup de abona ţi, cheile de lucru pentru fiecare pereche, sunt criptate într-o matrice stocat ă pe cartel ă. Programarea, marcarea şi gestiunea cartelelor electronice sunt realizate de către firma produc ătoare, firma Siemens, Germania, cu o considera ţie deplină asupra intereselor de securitate a grupurilor de abona ţi. 7.2.9 Telefon cu modul de criptare încorporat DSM Voice
DSM Voice combin ă funcţiile unui telefon clasic cu ale unui echipament de secretizare a semnalului vocal în convorbirile telefonice analogice. DSM Voice este realizat tot de firma SIEMENS, Germania, pe baza unui vocoder modern care permite lucrul la vitezele 9600/4800/2400 bps şi a unui algoritm de secretizare simetric. Protecţia echipamentului la acces neautorizat este realizat ă prin utilizarea cartelei electronice personale pentru memorarea cheilor (ca şi la CRYPSET 100) şi prin utilizarea cartelei electronice preventive pentru personalizarea echipamentului. De asemenea, este prev ăzut cu sistem de recunoa ştere a vorbirii. 7.2.10 Echipament de secretizare a semnalului vocal CRYPTOCOM HC 265
CRYPTOCOM HC 265 este un echipament de secretizare militar ce asigur ă un grad ridicat de protec ţie a comunica ţiilor radio în gamele HF/SSB, VHF, UHF sau telefonice semiduplex, produs de firma Crypto AG, Elve ţia. Algoritmul const ă în prelucrarea mai analogic ă prin divizarea spectrului audio în dou ă subbenzi şi crearea a dou ă semnale analogice corespunz ătoare celor două subbenzi, dup ă care se realizeaz ă o parte numeric ă care presupune conversia analog-numeric ă a celor dou ă semnale analogice, împ ăr ţirea fiecărui semnal numeric în segmente independente de lungime variabil ă după o lege pseudoaleatoare determinat ă de un generator pseudoaleator ini ţializat de c ătre chei. Cele dou ă succesiuni de segmente astfel create sunt însumate şi permutate între ele, în final formând un singur flux numeric. Înainte de conversia numericanalogic ă acesta va fi mai întâi comprimat printr-un procedeu specific care elimină complet inteligibilitatea rezidual ă.
Mijloace criptografice moderne
Această prelucrare permite transmiterea semnalului analog rezultat pe canale cu o band ă de trecere de 390÷3200 Hz. Spectrul audio este de 270÷2820 Hz. Întârzierea semnalului datorat ă prelucr ării la criptare şi decriptare nu depăşeşte 1 secund ă pentru canale radio HF şi 0,5 secunde pentru canale cu raport semnal/zgomot mai ridicat. Procedura de sincronizare este complex ă şi necesit ă sincronizare ini ţială care constă în transmiterea unui preambul de sincronizare la fiecare ap ăsare a clapei de vorbire, iar pe parcursul desf ăşur ării convorbirii sunt transmise secven ţe de men ţinere a sincronismului. De asemenea, aceast ă procedur ă de sincronizare permite nu numai realizarea legaturilor punct-la-punct ci şi multi-punct prin existen ţa posibilit ăţii de intrare întârziat ă în legătur ă. Modificarea continu ă a cadrului de sincronizare permite ca op ţional, stabilit prin soft, s ă fie utilizat modul de lucru cu autentificarea momentului de timp la care se desf ăşoar ă convorbirea, permi ţând astfel detectarea şi refuzarea mesajelor înregistrate de c ătre inamic la un moment de timp anterior şi retransmise în scopul cre ării de confuzii. Managementul cheilor a fost realizat pentru a permite o ierarhie multinivel. Astfel se deosebesc: - chei de structur ă programate de c ătre beneficiar în atelier, cu o diversitate de 10154 (memorate în EPROM); - chei de comunica ţie introduse de c ătre operator de la tastatura proprie sau de la dispozitivul de generare şi introducere a cheilor, KED 265, cu o diversitate de 1032 (sunt memorate în RAM 8 chei de comunica ţie); - chei de mesaj generate automat. Protecţia echipamentului la acces neautorizat se realizeaz ă prin: - utilizarea unei bloc ări mecanice cu cheie; - parola pentru introducerea cheilor de comunica ţie; - parola pentru introducerea parametrilor de operare; - comanda de ştergere a cheilor în caz de pericol; - dispozitiv de ştergere a cheilor şi a parametrilor de operare la desfacerea cutiei. Alte caracteristici mai importante sunt: - temperatura de operare: – 40 ÷ +70°C; - TEMPEST; - admite un canal cu urm ătoarele caracteristici: - banda minimă: 500 ÷ 2400 Hz; - raport semnal/zgomot minim: 3dB; - permite recep ţia în clar când este în modul de lucru secretizat.
Mijloace criptografice moderne
7.2.11 Echipament de criptare pentru voce, fax şi date CRYPTOVOX HC-3300
CRYPTOVOX HC-3300 este un echipament destinat secretiz ării convorbirilor telefonice, a transmisiei de date şi facsimil, produs tot de firma Crypto AG, Elveţia. Folosirea conversiei analog-numerice a semnalului vocal permite utilizarea unui algoritm de criptare comun bazat pe un flux numeric, generat pseudoaleator cu o perioad ă mai mare de 1028 ani. Interfa ţa cu linia telefonic ă este realizat ă de un modem intern care permite realizarea: - convorbirilor telefonice secretizate duplex la vitezele 9600/4800/2400 bps şi semiduplex la vitezele 4800/2400 bps; - transmiterilor de date secretizate duplex la vitezele 9600/4800/2400 bps; - legăturilor facsimil. Managementul cheilor presupune existen ţa mai multor tipuri de chei şi anume: - cheie de structur ă (există doar una singur ă); - chei de comunica ţii (echipamentul poate memora 33 de chei dintre care 3 sunt pentru legaturi multipunct); - cheie pentru transportul cheilor. Pentru protec ţia cheilor de comunica ţie, pentru distribuire şi încărcare se utilizeaz ă o cartelă electronic ă, KDC-3300, pe care sunt stocate acestea, criptate cu cheia pentru transportul cheilor chiar dup ă generarea lor cu echipamentul de generare şi gestiunea a cheilor KHC-3300. Cheile de comunica ţie sunt memorate în echipamentul CRYPTOVOX 3300 tot criptat având o lungime de 128 biţi şi o diversitate de 1038 . Diversitatea total ă a cheilor este de 1077 . Utilizând KHC-3300 se poate realiza o manipulare on-line a cheilor în situaţia în care echipamentele CRYPTOVOX-3300 sunt r ăspândite într-o arie largă, pentru o distribuire mai rapid ă şi mai eficient ă a cheilor şi a parametrilor de actualizare utilizând şi informaţiile stocate pe KDC-3300 pentru instalarea iniţială, distribuţia cheilor şi accesul la echipamentul de secretizare. KDC-3300 sunt programabile de c ătre beneficiar folosind KHC-3300 şi au disponibil ă o cantitate de 2 kb de memorie tip EEPROM. 7.2.12 Sta ţ ie radio cu modul de secretizare încorporat CRYPTOVOX SE 580
CRYPTOVOX SE 580 este produsul colabor ării firmelor Crypto AG, Elveţia şi Nokia, Finlanda. Reprezint ă un sistem de comunica ţii radio numeric cu secretizarea legăturii realizat în varianta portabil ă, mobilă şi fixă.
Mijloace criptografice moderne
Modurile de lucru sunt duplex, semi-duplex şi simplex permi ţând atât lucrul cu frecven ţa fixă cât şi în reţelele radio trunking, în gamele VHF şi UHF cu un ecart între frecven ţe de 25/12,5 KHz, atât pentru comunica ţii de voce cât şi pentru transmitere de date (op ţional). Prelucrarea vocii este numeric ă iar viteza de transmitere a datelor de pân ă la 4800 bps, cu modula ţie FSK. De asemenea, permite predefinirea a pân ă la 100 de mesaje de maximum 17 caractere precum şi memorarea ultimelor 10 mesaje primite. În ceea ce prive şte algoritmul de criptare acesta este proprietate a firmei şi este implementat în modulul de criptare CRYPTOVOX HC 3400. Acest modul este folosit şi pentru secretizarea comunica ţiilor radio utilizând radiotelefonul numeric portabil CRYPTOVOX SE 160, realizat de Crypto AG în colaborare cu Ascom Radiocom, Elve ţia. Pentru realizarea sincroniz ării este folosit un cadru de sincronizare ini ţială de durată maximă 100 ms, iar pentru resincronizare este necesar un timp de 20 ms. Procedura de sincronizare permite intrarea întârziat ă în legătur ă. Managementul cheilor presupune existen ţa mai multor tipuri de chei şi anume: - chei de comunica ţie (8 seturi de câte 3 chei, care pot fi alocate pentru 8 canale de comunica ţie utilizând echipamentul de introducere a cheilor KED 3400, care are şi facilitatea de alocare); - cheie pentru transportul cheilor utilizat ă în cazul op ţional în care distribuirea cheilor presupune utilizarea, ca mediu de stocare, a caracterelor electronice (fiind necesar un cititor de cartel ă, CCR-100, pentru introducerea cheilor); - cheie de schimbare a cheilor utilizat ă în cazul opţional în care noile chei de comunicaţie se transfer ă direct în echipament utilizând canalul radio. Cheile de comunica ţie de rezerv ă sunt în mod automat activate f ăr ă nici o altă interven ţie dacă există un abonat care transmite utilizând noua cheie. Diversitatea cheilor de comunica ţie este de 3,4 × 1038 . În vederea identific ării cheii şi verificării introducerii corecte este utilizat ă „semnătura cheii” care reprezint ă o sumă de control. Opţional se poate prevede şi posibilitatea autentific ării momentului de timp la care se desf ăşoar ă legătura. 7.2.13 Echipament de criptare a semnalului vocal TST 7698
TST 7698 este un echipament militar destinat secretiz ării convorbirilor pe canale telefonice sau radio în gamele HF,VHF şi UHF, în modul de lucru semiduplex pe canal 2 fire sau duplex pe canal 4 fire (op ţional). În funcţie de calitatea canalului pot fi selectate oricare din urm ătoarele două moduri de prelucrare numeric ă a semnalului vocal şi anume: - pentru canale care asigur ă transmiterea unei benzi de 0,3 ÷ 3 kHz cu un raport semnal/zgomot mai bun de 20 dB se utilizeaz ă o tehnică de codare
Mijloace criptografice moderne
proprietate de firmă cu predicţie de tip RELP (Residual Excited Linear Prediction) care produce un flux numeri 9600 bps; - pentru canale care asigur ă transmiterea unei benzi de 0,5÷2,6 kHz cu un raport semnal/zgomot de cel pu ţin 8 dB se utilizeaz ă tehnica de codare LPC 10 + care produce un flux numeric de numai 2400 bps (acest lucru permi ţând utilizare pe canale HF-SSB). De asemenea tot selectabil este şi algoritmul de criptare care poate fi: - algoritm de criptare multibloc, care are avantajul resincroniz ării automate în cazul întreruperii comunica ţiei, care utilizeaz ă o ierarhie de chei organizat ă pe 3 nivele cu o diversitate total ă de 10 chei; - algoritm de criptare polinomial, care permite lucrul cu echipamente din generaţia anterioar ă produse tot de firma Tele Security Timmann (TST), Germania, care utilizeaz ă o ierarhie de chei organizat ă pe 4 nivele cu o diversitate total ă de 10 chei. Astfel se pot deosebi: - cheie de familie, stocat în EPROM cu o diversitate de 1045 ; - cheie master, cu o diversitate de 108 ; - cheie auxiliar ă, cu o diversitate de 108 ; - cheie de mesaj generat ă automat la începutul fiec ărei convorbiri cu diversitate de 1013 . Echipamentul poate memora maximum 9 chei auxiliare care sunt introduse folosind dispozitivul TST 0700. Timpul necesar sincroniz ării iniţiale este de 320 ms iar intervalul de timp după care se realizeaz ă resincronizarea poate fi programat. Tipul de modula ţie utilizat de modem pentru transmiterea în linie este PSK. TST 7968 este în exploatare în armata german ă (în 1992). 7.2.14 Echipament pentru criptarea leg ăturilor facsimil SEC LINE FAX
SEC LINE FAX este un echipament pentru secretizarea leg ăturilor facsimil produs, ca întreaga familie SEC LINE (pentru convorbiri telefonice şi de date), de c ătre firma INTRACOM, Grecia. Algoritmul de criptare poate fi DES sau proprietate de firm ă (neliniar) cu o diversitate a cheilor de 10115 . Protecţia la acces neautorizat este realizat ă prin: - dispozitiv de blocare mecanic cu cheie, care permite semnalizarea lipsei persoanei care de ţine cheia (autorizat ă), astfel încât mesajele fax sunt stocate intern f ăr ă a mai fi imprimate; - PIN, care permite accesul la parametrii de operare dup ă deblocarea mecanică (utilizând cheia) precum şi la mesajele fax memorate care pot fi imprimate numai dup ă introducerea PIN-ului.
Mijloace criptografice moderne
Introducerea cheilor de comunica ţie se realizeaz ă manual. Toate produsele din familia SEC LINE (SEC LINE FAX, SEC LINE DATA, SEC LINE şi SEC LINE PLUS, ultimele fiind destinate secretiz ării transmisiilor de date, convorbirilor telefonice şi respectiv transmisiilor de date şi convorbiri telefonice) permit dou ă moduri de schimbare a cheilor: - manual, prin alegerea cu ajutorul tastelor a cheii de comunica ţie dorită; - automat, utilizând o procedur ă de generare a unei chei de sesiune (mesaj) utilizând un generator aleator şi un algoritm cu chei publice pentru transmiterea cheii de sesiune la corespondent. SEC LINE FAX suportă orice fax din grupa G3. 7.2.15 Fax militar cu modul de criptare încorporat CRYPTOFAX 4750
CRYPTOFAX 4750 este un fax militar secretizat de înalt ă rezolu ţie, produs de firma Crypto AG, Elveţia. Poate transmite şi recepţiona fotografii şi hăr ţi (alb-negru) cu 4,8 sau 16 nuanţe de gri cu o rezolu ţie de până la 200 x 200 pixeli. Utilizând dou ă protocoale de comunica ţie poate realiza legaturi clasice cu fax-uri din grupa G3 şi legături facsimil prin canale radio folosind un protocol numeric care asigur ă o viteză de transmitere de 150 ÷ 16000 bps. De asemenea, permite transmiterea cu sau f ăr ă compresie, cu sau f ăr ă corecţie de erori tip FEC (Forward Error Correction). Algoritmul este proprietate de firm ă şi îi permite realizarea de leg ături secretizate cu alte echipamente din familia CRYPTOFAX. Managementul cheilor presupune existen ţa într-un echipament a: - unei chei de structur ă, memorată în EPROM, cu o diversitate de 1038 ; - 32 de seturi de 3 chei de comunica ţie (activ ă, de rezerv ă şi expirate), expandabil (op ţional) la 256 de seturi de 3 chei cu o varietate de 1038 . Pentru fiecare mesaj transmis ini ţializarea algoritmului de criptare se realizeaz ă din alt punct, conform unui vector de ini ţializare a c ărei diversitate este de 1019 . Introducerea cheilor de comunica ţie se poate face manual, de la tastatura proprie sau folosind cartela electronic ă sau chiar de la centrul de management SMC - 4000, utilizând canalul de leg ătur ă. Strategia utiliz ării pentru o leg ătur ă a unui set de 3 chei de comunica ţie (activă, de rezerv ă sau expirat ă) permite ca schimbarea cheilor s ă se poată realiza practic în orice moment din intervalul de timp pentru care acest set este utilizat. Aceasta deoarece în protocolul de intrare în leg ătur ă este transmis ă informaţie nesenzitiv ă despre cheia activ ă la transmitere. La recep ţie această informaţie permite utilizarea cheii necesare (cea activ ă dacă setul de chei este acelaşi la ambii coresponden ţi, cea de rezerv ă dacă la transmitere a fost
Mijloace criptografice moderne
schimbat deja setul de chei sau cea expirat ă dacă la transmitere nu a fost schimbat setul de chei, îns ă la recepţie da). Temperatura de operare este de:– 10 ÷ +45 °C, iar echipamentul este realizat în form ă robustizat ă (carcasa metalic ă etanşată) cu posibilitate de montare pe autospeciale, containere etc. Pentru aplica ţii staţionare, cu temperatura de operare de +5 ÷ + 35° C (ca a unui fax comercial), îns ă complet compatibil cu CRYPTOFAX HC 4750, firma Crypto AG a realizat un fax secretizat denumit CRYPTOFAX HC 4700. 7.2.16 Echipament de secretizare pentru facsimil DSM 14400
Realizat de firma Siemens, DSM 14400 realizeaz ă protecţia informaţiilor provenite de la facsimile din grupa G3. Sunt folosite dou ă procedee criptografice şi anume: – un algoritm simetric pentru criptarea datelor provenite de la facsimil; – un algoritm asimetric pentru transmiterea cheii de sesiune corespondentului precum şi pentru autentificarea sigur ă. Identificarea şi autentificarea utilizatorului precum şi alocarea cheilor sunt realizate prin utilizarea cartelelor electronice care stocheaz ă, în formă criptată, toate informa ţiile necesare. Realizarea şi manipularea acestora nu permit copierea neautorizat ă şi falsificarea con ţinutului acestora. Dacă nu este introdus ă cartela în DSM 14400, la primirea unor mesaje fax acestea nu sunt imprimate pe fax ci memorate în form ă criptat ă, nefiind disponibile decât dup ă introducerea cartelei. 7.2.17 Echipament de secretizare pentru transmisii de date SEC LINE MED
SEC LINE MED este un echipament militar destinat secretiz ării transmisiilor de date punct-la-punct, suportând protocoale de comunica ţie de viteză mică şi medie, fiind produs de firma INTRACOM, Grecia. Astfel, permite realizarea transmiterilor de date duplex, semiduplex sau simplex cu viteze de 50 ÷ 9600 bps în mod asincron (ITA 2 şi ITA 5) şi până la 64 Kbps în mod sincron. Interfe ţele locale de linie şi de supraveghere sunt ITU-T V.24/V.28, V. 10 şi V.11. Algoritmul de criptare este neliniar, proprietate de firm ă. Diversitatea cheilor este de 10115 . Schimbarea cheilor se realizeaz ă manual, prin selectarea cheii dorite, iar la corespondent se realizeaz ă automat, nefiind astfel întrerupt traficul, transmi ţându-se în linie num ărul curent al noii chei. De asemenea, echipamentul poate detecta lipsa traficului real şi pe baza unui generator de zgomot poate transmite în linie zgomot care nu va fi decriptat la recepţie.
Mijloace criptografice moderne
Introducerea cheilor se poate realiza de la tastatur ă, de la un dispozitiv de introducere al cheilor şi de la echipamentul de control de la distan ţă. Protecţia la acces neautorizat este realizat ă prin utilizarea a 4 niveluri de acces şi anume: comun, de comunica ţie, de secretizare şi control. Temperatura de operare este: – 25 ÷ + 50°C. 7.2.18 Echipament de secretizare pentru transmisii de date TRC 806
TRC 806 este un echipament de secretizare a transmisiilor de date punctla-punct pe linii închiriate, comutate sau în re ţele de date, fiind produs de firma Thomson-CSF. Astfel, permite realizarea transmiterilor de date sincron duplex, semiduplex şi bi-simplex cu viteze pân ă la: – 19,2 Kbps când este prev ăzut cu interfe ţe V.24/V.28; – 72 Kbps când este prev ăzut cu interfe ţe V.35; – 2048 Kbps când este prev ăzut cu interfe ţe V.21/V.11. Algoritmul de criptare este particular, neliniar, autosincronizat. Echipamentul memoreaz ă 8 chei de 256 bi ţi fiecare care pot fi introduse cu modulul pentru transport şi introducere a cheilor CRY 104 dar şi de la distan ţă, de la un centru de gestiune al cheilor, şi este protejat anti-efrac ţie cu cheie mecanic ă. Temperatura de operare este de: 0 ÷ + 40°C. 7.2.19 Echipamente de secretizare pentru transmisii de date CRYPTONIC HC 7200
CRYPTONIC HC 7200 este destinat protec ţiei schimbului de date între un calculator principal şi perifericele sale îndep ărtate sau între PC-uri care folosesc pentru comunica ţii linii din re ţelele telefonice publice sau private, comutate sau închiriate, pe 2 sau 4 fire. Acest echipament este disponibil în dou ă versiuni: – HC 7210 ca unitate montat ă în rack; – HC 7220 ca unitate dispus ă pe birou. Interfa ţa cu echipamentul terminal de date este tip V.24/ RS 232 C cu viteze cuprinse între 0,6 şi 38,4 Kbps (pentru vitezele 38,4 Kbps şi 19,2 Kbps numai modul asincron), duplex. Viteza în linie este cuprins ă între 0,6 şi 14,4 Kbps. Algoritmul de criptare este proprietate de firm ă, multiciclu, implementat in hardware pentru a evita copierea. Managementul cheilor presupune utilizarea: – cheilor specifice de leg ătura, de varietate 1038 , organizate ca şi la CRYPTOFAX HC 4750/4700 în active, de rezerv ă şi expirate;
Mijloace criptografice moderne
– chei de comunicaţie calculate individual pentru fiecare sesiune de lucru, pe baza unor date nesenzitive transmise corespondentului cu o diversitate de 38 10 . De asemenea, în vederea „personaliz ării” algoritmului, firma producătoare, Crypto AG, Elve ţia a mai prev ăzut existen ţa unor parametrii gestiona ţi de beneficiar a c ăror diversitate este de 1076 . Echipamentul permite memorarea unui set de chei specifice de leg ătura (activă, de rezerv ă, expirată) în varianta standard sau op ţional a unui num ăr de 128 de seturi. Introducerea cheilor se poate realiza utilizând: – cartela electronic ă pentru distribu ţia şi introducerea cheilor; – din linie, de la centrul de gestiune al cheilor, de unde, datele necesare pot fi transmise pe canalul de comunica ţie către echipament. Până la 2048 de echipamente HC 7200 pot fi gestionate de c ătre un singur centru de gestiune al cheilor (dar care poate realiza şi controlul acestora). Pentru protec ţia la acces neautorizat s-au utilizat: – parola pentru introducerea parametrilor; – parola pentru introducerea cheilor; – dispozitiv de blocare mecanic cu cheie. 7.2.20 Echipament de secretizare pentru transmiteri de date CRYPTONIC HC 7400
CRYPTONIC HC 7400 este un echipament de secretizare destinat protecţiei transmisiilor de date, tip punct-la-punct sau multi-punct, utilizând linii închiriate, cu viteza de transmitere a datelor cuprins ă între 2,4 Kbps şi 2048 Kbps (sincron). HC 7400 se adapteaz ă în mod automat la viteza de transmitere a datelor. Algoritmul de criptare este proprietate de firm ă, multiciclu, implementat in hardware. Managementul cheilor presupune existenta a 3 tipuri de chei şi anume: – cheie de structur ă, care este o parte a algoritmului de criptare, memorat ă în EPROM şi este o cheie pe termen lung cu o diversitate de 1076 ; – cheie de comunicaţie, utilizat ă efectiv pentru secretizare cu o diversitate de 1038 ; – cheie de schimbare a cheilor care este folosit ă pentru generarea unor noi chei de comunica ţie, cu o diversitate de 1038 . Efectiv, managementul cheilor poate fi realizat utilizând echipamentul KMC 7000 pentru administrarea re ţelei, generarea cheilor, distribu ţia cheilor, memorarea şi verificarea cheilor, reconfigurarea echipamentului în re ţea, înlocuirea sau ştergerea de urgen ţă a cheii de schimbare a cheii memorate în HC7400 (activ ă şi de rezerv ă). Cheia de rezerv ă devine activ ă când operatorul iniţiază o comandă de schimbare a cheii.
Mijloace criptografice moderne
Introducerea cheii de schimbare a cheilor se realizeaz ă utilizând cartela electronic ă KDC-120. Cheia de comunica ţie este generat ă automat utilizând cheia de schimbare a cheilor şi o secven ţă aleatoare care este transmis ă pe linie. Cheia de comunica ţie este schimbat ă în mod automat la intervale de timp aleatoare. Pentru fiecare circuit virtual este folosit ă o altă cheie de comunica ţie. HC 7400 este produs de firma Crypto AG, Elve ţia. 7.2.21 Echipament de secretizare pentru transmiteri de date în re ţ ele de date, CRIPTONIC HC 7700
CRYPTONIC HC 7700 este un echipament de secretizare destinat s ă protejeze transmisiile de date în re ţele de date cu comuta ţie de pachete X.25, permiţând şi conectarea prin porturi X.32 sau X.3 1 către alte tipuri de re ţele (PSTN/ISON). Algoritmul de criptare este proprietate de firm ă, neliniar şi permite modificarea numai a con ţinutului pachetelor de date l ăsând nemodificat ă adresa acestora în vederea comut ării. Echipamentul este prev ăzut cu facilitatea „barred call log” care permite înregistrarea tuturor apelurilor sosite, deconectându-le pe cele neautorizate dac ă se specific ă aceasta. Managementul cheilor este realizat într-un mod asem ănător ca cel al echipamentului HC 7400 utilizându-se acelea şi tipuri de chei. Exist ă posibilitatea ca op ţional HC 7700 s ă memoreze nu un set ci 32 sau 127 de chei de interschimbare a cheilor active şi de rezerv ă. Atât la HC 7400 cât şi la HC 7700 este realizat ă protecţia la acces neautorizat a echipamentului prin parole şi dispozitiv de blocare mecanic ă cu cheie.5 Alte caracteristici mai importante sunt: – viteza de transmitere: 64 Kbps; – transparenţă la procedurile utilizatorilor finali; – nu modific ă lungimea pachetului (care poate fi de 64/ 128/256/512/1024 octeţi); – permite comunicaţii pe circuite virtuale comutate şi circuite virtuale permanente; – utilizează pentru fiecare circuit virtual comutat o alta cheie de comunica ţie; – schimbă cel puţin o dată pe zi cheia de comunica ţie pentru un canal virtual permanent. 7.2.22 Echipamente de secretizare pentru transmiteri de date din familia OMNISEC 600
Echipamentele de secretizare pentru transmiteri de date din familia OMNISEC 600 acoper ă toate aplica ţiile de la modem criptat de viteza mic ă
Mijloace criptografice moderne
pentru linie telefonic ă, la transmiteri de date multicanal, prin satelit, pe microunde, cablu optic sau coaxial. Aceast ă familie const ă din 4 modele care difer ă prin viteza de transmitere şi interfeţe. Aceste modele sunt: – OMNISEC 610 pentru viteze pân ă la 20 Kbps (sincron); – OMNISEC 620 pentru viteze pân ă la 64 Kbps (sincron); – OMNISEC 630 pentru viteze pân ă la 512 Kbps (sincron); – OMNISEC 640 pentru viteze pân ă la 2048 Kbps (sincron). Interfeţele cu care pot fi echipate sunt: – V.24/RS 232 pentru toate tipurile; – V.35, V.36/RS 449, V.10, V.11/RS 422 pentru OMNISEC 620/630/640; – G 703/G 704 pentru OMNISEC 640, aceast ă variant ă permiţând secretizarea a maxim 32 de canale cu 64 Kbps fiecare în re ţele moderne. Aceste echipamente se conecteaz ă între echipamentul terminal de date şi echipamentul de comunica ţie de date. Algoritmul este acela şi pentru toate tipurile, având o structur ă complex ă, obţinută prin cascadarea unor algoritmi polinomiali diferi ţi, cu un grad ridicat de neliniaritate, într-un mod analitic transparent. De asemenea, atât vectorul de ini ţializare cât şi structura neliniar ă a algoritmului sunt schimbate la fiecare sesiune sau, în cazul unei operari continue la intervale selectabile de c ătre cheile de sesiune. In ceea ce prive şte managementul cheilor acesta presupune existen ţa a două tipuri de chei: – chei master primare şi secundare, care sunt chei cu perioad ă mare de utilizare, bilaterale, a c ăror producere se realizeaz ă centralizat şi sunt distribuite în vederea instal ării echipamentelor în re ţea, a căror structur ă nu este cunoscut ă deoarece acestea sunt produse în centrul de management al cheilor, OMNISEC 702 şi apoi stocate într-un modul de securitate f ăr ă a fi afişate, a căror diversitate totală este 1076 ; – chei de sesiune, care sunt produse de fiecare echipament, pe baza cheilor master şi a unei proceduri de autentificare a cheii care presupune transmiterea unor variabile matematice nesenzitive pe canal nesecretizat, în cadrul unui protocol; acestea sun produse şi utilizate o singur ă dată fiind considerate chei de unic ă folosin ţă, având o diversitate de 1076 . Diversitatea total ă a cheilor este de 1076 . În acest fel, algoritmul are: - o diversitate totala de 10; - o perioad ă minimă de 1090 biţi; - o perioad ă minimă de recursie de 1050 biţi. Modulul de securitate permite: - memorarea permanent ă a cheilor master primare şi secundare şi a datelor necesare procedurii de autentificare a cheii de sesiune;
Mijloace criptografice moderne
- identificarea echipamentului pentru accesul la sistem; - autentificarea echipamentului pentru procedura de autentificare a cheii de sesiune; - protecţia totală a datelor memorate (acestea nu pot fi extrase dac ă modulul este pierdut). Modulul de securitate este realizat în dou ă versiuni SM 1-8 şi respectiv SM 1-32 care memoreaz ă chei master primare pentru lucrul punct-la-punct pe linii închiriate (numai 2 chei sunt necesare în acest caz şi acest lucru este permis numai cu SM 1-8) şi pe linii comutate (pentru maxim 50 de coresponden ţi se utilizeaz ă SM 1-8 iar pentru maxim 200 de coresponden ţi se utilizeaz ă SM 1-32 ), pentru lucrul multi-punct (pentru maxim 50 de sta ţii „slave” se utilizeaz ă SM 1-8, iar pentru maxim 200 de sta ţii „slave” se utilizeaz ă SM 1-32), precum memorarea a 7 chei master secundare pentru crearea a 7 grupuri închise de abonaţi privilegia ţi. Deoarece cheia sesiune este distrus ă imediat dup ă utilizare, informa ţia o dată criptat ă nu poate fi decriptat ă de cineva neautorizat care a interceptat sau înregistrat aceast ă informaţie chiar dac ă a capturat un echipament cu modul de securitate. Aceste echipamente sun produse de firma OMNISEC, Elve ţia. 7.2.23
Echipamente de cifrare din familia CRYPTOMATIC HC 5000
Echipamentele de cifru din familia CRYPTOMATIC HC 5000 acoper ă toate aplica ţiile care presupun cifrarea/descifrarea off-line şi on-line a mesajelor tip text provenite de la un cititor de band ă, de la un teleimprimator, de la PC sau orice terminal care se poate conecta la portul local V.24/RS 232, precum şi a textelor editate de la tastatura proprie şi transmiterea acestora în re ţele telex, telefonice (cu/far ă modem încorporat), radio în gamele HF, VHF şi UHF sau de date cu comutare de pachete X.25. Produse de firma Crypto AG, Elve ţia cu interoperabilitate total ă între toate echipamentele, familia CRYPTOMATIC HC 5000 cuprinde: - CRYPTOMATIC HC 5100, unitate de cifrare independent ă care necesit ă control de la un echipament extern, f ăr ă capacitate de memorare a mesajelor; -CRYPTOMATIC HC 5200/5250, unitate de cifrare portabil ă cu tastatur ă proprie, cu capacitate de memorare a pân ă la 8000 caractere, cu radia ţie compromiţătoare redus ă (TEMPEST); -CRYPTOMATIC HC 5300/5350, unitate de cifrare pentru aplica ţii mobile cu tastatur ă proprie, cu capacitate de memore a pana la 32000 de caractere; - CRYPTOMATIC HC 5500, unitate de cifrare pentru aplica ţii staţionare;
Mijloace criptografice moderne
-CRYPTOMATIC HC 5700/5750, unitate de cifrare pentru aplica ţii staţionare cu trafic de date ridicat, care permite şi conectarea la re ţele X.25 cu comutaţie de pachet. Algoritmul de cifrare este neliniar, de complexitate ridicat ă, cu cicluri multiple, necesitând sincronizare ini ţială. Managementul cheilor presupune existen ţa a 3 tipuri de chei şi anume: - chei de structur ă, definite de beneficiar pentru „personalizarea” algoritmului, introduse de la tastatur ă sau de la dispozitive externe (modulul KDC-101 sau cartel ă electronica KDC-130) cu o diversitate de 10100 ; - chei de comunica ţie, utilizate pentru cifrarea mesajelor, introduse de la tastatur ă, sau de la un modul extern de introducere şi distribuţie KDD 1000, cu o diversitate de 2 × 1028 ; - chei auxiliare, care pot fi definite de c ătre operator drept cheie personal ă cu o diversitate de 1,4 × 1014 . La fiecare transmitere, un vector de ini ţializare provenit de la un generator aleator/pseudoaleator intern, permite ca utilizând aceea şi cheie de comunica ţie, algoritmul s ă fie reluat din alt punct. Diversitatea vectorului de ini ţializare este de 1,4 × 1014 . Lungimea ciclului echivalent acestui algoritm multiciclu este de 10138 , iar perioada minimă de recursie pentru fiecare ciclu este de 1044 . Protecţia echipamentului la acces neautorizat se realizeaz ă utilizând: - dispozitive mecanice de blocare cu cheie (HC 5 100); - cartela electronic ă de acces (KDC 130 la HC 5700/5750); - mai multe nivele de parole; - modul de cifrare cu rezisten ţă la copiere; - posibilitatea de ştergere a informa ţiilor secrete în cazul deschiderii; - ştergerea cheilor în caz de pericol. Alte caracteristici mai importante sunt: - existenţa mijloacelor electronice şi fizice de protec ţie electronic ă la acţiunea viruşilor şi hacker-ilor (a HC 4700/4750); - introducerea cheilor şi de la cititorul de band ă (HC 5100 şi HC 5700/5750) sau din linie (HC 5700/5750) transmise de la centrul de gestiune a cheilor KMC-5000; - folosesc cod ITA 2 (Baudot) şi ITA 5 (ASCII) permi ţând conversia automată; - temperatura de operare sc ăzută permite utilizarea şi în aplicaţii militare. 7.2.24
Echipament militar de cifrare, TST 3010
TST 3010 este un echipament destinat cifr ării mesajelor tip text introduse de la tastatura proprie şi transmiterii acestora folosind modemul încorporat pe canale radio HF/SSB sau canale telefonice.
Mijloace criptografice moderne
Având dimensiuni reduse, TST 30 10 poate fi instalat pe mijloace mobile, terestre sau aeriene sau poate lucra cu sta ţii radio portabile. Pentru protec ţia la acces neautorizat, TST 30 10 este prev ăzut cu parola de acces. Cheile şi mesajele memorate sunt complet şterse după 3 tentative de introducere a unei alte parole. Echipamentul permite memorarea a 99 de mesaje cu pân ă la 120000 caractere (în varianta op ţională) în 18 formate diferite (9 definite de firm ă în EPROM şi alte 9 definite de utilizator în RAM). Modemul intern permite transmiterea cu 300/75 bps a datelor cifrate sau, opţional, cu 1200/4800 bps cu corectarea erorilor. Orice semnal recep ţionat are prioritate maxim ă (recepţie cu prioritate) fa ţă de orice alt ă operaţie. Algoritmul de cifrare presupune generarea neliniar ă a unei secven ţe cu o perioadă minimă dovedit ă de 1080 . Managementul cheilor presupune existen ţa a 4 tipuri de chei întâlnite şi la alte produse al firmei Tele Security Timmann, Germania, prezentate anterior (TST 7968) şi anume: - cheie de familie, de diversitate 1043 , stocată în EPROM; - cheie master, de diversitate 1021 , introdus ă de la tastatur ă; - chei auxiliare, de diversitate 1018 , introduse de la tastatur ă sau de la unitatea de management a cheilor TST 0707; - cheie de mesaj, de diversitate 1012 , generat ă automat. TST 3010 este realizat în acord cu specifica ţiile TEMPEST în ceea ce priveşte radiaţia compromiţătoare. De remarcat este faptul c ă toate accesoriile (cititorul perforator de band ă, imprimanta termic ă, modulul de alimentare cu baterii solare etc.) au dimensiuni reduse. Din punct de vedere al temperaturii de operare TST 30 10 este realizat în două variante şi anume: – 10 ÷+ 71°C şi –40 ÷+ 71°C. 7.3
ECHIPAMENTE DE SECRETIZARE DE GRUP
7.3.1 Echipament de secretizare de grup TCE 331
TCE 331 este destinat secretiz ării punct-la-punct a unui flux numeric de 9,6 ÷ 2048 Kbps rezultat în urma multiplex ării. TCE 331 este produs de Alcatel Telecom, Norvegia. Algoritmul este proprietate de firm ă, simetric, cu autosincronizare, cu criptarea informa ţiei în bloc, cu reac ţie şi utilizeaz ă o cheie de criptare de lungime 120 biţi. Managementul cheilor presupune: - existenţa unei chei master şi a mai multor (peste 50) chei de trafic, memorate;
Mijloace criptografice moderne
- introducerea cheilor este manual ă (de la tastatura proprie) sau utilizând o cartel ă electronic ă; - generarea centralizat ă a cheilor; - schimbarea automat ă sau manual ă a cheilor. Alte caracteristici mai importante sunt: - MTBF-ul de peste 80000 ore; - temperatura de operare: 0 ÷+ 45°C; - parola pentru operator; - ştergere în caz de pericol a cheilor. 7.3.2 Echipamente de secretizare de grup CRYPTOPLEX 860/865
CRYPTOPLEX 860/865 sunt echipamente de secretizare de grup pentru flux numeric primar pân ă la 2,3 Mbps, produs de Crypto AG, Elve ţia, destinate aplicaţiilor staţionare, respectiv militare, mobile. Interfeţele locale şi de linie sunt: - AMI (EUROCOM); - NRZ (NATO); - HDB 3 (CCITT G.732/G.703) etc. Algoritmul de criptare este tip multiciclu. Este utilizat ă o procedur ă de sincronizare ini ţială şi resincronizare automată la fiecare 1,5 ms (depinzând de viteza fluxului criptat), în vederea refacerii rapide a leg ăturii în cazul unor interfe ţe puternice. Managementul cheilor presupune existen ţa următoarelor chei: - o cheie de structur ă, de diversitate 10500 , pentru „personalizarea” algoritmului de câtre beneficiar, memorat ă în EPROM; - două chei de schimbare a cheilor (activ ă şi de rezerv ă), de diversitate 1075 , pentru generarea automat ă la echipament a unei noi chei de comunica ţie; - două chei de comunica ţie (activ ă şi de rezerv ă), de diversitate 1075 ; - cheie de sincronizare, generat ă aleator şi transmisă criptat, de diversitate 1030 . Schimbarea cheilor de schimbare a cheilor şi a cheilor de comunica ţie se poate realiza de la oricare corespondent, f ăr ă întreruperea comunica ţiei. Introducerea cheilor de schimbare a cheilor şi a cheilor de comunica ţie se poate realiza: - de la tastatura proprie; - de la modulul de distribu ţie KDD 865; - de pe banda perforat ă, prin cititorul de cartele KDR 865; - de la unitatea de control de la distan ţă (un PC cu MS-DOS instalat). Temperatura de operare este: – 10 ÷+ 60°C pentru HC 860, –25 ÷+ 60°C pentru HC 865.
Mijloace criptografice moderne
7.3.3 Echipament de secretizare de grup, CRYPTONIC HC 7310, HC-7500
CRYPTONIC HC-7310 şi HC-7500 sunt echipamente de secretizare de grup destinate protec ţiei fluxurilor numerice multicanal în re ţele ISDN, astfel: - pentru E1/T1, E2, E3/T3 se utilizeaz ă HC-7500; - pentru E1/T1 se utilizeaz ă HC-7310. Echipamentele sun complet interoperabile la acela şi debit numeric. Algoritmul de criptare este proprietate de firm ă, implementat în hardware. Managementul cheilor presupune existen ţa următoarelor tipuri de chei: - chei specifice de leg ătur ă, de varietate 1032 ; - chei de comunica ţie, de varietate 1032 . „Personalizarea” algoritmului se realizeaz ă printr-o serie de parametri gestiona ţi de beneficiari a c ăror diversitate este de 10150 , memoraţi în EPROM. Cheile specifice de leg ătur ă sunt sub forma unui set (op ţional 128 de seturi) de câte 3 chei: activ ă, de rezerv ă şi expirat ă. Cheile de comunica ţie sunt calculate individual pe baza unei informa ţii nesenzitive transmise în cadrul unui protocol de schimbare a cheii. Cheile specifice de leg ătur ă pot fi introduse: - manual, de la tastatura proprie; - generate automat de c ătre echipament la utilizarea distribu ţiei prin cartele electronice; - din linie de la centrul de management al re ţelei. Protecţia la acces neautorizat este realizat ă prin utilizarea: - dispozitivului de blocare mecanic ă, cu cheie; - parole pentru introducerea cheilor şi a parametrilor de operare; - modul de securitate rezistent la copiere; - ştergere în caz de pericol; - autentificarea nodului în cadrul re ţelei. 7.3.4 Echipament de secretizare de grup CD 400
Produs de firma Ericsson Radio Systems, Suedia, echipamentul de secretizare de grup este destinat protec ţiei fluxului primar în re ţele numerice militare (EUROCOM) sau ISDN fiind realizat în dou ă variante: - CD 411 echipat cu interfe ţe de intrare/ie şire pentru date în cod AMI cu un nivel de 1 V, impedanţa de 130 W, simetric, iar pentru semnalul de tact în cod NRZ, amplitudinea este de 1 V (EUROCOM); - CD 421 echipat cu interfe ţe de intrare/ie şire pentru date în cod HDB3 cu un nivel de 2,37 V şi impedanţa 75 W, nesimetric (ITU-T G-703). Algoritmul de criptare presupune sumarea modulo 2, bit-cu-bit, a fluxului numeric de date şi un flux numeric generat pe baza cheilor. Cheia are o lungime de 52 octe ţi şi o diversitate de 1091 . Cheile pot fi introduse în CD 400 în 3 moduri şi anume:
Mijloace criptografice moderne
- manual de la tastatura proprie; - de la un alt CD 400 folosind conectorul REMOTE INPUT; - de la un modul de transport chei KC 400 conectat la acela şi conector. CD 400 permite memorarea unui num ăr de 7 chei care pot fi schimbate: - manual, cu comanda adecvat ă de la tastatura proprie; - manual, cu comanda primit ă de la unitatea de control de la distan ţă; - automat, de la CD 400 corespondent f ăr ă sa fie afectat traficul. Daca cheile active nu sunt acelea şi se reia traficul cu cheia anterioare. De asemenea, toate echipamentele dintr-un centru pot fi conectate în cascad ă utilizând conectorii REMOTE INPUT şi REMOTE OUTPUT şi astfel în toat ă reţeaua cheia activ ă poate fi schimbat ă printr-o singur ă comandă. CD 400 opreşte transmiterea dac ă textul criptat este identic cu textul dar mai mult de 0, 15 ms (CD 411)/10 ms (CD 421). Procedura de sincronizare presupune: - pentru CD 411, utilizarea unui semnal de comand ă a alinierii de la multiplexor, sincronizarea realizându-se în mai pu ţin de 11,5 ms (la 2048 Kbps) sau după maxim 30 ms (la 2048 Kbps) de la comanda de schimbare a cheii; - pentru CD 42 1 recepţia unui cuvânt de sincronizare al cadrului PCM, realizându-se în mai pu ţin de 20 ms (la 2048 Kbps) dup ă refacerea sincroniz ării, sau după maxim 40 ms (la 2048 Kbps) de la comanda de schimbare a cheii. Temperatura de operare este: – 40 ÷+ 55°C pentru CD 4 11 (care poate opera în condi ţii tactice) şi 0 ÷+ 55°C pentru CD 42 1 (care opereaz ă în aplicaţii staţionare). 7.3.5 Echipament de secretizare a 4 fluxuri primare independente, OMNISEC 644
OMNISEC 644 este un echipament de secretizare de grup pentru patru fluxuri primare (2048 Kbps) independente care poate fi utilizat atât în aplica ţii militare cât şi civile datorit ă posibilit ăţii de echipare cu interfe ţe: - EUROCOM A (AMI) pentru semnalul în clar şi EUROCOM B (AMI)/ C (HDB3) şi C (HDSL) pentru semnalul criptat; - ITU-T G 703/ G 704, V. 10, V.11, V.35, V.36, X.2 1 pentru semnalul clar şi criptat. OMNISEC 644 are acela şi algoritm pentru toate unit ăţile însă cheile de sesiune vor fi diferite (se folosesc diferite chei master pentru recep ţie şi pentru transmitere) şi pot fi schimbate automat la intervale de timp preselectate. Atât algoritmul cât şi concepţia managementului este acela şi ca la OMNISEC 610, 620,630 şi 640. Fiecare unitate de criptare poate fi prev ăzută opţional cu canal telefonic de serviciu iar întreaga operare poate fi realizat ă de o unitate de control de la distan ţă. Temperatura de operare este: – 20 ÷+ 60°C. MTBF este mai mare de 40000 h.
Mijloace criptografice moderne
Este produs de firma OMNISEC, Elve ţia, care furnizeaz ă pentru viteze al fluxului numeric pân ă la 45 Mbps echipamentul OMNISEC 650 care are acelea şi caracteristici criptografice ca şi celelalte echipamente din familia OMNISEC 600, temperatura de operare este cuprins ă între 0 ÷+ 50°C şi este destinat secretiz ării în reţele PDH, SDH şi ATM. 7.3.6 Echipament de secretizare de grup MA 2731
MA 2731 este un echipament militar de secretizare de grup destinat protecţiei fluxului numeric primar (2048 Kbps) în re ţele numerice militare de campanie. Poate opera şi la fluxuri numerice cu viteze inferioare (256, 5 12, 1024 Kbps) fiind prev ăzut cu interfe ţe EUROCOM D1 A (AMI) şi C (HDB3). Algoritmul de criptare este f ăr ă propagarea erorilor şi constă în permutarea şi însumarea cu secven ţa pseudoaleatoare a fluxului numeric. MA 2731 utilizeaz ă două tipuri de chei: - 7 chei de baz ă memorate; - chei de mesaj care sun schimbate automat şi de mai multe ori pe secund ă. Este verificat continuu dac ă fluxul numeric criptat nu este identic cu fluxul numeric în clar, în caz contrar oprindu-se transmisia. Temperatura de operare este de – 40 ÷+ 70°C. MA 2731 este produs înc ă din 1988 de firma Racal-Comsec Ltd., Regatul Unit şi se află în înzestrarea armatei britanice f ăcând parte din echipamentele care compun reţeaua de transmisiuni de campania TACNET. 7.3.7 Echipament de secretizare de grup CIPHER X 8000
CIPHER X 8000 este destinat secretiz ării fluxurilor numerice de viteza mare (E1/T1) sau a unor cadre numerice individuale selectate din fluxul numeric. Algoritmul de criptare poate fi DES sau SNARK (proprietatea firmei TCC). Managementul cheilor presupune existen ţa următoarelor chei: - 800 chei de criptare a datelor a c ăror diversitate este de 7,2 × 1016 (DES) sau 3,4 × 1038 (SNARK); - 24 chei de criptare a cheilor a c ăror diversitate este de 5,2 × 1033 (DES) sau 3,4 × 1038 (SNARK); - 1 cheie master de criptare a cheilor cu aceea şi diversitate ca şi cheile de criptare a cheilor. Cheile pot fi introduse manual, de la tastatura proprie sau utilizând dispozitive externe de introducere a cheilor (smart-modul sau dispozitivul KFD 800 C). Schimbarea cheilor se poate realiza automat, utilizând canalele re ţelei utilizând un protocol standard.
Mijloace criptografice moderne
Pentru reţele cu arie larg ă de r ăspândire sau care lucreaz ă în timp critic, sistemul KEYNET oferit de firma produc ătoare, TCC, SUA, poate echipamentele de secretizare de la un centru de management. Temperatura de operare este: 0 ÷+ 50°C. 7.3.8 Echipamentul militar de secretizare de grup, DSD 72A-SP
DSD 72A-SP este un alt produs al firmei TCC destinat s ă asigure secretizarea în re ţele numerice a fuxurilor primare (T 1/E1). Temperatura de operare (– 20 ÷+ 70°C) şi varietatea interfe ţelor utilizate: - T1 cu viteza 1,544 Mbps cod de linie AMI/B8ZS, 110 ohmi; - CEPT cu viteza 2,048 Mbps, cod de linie HDB3, 120 ohmi; - EUROCOM D/1 cu vitezele 256,5 12,1024 şi 2048 Kbps, AMI, 130 ohmi permit utilizarea atât în aplica ţii mobile (militare) cât şi staţionare. Algoritmul de criptare poate fi PK²M, MKG sau SNARK cu posibilitatea „personaliz ării” lor prin modificarea polinoamelor generatoare. Utilizarea algoritmului PK²M presupune utilizarea a trei tipuri de chei şi anume: - cheie de sistem, constând într-o secven ţă aleatoare programat ă de beneficiar, de lungime 4096 bi ţi; - cheie de re ţea, determinat ă de poziţia unui comutator selectabil de utilizator; - cheie local ă, selectată din cele 800 de chei locale memorate. Cele 800 de chei locale sunt introduse cu ajutorul unui dispozitiv de transport KFD-800. Schimbarea cheii poate fi realizat ă: - manual, de c ătre operator, de la tastatura proprie; - automat, la intervale de timp prestabilite; - utilizând o comand ă de schimbare a cheii transmis ă în cadrul fluxului primar; - utilizând schema de management al cheilor KEYNET, care utilizeaz ă un port dedicat.
CAPITOLUL 8 ASPECTE PRIVIND MANAGEMENTUL SECRETIZĂRII ÎN REŢELELE MODERNE DE TELECOMUNICAŢII
8.1 REŢELE DE TELECOMUNICAŢII MODERNE. PREZENTARE GENERAL Ă
O reţea modernă de telecomunica ţii are următoarele caracteristici generale: - are la baz ă metode numerice de prelucrare a semnalelor; - permite folosirea urm ătoarelor echipamente de abonat: telefoane analogice şi numerice, aparate telex, facsimil, calculatoare electronice precum şi alte terminale de date; - accesul în re ţea se realizeaz ă prin noduri de acces; - interconectarea nodurilor re ţelei se realizeaz ă prin fibra optic ă şi echipamente radioreleu; - permite interconectarea, prin interfe ţe specifice cu alte re ţele publice sau private; - numărul de noduri ale re ţelei este de ordinul sutelor, poate chiar miilor; - are arie de r ăspândire mare fiind dezvoltat ă la scar ă naţională. Cele mai importante caracteristici ale unui asemenea tip de re ţea sunt: - viabilitatea sau func ţionarea normal ă a reţelei chiar dac ă o parte a acesteia este compromis ă; - fiabilitatea sau punerea la dispozi ţie a leg ăturii cu o probabilitate ridicat ă; - securitatea comunic ării sau protejarea informa ţiilor vehiculate în re ţea. Aceste caracteristici sunt o consecin ţă a: - facilit ăţilor comutatoarelor numerice de a izola p ăr ţi din reţea şi de rutare automat ă şi difuzie a apelului în re ţea; - folosirea unor mijloace radioreleu şi unităţi terminale de fibr ă optică cu probabilitate mare de punere la dispozi ţie a legăturii (peste 99,99% din timp); - folosirea echipamentelor de criptare de grup şi de abonat, precum şi a modulelor soft de protec ţie împotriva accesului neautorizat la informa ţii. În cadrul acestei re ţele pot fi precizate urm ătoarele componente: - sistemul de comunica ţii; - sistemul de extindere; - sistemul de management;
Aspecte privind managementul secretiz ării în reţelele moderne de telecomunica ţii
- sistemul de protec ţie a informa ţiilor; - sistemul de alimentare cu energie electric ă. Sistemul de comunica ţii cuprinde: multiplexoarele primare şi de ordin superior, comutatoarele de flux primar, comutatoarele de pachete, echipamentele radioreleu şi unităţile terminale de fibra optic ă, având rolul de realizare a legăturilor între echipamentele de abonat din re ţea precum şi a canalelor de serviciu. Sistemul de extindere cuprinde interfe ţele specifice necesare interconect ării cu alte re ţele cum ar fi: re ţeaua naţională de telecomunica ţii, reţele de comunica ţii private, re ţele trunking, re ţele de radiotelefoane fixe şi mobile, reţele de staţii radio fixe şi mobile, re ţele de comunica ţii zonale etc. Sistemul de management cuprinde echipamentele necesare achizi ţionării alarmelor şi rapoartelor de la toate celelalte echipamente dintr-un nod şi a staţiilor de lucru necesare prelucr ării datelor de management. în func ţie de dezvoltarea re ţelei, se pot organiza mai multe nivele ierarhice de management cum ar fi: local, zonal, general. Pentru realizarea managementului sunt folosite legaturi pentru transmisii de date si/sau canale de serviciu puse la dispozi ţie de către sistemul de comunica ţie. Sistemul de protec ţie a informaţiilor cuprinde echipamente de criptare şi module soft necesare asigur ării integrit ăţii şi autenticit ăţii informaţiilor vehiculate prin re ţea. Sistemul de alimentare cu energie electric ă cuprinde grupuri electrogene, baterii, redresoare, invertoare, re ţele interioare de distribu ţie a energiei electrice necesare func ţionării echipamentelor dintr-un nod. 8.2 SISTEMUL DE MANAGEMENT
Complexitatea re ţelei ridică probleme asupra men ţinerii în func ţiune a acesteia, la parametri nominali. Pentru aceasta a fost conceput managementul reţelei care reprezint ă procesul control ării reţelelor de comunica ţii în vederea maximizării eficien ţei lor. Acest proces include în general, achizi ţia automat ă sau manual ă a datelor, procesarea lor precum şi prezentarea acestora pentru utilizare în cadrul oper ării în re ţea. De asemenea, sunt implicate în acest proces analiza datelor şi oferirea solu ţiilor în situa ţii deosebite precum şi generarea rapoartelor c ătre personalul tehnic de administrare a re ţelei. Concluzionând, managementul re ţelei const ă în: - managementul defect ărilor; - managementul configur ărilor; - managementul protec ţiei informa ţiilor; - managementul performan ţelor; - managementul resurselor; Managementul defect ărilor reprezint ă procesul de localizare şi corectare a problemelor reţelei, denumite defecte, fiind, probabil, cea mai important ă sarcin ă a managementului re elei. Acesta const ă in:
Aspecte privind managementul secretiz ării în reţelele moderne de telecomunica ţii
- identificarea apari ţiei unui defect în re ţea; - izolarea cauzei de producere a defectului; - corectarea defectului, dac ă este posibil. Managementul configur ărilor reprezint ă procesul de ob ţinere a datelor necesare din re ţea şi folosirea acestora pentru gestionarea facilita ţilor stabilite echipamentelor de abonat din re ţea. Acesta const ă în: - oferirea informa ţiilor despre configurarea curent ă a reţelei; - folosirea acestor date pentru modificarea configur ării reţelei; - stocarea datelor, men ţinerea unui inventar actualizat şi producerea rapoartelor pe baza acestor date. Managementul protec ţiei informa ţiilor reprezint ă procesul de generare, stocare, alocare, distribu ţie, utilizare şi distrugere a cheilor şi parolelor necesare echipamentelor şi modulelor soft care realizeaz ă protec ţia informa ţiilor în re ţea. Se realizeaz ă astfel protec ţia împotriva: - monitorizării informa ţiilor prin intermediul unor analizoare de re ţea sau analizoare de protocol precum şi alte echipamente care permit dezv ăluirea informaţiilor unui intrus; - modificării informaţiilor în timpul transmiterii lor în re ţea; - întârzierii mesajelor, ce presupune înregistrarea şi furnizarea acestora la un moment ulterior ce poate fi prea târziu pentru utilizare; - retransmiterea aceluia şi mesaj la un moment de timp ulterior, lucru ce poate crea confuzie sau conduce la ac ţiuni false ale celui ce a recep ţionat mesajul; - modificării datelor de management ale re ţelei, fapt ce poate pune în pericol chiar viabilitatea re ţelei. Managementul performan ţelor reprezint ă procesul prin care este asigurat accesul abona ţilor în re ţea, neaglomerarea re ţelei, astfel încât aceasta s ă fie utilizat ă eficient. Aceasta const ă în: - achiziţionarea datelor de utilizare curent ă a echipamentelor şi canalelor de comunicaţie din reţea; - analizarea datelor relevante pentru o bun ă utilizare a re ţelei; - stabilirea pragurilor de utilizare şi simularea re ţelei în situa ţiile limită ce pot afecta performan ţele reţelei. Managementul resurselor reprezint ă procesul de stabilire a utiliz ării resurselor re ţelei de către abonaţi. 8.3 MANAGEMENTUL PROTECŢIEI INFORMAŢIILOR 8.3.1 Prezentare general ă
Securitatea comunica ţiei, realizat ă de sistemul de criptare, este bazat ă pe protecţia cheilor sale. Acestea controleaz ă modul în care informa ţia este transformat ă de algoritmii de criptare. În esen ţă se acţionează astfel încât cheile ă blocheze sau s ă deblocheze mecanismul de protec ţie al informa ţiei care este
Aspecte privind managementul secretiz ării în reţelele moderne de telecomunica ţii
de fapt algoritmul de criptare, ale c ărui principii generale sunt de altfel larg cunoscute. Aspectul mânuirii în condi ţii de securitate a cheilor, este cunoscut ca fiind managementul cheilor sau managementul protec ţiei informaţiilor. Acesta este un proces cu pa şi multipli care asigura via ţa cheilor şi constă în: generarea, alocarea, distribu ţia, utilizarea şi distrugerea acestor chei. Generarea cheilor ţine seama de faptul c ă pentru prevenirea descoperirii conţinutului cheilor, acestea trebuiesc produse aleator. Chiar produse aleator, asupra acestora se efectueaz ă teste de aleatorism care verific ă caracterul aleator al cheii. Alocarea cheilor se face ţinând seama de tipul leg ăturilor realizate între echipamentele de criptare şi pe baza topologiei şubreţelelor realizate în cadrul sistemului de criptare. Astfel, echipamentele de criptare de grup realizeaz ă legaturi punct la punct pentru fiecare echipament existând un singur corespondent, în timp ce echipamentele de criptare de abonat realizeaz ă legături multi-punct, pentru fiecare echipament existând unul sau mai mul ţi coresponden ţi. Stocarea cheilor se realizeaz ă pe supor ţi fizici cum sunt: liste tip ărite, cartele perforate, benzi perforate, medii magnetice (casete/dischete) cartele electronice (cu memorii de tip RAM EEPROM) etc. Distribu ţia cheilor este realizat ă prin: curieri, po ştă sau alte canale publice sau private, mijloace electronice (cheile de lucru sunt criptate folosind o cheie de criptare a cheilor, informa ţia rezultat ă fiind transmis ă pe canalele de leg ătur ă care sunt deja protejate) sau fiind prezentate public (sisteme cu chei publice). Utilizarea cheilor presupune folosirea lor în procesul de criptaredecriptare a informa ţiilor sau a cheilor de lucru. Distrugerea cheii, la sfâr şitul comunicării pentru care a fost folosit ă, reprezint ă un principiu de baz ă în criptografie. 8.3.2 Ierarhia cheilor
Securitatea este determinat ă doar de utilizarea cheilor de lucru. Cunoaşterea şi posesia echipamentului, de c ătre un utilizator neautorizat, nu înseamnă compromiterea securit ăţii reţelei. Pentru comunica ţii sigure este de dorit a se avea o ierarhie a cheilor care s ă permită repartizarea inteligent ă a diferitelor chei de lucru. Într-un sistem de criptare se utilizeaz ă în principiu o combinaţie complexă de 3 chei: - cheie elementar ă (fundamental ă) care stabile şte punctul de plecare al mesajului într-un lan ţ pseudoaleator (cheie de mesaj); - o cheie secundar ă determinând algoritmul, forma şi regulile de calcul al acestui lanţ; - o a treia cheie generat ă cu ajutorul unei veritabile surse aleatoare (generatoare de zgomot) care are drept scop de a modifica probabilit ăţile cheii elementare şi de a efectua o alegere între numeroasele secven ţe de criptare,
Aspecte privind managementul secretiz ării în reţelele moderne de telecomunica ţii
diferite dar de o probabilitate egal ă. Ea determin ă statistic un nou punct de plecare obişnuit într-un ciclu al algoritmului de criptare. În baza acestor chei, în practic ă se folosesc, dup ă cum s-a văzut şi în capitolul anterior: - cheie de mesaj (de sesiune) denumit ă astfel pentru c ă este generat ă de echipament, folosind un generator aleator (pseudoaleator) intern, pentru fiecare mesaj sau frac ţiuni de mesaj; - cheie auxiliar ă (de lucru), care este schimbat ă periodic şi care genereaz ă cheile de mesaj; - cheie pentru urgen ţe, care este o cheie auxiliar ă ce permite lucrul în situaţiile în care celelalte chei sunt expirate, compromise, şterse etc; - cheie pentru criptarea cheilor auxiliare care este necesar ă pentru protejarea cheilor auxiliare atunci când acestea se g ăsesc pe diver şi supor ţi fizici sau sunt distribuite. - cheie de familie, care este de regul ă stocată în memorii de tip ROM şi are funcţia cheii secundare. 8.3.3 Tipuri de management al cheilor 8.3.3.1 Având în vedere modul de distribuire a cheilor rezultă următoarele tipuri de management:
a) Managementul manual care presupune distribuirea cheilor, sub form ă de liste tip ărite, se realizeaz ă prin canale publice (dac ă cheile sunt criptate) sau private (cu grad ridicat de siguran ţă), iar introducerea cheilor auxiliare în echipament se realizeaz ă utilizând tastatura acestuia. Acest tip de management are drept caracteristici principale: un grad relativ ridicat de siguran ţă şi un efort financiar minim pentru transportul cheilor. De asemenea, introducerea cheilor se face anevoios, existând în plus din nou accesul direct la cheie. Aceste dezavantaje, al ături de eficien ţa redusă a managementului manual, fac inoportun ă utilizarea acestui tip de management în cazul reţelelor de comunica ţii numerice, cu arie mare de r ăspândire ce folosesc un număr mare de echipamente de criptare. b) Managementul off-line, care presupune ca distribuirea cheilor se poate face atât prin canale publice sau private ca în cazul managementului manual cât şi prin curieri, fiind folosit orice tip de suport fizic al cheilor men ţionat anterior, iar introducerea cheilor în echipament se realizeaz ă prin transferul direct al informaţiilor de pe suportul fizic. Dintre avantajele acestui tip de management mai importante sunt eliminarea accesului direct asupra cheilor la introducerea acestora şi transferul lor rapid în echipament, permi ţând astfel reducerea personalului necesar oper ării. Ca dezavantaj major apare îns ă costul ridicat şi transportul anevoios al unor supor ţi fizici non-document pe distan ţe mari. c) Managementul on-line, care presupune c ă distribuirea şi introducerea cheilor se face ca în oricare din cazurile anterioare, îns ă schimbarea cheii se
Aspecte privind managementul secretiz ării în reţelele moderne de telecomunica ţii
realizeaz ă pe baza informa ţiilor nesecrete schimbate între echipamente, în cadrul unui protocol de intrare în leg ătur ă, pentru echipamentele de criptare de abonat, sau unui protocol de management, pentru echipamentele de criptare de grup care sunt iniţializate la punerea în func ţiune. Acest tip de management concentreaz ă toate avantajele dar şi o parte din dezavantajele tipurilor de management prezentate anterior şi în plus, presupune ca echipamentele de criptare s ă aibă implementate protocoalele men ţionate şi un număr mare de chei auxiliare memorate, f ăcând astfel şi mai vulnerabile aceste echipamente. d) Managementul cu distribuirea electronică a cheilor , folosind canalele de comunicaţie protejate din re ţea. În plus, cheile auxiliare sunt criptate folosind o cheie de criptare secret ă, publică sau cu unic ă întrebuin ţare, denumit ă cheie de criptare a cheilor şi care face obiectul, de regul ă, unui management separat, îns ă tot în cadrul managementului protec ţiei informaţiilor. O astfel de m ăsura, permite asigurarea cu chei a oric ărui nod al re ţelei într-un timp foarte scurt. Reţeaua de distribu ţie a cheilor nu necesit ă nici canale de leg ătur ă şi nici echipamente specifice dac ă se iau unele m ăsuri de protec ţie fizică (amplasare în obiectiv, paza obiectivului etc) şi organizatoric ă (limitarea accesului la informaţii), precum şi prelucr ări suplimentare care s ă nu permită vizualizarea direct ă a cheilor ci numai a unor p ăr ţi nesemnificative din informa ţia de cheie (de exemplu: semn ătura cheii). Completarea acestui tip de management cu managementul off-line pentru arii de întindere reduse poate constitui o solu ţie viabila în realizarea unui management al cheilor sigur şi oportun. 8.3.3.2 Având în vedere modul de generare a cheilor rezultă următoarele tipuri de management:
a) Managementul centralizat care presupune generarea centralizat ă a cheilor precum şi existenţa unui singur administrator care s ă se ocupe de alocarea şi distribuirea lor. Un astfel de management asigur ă cunoaşterea în orice moment de c ătre administrator, a topologiei subre ţelelor de echipamente de criptare şi implicit a cheilor auxiliare, dar presupune vehicularea unui volum mare de chei într-un singur punct care devine astfel o „ ţintă” sigur ă a „atacurilor” asupra re ţelei. b) Managementul descentralizat care presupune generarea cheilor în mai multe noduri din re ţea. Un astfel de management este potrivit echipamentelor de criptare de grup, care realizeaz ă legături scurte, punct la punct şi mai puţin potrivit echipamentelor de criptare de abonat, care realizeaz ă legături multipunct cu alţi abonaţi afiliaţi la diferite noduri ale re ţelei, situaţi la mare distan ţă unii de alţii. Trebuie precizat c ă datorită puterii de calcul imense oferita ast ăzi de calculatoarele electronice, pot fi create şi implementate module soft care împreună cu module de generare de zgomot real şi interfeţele necesare înscrierii cheilor pe diver şi supor ţi, să permită generarea şi alocarea cheilor pentru un
Aspecte privind managementul secretiz ării în reţelele moderne de telecomunica ţii
număr rezonabil de echipamente în timp util şi să ofere manipularea cheilor f ăr ă posibilitatea dezvăluirii uşoare a conţinutului acestora. În concluzie, avându-se în vedere considera ţiile de mai sus din contopirea celor dou ă tipuri de management, poate fi eliberat de o parte din sarcini şi responsabilit ăţi administratorul general al sistemului, prin preluarea unor sarcini şi responsabilit ăţi de către administratorii zonali. 8.4 PROTECŢIA DATELOR DE MANAGEMENT
După cum s-a prezentat anterior, sistemul de management, prin datele pe care acesta le ofer ă, reprezint ă liantul care creeaz ă din echipamente, o re ţea complex ă. Importanţa vital ă a acestor date transform ă sistemul de management într-o ţintă sigur ă pentru persoane sau organiza ţii care doresc s ă dezorganizeze reţeaua sau numai o parte a ei. Sistematizând şi clasificând principalele canale care pot eviden ţia vulnerabilitatea informa ţiilor rezult ă: - canale indirecte, care dau posibilitatea utiliz ării neautorizate a informaţiei f ăr ă acces fizic la elementele sistemului de management (interceptarea radia ţiei electromagnetice a echipamentului, observarea şi fotografierea de la distan ţă a textului expus pe monitor etc); - canale directe, care presupun accesul fizic la elementele sistemului de management, f ăr ă a face îns ă modificări asupra lor (înregistrarea informa ţiilor transmise prin liniile de leg ătura şi retransmiterea ulterioar ă, sustragerea suporturilor de informa ţii, citirea neautorizat ă din fişierele altor utilizatori, copierea neautorizat ă a unor fişiere, folosirea neautorizat ă a unor terminale ce apar ţin unor utilizatori autoriza ţi etc); Având în vedere c ă centrele de management sunt amplasate în obiective păzite, în camere special destinate, pot fi luate m ăsuri de protec ţie fizică (orientarea corespunz ătoare a ecranului monitoarelor, reducerea câmpului electromagnetic radiat de c ătre echipament în afara cl ădirii, dispunerea camerei în obiectiv etc) care reduc vulnerabilitatea, prin canale indirecte, a informa ţiilor de management. Pentru a reduce vulnerabilitatea prin canale directe şi directe active trebuiesc luate urm ătoarele măsuri: - criptarea leg ăturii de serviciu sau de comunica ţie folosit ă pentru transmiterea informa ţiilor de management; - creşterea securit ăţii echipamentelor din sistemul de management (în primul rând securitatea PC-urilor); Criptarea leg ăturii de serviciu sau de comunica ţie folosite pentru transmiterea informa ţiilor de management se realizeaz ă folosind echipamente de criptare pentru transmiteri de date şi/sau algoritmi implementa ţi soft care realizeaz ă protecţia datelor în canal. Având în vedere protejarea canalelor de comunica ţie, de către echipamentul de criptare de grup, rezult ă un grad mai ridicat al protec iei datelor
Aspecte privind managementul secretiz ării în reţelele moderne de telecomunica ţii
de management în situa ţia folosirii acestor canale pentru transmiterea informaţiilor de management. Siguranţa utilizării PC-urilor, atât în sistemul de management (general şi al protecţiei informaţiilor) cât şi în sistemul de comunica ţie (pentru utilizatorii reţelelor locale de calculatoare) are în vedere urm ătoarele riscuri: - modificarea neautorizat ă a datelor; - ştergerea datelor sau deteriorarea fizic ă a mediului de stocare; - utilizarea neautorizat ă a datelor etc. Astfel, folosind ierarhii adecvate de chei şi parole, se asigur ă: - protecţia şi integritatea informa ţiilor prin criptare; - protecţia antivirus prin protejarea boot-ului; - protecţia asupra accesului neautorizat la echipament (pornire, utilizare) cât şi asupra modific ării sau/şi ştergerii neautorizate a unor date prin identificarea şi separarea utilizatorilor. Managementul acestor chei şi parole este integrat managementului protecţiei informaţiilor.
BIBLIOGRAFIE
1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
11. 12.
13. 14. 15. 16.
17. 18.
144
* * * * *, Applications of Digital Signal Processing , Prentice-Hall, Inc. Englewood Cliffs, New Jersey, 1978. * * * * *, The Current State of DES , Dr. Dobb's Journal, comunicare Internet, 2001. * * * * *, Cracking DES: Secrets of Encryption Research, Wiretap Politics & Chip Design, Electronic Frontier Foundation, 1999. G. Agnew, Random sources for cryptographic systems, Advances in Cryptology, EUROCRYPT ’87 (LNCS 304), 77–81, 1988. N. Ahmed, K. R. Rao, Orthogonal Transforms for Digital Signal Processing . Springer-Verlag, New York, 1975. Ion Angheloiu, V. V. Patriciu, Securitatea şi Protec ţ ia Informa ţ iei în Sistemele Electronice de Calcul , Ed. Militar ă, Bucureşti, 1986. Ion Angheloiu, E.Gyorfi, Elemente de teoria transmiterei informa ţ iei, Ed. Academia Militar ă, Bucureşti, 1976. A. Angot, Complemente de matematici, Editura tehnică, Bucureşti, 1965. W. Barker, Cryptanalysis of the Hagelin Cryptograph, Aegean Park Press, Laguna Hills, California, 1977. U. Baum and S. Blackburn, Clock-controlled pseudorandom generators on finite groups, B. Preneel, editor, Fast Software Encryption, Second International Workshop (LNCS 1008), 6–21, Springer-Verlag, 1995. H. Beker and F. Piper, Cipher Systems: The Protection of Communications, John Wiley & Sons, New York, 1982. M. Bellare, J.Kilian, And P. Rog-Away, The security of cipher block chaining , Advances in Cryptology, CRYPTO ’94 (LNCS 839), 341–358, 1994. I. Ben-Aroya and E. Biham, Differential cyptanalysis of Lucifer , Advances in Cryptology, CRYPTO ’93 (LNCS 773), 187– 199, 1994. E. Biham, A. Shamir, Differential Cryptanalysis of DES-like Cryptosystems, Advances in Cryptology – CRIPTO '90 Proceedings, Springer-Verlag, 1991. E. Biham, New types of cryptanalytic attacks using related keys, Advances in Cryptology, EUROCRYPT ’93 (LNCS 765), 398–409, 1994. L. Blum, M. Blum, and M. Shub, Comparison of two pseudo random number generators, Advances in Cryptology, Proceedings of Crypto 82, 61–78, 1983. L. Coculescu, V. Cristea, I. Finta, V. V. Patriciu, F. Pilat, Proiectarea Sistemelor Teleinformatice, Ed. Militar ă, Bucureşti, 1988. I. Constantinescu, S. Condrea, Edmond. Nicolau, Teoria informa ţ iei, Edit. tehnică, Bucureşti, 1958.