Sunteți pe pagina 1din 12

REFERAT CRIPTOLOGIE SEMNATURA DIGITALA

Motica Ioana-Florina INFORMATICA .ANUL 3 ZI

Semnatura digitala Dezvoltarile criptanalizei au fost mult sprijinite de studiile lingvistice ale limbii arabe care n primele patru secole ale imperiului islamic a constituit limba oficiala unificatoare pentru un imperiu de o uriasa ntindere si n acelasi timp si limba stiintifica. Arabii au preluat cunostintele matematice ale civilizatiilor grecesti si indiene. Arabii sunt cei care au introdus sistemul zecimal de numerotatie si cifrele arabe. Termenii zero ,cifru, algoritm, algebra se datoreaza tot lor. n fapt istoria criptografiei / criptologiei urmareste ndeaproape cresterea si descresterea marilor imperii si civilizatii. Ea nu apare si nu se dezvolta dect acolo unde este putere ce trebuie protejata. Aparitia si dezvoltarea continua a utilizarii calculatoarelor practic n toate domeniile vietii, existenta si evolutia puternica a retelelor teleinformatice la nivel national si international, globalizarea comunicatiilor, existenta unor baze de date puternice, aparitia si dezvoltarea comertului electronic, a postei electronice, constituie premisele societatii informationale n care pasim. Toate acestea indica o crestere extraordinara a volumului si importantei datelor transmise sau stocate si implicit a vulnerabilitatii acestora. Protectia n aceste sisteme vizeaza: -eliminarea posibilitatilor de distrugere voita sau accidentala. -asigurarea caracterului secret al comunicarii pentru a preveni posibilitatea ca persoane neautorizate sa extraga informatii. -autentificarea informatiei n scopul prevenirii posibilitatii ca persoane neautorizate sa introduca informatii n sistem. -n anumite situatii, cum ar fi transferurile electronice de fonduri, negocierile contractuale, este importanta existenta unor semnaturi electronice pentru a evita dispute ntre emitator si receptor cu privire la mesajul transmis. Toate aceste obiective arata o largire puternica a domeniului de aplicare al criptografiei de Ia domeniul diplomatic, militar, politic, la cel civil cu caracter economic si social. La ora actuala, 99% din criptografie nu este utilizata pentru protejarea secretelor militare ci pentru carduri bancare, plati de taxe radio / TV, taxe de drumuri, acces autorizat n cladiri sau Ia calculatoare, terminale de loterie, instrumente electronice de plati anticipate. n aceste aplicatii rolul criptografiei este acela de a face furturile mai greu de realizat. Terminologie de baza Criptografia (cryptography) este stiinta creerii si mentinerii mesajelor secrete, n sensul imposibilitatii citirii lor de catre neautorizati (stiinta mesajelor secrete). Mesaj (text) n clar (M) (plain / clear text) este mesajul ce urmeaza a fi secretizat; n criptografie M se mai numeste scriere chiar daca este un document de alta natura, de exemplu voce, imagine, date. Mesaj cifrat (criptograma) (C) (cipher text) este mesajul secretizat, inaccesibil neavizatilor. Criptare / cifrare (F) (encryption / enciphering) este procedeul de ascundere a unui mesaj n clar n mesajul secretizat. E(M)=C Decriptare / descifrare (D) (decryption / deciphering) este procedeul de regasire a

