cifru

ce este un cifru?

în criptologie, disciplina preocupată de studiul algoritmilor criptografici, un cifru este un algoritm pentru criptarea și decriptarea datelor.

criptarea cheilor simetrice, numită și criptarea cheilor secrete, depinde de utilizarea cifrelor, care funcționează simetric. Cu algoritmi de criptare simetrică, aceeași cheie de criptare este aplicată datelor în același mod, indiferent dacă obiectivul este de a converti textul clar în text cifrat sau textul cifrat în text clar. Un cifru transformă datele prin prelucrarea caracterelor originale, text simplu sau a altor date în text cifrat. Textul cifrat ar trebui să apară ca date aleatorii.

în mod tradițional, cifrurile foloseau aceste două tipuri principale de transformare:

  1. cifrurile de transpunere păstrează toți biții originali de date într-un octet, dar amestecă ordinea lor.
  2. cifrurile de substituție înlocuiesc secvențe de date specifice cu alte secvențe de date. De exemplu, un tip de substituție ar fi transformarea tuturor biților cu o valoare de 1 la o valoare de 0 și invers.

ieșirea de date din oricare dintre metode se numește text cifrat.

cifrurile moderne permit comunicarea privată în multe protocoale de rețea diferite, inclusiv protocolul Transport Layer Security (TLS) și altele care oferă criptarea traficului de rețea. Multe tehnologii de comunicare, inclusiv telefoane, televiziune digitală și bancomate, se bazează pe cifre pentru a menține securitatea și confidențialitatea.

cum funcționează cifrurile?

un cifru folosește un sistem de reguli fixe-un algoritm de criptare-pentru a transforma textul clar, un mesaj lizibil, în text cifrat, un șir aparent aleatoriu de caractere. Cifrurile pot fi proiectate pentru a cripta sau decripta biți într-un flux, cunoscut sub numele de cifre de flux. Sau pot procesa textul cifrat în blocuri uniforme ale unui număr specificat de biți, cunoscut sub numele de cifruri bloc.

diagrama modului în care funcționează criptarea
algoritmii de criptare aplică o cheie criptografică textului clar.

implementările moderne de cifrare depind de algoritm și de o cheie secretă, care este utilizată de algoritmul de criptare pentru a modifica datele pe măsură ce sunt criptate. Cifrurile care folosesc chei mai lungi, măsurate în biți, sunt mai eficiente împotriva atacurilor cu forță brută. Cu cât lungimea cheii este mai lungă, cu atât sunt necesare mai multe încercări de forță brută pentru a expune textul clar. În timp ce puterea cifrului nu depinde întotdeauna de lungimea cheii, experții recomandă configurarea cifrurilor moderne pentru a utiliza chei de cel puțin 128 biți sau mai mult, în funcție de algoritm și de cazul de utilizare.

o cheie este o parte esențială a unui algoritm de criptare-atât de mult încât, în cifrarea din lumea reală, cheia este păstrată secretă, nu algoritmul. Algoritmii puternici de criptare sunt proiectați astfel încât, chiar dacă cineva cunoaște algoritmul, ar trebui să fie imposibil să descifreze textul cifrat fără a cunoaște cheia corespunzătoare. În consecință, înainte ca un cifru să funcționeze, atât expeditorul, cât și receptorul trebuie să aibă o cheie sau un set de chei.

cifrurile transformă textul clar în text cifrat
cifrurile criptografice sunt utilizate pentru a converti textul cifrat în text clar și înapoi.

cu algoritmi de chei simetrice, aceeași cheie este utilizată pentru criptarea și decriptarea datelor. Algoritmii cheie asimetrici folosesc chei publice și chei private pentru a cripta și decripta datele.

în criptografia asimetrică, cunoscută și sub numele de criptografie cu cheie publică, cheile sunt numere mari care au fost împerecheate împreună, dar nu sunt identice (asimetrice). Perechile de chei includ următoarele:

  • cheia publică poate fi partajată cu toată lumea.
  • cheia privată sau secretă este păstrată secretă.

oricare dintre chei poate fi utilizată pentru a cripta un mesaj; cheia opusă celei utilizate pentru criptarea mesajului este utilizată pentru decriptare.

cheia privată sau secretă a perechii este utilizată de proprietarul perechii de chei pentru a decripta sau cripta date, în timp ce cheia publică este utilizată de oricine dorește să cripteze un mesaj care poate fi decriptat doar de titularul cheii private.

diagrama criptării simetrice vs. criptarea asimetrică
algoritmii de criptare simetrică utilizează o singură cheie atât pentru criptare, cât și pentru decriptare, în timp ce algoritmii de criptare asimetrică utilizează perechi de chei publice/private.

pentru ce se folosesc cifrurile?

cifrurile simetrice sunt cel mai frecvent utilizate pentru a securiza comunicațiile online. Ele sunt, de asemenea, încorporate în multe protocoale de rețea diferite pentru a fi utilizate pentru schimburile de date. De exemplu, Secure Sockets Layer și TLS utilizează cifre pentru a cripta datele stratului de aplicație, în special atunci când sunt utilizate cu HTTP Secure (HTTPS).

