Sunteți pe pagina 1din 6

Revista Informatica Economica, nr.

3(23)/2002 105

Semnatura electronica si securitatea datelor în comertul electronic

Prof.dr. Ion IVAN, asist. Paul POCATILU, prep. Marius POPA, stud. Cristian TOMA
Catedra de Informatica Economica, A.S.E. Bucuresti

In this paper are presented concepts and theories about electronic signature, secure
communications, encrypting algorithms. Also it is expose the SSFTP Application – Secure
Socket File Transport Protocol – and the principal rules and steps that have to be followed
by the end-user and the developers of secure applications.
Key words: electronic signature, encrypt procedures, e-commerce, security, RSA, PKI.

1 Concepte generale despre securitatea


tranzactiilor în e-commerce
Astazi, Internetul este folosit pentru a de-
ca expeditorul unei tranzactii electronice sa
nege trimiterea ei.
5. Aplicarea selective a unor servicii – de
servi o mare varietate de servicii care cer multe ori este necesara acoperirea unor
un grad ridicat de securitate, aplicatii cum parti ale tranzactiilor, de exemplu cele con-
ar fi e-commerce, e-banking, management tinând numarul cartii de credit al unui cli-
financiar-bancar. Mai mult ca oricând, ent. Aceasta nu trebuie sa fie în clar vân-
companiile realizeaza pe Web operatii fo- zatorului, care poate abuza de utilizarea ei.
lositoare afacerilor cum ar fi: folosirea
resurselor în mod distribuit si concurent la 2. Semnatura electronica în comertul
distanta, cooperarea cu parteneri pentru electronic
realizarea de proiecte interactiv prin retea, Sfârsitul acestui secol a fost dominat de
vânzarea produselor prin Web, etc. Dez- revolutia informatica în Internet, conside-
voltarea retelelor necablate – wireless net- rata a fi a treia revolutie industriala. Ele-
work – implica utilizatorii într- un mediu mentul esential de schimbare consta în a
foarte dinamic si nomadic. Utilizatorii cer înlocui hârtia si semnatura olografa cu noi
sa acceseze resursele «de acasa» în mod servicii adaptate noii societati informati-
transparent si sigur din Internet Cafe- uri, onale. La ora actuala pentru semnatura
aeroporturi, centre comerciale si alte com- electronica în tranzactiile din e-commerce
panii. O solutie puternica la aceste cerinte, sunt folosite sistemele criptografice cu chei
trebuie sa fie capabila sa satisfaca urmatoa- publice.
rele cerinte de securitate:
1. Confidentialitatea – protejeaza conti- 2.1. Sistemele criptografice cu cheii pu-
nutul tranzactiilor împotriva citirii neauto- blice folosite pentru semnatura electro-
rizate, de catre alte persoane decât recep- nica
torii specificati de emitator. Sistemele criptografice cu cheii publice
2. Autentificarea – permite receptorului inventate de Diffie si Hellman, de la Uni-
unui mesaj sa determine în mod sigur iden- versitatea din Stanford, folosesc un prin-
titatea expeditorului. cipiu diferit de criptarea clasica: în loc de o
3. Integritatea datelor – în retea furni- singura cheie secreta, sunt folosite doua
zeaza receptorului unei tranzactii siguranta cheii diferite, una pentru criptare cealalta
ca mesajul primit este identic cu mesajul pentru decriptare. Una din cheii este secre-
emis de expeditor. ta – cheie privata(PRIV) - si este cunoscuta
4. Prevenirea nerecunoasterii tranzactiei numai de detinator. Cealalta cheie, denu-
de catre expeditor (Non-Repudierea) – mita si cheie publica (PUB), este facuta
garanteaza integritatea si originea tranzac- publica si poate fi cunoscuta de oricine.
tiilor din punctul de vedere al expeditorului Ambele chei sunt de fapt siruri de biti,
si nu a destinatarului. Se împiedica astfel generate de un program capabil de acest
106 Revista Informatica Economica, nr. 3(23)/2002