mesajului n clar M din mesajul cifrat C. D(C)= D(E(M))= M Oservatii: -decriptarea este operatia inversa criptarii; -ISO 7498-2 foloseste termenii de cifrare / descifrare (encipher / decipher), [Schneier(1996)], probabil pentru ca primul set de termeni aminteste de morti (cripta). Criptograf (cryptographer) este persoana ce se ocupa cu criptografia. Algoritm criptografic / cifru (cryptographic algorithm / cipher) este functia sau functiile matematice utilizate pentru criptare / decriptare; n general exista doua functii: una pentru criptare (E) si alta pentru decriptare (D). Cheia criptografica (K) (key,) este marimea (n majoritatea cazurilor secreta) necesara realizarii criptarii si decriptarii. Criptosistem (cryptosystern,) este sistemul format din: -algoritm -toate mesajele n clar (M) -toate textele cifrate (C) -toate cheile (K). Criptanaliza (cryptanalysis) este stiinta spargerii cifrurilor, deci a obtinerii mesajelor n clar (M) sau a cheii (K) din mesajul cifrat (C). Criptanalist (cryptanalyst) este persoana care se ocupa cu criptanaliza. Atac (attack) este ncercarea / tentativa criptanalitica. Criptologie (cryptology) este stiinta care se ocupa att de criptografie ct si de criptanaliza. Criptolog (cryptologist) este persoana care se ocupa cu criptologia. Steganografia (steganography) este tehnica ascunderii mesajelor secrete n alte mesaje, n asa fel nct existenta mesajelor secrete sa fie invizibila. starea initiaIa S0 controlata de o cheie compacta [Angheloiu et aI. (1986)] [Schneier(1996)] . . Protocoale pentru semnaturi digitale Ce este o semnatura digitala? Semnatura olografa este o proba a calitatii de autor al unui document, sau cel putin de acord cu continutul documentului. Proprietatile unei semnaturi olografe sunt: -Semnatura sa fie autentica, adica sa aiba calitatea de a convinge destinatarul ca semnatarul a semnat documentul n mod deliberat. -Semnatura sa nu poata fi refolosita, ceea ce nseamna ca semnatura este parte a documentului. -Documentul semnat nu poate fi modificat. -Semnatura nu poate fi repudiata. Semnaturile digitale trebuie sa pastreze doua cerinte de baza pentru o semnatura: -sa depinda de mesaj pentru a nu fi mutata de pe un mesaj pe altul (aceasta cerinta nu apare n cazul semnaturii olografe pentru ca nu este cazul);

-sa depinda de emitator pentru a nu putea fi falsificata. Semnatura digitala S [Menezes(1997)] este o succesiune de biti obtinuta din transformarea mesajului (M) si a unei infomatii secrete, stiute doar de emitator. Orice semnatura digitala trebuie sa poata fi verificata, rezultatul acestei functii putnd fi doar adevarat sau fals. n cele ce urmeaza vom folosi notatiile: -SA - transformarea de semnare pentru entitatea A (ea este secreta); -VA - transformarea de verificare pentru entitatea A (ea este publica); -{SA, VA } - perechea de transformari care defineste schema (mecanismul) de semnatura digitala. -v - rezultatul verificarii {adevarat, fals}. Protocolul de semnare este: -A calculeaza S = S A (M) care este semnatura mesajului M (folosind o cheie secreta); -A transmite perechea {M, S}. Protocolul de verificare: -Verificatorul (B) obtine functia de verificare a Iui A: VA, care este publica; -B calculeaza functia de verificare v= VA(M,S); -B accepta ca S apartine lui A daca v = adevarat si o refuza daca v = fals. Observatie: Transformatele SA si VA sunt tipic caracterizate de cte o cheie (secreta, respectiv publica). Pentru functiile de semnare, respectiv de verificare, se cer proprietatile: -S este o semnatura valida a lui A asupra mesajului M daca si numai daca: VA (M,S) = adevarat; -este imposibil de determinat pentru altcineva dect A un M si S astfel nct: VA (M,S) = adevarat. Observatie: Semnaturile trebuie sa fie verificabile pentru ca n caz de conflict sa nu poata fi repudiate sau reclamate n mod fraudulos; un arbitru trebuie sa poata rezolva disputa fara a avea nevoie de cheia privata a lui A. Aplicatii: utentificare; a integritatea datelor; nerepudiere; certificarea datelor publice n retele mari; Realizari: exista numerosi algoritmi pentru semnaturi digitale, toti necesitnd o informatie secreta pentru semnare si o informatie publica pentru verificare; n cazul algoritmilor cu chei publice, cheia privata folosita la criptare: DA poate fi folosita Ia semnare, iar cheia publica folosita la criptare: EA poate fi folosita

