Chipertextul este textul criptat transformat din textul în clar cu ajutorul unui algoritm de criptare. Textul cifrat nu poate fi citit până când nu a fost transformat în text în clar (decriptat) cu ajutorul unei chei. Cifrul de decriptare este un algoritm care transformă textul cifrat înapoi în text în clar.
Termenul cifru este uneori folosit ca sinonim pentru cifru. Cu toate acestea, el se referă mai degrabă la metoda de criptare decât la rezultat.
Tipuri de cifrare
Există diverse tipuri de cifrare, printre care:
- Cifre de substituție. Înlocuiesc biți, caractere sau blocuri de caractere din textul în clar cu biți, caractere sau blocuri de caractere alternative pentru a produce textul cifrat. Un cifru de substituție poate fi monoalfabetic sau polialfabetic:
- Se utilizează un singur alfabet pentru a cripta întregul mesaj în clar. De exemplu, dacă litera A este cifrată ca fiind litera K, acest lucru va fi la fel pentru întregul mesaj.
- O substituție mai complexă care utilizează un alfabet mixt pentru a cripta fiecare bit, caracter sau bloc de caractere dintr-un mesaj în clar. De exemplu, litera A poate fi codificată ca litera K pentru o parte a mesajului, dar mai târziu poate fi codificată ca litera W.
- Cifre de transpunere. Spre deosebire de cifrele de substituție care înlocuiesc literele cu alte litere, cifrele de transpoziție păstrează literele la fel, dar le rearanjează ordinea conform unui algoritm specific. De exemplu, într-un cifru de transpunere columnar simplu, un mesaj poate fi citit pe orizontală, dar va fi scris pe verticală pentru a produce textul cifrat.
- Cifre poligrafice. Înlocuind o literă cu o altă literă, un cifru poligrafic efectuează substituiri cu două sau mai multe grupuri de litere. Acest lucru maschează distribuția de frecvență a literelor, ceea ce face ca atacurile de analiză a frecvenței să fie mult mai dificile.
- Cifre de permutare. În acest cifru, pozițiile ocupate de textul în clar sunt decalate într-un sistem regulat, astfel încât textul cifrat să constituie o permutare a textului în clar.
- Criptografie cu cheie privată. În acest cifru, emițătorul și receptorul trebuie să aibă o cheie partajată în prealabil. Cheia partajată este păstrată secretă față de toate celelalte părți și este utilizată pentru criptare, precum și pentru decriptare. Această criptografie este cunoscută și sub denumirea de „algoritm cu cheie simetrică.”
- Criptografie cu cheie publică. În această cifrare, două chei diferite – cheia publică și cheia privată – sunt utilizate pentru criptare și decriptare. Expeditorul folosește cheia publică pentru a efectua criptarea, dar cheia privată este ținută secretă față de receptor. Acesta este, de asemenea, cunoscut sub numele de „algoritm cu cheie asimetrică.”
Utilizări ale cifrului
Cifrele asimetrice, care sunt utilizate de obicei pentru a securiza comunicațiile online, sunt încorporate în multe protocoale de rețea diferite pentru a fi utilizate la criptarea schimburilor. De exemplu, Transport Layer Security (Securitatea stratului de transport) utilizează cifre pentru a cripta datele din stratul de aplicație.
Rețelele private virtuale care conectează lucrătorii la distanță sau sucursalele la distanță în rețelele corporative utilizează protocoale cu cifre simetrice pentru a proteja comunicațiile de date. Cifrele simetrice protejează confidențialitatea datelor în majoritatea rețelelor Wi-Fi, în serviciile bancare online, în serviciile de comerț electronic și în telefonia mobilă.
Alte protocoale, inclusiv Secure Shell, OpenPGP și Secure/Multipurpose Internet Mail Extensions utilizează criptografia asimetrică pentru a cripta și autentifica punctele finale, dar și pentru a schimba în siguranță cheile simetrice pentru a cripta datele sesiunii. Din motive de performanță, protocoalele se bazează adesea pe cifre pentru a cripta datele sesiunii.
Atacurile cu text cifrat
Atacurile cu text cifrat cunoscut, sau atacul numai cu text cifrat (COA), este o metodă de atac utilizată în criptanaliză atunci când atacatorul are acces la un set specific de text cifrat. Cu toate acestea, în această metodă, atacatorul nu are acces la textul în clar corespunzător, adică la datele care sunt transmise sau stocate necriptat. COA reușește atunci când textul în clar corespunzător poate fi determinat dintr-un set dat de text cifrat. Uneori, cheia care este folosită pentru a cripta textul cifrat poate fi determinată în urma acestui atac.
Într-un atac de tip „chosen ciphertext attack” (CCA), atacatorul poate face victima (care cunoaște cheia secretă) să decripteze orice text cifrat și să trimită înapoi rezultatul. Analizând textul cifrat ales și textul în clar corespunzător pe care îl primește, atacatorul încearcă să ghicească cheia secretă folosită de victimă. Scopul CCA este de a obține informații care diminuează securitatea schemei de criptare.
Atac cu chei corelate este orice formă de criptanaliză în care atacatorul poate observa funcționarea unui cifru sub mai multe chei diferite ale căror valori atacatorul nu le cunoaște inițial. Cu toate acestea, există o anumită relație matematică care leagă cheile pe care atacatorul le cunoaște.
Exemplu de cifrare
Unul dintre cele mai vechi și mai simple coduri este cifrul Caesar, care utilizează un algoritm cu cheie simetrică. Cheia acționează ca un secret partajat între două (sau mai multe părți care poate fi folosit pentru a trimite informații secrete pe care nimeni nu le poate citi fără o copie a cheii.
Chiarful Caesar este un cifru de substituție în care fiecare literă din textul în clar este „deplasată” cu un anumit număr de locuri în josul alfabetului. De exemplu, cu o deplasare de 1, A ar fi B, B ar fi înlocuit cu C, etc. Metoda poartă numele lui Iulius Caesar, despre care se spune că ar fi folosit-o pentru a comunica cu generalii săi.
Iată un exemplu al etapelor de criptare și decriptare implicate de cifrul Caesar. Textul care trebuie criptat este „apărați zidul estic al castelului”, cu un shift (cheie) de 1.
- Plaintext: apărați zidul estic al castelului
- Chipertext: efgfoe uif fbtu xbmm pg uif dbtumf