lucru. Cheia publica poate fi plasata pe autenticitatii documentului mai bine decât
orice server sau oriunde în lume, însa cea semnatura olografa.
privata trebuie pastrata într-un loc sigur.
Pentru a asigura confidentialitatea, datele 2.2. Algoritmii matematici folositi pen-
sunt criptate la trimitere cu cheia publica a tru semnatura electronica
receptorului. Datele pot fi decriptate doar În implementarile practice, algoritmii cu
de receptorul adevarat cu cheia sa privata. cheie publica sunt adesea ineficienti din
Daca se doreste a se verifica autenticitatea punct de vedere al timpului de executie
unui document, datele trebuiesc procesate pentru a realiza semnatura digitala. Pentru
în urmatorul mod: a câstiga timp, în procesul de semnare digi-
• documentul este criptat cu cheia priva- tala se foloseste o functie de dispersie
ta a expeditorului, caree « semneaza în a- (hash) ce ajuta la realizarea unui rezumat
cest mod » ; al documentului sau mesajului care trebuie
• documentul este trimis receptorului ; transmis.
• receptorul verifica « semnatura » de- Princ ipali pasi ce trebuiesc urmariti pentru
criptând documentul cu cheia publica a a transmite un fisier în conditiile unor tran-
expeditorului; zactii sigure sunt: se executa un rezumat al
O cheie criptografica este de fapt un sir de documentului cu ajutorul unei functii hash;
biti ce poate fi organizat sub forma de rezumatul este criptat cu cheia secreta a
fisier. Cheia privata este stocata pe compu- emitatorului care totodata realizeaza si
terul personal, pe un disc portabil sau pe semnatura digitala în acest mod; documen-
un card. Algoritmi de criptare cu cheie tul împreuna cu semnatura sunt trimise la
publica reclama o complexitate matematica receptor; receptorul verifica semnatura în 3
mare, fiind bazati în general pe operatii pasi (se creeaza un nou rezumat al docu-
complexe matematice în aritmetica nume- mentului primit, rezumatul semnat este
relor întregi foarte mari. decriptat cu che ia publica a emitatorului,
Din urmatoarele motive semnatura digitala iar cele doua rezumate sunt comparate si
respecta toate conditiile ce trebuie îndepli- daca rezumatele se potrivesc atunci semna-
nite în securitatea tranzactiilor: semnatura tura este cea adevarata).
este autentica pentru ca este verificata doar În prezent se folosesc urmatorii algoritmi:
de cheia publica a emitatorului; semnatura • pentru rezumat: MD2, MD4 si MD5
nu poate fi falsificata pentru ca doar emita- (Message Digest creat de Ronald Rivest),
torul stie cheia secreta proprie; semnatura SHA (Secure Hash Algorithm, creat de US
nu poate fi refolosita pentru ca depinde de Standard Institute), NIST pentru semnatura
continutul documentului care este criptat; standard DSA;
semnatura nu poate fi “a lterata” pentru ca • pentru semnatura: RSA (creat de Ri-
orice încercare de a schimba continutul do- vest, Shamir si Adleman), El Gamal si
cumentului face ca semnatura sa nu mai fie DSA.
verificata de cheia publica a emitentului Unul din cele mai bune sisteme criptogra-
mesajului; semnatura este un element de fice cu cheii publice este prezentat în
non-repudiere pentru ca receptorul mesaju- continuare.
lui nu are nevoie de ajutorul emitentului
pentru a verifica daca semnatura este ade- 2.3. Algoritmul RSA
varata. A fost creat de trei cercetatori de la Massa-
În concluzie semnatura electronica repre- chusetts Institute of Technology si este un
zinta un atribut personal, fiind folosita pen- standard de facto. Este folosit pe scara
tru recunoastere a identitatii unei persoane foarte larga ca un foarte bun sistem cripto-
în anumite operatii. Semnatura electronica grafic cu cheii publice. Algoritmul benefi-
rezolva problema identitatii persoanei si ciaza de mare apreciere în mediul guverna-
mental si comercial, fiind sustinut de mai
Revista Informatica Economica, nr. 3(23)/2002 107

multe cercetari si studii din comunitatea 4. se executa criptarea documentului cu