pentru verificare (acesta este cazul algoritmului RSA) ; n cazul altor algoritmi, implementarile pot fi diferite ; de exemplu, pentru algoritmii bazati pe functii hash (de rezumare) si cu certificare temporala (TS) se adauga pasi suplimentari pentru semnare si verificare ; Protocoale de semnare cu criptografie simetrica Fie situatia 1. n care A semneaza un mesaj digital pe care vrea sa-l trimita lui B. Protocolul se desfasoara astfel: (1) A trimite arbitrului I mesajul MA criptat cu cheia sa kA: CA =EA (MA) (2) I decripteaza CA, deci obtine pe MA, Ia care adauga o declaratie de autentificare (MI) a primirii mesajului de Ia A si le trimite lui B, criptate cu cheia lui B: CI =EB(MA +MI) (3) B decripteaza CI si poate citi pe MA ct si certificarea lui I: DB(Cl)=DB(EB (MA +Ml))=MA +MI 103 Fie situatia 2 n care B vrea sa-i arate lui C mesajul lui A. Pasii algoritmului sunt: (1) B i trimite arbitrului I mesajul lui A si certificarea sa MI, criptate cu cheia sa proprie GB =EB(MA +M1) (2) I decripteaza CB si gaseste pe MA DB(CB)=MA + MI (3) I verifica n baza de date daca l are pe MA (4) I cripteaza cu cheia lui C mesajul MA precum si certificarea sa MI si i trimite lui C: CI =EC(MA +MI) (5) C decripteaza CI si citeste pe MA precum si certificarea MI DC(CI)=MA +MI Concluzii: Aceste protocoale sunt bune, dar extrem de Iaborioase, totul tranzitnd prin I. I trebuie sa se tina o baza de date cu cheile tuturor utilizatorilor ct si a mesajelor certificate, astfel nct devine un punct de strangulare a traficului si n acelasi timp extrem de vulnerabil Ia atac, deoarece el detine practic toate informatiile. n plus, ca orice protocol arbitrat este mai costisitor dect unul nearbitrat. Protocoale de semnare utiliznd criptografie cu chei publice Protocolul de semnare (fara criptare) parcurge urmatorii pasi: (1) A semneaza mesajul M cu cheia sa privata DA SA = DA (M); (2) A transmite SA lui B (necriptat); (3) B venifica SA folosind cheia pubIica a lui A: VA = EA(SA) = EA (DA (M)) = M Observatie:

Acest protocol este superior celui cu chei simetrice pentru ca nu necesita arbitraj. Protocol de semnare cu criptare Oservatii: Exista algoritmi cu chei publice care pot fi utilizati att pentru semnaturi digitale (S) ct si pentru criptare: de exemplu RSA poate fi folosit la semnatura si confidentialitate, n acest caz fiind ndeplinite conditiile : VX = EX si SX = DX Alti algoritmi cu chei publice, de exemplu DSA [Schneier][Patriciu (1994)], se utilizeaza doar pentru semnatura, neputnd fi utilizati pentru criptare. Protocolul de semnare cu criptare se desfasoara astfel: (1) A semneaza mesajul M cu cheia privata DA SA = DA(M); (2) A cripteaza mesajul criptat cu cheia publica a lui B si l trimite acestuia C1 = EB (SA) = EB (DA (M)); (3) B decripteaza C1 cu cheia privata DB DB (C1) = DB (EB (SA)) = SA ; (4) B verifica semnatura lui A cu cheia sa publica EA VA (SA (M)) = EA (DA (M)) = M. Oservatii: A semna nainte de a cripta este natural. Cnd A scrie o scrisoare, semneaza nainte de a pune scrisoarea n plic. Utilizarea aceleiasi perechi de chei (E, D) pentru semnatura si criptare nu este obligatorie (cheile pot avea dimensiuni diferite si pot expira Ia date diferite). Retransmiterea mesajului, ca o confirmare de primire (resending the message as a receipt) se face parcurgnd urmatorii pasi: (5) B, dupa verificarea lui SA, retransmite M semnat (SB) la A cu o confirmare de primire: C2 = EA(SB(M)) ; (6) A decripteaza C2 cu cheia sa privata, verifica SB cu cheia publica a lui B si daca M este acelasi cu cel transmis de el, A stie ca B a primit mesajul: DA(C2) = SB(M) = DB(M) VB (SB) = EB (DB (M)) = M , identic cu cel transmis de A. Atacul de retransmitere (confirmare de primire) Ipoteza: H (atacatorul) este un utilizator Iegitim aI sistemului deci are o pereche de chei publica-privata(EH,DH). Atacul consta din urmatorii pasi: 1. H nregistreaza mesajul lui A catre B n pasul (2) EB(SA (M)) = EB(DA(M)) 2. Dupa un anumit timp, H trimite acest mesaj lui B pretinznd ca vine de Ia H (dar nesemnat) EB (DA (M)) 3. B decripteaza mesajul DB(EB(DA(M))) = DA(M)