rețelele private virtuale care conectează lucrătorii la distanță sau sucursalele la distanță la rețelele corporative utilizează protocoale cu algoritmi cheie simetrici pentru a proteja comunicațiile de date. Cifrurile simetrice protejează confidențialitatea datelor în majoritatea rețelelor Wi-Fi, servicii bancare online și de comerț electronic și telefonie mobilă.

unele protocoale utilizează criptografia asimetrică pentru a cripta și autentifica punctele finale. De asemenea, îl folosesc pentru a asigura schimbul de chei simetrice pentru a cripta datele sesiunii. Aceste protocoale includ următoarele:

  • TLS
  • HTTPS
  • Secure Shell
  • deschideți destul de bine de Confidențialitate
  • Secure/multi-scop Internet Mail extensii

în timp ce criptografie cu cheie publică este considerată mai sigură decât criptarea simetrică, este, de asemenea, mai intensiv de calcul. Din motive de performanță, protocoalele se bazează adesea pe algoritmi cheie simetrici pentru a cripta datele sesiunii.

diferența dintre coduri și cifruri

codurile și cifrurile sunt moduri diferite de a cripta un mesaj. Un cod este o metodă de schimbare a unui mesaj prin înlocuirea fiecărui cuvânt cu un alt cuvânt care are un sens diferit.

pe de altă parte, un cifru convertește mesajul folosind algoritmul său pentru a transforma datele care reprezintă literele și cuvintele din mesaj. Cifrurile sunt mai ușor de implementat și de utilizat cu computerele, deoarece algoritmii sunt automatizați și ușor de programat.

tipuri de cifruri

cifrurile pot fi caracterizate în moduri diferite, inclusiv următoarele:

  • cifrurile bloc criptează blocuri de date de dimensiuni uniforme.
  • cifrurile de flux pot fi aplicate fluxurilor de date care sunt adesea primite și trimise printr-o rețea.

cifrurile pot depinde de tastele tradiționale utilizate direct la textul cifrat sau de criptografia curbei eliptice (ECC). Când ECC este utilizat cu o cheie de 160 de biți, acesta poate oferi securitatea unui cifru tradițional, precum cel utilizat în RSA (Rivest-Shamir-Adleman) criptosistem folosind o cheie de 1.024 biți în lungime.

algoritmii de criptare moderni sunt concepuți pentru a rezista atacurilor chiar și atunci când atacatorul știe ce cifru este utilizat. Din punct de vedere istoric, cifrurile au fost mai puțin sigure împotriva atacurilor, deoarece au fost folosite pentru a codifica textul clar manual și ar putea fi mai ușor analizate și rupte cu puterea computerului.

Exemple de cifruri

unele cifruri istorice cunoscute includ următoarele:

  • Cezar. Acest cifru este atribuit lui Iulius Cezar, despre care se spune că l-a folosit pentru a comunica în siguranță cu generalii săi. Este un simplu cifru de substituție în care fiecare literă din textul clar este deplasată cu un anumit număr de locuri în jos pe alfabet. Numărul de schimb despre care se spune că a fost folosit de Cezar a fost trei. Cifrurile de substituție sunt adesea implementate prin scrierea alfabetului text simplu, cu alfabetul text cifrat scris deasupra literelor text simplu, deplasat de numărul cu care sunt de acord cei care comunică. O schimbare de trei pune litera D deasupra textului clar A, E deasupra B și așa mai departe. Numărul de caractere deplasate este considerat o formă simplă a unei chei.
  • Atbash. Acest cifru este un cifru de substituție în care alfabetul plaintext este mapat pe sine, dar în ordine inversă. Cu alte cuvinte, litera plaintext a este mapată la textul cifrat Z, B este mapată la Y, C La X și așa mai departe. Atbash este numit după primele două și ultimele două litere din alfabetul ebraic. Se crede că a fost folosit de sute de ani.
  • substituție simplă. Acesta a fost folosit și de sute de ani. Înlocuiește fiecare caracter de text clar pentru un alt caracter de text cifrat, rezultând ceea ce este efectiv o cheie de 26 de caractere. Acesta diferă de cifrul Cezar, deoarece alfabetul cifrat este complet amestecat, mai degrabă decât pur și simplu mutat un număr uniform de locuri.
  • Vigen Noxtre. Acest cifru este o formă de substituție polialfabetică, ceea ce înseamnă că se bazează pe substituție folosind mai multe alfabete de substituție. Cifrul Vigen Otrivtre folosește o serie de Cifruri Caesar întrețesute, bazate pe literele unui cuvânt cheie. Textul original este criptat folosind ceea ce este cunoscut sub numele de Piața Vigen Oqutre sau tabelul Vigen Oqutre.
  • substituție Homofonică. Acest cifru de substituție folosește mai multe litere diferite de text cifrat pentru a înlocui litere simple de text simplu. Acest tip de cifru este de obicei mult mai dificil de rupt decât cifrurile standard de substituție.

aceste cifre istorice sunt încă relevante deoarece folosesc diferite componente fundamentale ale cifrurilor moderne, cum ar fi substituirea și transpunerea.

cifrurile pot intra și ieși din modă, în funcție de istoricul lor pentru puterea împotriva atacurilor, precum și de descoperirea de noi vectori de atac. Aflați despre primii pași pentru utilizarea cifrurilor în siguranță, înțelegând elementele de bază ale algoritmilor de criptare a cheilor simetrice.

Leave a Reply