You are on page 1of 3

Eratpirc ed icinhet (1)

serial

Tehnici de CRIPTARE
Claudiu Soroiu
Criptarea mesajelor este unul dintre cele mai studiate domenii din zilele noastre. Complexitatea tehnicilor de criptare i de trimitere a mesajelor crete permanent pentru a obine o securitate ct mai ridicat a comunicaiilor. Pe parcursul ctorva episoade, vom prezenta unele dintre cele mai cunoscute modaliti de codificare a mesajelor.

Introducere

Criptarea mesajelor i trimiterea lor sub aceast form este utilizat de foarte mult timp. Unul dintre primii care au folosit tehnici de criptare pentru trimiterea mesajelor a fost celebrul mprat roman Cezar. n comunicarea privat cu o persoan, folosirea unui cod secret poate preveni citirea intenionat sau neintenionat a mesajelor de ctre cei care intr n posesia acestora, fie pentru c trebuie s le transporte pn la destinatar, fie pentru c le intercepteaz n timp ce mesajul este transmis.

tat ntr-un anumit limbaj de programare este timpul folosit de programul respectiv pentru a codifica o cantitate foarte mare de informaii. Un text criptat folosind o metod care nu necesit cunotine vaste din domeniul matematicii i informaticii este foarte uor de decriptat.

Criptarea lui Cezar

Definiie

30

Criptarea reprezint o metod prin care un text necriptat (documente, fiiere, fraze, cuvinte etc.) este transformat, utiliznd anumite metode, ntr-un alt text, numit text criptat, care se pstreaz n aceast form sau se trimite unei anumite persoane. Criptarea este utilizat cu scopul de a pstra secretul unei anumite informaii. n cazul n care informaia criptat ajunge i la alte persoane, altele dect cele care trebuie s o primeasc sau s o pstreze, nu se poate obine textul original dect dac este cunoscut tehnica de criptare folosit i, eventual, o parol utilizat n procesul de criptare. Procedeul invers prin care un text criptat este transformat n textul original poart numele de decriptare. Exist foarte multe tehnici de criptare cunoscute de foarte multe persoane, dar cu toate acestea, pentru tehnicile avansate, datorit complexitii algoritmilor folosii pentru codificare, procesul invers, cel de decriptare, este aproape imposibil de realizat. Un algoritm de criptare este cu att mai eficient, cu ct textul criptat i eventuala parol utilizat sunt foarte greu de gsit, chiar dac cel care ncearc s decripteze textul deine o parte din textul iniial. Un alt factor important de care depinde eficiena unui algoritm de criptare implemen-

Cnd trimitea mesaje oficiale ctre subalternii si, Cezar folosea o tehnic foarte simpl de codificare a acestora. Fie dou cercuri pe care sunt scrise cele 26 de litere ale alfabetului englezesc; dac rotim cercul mic cu un numr de litere fa de cellalt n sensul acelor de ceasornic, atunci, pentru a cripta un mesaj, se caut fiecare liter din mesaj pe cercul mare i se scrie litera corespunztoare de pe cercul mic.

Ginfo nr. 2 - februarie 2002

Figura 1

Figura 2

Dac avem textul IULIUS CAESAR i deplasm cercul din interior din figura 1 cu dou litere n sensul acelor de ceasornic dup cum se observ n figura 2, atunci textul criptat va fi GSJGSQ AYCQYP. Procedeul de rotire a cercului mic cu un anumit numr de litere poart numele de deplasare. Pentru aceast tehnic de criptare, o parte din cheia (parola) de criptare o constituie numrul de deplasri (deplasament) de cte o liter n sensul acelor de ceasornic. Cealalt parte din cheia de