academica. cheia publica a receptorului;
RSA se bazeaza pe quasi- imposibilitatea 5. documentul criptat împreuna cu semna-
de a factoriza numere foarte mari. Functiile tura sunt transmise catre receptor;
de criptare/decriptare sunt exponentiale 6. receptorul primeste semnatura plus do-
unde exponentul este cheia iar calculele se cumentul criptat si- l decripteaza pe acesta
fac în inelul claselor de resturi modulo n. din urma cu cheia sa privata;
Parametrii sistemului criptografic sunt: 7. rezultatului de la pasul 6 i se aplica
1. p si q sunt 2 numere prime foarte mari functia de la pasul 1;
(secrete, eventual cunoscute doar de pro- 8. receptorul decripteaza semnatura cu
prietar). cheia sa privata;
2. modulul n, facut public, este obtinut ca 9. rezultatul de la pasul 8 este decriptat cu
produsul lui p si q, n = p*q cheia publica a emitatorului;
3. indicatorul Euler f (n)=(p-1)*(q-1), im- 10. rezultatul de la pasul 9 este comparat
posibil de determinat de un atacator, deoa- cu cel din pasul 7. Daca rezultatele se
rece factorii primi ai numerelor n, p si q potrivesc atunci semnatura electronica va
sunt necunoscuti fi validata.
4. cheia secreta, PRIV, aleasa ca fiind un Sub diferitele forme de implementare,
numar întreg foarte mare relativ prim cu algoritmul RSA este cunoscut ca metoda
f(n), preferabil din interva lul [max(p,q)+1, cea mai sigura de criptare si autentificare
n-1]. disponibila. Aplicatia SSFTP este un e-
5. cheia publica, PUB, un întreg calculat xemplu practic de folosire si implementare
printr-o versiune a algoritmului lui Euclid, a unui sistem criptografic RSA.
ca fiind invers modulo f(n). PUB = inv(PR
IV, f(n)). 3. Aplicatia SSFTP
6. M documentul în format electronic. Sa consideram ca utilizatorul A doreste sa
7. H(M), rezumatul – digest – documen- transmita într-un mod securizat un raport
tului, calculat cu o functie de dispersie financiar stocat în format electronic într-un
hash. fisier. Pentru aceasta, SSFTP are doua
Spre deosebire de algoritmi DSA si El parti: un element este clientul, iar celalalt
Gamal, care pot fi folositi doar pentru element este serverul, care asteapta docu-
semnatura electronica, RSA poate fi folosit mente de la clienti si le stocheaza pe disc
si pentru criptare/decriptare. Taria algorit- în vederea prelucrarii ulterioare (de exem-
mului consta în dificultatea de a factoriza n plu B, o banca comerciala, asteapta niste
în p si q. Laboratoarele RSA sugereaza a formulare on- line de la clienti – serverul
se folosi numere prime foarte mari pe 128 este concurent dezvoltat multifir de execu-
sau 1024 biti, a caror factorizare se face în tie bazat pe conexiune orientata TCP).
mai multi ani. Pasii pentru a transporta un Interfata grafica serverului si interfata gra-
fisier în conditii de securitate (specifici fica utilizator a clientului este prezentata
aplicatiei SSFTP si nu algoritmului RSA) sunt redate la adresa http://www.ivan.ase.
sunt urmatorii: ro/RIE3-2002.htm. Serverul ruleaza pe o
1. se face rezumatul unui document cu masina Linux Red Hat iar clientul pe o
ajutorul unei functii de dispersie hash; masina Windows XP. În continuare este
2. rezumatul este criptat cu cheia privata a descris protocolul aplicatiei SSFTP.
emitatorului; Programul citeste primul octet din rezuma-
3. rezultatul de la pasul 2 este criptat cu tul fisierului ce reprezinta raportul finan-
cheia publica a receptorului; ciar (rezumat facut cu functia MD4). Fie
valoarea lui 65 (caracterul 'A' în ASCII).
108 Revista Informatica Economica, nr. 3(23)/2002

SSFTP Application

Client Server

z=hash to file=MD4(file)=128bits (w) PRIVB mod nserverB=q


