3DES

De la Wikipedia, enciclopedia liberă

Salt la: Navigare, căutare
Schemă de principiu a funcţionării 3DES

În criptografie, 3DES, numit şi Triplu DES (în engleză Triple DES) este un cifru pe blocuri format pe baza DES, prin aplicarea acestuia de trei ori.

[modifică] Algoritm

Când s-a descoperit că cheile pe 56 de biţi folosite de DES nu sunt suficiente pentru a proteja împotriva atacurilor cu forţă brută, 3DES a fost ales ca modalitate simplă de a mări spaţiul cheilor fără nevoia de a trece la un nou algoritm. Utilizarea a trei paşi este esenţială pentru a evita atacurile meet-in-the-middle care sunt eficiente împotriva criptării duble cu DES. Mulţimea funcţiilor de criptare DES cu toate cheile posibile nu formează cu operaţiunea de compunere a funcţiilor o structură matematică de grup;[1] dacă ar fi fost aşa, construcţia 3DES ar fi fost echivalentă cu o operaţiune DES şi astfel, la fel de nesigură ca aceasta.

Cea mai simplă variantă de 3DES funcţionează astfel: DES(k3;DES(k2;DES(k1;M))), unde M este blocul în clar iar k1, k2, şi k3 sunt cheile DES. Această variantă este cunoscută sub notaţia EEE deoarece toate cele trei operaţiuni efectuate cu cheile sunt criptări. Pentru a simplifica interoperabilitatea între DES şi 3DES, pasul din mijloc se înlocuieşte de obicei cu decriptarea (modul EDE): DES(k3;DES-1(k2;DES(k1;M))) şi astfel o singură criptare DES cu cheia k poate fi reprezentată ca 3DES-EDE cu cheile k1 = k2 = k3 = k. Alegerea decriptării pentru pasul al doilea nu afectează securitatea algoritmului.

[modifică] Securitatea

În general, 3DES cu trei chei diferite are o lungime a cheii de 168 de biţi (cu biţii de paritate, 192): trei chei DES pe 56 de biţi, dar, datorită atacurilor meet-in-the-middle securitatea efectivă pe care o furnizează este de doar 112 biţi. O variantă, numită 3DES cu două chei, foloseşte k1 = k3, reducând astfel lungimea cheii la 112 biţi şi lungimea de sticare la 128 de biţi. Totuşi, acest mod de funcţionare este susceptibil la unele atacuri cu text clar ales sau cu text clar cunoscut[2][3] şi astfel este considerat de NIST ca având securitate echivalentă cu doar 80 de biţi[4].

Cel mai eficient atac asupra 3DES cu trei chei necesită aproximativ 232 texte clare cunoscute, 2113 paşi, 290 criptări DES individuale, şi 288 vlocuri de stocare[5] Acesta este un volum nepractic şi NIST consideră criptarea 3DES cu 3 chei utilizabilă până în 2030.[4] Dacă atacatorul caută să descopere oricare din multiplele chei criptografice, există un atac eficient din punct de vedere spaţial care descoperă una din 228 chei, dacă se dau câteva texte clare alese pentru fiecare cheie, efectuând 284 operaţiuni de criptare[6].

[modifică] Note

  1. ^ Keith W. Campbell, Michael J. Wiener: DES is not a Group. CRYPTO 1992: pp512–520
  2. ^ Ralph Merkle, Martin Hellman: Despre securitatea criptării multiple (PDF), Comunicări ACM, Vol 24, Nr 7, pp 465–467, Iulie 1981.
  3. ^ Paul van Oorschot, Michael J. Wiener , Un atac cu text clar cunoscut asupra criptării triple cu două chei, EUROCRYPT'90, LNCS 473, 1990, pp 318–325.
  4. ^ a b NIST, Recommendation for Key Management—Part 1: general (PDF), Special Publication 800-57.
  5. ^ Stefan Lucks: Attacking Triple Encryption (PDF), Fast Software Encryption 1998, pp 239–253.
  6. ^ Eli Biham: How to Forge DES-Encrypted Messages in 228 Steps (PostScript), 1996.
Unelte personale