4. si verifica semnatura lui H VH =EH(DA(M)) 5. B continua protocolul si retransmite mesajul lui H SB = DB(EH(DA(M))) EH (SB) = EH (DB(EH(DA (M)))) 6. H decripteaza mesajul: DH (EH (SB)) = DB (EH (DA (M))) 7. H aplica cheia publica a lui B EB (DB (EH (DA(M)))) = EH (DA (M)) 8. H decripteaza nca o data cu cheia sa privata DH (EH(DA(M))) = DA(M) 9. H aplica cheia publica a Iui A si obtine pe M EA(DA(M)) = M si asa H poate citi corespondenta. Atentie: desi semnalul decriptat de catre B Ia pasul (3) este fara sens, el a continuat protocolul, genernd astfel insecuritate; daca B ar fi verificat mesajul nainte de a-l retransmite, acest atac nu era posibil; nu semnati niciodata mesaje arbitrare de Ia alte persoane, nu decriptati mesaje arbitrare si nu difuzati rezultatele obtinute de altii. Contracararea atacului de retransmitere se poate face prin utilizarea de: operatii distincte (chiar daca apropiate) pentru criptare respectiv semnatura; chei diferite pentru criptare si semnatura; algoritmi diferiti pentru criptare si semnatura; certificare temporala care face ca semnatura de intrare sa fie diferita de cea de iesire; semnaturi digitale cu functii hash. Pentru a preveni atacurile n criptografia cu chei publice, cheia publica trebuie sa fie protejata la accesul Ia scriere iar pentru a preveni nlocuirea ei n timpul transmisiei, I (autoritate de certificare a cheilor - KDC) trebuie sa semneze fiecare cheie publica cu cheia sa privata. Cnd A primeste cheia lui B, verifica semnatura lui I, ceea ce mpiedica posibilitatea nlocuirii ei n transmisie. 3.5.4.4. Protocoale de semnare si certificare temporala (TS - time stamping) Daca A a semnat un cec catre B, acesta poate ncasa banii si apoi reutiliza o copie a contractului semnat. Prevenirea acestei situatii se poate face prin certificare temporala (TS): SA = DA (M + TS) . Protocoale de semnare cu sisteme cu chei publice si functii hash Functii de dispersie (hash) Functiile hash - cunoscute si sub denumirea de functii de compresie (compression), contractie (contraction) sau de rezumat al mesajului (message digest) ori amprenta digitala (fingerprint) - sunt functii care au la intrare un sir de date de lungime variabila n numit preimagine - si la iesire dau un sir de lungime fixa m (uzual 128 sau 160 de biti) numit valoarea functiei hash h (hash value - HV).

nm preimagine valoare hash = h Observatie:n Criptografia si securitatea retelelor de calculatoare[Patriciu (1994)] functia hash este denumita functie de dispersie. Proprietati: valoarea hash constituie o amprenta digitala a intrarii; daca doua siruri de la intrare dau aceeasi valoare hash (h) nu se poate spune cu certitudine ca cele doua siruri sunt identice, dar probabilitatea ca ele sa fie diferite este extrem de mica: p = 2 -n, deci functiile hash pot fi utilizate pentru a indica un grad destul de mare de asemanare; valoarea hash (h) se calculeaza extrem de usor; sirul de intrare (preimaginea) se determina destul de greu cnd se cunoaste h; aceasta proprietate mpreuna cu cea precendenta justifica ncadrarea functiilor hash n categoria functiilor neinversabile (one-way hash); functia hash este o functie fara ciocnire (collision-free) n sensul ca este greu de determinat doua preimagini care sa aiba aceeasi valoare hash (h); functia hash este publica. Aplicatii: n tranzactii financiare; Functie hash H h este o amprenta digitala a fisierelor; daca vrei sa verifici ca cineva are acelasi fisier pe care l ai si tu, fara sa-l transmita, i ceri valoarea hash. Daca valoarea hash transmisa este identica cu cea calculata de tine atunci este aproape sigur ca acea persoana are acel fisier; coduri de autentificare a mesajelor [Schneier(1996)] care constau din calcularea lui h si semnarea acesteia cu o cheie secreta astfel nct doar cel care detine cheia secreta k poate verifica pe h: MAC - message autentication code DAC - data autentication code Observatie: Daca documentele semnate M sunt mari, semnarea lor utiliznd chei publice este ineficienta. Pentru a reduce timpul, nu se semneaza M ci h (valoarea hash a lui M). Pasii protocolului de semnare sunt: (1) A si B convin asupra algoritmului de semnatura digitala si a functiei hash folosite. (2) A calculeaza valoarea hash a Iui M: h = H (M) (3) A semneaza pe h cu cheia sa privata: SA= DA(h) (4) A trimite M si SA catre B, criptat cu cheia publica a lui B: CB = EB(SA +M) = EB(DA(h) + M) (5) B decripteaza CB si gaseste M si SA dupa care determina pe h si l compara cu cel decriptat DB(CB) = SA + M.