(z)PRIVA mod nclientA = q W

(q) PUBA mod nclientA = z


(q)PUBB mod nserverB = w

text from file = text (t)PRIVB mod nserverB=text1


(text)PUBB mod nserverB=t t MD4(text1) = z1

If(z1 = = z) then
if(z= =z1) the client is correct authenticate {
the client is correct
Data File authenticate;
This is and
important text1 is really the same with
for… text;
and response to client
Original.txt }

Fig. 1. Protocolul aplicatiei


Caracteristicile clientului (user A) sunt: cheia publica a serverului. La receptiona-
• n = 3233; rea mesajului daca se autentifica corect
• Cheia publica: ( 71;3233) expeditorul fisierul este apoi efectiv de-
• Cheia privata: (791;3233) criptat cu cheia secreta a serverului.
Caracteristicile serverului (user B) sunt: Una din problemele sistemului criptografic
• n = 1795382159;
RSA implica urmatoarea specificatie: cheia
• Cheia publica: (1366415437; 1795382159)
• Cheia privata: (1795373509; 1795382159) serverului (modulul) trebuie sa fie mai
Clientul si serverul fac urmatorii pasi pen- mare decât orice cheie a unui client. Se
tru a comunica în conditii de securitate: impune ca pe viitor sa se reglementeze de
• litera A (octetul cu valoarea 65) este criptata cu exemplu un prag de 1099 pentru valoarea
cheia privata a userului A: 65 791 mod 3233 = 2811 modului n, astfel încât oricine sa aiba doua
• rezultatul este criptat cu cheia publica a perechi de chei publice si private, o pere-
serverului: 2811 1366415437 mod 1795382159 = che cu modulul mai mic de 1099 si alta cu
1776501223 modulul mai mare de 1099 .
• numarul 1776501223 nu poate fi transformat în
65 decât daca i se aplica succesiv cheia publica a
clientului (a lui A) si apoi cheia privata a serverului 4. Statistici privind aplicatia SSFTP
(B): 17765012231795373509 mod 1795382159 = Aplicatia a fost testata pe diferite sisteme
1783091602 si a dat rezultate foarte bune. Pentru înce-
• se aplica cheia publica a clientului A: put se considera chei RSA pe 1024 de biti
178309160271 mod 3233 = 65
din tabelul urmator. Fisierele de test au fost
• se continua în acelasi mod pâna când se
termina rezumatul mesajului (rezumatul are 16 generate automat iar pentru compresie si
octeti daca este realizat cu functia de dispersie criptare au fost citite din fisier blocuri de
MD2 sau MD4). informatie de 92 octeti pâna la sfârsitul fi-
Mai exista o varianta prescurtata de proto- sierului. Programul foloseste o biblioteca
col al aplicatiei pentru dispozitivele cu special creata, denumita XSySRSASecurity-
putere redusa de calcul. Aceasta varianta Lib. În biblioteca sunt functii pentru crip-
presupune ca mesajul sa fie o singura data tare, compresie, semnatura digitala, de dis-
criptat cu cheia privata a expeditorului si persie si de generare de numere prime si
sa nu i se mai aplice cheia publica a serve- chei RSA pe 128, 512, 1024 biti, folosind
rului. Acest lucru implica o bresa în securi- optim spatiul de disc si timpul la fiecare
tatea mesajului. Dupa ce se transmite rezu- operatie.
matul se transmite si fisierul criptat cu
Revista Informatica Economica, nr. 3(23)/2002 109

Exponent public Exponent privat n modulus


10122152481535604773307125 68494860958402809174584951 10436881232962973548135140
17870109545739036822729947 97775181118575105187124509 80849412174447294844825067
51911700132387353638286217 35308920429552248725502181 43616661963228810103162045
80533455774231435014041885 72459160066149487486555601 59828341432767405139179399
59844223431367123746606365 71926585366846757489817533 69139388829086910741104755
81480472452041492224941418 17203104457538219784190993 73235467435389735104602504
08389043619397400968903537 03093668210754461818826380 51275535546742272997478389
62828123460170504889165002 11628452499623394707820645 53197086688999761031056110
99083918755619382533671093 65032989164362868734269112 12139888706661734811585000
13522537184063233476551918 27205505591326844879895754 55341205203793132603246299
90623023372763446233037858 16576736582944552766014449 39348702596272708063382428
32897800210534450856637 7074966095046113712021 51924677019838598941961

