Triplu DES | |
---|---|
Creator | IBM |
publicat | 1978 _ |
Dimensiunea cheii | 112 (2TDES) sau 168 biți (3TDES) |
Dimensiunea blocului | pe 64 de biți |
Numărul de runde | 48 de runde echivalente DES |
Tip de | Rețeaua Feistel |
Triple DES (3DES) este un cifru bloc simetric creat de Whitfield Diffie , Martin Hellman și Walt Tuchmann în 1978 pe baza algoritmului DES pentru a elimina principalul dezavantaj al acestuia din urmă - o lungime mică a cheii (56 de biți), care poate fi crăpat de forță brută . Viteza 3DES este de 3 ori mai mică decât cea a DES, dar puterea criptografică este mult mai mare - timpul necesar pentru criptoanaliza 3DES poate fi de un miliard de ori mai mare decât timpul necesar pentru deschiderea DES. 3DES este folosit mai des decât DES, care este ușor de spart folosind tehnologia actuală (în 1998, Electronic Frontier Foundation , folosind un computer special DES Cracker , a spart DES în 3 zile). 3DES este o modalitate simplă de a aborda deficiențele DES. Algoritmul 3DES se bazează pe DES, deci este posibil să folosiți programe concepute pentru DES pentru a-l implementa. Numele oficial al algoritmului utilizat în standarde este TDEA sau Triple DEA (Triple Data Encryption Algorithm). Cu toate acestea, termenul „3DES” este folosit mai pe scară largă de către vânzătorii, utilizatorii și dezvoltatorii de criptosisteme.
Schema algoritmului 3DES arată ca cea din figură. O versiune simplă a 3DES poate fi reprezentată după cum urmează:
unde , , sunt cheile pentru fiecare pas DES, sunt intrarea care trebuie criptată. Există 3 tipuri de algoritm 3DES:
Cea mai populară variantă a 3DES este DES-EDE3.
La executarea algoritmului 3DES, cheile pot fi alese astfel:
Cea mai sigură opțiune este prima opțiune: lungimea cheii DES este de 56 de biți, iar lungimea lui 3DES este de 3 ori mai mare, adică este egală cu 168 de biți (se folosesc doar 7 biți în fiecare octet de 64 de biți). bit DES, deci lungimea cheii este de fapt de 56 de biți, în loc de 64, iar lungimea cheii 3DES este de 168, nu de 192 de biți).
A doua opțiune este oarecum mai puțin sigură, cu o lungime a cheii de 2 × 56 = 112 biți. Cu toate acestea, această opțiune de criptare este mai sigură decât criptarea convențională dublă DES cu chei și : protejează împotriva atacurilor „ întâlnire în mijloc ”.
A treia opțiune este echivalentă cu DES din punct de vedere al securității: aici lungimea cheii este tot de 56 de biți. Cu algoritmul DES-EDE3, datorită acestei alegeri a cheilor, criptarea (primul pas) și decriptarea (al doilea pas) se anulează reciproc. Această alegere a tastelor nu mai este recomandată de Institutul Național de Standarde și Tehnologie (NIST) [1] și nu este acceptată de ISO/IEC 18033-3.
Fiecare cheie DES este stocată și transmisă ca 8 octeți, fiecare octet în paritate impară [2] , astfel încât setul complet de chei va ocupa 24 de octeți în prima opțiune, 16 în a doua și 8 în a treia.
Ca și în cazul altor blocuri de cifrare, mai multe blocuri de date pot fi criptate și decriptate folosind unul dintre modurile de cifrare , care sunt determinate independent de algoritmul de cifrare bloc în sine. Cu toate acestea, ANSI X9.52 specifică în mod explicit și NIST SP 800-67 până la SP 800-38A [3] , că unele moduri pot fi utilizate numai cu anumite restricții care nu sunt în general necesare. De exemplu, ANSI X9.52 specifică că pentru modul de înlănțuire a blocurilor de text cifrat , vectorul de inițializare trebuie să se schimbe de fiecare dată, în timp ce ISO/IEC 10116 [4] nu necesită acest lucru. FIPS PUB 46-3 și ISO/IEC 18033-3 definesc doar 3DES pentru un singur bloc și nu impun restricții asupra modurilor de criptare ale mai multor blocuri. În timp ce Triple CBC îmbunătățește puterea cifrului, Triple ECB este acum mai frecventă.
3DES cu trei chei diferite are o lungime a cheii de 168 de biți, dar din cauza atacurilor de tip meet-in-the-middle , puterea criptografică efectivă este de doar 112 biți. În varianta DES-EDE c, dimensiunea nominală a cheii este de asemenea de 112 biți. Cu toate acestea, această alegere a cheilor este vulnerabilă la anumite atacuri de text simplu , ceea ce reduce lungimea efectivă a cheii la 80 de biți. Un atac de succes asupra 3DES ar necesita un pic de text simplu cunoscut , pași, cicluri de criptare DES și un pic de memorie [5] . În acest moment, acest lucru nu este practic, iar NIST estimează că algoritmul cu alegerea a trei chei diferite ar trebui să rămână fiabil până în anii 2030.
3DES cu trei chei a fost implementat în multe aplicații orientate web, inclusiv PGP și S /mime . Triple DES este o alternativă destul de populară la DES și este folosită în managementul cheilor ANSI X9.17 și ISO 8732 și PEM (Privacy Enhanced Mail). Industria plăților electronice utilizează 3DES și continuă să dezvolte și să publice în mod activ standarde bazate pe acesta (cum ar fi EMV ). Microsoft OneNote , Microsoft Outlook 2007 și Microsoft System Center Configuration Manager 2012 utilizează 3DES pentru a proteja datele de sistem și de utilizator cu parole. Nu există atacuri criptografice practice cunoscute asupra 3DES.
Cu toate acestea, 3DES intră încet în uz: este înlocuit de noul algoritm AES Rijndael . Rijndael implementat în software este de șase ori mai rapid. Prin urmare, 3DES este mai potrivit pentru implementări hardware. Multe sisteme de securitate continuă să accepte atât 3DES, cât și AES, folosind AES în mod implicit. Deși 3DES poate fi acceptat pentru compatibilitate cu versiunea anterioară , nu mai este recomandat pentru utilizare.
Criptosisteme simetrice | |
---|---|
Cifruri în flux | |
Rețeaua Feistel | |
Rețeaua SP | |
Alte |