Criptarea datelor este o metoda folosita pentru protejarea informatiilor. Fiecare persoana, firma sau institutie care doreste ca datele pe care le are pe calculator sa nu poata fi citite de altcineva trebuie sa foloseasca o metoda de criptare.
Considerati urmatoarea metoda simpla de criptare, fiecare litera a alfabetului este inlocuita cu litera urmatoare: A devine B, B devine C, si tot asa pana la Z care devine A. Daca se foloseste aceasta metoda textul:
Orasul are flori
se cripteaza in:
Psbtvm bsf gmpsj
Deoarece calculatoarele au devenit foarte performante in ultimul timp, ele pot fi folosite la spargerea criptarii si aflarea continutului datelor. Daca cineva este in posesia mesajului „Psbtvm bsf gmpsj” fara a sti care este metoda de criptare folosita, persoana respectiva poate scrie un program simplu pe calculator care sa testeze toate combinatiile de schimbari de litere: A cu B, A cu C, A cu D si asa mai departe. Un program de genul acesta poate afla combinatia folosita (metoda de incriptare) in cateva minute. Deci cu cat e mai complicata metoda de criptare cu atat mai grea devine descifrarea mesajului / datelor incriptate.
Spargerea unui mesaj se refera la intelegerea metodei de criptare a unui mesaj, cand numai mesajul cifrat este disponibil, fara a se sti alte detalii despre cum a fost incriptat.
Printre cele mai puternice metode de criptare la ora actuala este algoritmul AES. Este posibil ca acest algoritm sa fie spart, dar este necesara foarte multa putere de calcul, adica este nevoie de un numar mare de calculatoare legate intr-o retea si dedicate pentru spargere.
As vrea sa prezint cum am inventat un algoritm imposibil de spart pornind de la unul din cei mai tari algoritmi existenti, metoda AES.
Voi lista mai jos cateva din proprietatile majore ale algoritmului AES si apoi voi arata cum prin invalidarea acestor proprietati am obtinut noi idei care m-au ajutat la crearea unui algoritm mai bun.
AES
––––––
criptarea este statica
se folosesc numere întregi
se folosește o cheie pentru criptare
se poate sparge cu un număr mare de combinații
Criptarea statica se refera la faptul ca pentru același mesaj si cheie folosita, mesajul criptat nu se schimba. Cheia de criptare se refera la mesajul folosit in timpul criptării. Spargerea se refera la numărul de combinații necesare a se rula pe o retea de calculatoare.
Algoritmul de criptare conceput de Ovidiu Anghelidi
In cazul algoritmului propriu am cautat:
– sa gasesc o metoda de criptarea dinamica
– sa folosesc numere reale
– sa nu folosesc o cheie de criptare
– ca spargerea sa necesite un numar foarte, foarte mare de combinatii
Metoda de criptare dinamica a constat in folosirea unui sistem foarte mare de ecuatii diferentiale.
In cadrul unei ecuatii diferentiale am folosit parametrii care variaza intr-un domeniu real si care au precizie de 12 numere dupa virgula. Considerati diferenta: intre 0 si 1 nu este nici un alt numar intreg; intre 0 si 1 sunt 999,999,999,999 numere reale cand precizia este de 12 numere dupa virgula.
Nu folosesc cheie pentru criptarea fiecarui mesaj.
Numarul de combinatii necesare depinde de numarul de parametri dintr-o ecuatie si de intervalul real al fiecarui parametru care este diferit de la ecuatie la ecuatie si, de asemenea, de modul in care se stocheaza informatia in tot sistemul de ecuatii.
Mai multe detalii găsiţi aici.
Articol scris de Ovidiu Anghelidi.
Un mic interviu cu Domnul Ovidiu Anghelidi
Dorel Puchianu: As vrea sa imi spuneti cum putem implementa acest algoritm, pentru a cripta date?
Ovidiu Anghelidi: Implementarea este un pic mai complicata. Sunt nevoie de mai multe calculatoare care sa ruleze in paralel. Algoritmul are 2 dezavantaje majore: se creaza mesaje foarte mari Mbytes sau chiar GBytes chiar si pentru un cuvant criptat, deoarece mesajul criptat este transmis ca parametri pentru sistemul de ecuatii si al doilea dezavantaj este ca dureaza mult timp pana se poate rula criptarea deoarece este nevoie sa se efectueze calculele pentru sistemul de ecuatii diferentiale. Eu am folosit un neurosimulator propriu dar se poate folosi si programul Neuron (versiunea paralela, gratuita) de la Yale University cu o retea mare de neuroni.
Dorel Puchianu: As dori sa stiu daca algoritmul va purta numele dvs.?
Ovidiu Anghelidi: Nu m-am gandit la asta. Mi-este indiferent, va spun sincer.
Interesant ceea ce se spune despre aceasta metoda de criptare a datelor dar destul de greu de crezut deoarece, chiar daca se folosesc o multitudine de ecuatii diferentiale, solutiile acestora nu compun cheia algoritmului de criptare? Nu poate exista notiunea de criptografie daca nu avem chei, (simetrice,asimetrice). AES(Advanced Encryption Standard) este o metoda de cifrare pe blocuri, nu atat de usor de spart precum se prezinta in acest articol.