criptare o constituie alfabetul ales. Alfabetul folosit poate s fie altul dect cel prezentat n exemplul anterior. Acesta poate s conin pe lng majuscule i alte caractere printre care pot aprea cifre, caractere speciale, alte litere ale alfabetelor diferitelor limbaje utilizate sau poate s fie ntreg setul de caractere ASCII folosit de calculator. Pentru a decripta un mesaj criptat cu aceast metod, trebuie s se cunoasc numrul de deplasri utilizat la criptarea textului iniial. Procesul de obinere a mesajului iniial din mesajul criptat cnd se cunoate deplasamentul este foarte simplu. Se deplaseaz cercul din interior cu attea litere cu cte indic deplasamentul i fiecare liter din textul criptat se caut pe cercul din interior i se scrie litera corespunztoare de pe cercul din exterior. Din textul FRIFRP ZXBPXO criptat n cazul alfabetului englezesc, folosind un deplasament de trei caracactere, prin decriptare se obine IULIUS CAESAR. Dac notm cu L numrul de caractere al alfabetului utilizat, atunci textul criptat folosind un deplasament D mai mare sau egal cu L este acelai cu cazul n care deplasamentul este restul mpririi lui D la L. Aceast metod de criptare nu este eficient, deoarece textul criptat poate fi uor decriptat dac se cunoate alfabetul utilizat. La decriptare se folosesc L deplasamente i astfel se genereaz L texte dintre care numai unul este cel bun i poate fi uor identificat.

Avnd aceste componente, procesul de decriptare este similar celui prezentat n seciunea anterioar. Dac se folosete alfabetul englezesc, ca posibil modalitate de aranjare a caracterelor pe cele dou cercuri ar putea fi aleas aranjarea lor de pe tastatur, i anume: n cazul n care se cunoate numai tehnica de criptare utilizat, decriptarea mesajului este mai complicat, deoarece se bazeaz pe statistic matematic i n principal pe faptul c ntr-un text necriptat cu o dimensiune suficient de mare vocalele au o frecven foarte mare i nu exist dou vocale consecutive din text care s fie la o distan mai mare de ase caractere (pentru limba romn). Metoda substituiei Prin substituie se nelege nlocuirea fiecrui caracter din alfabet cu un altul i nu exist dou caractere care s fie nlocuite cu acelai caracter. O alt posibilitate ar fi aceea de a nlocui fiecare caracter din alfabetul ales cu un simbol sau un numr. Tehnicile de criptare prezentate pn acum sunt cazuri particulare ale criptrii prin substituie. Considernd alfabetul englezesc, exist 26! posibiliti de substituire a caracterelor cu altele din care, pentru o mai mare securitate a datelor se scade numrul de posibiliti n care un caracter este substituit cu el nsui (acest numr se obine rezolvnd problema concordanelor). Criptarea unui text folosind aceast metod se face ca n cazul criptrii lui Ovidius, adic pentru fiecare caracter din text se scrie litera care s-a ales pentru substituie. Fie urmtoarea aranjare a caracterelor alfabetului englezesc: Pentru textul PAROLA ESTE ASDFG, mesajul criptat folosind aranjarea de mai sus, este: NZFEDZ JOXJ ZOASB. Procesul de decriptare se face n sens invers, adic pentru fiecare liter din textul criptat se scrie litera pe care aceasta a substituit-o n procesul de criptare. Caracterele se pot substitui i cu numere, existnd mai multe variante a acestui procedeu. De exemplu, fiecrui caracter i se poate asocia o mulime de numere care l pot substitui, dar mulimile asociate caracterelor alfabetului ales trebuie s fie disjuncte. Dac pentru litera A se alege o mulime {n1, n2, ...,nm}, oricare din elementele mulimii pot substitui aceast liter. n procesul de criptare, pentru fiecare liter din textul iniial se alege aleator un numr din mulimea care i-a fost atribuit. De exemplu, dac pentru caracterul A se alege mulimea {1, ..., 10}, pentru litera B se alege mulimea {11, ..., 20} etc., exist mai multe posibiliti pentru a cripta textul de mai sus; una dintre ele poate fi: 154, 7, 172, 149, 120, 156, 48, 185, 194, 44, 4, 184, 33, 51, 63. Nu este obligatoriu ca mulimile alese pentru fiecare caracter s aib acelai cardinal; de fapt, este indicat ca
ABCDEFGHIJKLMNOPQRSTUVWXYZ ZIRAJSBKTCLUDMVENWFOXGPYHQ QWERTYUIOPASDFGHJKLZXCVBNM

