Criptare simetrică

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Reprezentarea schematică simplificată a criptografiei simetrice.

Criptografia simetrică (sau criptografia cu cheie privată ) este o tehnică de criptare . Reprezintă o metodă simplă de criptare a textului simplu, în care cheia de criptare este aceeași cu cheia de decriptare, făcând algoritmul de criptare foarte eficient și simplu de implementat. Cu toate acestea, presupune că cele două părți au deja cheile, o cerere care nu face posibilă schimbul de chei cu acest tip de algoritmi. Schimbul are loc prin algoritmi asimetrici sau cu cheie publică, în general mai complexi atât pentru implementare, cât și pentru executare, dar care permit acest schimb într-un mod sigur. După aceea, comunicația va fi criptată folosind doar algoritmi cu cheie simetrică pentru a asigura o comunicare sigură, dar rapidă.

Operațiune

În acest tip de algoritmi se presupune că ambele părți știu deja cheia cu care să cripteze și decripteze mesajul. Expeditorul are un mesaj (PlainText sau text simplu). Expeditorul criptează mesajul cu cheia folosind un algoritm de criptare simetric numit . Mesajul rezultat va fi (CypherText sau mesaj criptat). În formule devine:

În acest moment, destinatarul primește un mesaj criptat pe care reușește să îl decripteze, deoarece este în posesia cheii private. Acum receptorul aplică algoritmul de decriptare cu aceeași cheie pe care a folosit-o expeditorul pentru a cripta textul. Devine:

Dacă un atacator a interceptat mesajul de-a lungul suportului de comunicare, acesta va avea mesajul criptat, dar nu cheia care a fost schimbată în siguranță de către cei doi interlocutori. Dacă atacatorul dorește să citească mesajul criptat, poate folosi doar metode de decriptare care necesită abilități de calcul ridicate.

În cazul unei comunicări reale, această conversație este criptată folosind un algoritm de cheie publică, mai complex, dar care nu necesită nicio transmitere a cheii pe suportul de comunicație.

Componente comune în diferite implementări

Printre diferiții algoritmi de criptare putem găsi câteva operații obișnuite, deoarece acestea adaugă în general mai multă securitate textului cifrat și sunt operații rapide pentru mașină.

De multe ori aceeași operație se repetă de mai multe ori, referindu-se la acești pași ca cicluri sau runde. De exemplu, în AES aceeași rutină se repetă de 10 ori. În DES, textul simplu este criptat de 16 ori împreună cu cheia înainte de terminare. Odată ce algoritmul a fost proiectat, este foarte ușor să-l repetați, făcând mai complexă opera de decriptare forțată folosind forța brută . Dacă algoritmul de decriptare este bine conceput și nu se pot obține informații despre cheie, aceasta este singura metodă prin care este posibilă decriptarea mesajului criptat.

Printre diferiții algoritmi simetrici putem recunoaște câțiva parametri standard, cum ar fi lungimea cheii și dimensiunea blocului .

Lungimea cheii este măsurată în biți și are valori cuprinse între 32 biți și 512 biți. În general, lungimea cheii este o valoare fixă, deși există câțiva algoritmi, cum ar fi AES, care utilizează lungimi variabile.

Fiecare algoritm încearcă, în general, să cripteze un șir de biți printr-o cheie într-un alt șir de biți de aceeași lungime. Lungimea acestui șir este egală cu dimensiunea blocului . Algoritmii mai vechi aveau această valoare de 64 de biți în medie. Astăzi sunt preferate dimensiunile pe 128 de biți.

O problemă care afectează dimensiunea blocului este paradoxul zilei de naștere care eliberează informații despre cheie ori de câte ori are loc o coliziune. Putem lua rădăcina pătrată a tuturor combinațiilor posibile doar ca sigură. De exemplu, cu o dimensiune de 64 de biți, s-ar genera combinații posibile, le putem folosi doar înainte de a începe să dezvăluie informații despre cheie.

Blocați metodele de cifrare a cifrelor

În general, dimensiunea blocului aleasă are aceeași lungime cu cheia, deoarece este ușoară pentru implementarea unui algoritm. Cu toate acestea, este bine să acordați atenție unor metode care pot compromite securitatea algoritmului. În următorii algoritmi identificăm:

  • este -a cifra a tastei;
  • este -alea cifră a textului simplu;
  • este -alea cifră a textului cifrat.