Daca fisierul original este doar criptat, F = fisierul original de date;


lungimea sa este dubla fata de lungimea F’ = fisierul de date criptat;
L(F) = lungimea fisierului F = x;
celui original. Programul ofera si posibili- L(F’) = lungimea fisierului criptat F’ = y;
tatea de a face compresie si criptare în L(F’) <> L(F) deci x<>y.
acelasi timp. În acest caz lungimea fisie- Din tabel rezulta ca x = 5.6699*y. Este
rului criptat este de cinci ori mai mica evident ca exista o functie liniara care
decât lungimea celui original, iar timpul transforma pe x în y, y = a*x + b, unde:
a= ∑ ∑ 2
consumat pentru aceasta operatie este x y − n ∑ xy 1
nesemnificativ. Orice client poate comuni- si b= (∑ y − a ∑ x ) .
ca cu orice cripto-sistem server care res- ∑
(∑ x) − n x 2 n
pecta protocolul implementat de aplicatie. Din calcule rezulta a = 0.0334 si b =
Protocolul prevede sa fie transmise mai 2054.5714 iar coeficientul de corelatie este
multe informatii de interes cum ar fi: 0.9767. Acesta din urma arata ca exista o
numele si adresa de IP a cripto-sistemului legatura foarte puternica între variabilele x
server, metoda de compresie utilizata (ZIP, si y. De asemenea este evidentiata cu acest
JAR, PKZIP), metoda de scriere/citire pe si coeficient si directia legaturii între x si y.
de pe disc (serializare, scriere string octet Functia de regresie este:
cu octet, scriere string octet cu octet codat y = 0.0334*x + 2054.5714
UTF8, lungimea si cheia publica a expedi- De exemplu un fisier cu lungimea de
torului si datele codificate). Pe viitor se 10KB (x=10), în urma compresiei si cripta-
urmareste integrarea aplicatiilor cu un ser- rii va avea lungimea de 2.32KB.
ver al Autoritatii de Certificare care sa ia în Aplicatia SSFTP genereaza orice fel de
considerare PKCS (Public Key Cryptogra- cheii RSA si poate cripta si face compresie
phy Stand ards) elaborat de laboratoarele la orice tip de fisier (text, MS Word, Star
RSA. În urma testelor s-au înregistrat date- Office, executabil, fisiere imagine, fisiere
le statistice, existente la adresa http://ww video – mpeg, avi etc.) fara pierdere de in-
w.ivan.ase.ro/RIE3-2002.htm. formatii si cu o performanta ridicata. Co-
Din aceste serii statistice se observa ca dul sursa al aplicatiei a fost scris în limba-
lungimea fisierului original este 0.55 din jele Java (JDK 1.3.1) si C/C++. SSFTP
cea a fisierului criptat si de aproximativ 5 prezinta o mare scalabilitate si portabilitate
ori mai mare decât cea a fisierului compri- pe aproape orice sistem de operare (U-
mat si criptat. În acest exemplu s-au folosit NIX/Linux, Windows, OS2, Symbian OS,
chei pe 1024 de biti si s-au criptat blocuri Java OS) deoarece 90% din codul sursa
de câte 92 de biti din fisier. O concluzie se este scris în Java.
desprinde de aici ca lungimea fisierului
criptat depinde si de lungimea cheilor 5. Concluzii
folosite. Încrederea si viitorul comertului electronic
Se fac urmatoarele notatii: în conditii ridicate de securitate depinde de
110 Revista Informatica Economica, nr. 3(23)/2002

evolutia semnaturii electronice. Scalabilita- [DERE96], Derek Atkins, Paul Buis, Chris
tea si fiabilitatea aplicatiei SSFTP depinde Hare, Robert Kelly, “Internet Security
de viteza de comunicare a implementarilor Professional Reference”, Editura New
protocoalelor existente, de puterea motoa- Riders Publishing, Indianapolis 1996
relor de baze de date, de securitatea cone- [FLOR99], Florian Mircea Boian, “Progra-
xiunilor fizice, etc. marea distribuita în Internet”, Editura
De exemplu daca un client de la un telefon Albastra, Cluj-Napoca 1999
mobil doreste sa transmita un mesaj impor- [HEWL01], Hewlett Packard Security
tant pentru a realiza cumparaturi cu ajuto- references
rul aplicatiei SSFTP, atunci mesajul va a- [IRIN99], Irina Athanasiu, “O perspectiva
vea urmatoarea ruta: pragmatica asupra limbajului Java”,
• Utilizatorul completeaza un formular (formula- Editura Agora Press, Târgu Mures 1999.
rul este realizat în WML – Wireless Markup Lan- [IVAN98], Ion Ivan, Daniel Vernis, “Com-
guage si este asemanator cu cele facute în HTML
presia de date”, Editura CISON, Bucuresti
pe Web) cu cartea lui de credit si alte informatii
importante. 1998.
• Înainte de a trimite informatia la serverul de [IVAN01], Ion Ivan, Paul Pocatilu, Cristi-
Web bytecode-ul de pe telefon va trece prin Proxy an Toma, Alexandru Leau, “e3-com”, In-
Gateway, iar semnatura electronica se va realiza la formatica Economica Nr. 3(19)/2001, Bu-
end-user prin procedee specifice (WMLS – Wire-
curesti 2001.
less Markup Language Script are o librarie Crypto
începând cu WAP 1.2.1 – Wireless Application [IVSM98], Ion Smeureanu, Ion Ivan,
Protocol). Marian Dârdala, “Structuri si obiecte în
• Informatia criptata si semnata ajunge la serve- C++”, Editura CISON, Bucuresti 1998.
rul de la supermarket unde este stocata într-o baza [TARD91], J.J. Tardo, K. Alagappan:
de date cu ajutorul unui server-script side. “SPX: Global authentication using public
• Clientul de SSFTP lanseaza la fiecare 20
key certificates”, IEEE/ACM Transactions
secunde un fir de executie care citeste din baza de
date si transmite informatia prin TCP/IP serverului on Networking, May 1991.
de la banca. [VICT94], Victor Valeriu-Patriciu, “Crip-
• Dupa autentificarea primita de la serverul de la tografia si securitatea retelelor de calcu-
banca mesajul va urma aceeasi ruta dar înapoi: latoare cu aplicatii în C si Pascal”, Editura
supermarket server, WAP Proxy Gateway, si în Tehnica, Bucuresti 1994.
final la PDA sau telefonul mobil al utilizatorului.
[VICT98], Victor Valeriu Patriciu, Bica
Pentru o conexiune 100% sigura, SSFTP,
Ion, Monica Ene-Pietroseanu, “Securitatea
în locul comunicatiei directe pe socket- uri
Informatica în UNIX si Internet”, Editura
poate folosi unele din cele mai noi
tehnologii: CORBA, COM, DCOM sau Tehnica, Bucuresti 1998.
[VICT01], Victor Valeriu Patriciu, Bica
.NET. Aceste tehnologii se bazeaza pe
Ion, Monica Ene-Pietroseanu, Calin Vadu-
RPC ( Remote Procedure Call).
va, “Securitatea comertului electronic”,
Din aceste considerente, semnatura elec-
Editura BIC ALL, Bucuresti 2001.
tronica este un mod de autentificare a con-
tinutului documentelor electronice si va [WONG97], C.K Wong, S.S. Lam: “Di-
gital Signatures for Flows and Multicasts”,
avea un rol decisiv în tranzactiile specifice
IEEE/ACM Transactions on Networking,
comertului electronic.
Oct 1998.
Bibliografie
[CALI00], Calin Vaduva, Programarea în
Java, Editura Albastra, Cluj-Napoca 2001
[DENN82], Denning D.E, “Cryptography
and Data Security”, Editura Addison-
Wesley, New York 1982

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