Algoritmi criptografici
O mulțime de servicii de securitate, cum ar fi confidențialitatea, integritatea, autentificarea și non-repudierea, pot fi furnizate utilizând algoritmi criptografici. [1]
Confidențialitate
Confidențialitatea servește scopului în care informațiile nu sunt dezvăluite entităților neautorizate. Confidențialitatea se realizează prin transformarea informațiilor ușor de înțeles într-o stare ininteligibilă, cu excepția entităților autorizate. Acest mecanism de transformare se numește criptare. Decriptarea datelor neinteligibile se efectuează pentru a le restabili la starea inițială. Atât algoritmii simetrici, cât și cei asimetrici pot furniza criptare. Confidențialitatea nu este importantă doar pentru datele în repaus, ci și pentru datele de comunicare în rețea.
Integritatea datelor
Integritatea este mecanismul care asigură faptul că datele nu au fost modificate într-un mod neaprobat. Integritatea datelor este menținută la fazele de creare, transmitere și stocare. Modificarea datelor include încălcarea inserării, ștergerii și substituirii. Semnăturile digitale și codurile de autentificare a mesajelor (MAC) sunt mecanismele criptografice care pot fi utilizate pentru a observa atât modificări intenționate, cât și accidentale.
Autentificare
Autentificare sursă și integritate. Autentificarea sursă asigură identitatea entității care a generat inițial informația. Autentificarea integrității validează faptul că datele nu au fost modificate și că integritatea datelor este protejată.
Non-Repudierea
Non-repudierea este garanția că nimeni nu poate nega o tranzacție. Terminologia non-respingere este frecvent utilizată pentru semnături digitale și mesaje de e-mail. Atunci când un algoritm de hash de date este combinat cu chei publice / private, se poate realiza autentificarea originării datelor. Cunoscuta tehnică de autentificare a originii datelor este utilizarea certificatelor digitale.
Algoritmii criptografici pot fi clasificați în trei clase: funcții Hash, algoritmi simetric și asimetric.
Abordarea adecvată pentru a încorpora servicii de securitate pentru aplicații și protocoale care se ocupă de securitatea datelor este utilizarea metodelor criptografice. Sunt disponibili o mulțime de algoritmi publici / open source și proprietari. Documentul „Publicația specială NIST 800-57 partea 1 revizuirea 4” oferă informații generale și stabilește cadre pentru a sprijini deciziile adecvate atunci când selectează și utilizează mecanisme criptografice.
Problema securității informațiilor este extrem de complexă și în același timp complicată. Principalul obiectiv al măsurilor de protecție dintr-un sistem este eliminarea posibilităților de distrugere accidentală sau intenționată a informațiilor, precum și a consultării lor neautorizate. În cazul unui sistem informatic, problema devine și mai complicată atunci când datele trebuie protejate, dar în același timp puse la dispoziția utilizatorilor.
Obiectivele de prevenire pot fi atinse prin criptarea informațiilor, o soluție eficientă atunci când stocarea sau transmiterea datelor se face prin medii nesigure. Obiectivele de detectare sunt atinse dacă sunt utilizate protocoale specifice, împreună cu metodele criptografice, care asigură schimbul de mesaje între entitățile sistemului de calcul respectiv.
Criptarea oferă protecție informațiilor transmise pentru canalele ascultate sau interceptate. În acest scop, emițătorul alege un algoritm de criptare și o cheie, pe care le comunică receptorului prin mijloace sigure, de exemplu, prin poștă sau curier. Criptografia modernă protejează datele transmise pe linii de mare viteză și stocate în computere.
Criptografia urmărește două obiective principale:
- protecție sau confidențialitate (prevenirea divulgării neautorizate a informațiilor transmise sau stocate);
- autenticitate sau integritate (prevenirea modificărilor neautorizate de date) informații protejate.
NBS (National Bureau of Standards - US) a publicat cerințele pentru standardul algoritmului de criptare, care se referă la:
trebuie să ofere un nivel ridicat de securitate;
trebuie să fie pe deplin public, cu specificații complete și ușor de înțeles;
securitatea algoritmului ar trebui să fie pe deplin concentrată în puterea cheii și nu în algoritmul în sine;
trebuie să fie disponibil pentru toți utilizatorii;
trebuie să fie flexibil, poate fi adaptat la diferite tipuri de aplicații;
implementarea algoritmului în dispozitivele electronice ar trebui să fie ieftină;
trebuie să fie eficient;
să prevadă posibilitatea validării algoritmului;
algoritmul și dispozitivele utilizate de acesta pot fi exportate.
Un sistem criptografic are următoarele componente [2]:
- spațiu liber pentru mesaje text, {M};
- spațiu pentru mesaje în text criptat, {C};
- spațiul tastelor, {K};
- familie de transformări de criptare,; unde
- familie de transformări de decriptare, ; unde
Fiecare transformare de criptare / decriptare este definită de un algoritm de criptare, respectiv decriptare.
În literatura de specialitate se utilizează:
În cadrul acestor metode, caracteristica de bază este de a asigura secreția cheii de codare, pe de o parte, și unicitatea cheii de codare / decodare, pe de altă parte. Cu alte cuvinte, cheia de criptare este aceeași pentru decodarea mesajului, adică:
funcţia de criptare
funcţia de decriptare
în care se folosește aceeași cheie K. Funcția E reprezintă operația de criptare (Codificare) și D operația de decriptare (Decodare).
Cu aceste metode, protecția datelor și autentificarea pot fi asigurate.
Conceptul de criptosistem asimetric a fost introdus de Diffie și Hellman [3]
Metoda de criptare propusă constă în utilizarea celor două procese, de codificare și decodare, a două chei pentru operația specifică. Această metodă se mai numește criptare cu cheie publică.
În aceste criptosisteme, fiecare utilizator A are o transformare de criptare publică și o transformare secretă de decriptare, care nu poate fi obținută din transformarea de criptare publică, după cum urmează:
funcţia de criptare
funcţia de decriptare
Mecanismul este prezentat in figura 1
|
|
Figura 1. Mecanismul asimetric
|
Cu aceste metode, protecția datelor și autentificarea pot fi asigurate, în conformitate cu următoarele scheme:
Fie doi utilizatori, A și B, care efectuează un schimb de mesaje codate, utilizatorul A trimite un mesaj codat utilizatorului B, după cum urmează:
- A va codifica mesajul folosind cheia publică a utilizatorului B;
- B va decoda mesajul transmis de utilizatorul A, folosind cheia sa secretă.
1. Pentru protecția informațiilor, schema de criptare este:
A: criptare: , unde PB reprezintă keia publică a utilizatorului B B
B: decriptare: , unde SB repreyintă chiea secretă a utilizatorului B, cu care se efectuează decriptarea. Este obligatoriu să o păstrăm secretă și protejată.
2. Pentru a autentifica informațiile, schema este:
A: semnare informaţie: ,
unde SA reprezintă cheia secretă a utilizatorului A
B: verificare semnătură: , unde PA reprezintă cheia publică a utilizatorului A, cu care se efectuează verificarea semnăturii și care este obligatoriu să fie păstrată secretă şi protejată.
În acest caz, confidențialitatea informațiilor respective nu poate fi garantată.
3. For the protection and authentication of
information the scheme is:
A: criptare: , unde SA reprezintă cheia secretă a utilizatorului A, PB cheia publică a utilizatorului B.
B: decriptare: , unde PA şi SA sunt cheile publice şi secretă a utilizatorului A; PB şi SB sunt cheile publice şi secretă a utilizatorului B, cu care se efectuează autentificarea și protecția informațiilor.
[1] https://www.cryptomathic.com/news-events/blog/differences-between-hash-functions-symmetric-asymmetric-algorithms
[2] https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-57pt1r4.pdf
Zuletzt geändert: Thursday, 8. July 2021, 12:42