(a) H(M)calculat = h calculat (b) VA (SA) = EA (SA ) = EA (DA (h)) = h decriptat daca (a) este echivalent cu (b) atunci SAeste validata. Avantaje: viteza mare; securitate sporita: probabilitatea de a avea doua valori hash identice este p = 2 -n, unde n reprezinta lungimea valorii hash n biti; SA poate fi pastrata separat de documentul M, ocupnd o memorie mult mai mica. Utilizari: sisteme de arhivare fara citirea documentelor; obtinerea dreptului de autor prin pastrarea secretului documentului. 3.5.4.6 Protocoale pentru semnaturi multiple Fara functii hash A si B semneaza cte o copie (separat) a documentului M, deci mesajul rezultat, avnd ambele copii, este dublu ca dimensiune. Un astfel de protocol are doi pasi: (1) A semneaza primul documentul M: SA=DA(M) (2) B semneaza al doilea: SB =DB(SA +M) Verificarea semnaturii lui A: VA =EA(SA)=M, este imposibila fara verificarea semnaturii Iui B. Cu functii hash n acest caz protocolul va arata astfel: (1) A semneaza valoarea hash a lui M: 107 SA = DA(H(M)) (2) B semneaza valoare hash a lui M: SB = DB (H(M)) (3) B trimite SB lui A (4) A trimite catre C pe (SA + SB) (5) C verifica SA si SB Protocoale de semnaturi digitale si nerepudiere A poate nsela semnnd un document si apoi pretinznd ca nu I-a semnat; invoca pierderea sau furtul cheii private deci repudiaza pe SA. Certificarea temporala limiteaza acest efect, dar el exista daca A dateaza documentul dupa dorinta. Asemenea situatii sunt evitate cu protocolul urmator: (1) A semneaza mesajul: SA; (2) A genereaza un antet de identificare (AI), concateneaza antetul cu SA, semneaza totul: SA =DA(SA+AI)

si trimite arbitrului I;(3) Arbitrul I verifica SA si confirma informatiile de identificare Al. I adauga o certificare temporala (TS) la SA + Al , semneaza totul SI =DI (SA + Al +TS) si trimite la A si B ; (4) B verifica SI , identificnd pe Al si SA; (5) A verifica SI, deci mesajul trimis de I Iui B. Daca nu-si gaseste propria semnatura SA apare o disputa. Observatie: Aceasta probIema poate fi solutionata si de protocoale adjudecate; 3.5.4.8 Semnaturi n alb (blind signatures) [Schneier(1996)] O trasatura esentiala a protocoalelor cu semnaturi digitale este ca semnatarul cunoaste ceea ce a semnat. Exista situatii n care anumite persoane semneaza documente fara sa fi vazut niciodata continutul acestora. Sunt cai prin care semnatarul poate cunoaste aproximativ, dar nu exact, ceea ce semneaza. Semnaturi complet n alb (completely blind signatures) Fie exemplul: B - notar public A - doreste ca B sa semneze un document, dar nu doreste ca B sa stie continutul documentului; pe B nu-l intereseaza continutul documentului, doar certifica ca acesta a fost notarizat. Protocolul de semnare se desfasoara astfel: (1) A ia documentul si l aleatorizeaza; aceasta valoare aleatoare se numeste factor de ascundere (blinding factor); (2) A trimite documentul ascuns (blinded) lui B; (3) B semneaza documentul ascuns; (4) A nlatura factorul de ascundere (dezaleatorizeaza documentul), obtinnd documentul original semnat de B. Proprietatile unei semnaturi complet n alb: 1) semnatura lui B pe document este valida; semnatura este dovada ca B a semnat documentul si are toate proprietatile unei semnaturi digitale. 2) B nu poate corela documentul semnat cu actul de semnare propriu-zis; chiar daca el ar tine o copie a tuturor semnaturilor n alb acordate, el nu ar putea determina cnd anume a semnat un anumit document. Semnaturi n alb (blind signatures) Pentru a evita riscul mentionat anterior, se va cauta o cale n care B sa stie ce semneaza, mentinnd n acelasi timp si proprietatile utile ale semnaturii n alb. Principiul folosit este: taie si alege (cut and choose), ilustrat de exemplul controlului vamal. Controlul se face utiliznd o solutie probabilistica adica se controleaza o persoana din 10, celelalte 9 nefiind controlate. Pedeapsa n cazul unei fraude este att de mare nct sa descurajeze tentativa de frauda. Semnatura n alb lucreaza ca n exemplul anterior. Lui B i se va da un numar mare de documente ascunse Ia semnat. El va deschide tot, exceptnd ultimul document pe care l semneaza fara a-I deschide. Documentul ascuns se afla n plic. Procesul de ascundere echivaleaza cu punerea documentului n plic. Procesul de nlaturare a factorului de ascundere poate fi comparat cu deschiderea plicului.

