-
Internetul: Criptare si Chei Publice
-
Bună, numele meu este Mila Gil-Epner
-
sunt specializată în Programare
la Universitatea Berkeley
-
și lucrez pentru Departamentul Apărării,
unde încerc să țin informația în sigurnață.
-
Internetul este un sistem public si deschis.
-
Toți trimitem si primim informații
prin cabluri și conexiuni partajate.
-
Dar chiar dacă este un sistem deschis,
schimbăm o multime de date private
-
cum ar fi numere ale cardurilor de credit,
informatii bancare, parole si email-uri.
-
Deci cum sunt toate aceste date private
ținute secret?
-
Orice tip de date poate fi ținut secret
printr-un proces numit „criptare”
-
amestecarea sau schimbarea mesajului
pentru a ascunde textul original.
-
Decriptarea este procesul de reconstruire a
mesajului pentru a putea fi citit.
-
Aceasta este o simpla idee,
iar oamenii au utilizat-o timp de secole.
-
Una dintre primele metode de criptare
cunoscute a fost CIfrul lui Caesar.
-
Numit după Iulius Cezar, un general Roman
care a criptat comenzile militare
-
astfel că dacă mesajul era interceptat
de inamici, ei nu puteau să îl citească.
-
Cifrul lui Cezar este un Algoritm care
substituie fiecare literă din mesajul original
-
cu o literă din alfabet.
-
Dacă numărul este cunoscut
doar de expeditor și destinatar
-
atunci acel număr se numește cheie
-
Îi permite cititorului să descifreze
mesajul secret.
-
De exemplu, dacă mesajul tău original e "SALUT"
-
folosind algoritmul Cifrului lui Cezar
cu numărul cheie 5
-
mesajul criptat ar fi acesta...
-
Pentru a descifra mesajul, destinatarul
va folosi cheia pentru a inversa procesul.
-
Dar e o mare problemă cu Cifrul lui Cezar
-
oricine poate să spargă codul
-
încercănd orice literă posibilă
-
iar în alfabetul englez sunt doar 26 de litere,
ceea ce înseamnă
-
că ar trebui să încerci cel mult 26 de chei
să decriptezi mesajul.
-
Să încerci 26 chei posibile nu e foarte greu
-
ar lua cam o oră.
-
Asa ca hai să facem să fie mai greu.
-
În loc să schimbi fiecare literă
cu aceeași valoare
-
să schimbăm fiecare literă cu o valoare diferită.
-
În acest exemplu o cheie de 10 cifre
arată în căt de multe poziții
-
fiecare literă succesivă va fi schimbată
ca sa cripteze un mesaj mai lung.
-
Să ghicești această cheie ar fi foarte greu.
-
Folosind criptări de 10 cifre ar fi
10 miliarde de posibilități.
-
Evident că e mai mult decăt orice alt om
ar putea rezolva, ar dura secole.
-
Dar unui calculator i-ar lua azi căteva secunde
să încerce toate cele 10 miliarde de posiblități.
-
Deci, într-o lume modernă unde infractorii sunt
înarmați cu calculatoare în locul creioanelor
-
cum poți să criptezi mesaje atat de securizate
-
încăt sunt prea greu de spart?
-
Prea greu înseamnă că sunt prea multe posiblități
de calculat în timp rezonabil.
-
Comunicațiile azi sunt criptate
folosind chei de 256 de biți.
-
Înseamnă că unui calculator al unui infractor
care interceptează mesajul
-
i-ar trebui atăt de multe posibilități
-
cănd descoperă cheia și decripteaza mesajul.
-
Chiar dacă ai avea 100.000 de super-calculatoare
-
si fiecare dintre ele ar putea să încerce
un milion de miliarde de chei pe secundă
-
ar lua trilioane și trilioane ani
să încerce fiecare opțiune
-
doar ca să spargă un singur mesaj protejat
cu criptare de 256 de biți.
-
Componentele unui PC devin dublu mai rapide
și scad jumatate din mărime pe an.
-
Dacă acest ritm de progres exponențial continuă
-
problemele imposibile de azi vor fi rezolvabile
în cateva sute de ani în viitor
-
si 256 de biți nu vor fi destul de siguri.
-
A trebuit să creștem lungimea standard a unei chei
-
pentru a ține pasul cu creșterea
rapidă a calculatoarelor.
-
Veștile bune sunt că o cheie mai lungă
nu face mesajul criptat mai greu
-
dar crește exponențial numărul de încercări
necesare pentru a sparge un cifru.
-
Cănd expeditorul și destinatarul folosasc
aceeași cheie să cripteze și să decripteze
-
se numește Criptare Simetrică.
-
Cu Criptarea Simetrică, ca și Cifrul lui Cezar
-
cheia secretă trebuie sa fie agreată
din timp de doi oameni în privat.
-
E minunat pentru oameni,
dar internetul e deschis și public
-
deci e imposibil ca doua calculatoare
să se "întalnească" în privat
-
și sa cadă de acord asupra unei chei secrete.
-
În schimb, calculatoarele folosesc
Criptare Asimetrică
-
o cheie publică ce fi schimbată cu oricine
-
si o cheie privată care nu este impărtășită.
-
Cheia Publică este folosită să cripteze date
-
și oricine poate să o folosească
să creeze un mesaj secret
-
dar secretul poate fi descifrat doar
de un calculator cu acces la cheia privată.
-
Funcționează cu ajutorul matematicii,
de care nu ne legăm acum.
-
Imaginează-ți ca ai o cutie poștală proprie,
unde oricine poate depozita corespondență
-
dar le trebuie o cheie să o facă.
-
Acum poți sa faci multe copii ale cheii
depozitate și să trimiți una unui prieten,
-
sau chiar sa o faci publică.
-
Prietenul tău sau un străin poate folosi
cheia publică să acceseze slotul tau
-
și să lase un mesaj.
-
Dar doar tu poți sa deschizi
cutia poștală cu cheia ta privată
-
să accesezi toate mesajele secrete primite
-
și poți sa trimiți un mesaj sigur prietenului
tău folosind cheia de depozit publică.
-
În acest mod oamenii pot să schimbe mesaje
între ei în siguranță făra cheie.
-
Criptologia Cheii Publice este fundația
tuturor mesajelor sigure
-
pe internetul deschis
-
Inclusiv protocoalele de securitate
cunoscute ca SSL și TLS
-
care ne protejează cănd navigăm pe internet.
-
Calculatorul tău folosește asta azi,
oricănd vezi micul lacăt
-
sau literele https în adresa unui site.
-
Asta inseamnă că calculatorul tău folosește
cheia de criptare publică
-
să schimbe date sigur cu website-ul pe care ești.
-
Din ce în ce mai mulți oameni folosesc internetul
-
și din ce în ce mai multe date private
vor fi transmise
-
iar nevoia de a securiza datele
va fi din ce în ce mai importantă.
-
Și cum calculatoarele devin din ce în ce mai rapide
-
vom avea nevoie sa dezvoltăm noi modalități
să facem criptarea prea greu de decodat.
-
Asta fac eu în munca mea și mereu se schimbă.