serial

Variante ale criptrii lui Cezar

O variant a criptrii lui Cezar este tehnica folosit de Ovidius. Acesta nu folosea deplasarea cercului din interior, n schimb literele de pe cercul din interior erau scrise n ordine invers (de la ultima liter din alfabet la prima, n sensul acelor de ceasornic). Acest lucru este echivalent cu scrierea literelor din alfabet pe un rnd n ordine i pe cellalt rnd n ordine invers, dup cum se poate observa n continuare: Pentru a cripta cuvntul OVIDIUS se caut pentru fiecare liter din cuvnt litera de pe primul rnd i se scrie litera de pe al doilea rnd de sub litera gsit. Aplicnd acest procedeu obinem cuvntul MERWRFH. Pentru decriptare se folosete acelai procedeu ca n cazul criptrii deoarece, dac unei litere i de pe primul rnd i corespunde a (L + 1 - i)-a liter din al doilea rnd, atunci celei de-a (L + 1 - i)-a litere din primul rnd i corespunde a (L + 1 -(L + 1 - i))-a liter din al doilea rnd, adic a i-a liter. Criptarea cu alfabet aleator O alt variant a criptrii lui Cezar este folosirea unui alfabet i aranjarea caracterelor acestuia, pe cele dou cercuri, ntr-o ordine aleatoare, dar caracterele de pe ambele cercuri trebuie s fie aranjate n aceeai ordine. Pentru decriptarea mesajelor criptate cu ajutorul unui alfabet ales aleator, trebuie cunoscute alfabetul, ordinea caracterelor din alfabet precum i numrul de deplasri.
ABCDEFGHIJKLMNOPQRSTUVWXYZ ZYXWVUTSRQPONMLKJIHGFEDCBA

31

Ginfo nr. 2 - februarie 2002

mulimile asociate literelor care apar frecvent s aib mai multe elemente. Pentru transmiterea de texte criptate se mai pot folosi imagini n care caracterele din textul iniial sunt nlocuite cu simboluri predefinite. Una dintre cele mai cunoscute metode de nlocuire a caracterelor cu simboluri este prezentat n figura urmtoare.

Pentru fiecare caracter din figur se deseneaz conturul regiunii n care acesta se afl. De exemplu, pentru litera N se deseneaz laturile regiunii din stnga-sus ale diagramei n care se afl mpreun cu un punct ntre laturi. Folosind aceste simboluri, textul GAZETA DE INFORMATICA se scrie astfel:

Ginfo nr. 2 - februarie 2002

Criptarea prin metoda transpoziiei este o tehnic mai eficient dect criptarea prin substituie, dar are, la rndul ei, o mulime de dezavantaje. Textul criptat prin metoda transpoziiei pstreaz toate caracterele textului iniial, dar n alt ordine obinut prin aplicarea algoritmului ce va fi prezentat n continuare. Criptarea prin transpoziie const din scrierea textului iniial din care s-au eliminat spaiile i semnele de punctuaie, ntr-o matrice de dimensiune M N, interschimbarea anumitor linii (sau coloane) ntre ele i textul criptat se obine prin scrierea caracterelor din noua matrice de pe fiecare coloan n parte, ncepnd cu colul din stnga-sus. Dac lungimea textului iniial este mai mic dect numrul de elemente ce pot fi scrise n matrice, atunci textul se completeaz cu elemente aleatoare, pn ajunge la dimensiunea M*N. Pentru textul Misiunea a fost ndeplinit, care are lungimea de 24 de caractere, se pot alege mai multe matrice de dimensiune M N, o posibilitate ar fi ca matricea s aib 4 linii i 6 coloane, dar pentru ca textul s fie mai greu de decodificat trebuie s conin i caractere alese aleator, sau ntr-un mod mai inteligent, care s ngreuneze munca celui care dorete s afle coninutul secret din mesajul criptat. Fie o matrice care are 5 linii i 6 coloane. Textului iniial i se adaug 6 caractere aleatoare i se obine textul Misiu neaaf ostn depli nitx yztwu i se scrie n matricea din partea stng astfel:
1 2 3 4 5 1 M e t l x 2 i a i y 3 s a n n z 4 i f d i t 5 u o e t w 6 n s p u 5 3 4 1 2 1 x t l M e 2 y i i a 3 z n n s a 4 t d i i f 5 w e t u o 6 u p n s