Cu unde este indică dimensiunea blocului și lungimea cheii.

Carte electronică a codurilor (BCE)

Este cea mai simplă implementare, unde singurul lucru care ascunde textul simplu este o figură cheie. Această metodă se dovedește a fi la fel de simplă pe cât de nesigură. De fapt, este suficient ca atacatorul să colecteze suficiente mostre pentru a descoperi cheia. Cifrul lui Cezar se bazează pe această metodă.

Înlănțuire în blocuri cifrate (CBC)

În această metodă, se adaugă un factor aleatoriu prin inserarea cifrei criptate anterior în algoritm, mai precis, în timp ce se efectuează un XOR, indicat de simbolul înainte de a cripta textul. În acest fel, nu există o asociere univocă între text cheie și text clar, dar se adaugă dependența de cifra anterioară. Prin inserarea dependenței de cifra anterioară, creează necesitatea de a adăuga un element pentru a cripta prima cifră a blocului, numit vectorul de inițializare (IV în formule).

Cipher Feed-Back (CFB)

La fel ca CBC, dar operația XOR în text simplu se efectuează după criptare. Cheia este mai întâi criptată cu cifra anterioară sau vectorul de inițializare în cazul primei cifre. În comparație cu CBC, dependența de cifra anterioară este întotdeauna prezentă, dar încă suferă de problema maleabilității , chiar dacă numai local la o singură cifră.

Metode de criptare a fluxului de cifre

În loc să lucreze la un bloc de cifre cu o cheie de aceeași dimensiune, cheia este combinată cu întregul mesaj, de obicei prin operații XOR . RC4 se bazează pe această metodă.

Există două tipuri de algoritmi:

  • sincron , în care starea este menținută de algoritm, dar nu este legată nici de textul clar, nici de textul cifrat;
  • autosincronizare , în care starea este menținută prin obținerea de informații din text.

Algoritmi

DES (Standard de criptare date)

Schema DES

DES este unul dintre cei mai renumiți algoritmi cu cheie simetrică, publicat în 1976 de IBM și ales ca standard pentru Standardul federal de procesare a informațiilor . Ulterior a devenit standard până când a fost decriptat în 1997 în 3 zile de calcul. În anul următor, a fost nevoie de o singură zi prin utilizarea unui cluster de computere și odată cu avansarea, timpii sunt reduși în continuare. Succesorul său a fost 3DES . Folosește o cheie de 56 de biți și funcționează pe blocuri de 64 de biți.

3DES (Triple DES)

Diagrama 3DES

Când DES nu mai era sigur, s-a căutat o metodă care să mențină mecanica DES, dar să permită o cheie mai lungă. În acest algoritm, criptarea triplă este realizată folosind 3 chei DES standard de 56 de biți, obținând o cheie de 168 de biți. De asemenea, este posibil să se inverseze al doilea pas, care este de a efectua o criptare și o decriptare. Cu toate acestea, nu schimbă securitatea generală a algoritmului.

Chiar și acest algoritm nu mai este utilizat astăzi, deoarece tehnologiile evoluează și mulți algoritmi de criptare nu sunt suficient de puternici pentru a rezista capacităților de calcul ridicate ale computerelor moderne, în special odată cu apariția GPGPU-urilor . 3DES a cedat locul către AES , noul standard până acum.

AES (Advanced Encryption Standard)

Schema AES

În 1999, diferiți algoritmi candidați păreau să devină standardul pentru criptografia simetrică. Acești candidați au fost MARS propuși de IBM, RC6, Serpent, Twofish și Rijndael. Toți acești algoritmi au fost testați pentru eficiență și siguranță pe diferite arhitecturi, atât hardware, cât și software. Printre aceștia au primit feedback pozitiv Rijndael care în 2000 a devenit noul standard sub numele de AES. A fost angajat pentru prima dată de guvernul SUA și după aceea succesul său a devenit global.

AES funcționează pe blocuri de dimensiuni fixe de 128 biți [1] . Are o cheie de 128 de biți, dar cheile mai lungi de 192 și 256 de biți pot fi utilizate pentru a cripta documente deosebit de importante.

Notă

  1. ^ Anunțarea ADVANCED ENCRYPTION STANDARD (AES) , 26 noiembrie 2001 (arhivat din arhiva originală ) .

Bibliografie

Elemente conexe

Controlul autorității GND ( DE ) 4317451-6