Un alt exemplu de utilizare de semnaturii n alb este agentia de contraspionaj.Fie un grup de agenti de contra-spionaj; identitatea lor este secreta chiar si pentru agentie. Directorul agentiei vrea sa dea fiecarui agent un document semnat care sa-i ofere imunitate diplomatica. Fiecare agent are propria lista cu nume de acoperire si nu doreste ca agentii sa o cunoasca de teama spargerii calculatorului agentiei. Pe de alta parte agentia nu doreste sa semneze n alb absolut orice document pentru a prentmpina situatii de genul: Agentul X a fost pensionat si pensia anuala este de 1.000.000 $. Presupunem ca fiecare agent are 10 nume de acoperire cunoscute doar de el. A computerul agentiei B - agentul sub acoperire Protocolul de semnare n alb decurge astfel: (1) B pregateste n nume, fiecare cu alt nume de acoperire, care i confera imunitate diplomatica. (2) B aleatorizeaza fiecare document cu un factor de ascundere diferit. (3) B trimite cele n documente ascunse lui A. (4) A alege (n-1) documente la ntmplare si i solicita lui B factorii de ascundere. (5) B trimite lui A cei (n-i) factori de ascundere solicitati. (6) A deschide cele (n-i) plicuri, deci nlatura factorul de ascundere si se asigura de continutul acestora. (7) A semneaza ultimul document nedeschis si-i trimite lui B. (8) B nlatura factorul de ascundere si citeste noul nume de acoperire ce-i asigura imunitate diplomatica: Ion Ionescu. 3.6.2. Utilizarea algoritmilor [Schneier(1996)] n cele ce urmeaza vom discuta situatia aplicatiilor criptografice din lumea civila: carduri bancare, carduri de acces n cladiri si Ia calculatoare, plati pentru diferite servicii, taxe de drumuri, etc., care n fapt constituie imensa majoritate a aplicatiilor criptografice (cca. 99%). n aceste cazuri nu se utilizeaza o criptografie de maxima securitate ca n cazul aplicatiilor militare, diplomatice, etc. iar atacurile care au loc nu sunt atacuri criptanalitice n adevaratul sens al cuvntului, ci sunt mai degraba cauzate de angajati necinstiti, de implementari deficitare, de gafe si erori ntmplatoare. Cei mai buni criptologi considera ca majoritatea caderilor din criptosisteme se datoreaza deficientelor de implementare si inventivitatii prostilor, si nu sunt cauzate de algoritmi sau protocoale. Bibliografie 1) Ion Bica, Victor Valeriu Patriciu: Securitatea Comertului Electronic, Editura All, Bucuresti 2001 2) http://www.dcd.uaic.ro/default.php?pgid=79&t=site 3) http://phgsign.phg.ro/faq.php 4) http://www.digisign.ro/faqs/index.html 5) http://webhost.uoradea.ro/cpopescu/cryptography/Cursul7.pdf 6) http://www.ginfo.ro/revista/12_5/serial2.pdf

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