Metoda transpoziiei

Transpoziie cu parol Pentru ca procesul de decriptare s fie mai simplu i s nu mai fie nevoie ca ordinea n care au fost puse liniile din matricea creat, se folosete o variant a criptrii prin transpozie care se bazeaz pe o parol. Pentru a cripta un text folosind o parol i metoda transpoziiei, se alege o parol ale crei litere determin ordinea n care se vor scrie coloanele din matricea aleas. Pentru a afla ordinea n care vor fi scrise coloanele din textul iniial, se ordoneaz alfabetic literele din parol, i fiecrei litere i se asociaz numrul de ordine din irul ordonat. Lungimea parolei trebuie s fie egal cu numrul de coloane din matrice. Considerm textul anterior, scris ntr-o matrice de dimensiuni 5 6, i parola vultur. Literele din parol se ordoneaz alfabetic i se obine irul: l, r, t, u, u, v. Indicele 1 este asociat cu litera l, indicele 2 cu litera r, indicele 3 cu litera t, indicele 4 cu prima liter u din parol, indicele 5 cu a doua liter u din parol, iar indicele 6 este asociat cu litera v. Pentru a scrie coloanele, pentru fiecare indice i din irul ordonat se caut indicele j, care reprezint poziia literei cu indicele i, din parol i se scrie coloana j, astfel:
1 2 3 4 5 v 6 M e t l x u 4 i a i y l 1 s a n n z t 3 i f d i t u 5 u o e t w r 2 n s p u 5 3 4 1 2 1 s a n n z 2 n s p u 3 i f d i t 4 i a i y 5 u o e t w 6 M e t l x

serial

32

Prin scrierea liniilor 1, 2, 3, 4, 5 n ordinea 5, 3, 4, 1, 2, se obine matricea din partea dreapt. Textul criptat care se obine este: xtlMe yiia znnsa tdiif wetuo upns.

Textul care se obine n final este: sannz nspu ifdit iaiy uoetw Metlx. Pentru a decripta un mesaj criptat folosind aceast metod, mesajul se scrie n matrice pe coloane, ncepnd cu colul stnga-sus, i apoi se realizeaz operaia invers, adic pentru fiecare indice j al literelor din parol, se caut indicele i asociat literei din irul sortat i se scrie coloana cu indicele i. Din noua matrice astfel obinut se scriu literele de pe fiecare linie, n ordine. O tehnic foarte cunoscut i foarte practic de transmitere a mesajelor folosind metoda transpoziiei const n nfurarea unei panglici n jurul unui b. Mesajul se scrie pe panglic, de-a lungul bului, de la captul superior spre captul inferior, pe coloane i apoi se trimite la destinaie numai panglica, care ulterior s-a desfcut de pe b. La destinaie se nfoar panglica pe un b avnd aceeai dimensiune cu cel care a ajutat la scrierea textului i se citete textul pe coloane. Aceast tehnic de transmitere a mesajelor criptate era folosit chiar i n antichitate. De atunci anii au trecut i tehnicile de criptare au evoluat foarte mult. n numrul urmtor vom prezenta cteva dintre tehnicile avansate de criptare avansate.
Claudiu Soroiu este redactor al GInfo. Poate fi contactat prin e-mail la adresa csoroiu@yahoo.com.

You might also like