Pagina principala » HOWTO » Ce este criptarea și cum funcționează?

    Ce este criptarea și cum funcționează?

    Criptarea are o lungă istorie care datează din momentul în care vechii greci și romani au trimis mesaje secrete prin înlocuirea literelor care erau doar descifrabile cu o cheie secretă. Alăturați-vă pentru o lecție de istorie rapidă și aflați mai multe despre modul în care funcționează criptarea.

    În ediția de astăzi a HTG Explains, vă vom oferi o scurtă istorie a cripțiunii, cum funcționează și câteva exemple de diferite tipuri de criptare - asigurați-vă că verificați și ediția anterioară, unde am explicat de ce atâția geeks urăsc Internetul Explorator.

    Imagine de xkcd, evident.

    Zilele timpurii de criptare

    Grecii antice au folosit o unealtă numită Scytale pentru a-și ajuta să cripteze mesajele mai repede folosind un cifru de transpunere - pur și simplu să înfășoare banda de pergament în jurul cilindrului, să scrie mesajul și apoi când nu ar fi avut sens.

    Această metodă de criptare ar putea fi desigur distrusă cu ușurință, dar este unul dintre primele exemple de criptare utilizate în realitate.

    Julius Caesar a folosit o metodă oarecum similară în timpul său prin schimbarea fiecărei litere a alfabetului la dreapta sau la stânga cu un număr de poziții - o tehnică de criptare cunoscută sub numele de cifru al lui Caesar. De exemplu, folosind exemplul de cifru de mai jos, scrieți "GEEK" ca "JHHN".

    Câmpie: ABCDEFGHIJKLMNOPQRSTUVWXYZ
    Cifra: DEFGHIJKLMNOPQRSTUVWXYZABC

    Dat fiind că numai destinatarul mesajului știa cifrul, ar fi dificil pentru persoana următoare să decodeze mesajul, ceea ce ar părea că este un plictisitor, dar persoana care avea cifrul ar putea să o decodeze ușor și să o citească.

    Alte cipuri simple de criptare, cum ar fi pătratul Polybius, au folosit un cifru polifazic care a enumerat fiecare literă cu pozițiile numerice corespunzătoare în partea superioară și laterală pentru a spune unde a fost poziția literei.

    Folosind o masă ca cea de mai sus, scrieți litera "G" ca "23" sau "GEEK" ca "23 31 31 43".

    Enigma Machine

    În timpul celui de-al doilea război mondial, germanii au folosit mașina Enigma pentru a transmite transmisii criptate înainte și înapoi, care au durat ani înainte ca polonezii să poată sparge mesajele și să dea soluția forțelor aliate, care au contribuit la victoria lor.

    Istoria criptare modernă

    Să facem față: tehnicile moderne de criptare pot fi un subiect extrem de plictisitor, astfel încât, în loc să le explicăm cu cuvintele, am pus împreună o fâșie de benzi desenate care vorbește despre istoria cripțiunii, inspirată de ghidul lui Jeff Moser pentru AES.  Notă: în mod clar nu putem transmite totul despre istoricul criptei într-o benzi desenate.

    În acele zile, oamenii nu au o metodă bună de criptare pentru a-și asigura comunicarea electronică.

    Lucifer a fost numele dat catorva dintre cele mai vechi cifre civile bloc, dezvoltate de Horst Feistel si colegii sai de la IBM.

    Standardul de criptare a datelor (DES) este un cip bloc (o formă de criptare secretă partajată) care a fost selectat de Biroul Național de Standarde ca fiind un standard oficial federal de prelucrare a informațiilor (FIPS) pentru Statele Unite în 1976 și care sa bucurat ulterior de o largă răspândire utilizați la nivel internațional.

    Preocupările legate de securitate și funcționarea relativ lentă a DES în cercetătorii motivați software-ului propun o varietate de modele alternative de blocare a cifrilor, care au început să apară la sfârșitul anilor 1980 și începutul anilor 1990: exemplele includ RC5, Blowfish, IDEA, NewDES, SAFER, CAST5 și FEAL

    Algoritmul de criptare Rijndael a fost adoptat de guvernul SUA ca o criptare standard simetrică-cheie sau Advanced Encryption Standard (AES). AES a fost anunțat de Institutul Național de Standarde și Tehnologie (NIST) ca US FIPS PUB 197 (FIPS 197) pe 26 noiembrie 2001, după un proces de standardizare de 5 ani, în care au fost prezentate și evaluate cincisprezece proiecte concurente înainte ca Rijndael să fie selectat algoritmul de criptare adecvat.

    Performanța algoritmului de criptare

    Mulți algoritmi de criptare există și sunt potriviți pentru diferite scopuri - cele două caracteristici principale care identifică și diferențiază un algoritm de criptare de celălalt sunt capacitatea sa de a asigura datele protejate împotriva atacurilor și viteza și eficiența acestora în acest scop.

    Ca un exemplu bun al diferenței de viteză între diferite tipuri de criptare, puteți utiliza utilitarul de benchmarking integrat în expertul de creare a volumului TrueCrypt - după cum puteți vedea, AES este de departe cel mai rapid tip de criptare puternică.

    Există atât metode de criptare mai lente, cât și mai rapide și toate acestea sunt potrivite pentru scopuri diferite. Dacă încercați pur și simplu să decriptați o cantitate mică de date atât de des, vă puteți permite să utilizați cea mai puternică criptare posibilă sau chiar să o criptați de două ori cu diferite tipuri de criptare. Dacă aveți nevoie de viteză, probabil că doriți să mergeți cu AES.

    Pentru mai multe informații despre benchmarkingul diferitelor tipuri de criptare, consultați un raport de la Universitatea Washington din St Louis, unde au făcut o tona de testare pe diferite rutine și le-a explicat totul într-o descriere foarte geeică.

    Tipuri de criptare modernă

    Toți algoritmi de criptare fantezie despre care am vorbit mai devreme sunt folosiți în principal pentru două tipuri diferite de criptare:

    • Chei algoritmi simetrici utilizați chei de criptare similare sau identice atât pentru criptare, cât și pentru decriptare.
    • Chei algoritmi asimetrici utilizați chei diferite pentru criptare și decriptare - aceasta este, de obicei, denumită Cryptography public-key.

    Cheie criptată simetrică

    Pentru a explica acest concept, vom folosi metafora serviciului poștal descrisă în Wikipedia pentru a înțelege cum funcționează algoritmii cheie simetrici.

    Alice își pune mesajul secret într-o cutie și blochează cutia folosind un lacăt la care are o cheie. Apoi ea trimite casetei lui Bob prin poșta obișnuită. Când Bob primește caseta, el folosește o copie identică a cheii lui Alice (pe care a obținut-o cumva anterior, poate printr-o întâlnire față în față) pentru a deschide caseta și a citi mesajul. Bob poate folosi același lacăt pentru a-și expedia răspunsul secret.

    Metodele algoritmice simetrice pot fi împărțite în șiruri de fluxuri și în cipuri de blocare a cipurilor de flux, care criptează biții mesajului unul câte unul, iar blocurile de cifru iau un număr de biți, adesea în blocuri de câte 64 de biți, și le criptează ca o singură unitate. Există o mulțime de algoritmi diferiți pe care îi puteți alege - cei mai populari și respectați algoritmi simetrici includ Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, TDES și IDEA.

    Criptare asimetrică

    Într-un sistem cheie asimetric, Bob și Alice au lacăte separate, în loc de lacătul unic cu chei multiple din exemplul simetric. Notă: acesta este, bineînțeles, un exemplu extrem de simplificat pentru modul în care funcționează cu adevărat, ceea ce este mult mai complicat, dar veți obține ideea generală.

    În primul rând, Alice îi cere lui Bob să-i trimită lacătul deschis prin e-mail, păstrându-și cheia pentru el. Când Alice o primește, o folosește pentru a bloca o cutie care conține mesajul ei și trimite caseta încuiată lui Bob. Bob poate apoi să deblocheze caseta cu cheia și să citească mesajul de la Alice. Pentru a răspunde, Bob trebuie să obțină lacătul deschis al lui Alice pentru a bloca caseta înainte să o trimită înapoi.

    Avantajul critic într-un sistem cheie asimetric este că Bob și Alice nu trebuie să trimită o copie a cheilor între ele. Acest lucru împiedică o terță parte (poate, de exemplu, un lucrător poștal corupt) să copieze o cheie în timp ce se află în tranzit, permițând terței părți să spioneze toate mesajele viitoare trimise între Alice și Bob. În plus, dacă Bob ar fi fost fără griji și ar fi permis copiilor să copieze a lui cheie, mesajele lui Alice lui Bob ar fi compromise, dar mesajele lui Alice către alte persoane ar rămâne secret, deoarece ceilalți oameni ar fi furnizat lacăte diferite pentru Alice să le folosească.

    Criptarea asimetrică utilizează chei diferite pentru criptare și decriptare. Destinatarul mesajului creează o cheie privată și o cheie publică. Cheia publică este distribuită între expeditorii mesajelor și utilizează cheia publică pentru a cripta mesajul. Destinatarul utilizează cheia lor privată orice mesaje criptate care au fost criptate utilizând cheia publică a destinatarului.

    Există un avantaj major pentru a face criptarea în acest fel compara cu criptarea simetrică. Nu trebuie să trimitem nimic secret (cum ar fi cheia noastră de criptare sau parola) pe un canal nesigur. Cheia dvs. publică merge în lume - nu este secretă și nu trebuie să fie. Cheia dvs. privată poate rămâne confortabilă și confortabilă pe computerul personal, unde l-ați generat - nu trebuie niciodată trimisă prin e-mail ori citit de atacatori.

    Cum criptarea asigură comunicarea pe Web

    De mai mulți ani, protocolul SSL (Secure Sockets Layer) asigură securizarea tranzacțiilor pe web utilizând criptarea între browserul dvs. web și un server web, protejându-vă de oricine care snoopă în rețea în mijloc.

    SSL în sine este conceptual destul de simplu. Începe atunci când browserul solicită o pagină sigură (de obicei https: //)

    Serverul web trimite cheia publică cu certificatul său.

    Browserul verifică dacă certificatul a fost emis de o parte de încredere (de obicei un CA rădăcină de încredere), că certificatul este încă valabil și că certificatul are legătură cu site-ul contactat.

    Browserul folosește apoi cheia publică pentru a cripta o cheie de criptare simetrică aleatorie și o trimite pe server cu URL-ul criptat necesar, precum și alte date http criptate.

    Serverul web decriptează cheia simetrică de criptare utilizând cheia privată și utilizează cheia simetrică a browserului pentru a decripta datele URL și http.

    Serverul web trimite înapoi documentul html solicitat și datele http criptate cu cheia simetrică a browserului. Browserul decriptează datele http și documentul html utilizând cheia simetrică și afișează informațiile.

    Și acum puteți cumpăra cu siguranță acel element eBay pe care nu aveați nevoie.

    Ai învățat ceva?

    Dacă ați reușit acest lucru, suntem la sfârșitul călătoriei noastre lungi de înțelegere a cripțiunii și un pic de funcționare - începând cu primele zile de criptare cu grecii și romani, creșterea lui Lucifer și, în sfârșit, cum SSL folosește criptarea asimetrică și simetrică pentru a vă ajuta să cumpărați iepurașul roz pufos pe eBay.


    Suntem fanii mari ai criptare aici la How-To Geek și am acoperit o mulțime de modalități diferite de a face lucruri precum:

    • Noțiuni de bază cu TrueCrypt (pentru a vă securiza datele)
    • Adăugați criptarea automată a site-urilor web în Firefox
    • BitLocker To Go criptează unitățile flash portabile în Windows 7
    • Cum să vă asigurați PC-ul Linux prin criptarea unității hard disk
    • Adăugați opțiunile de criptare / decriptare în Windows 7 / Vista Faceți clic dreapta pe meniu
    • Noțiuni de bază cu TrueCrypt Drive Encryption pe Mac OS X

    Desigur, criptarea este un subiect prea complicat pentru a explica cu adevărat totul. Mi-a fost dor de ceva important? Simțiți-vă liber să puneți niște cunoștințe despre cititorii voștri în comentarii.