3DES (Trigubas DES / TDEA) — apibrėžimas, veikimas ir saugumas

Kriptografijoje trigubas DES yra blokinis šifras, sukurtas iš duomenų šifravimo standarto (DES) šifro taikant jį tris kartus. Trigubas DES taip pat vadinamas TDES arba standartiniu pavadinimu TDEA (Triple Data Encryption Algorithm).

Veikimo principas

Paprasčiausias ir dažniausiai naudojamas 3DES režimas yra EDE (Encrypt–Decrypt–Encrypt):

C = E_{k3}(D_{k2}(E_{k1}(P))),

kur P – žinutė (plaintext), C – šifruotas tekstas (ciphertext), E – DES šifravimo operacija ir D – DES dešifravimo operacija. Toks modelis leidžia išlaikyti atgalinį suderinamumą su vienkartiniu DES: jeigu k1 = k2 = k3, 3DES tampa ekvivalentus paprastam DES.

Raktų ilgis ir saugumas

  • DES naudoja 56 bitų slaptą raktą (prie jo pridedami pariteto bitai — viso saugojimo ilgis 64 bitai vienam raktui).
  • 3 raktų TDES (k1, k2, k3) nominalus raktų ilgis yra 3 × 56 = 168 bitų; su pariteto bitais tai atitinka 192 bitų saugojimo ilgį.
  • Dėl meto-in-the-middle (meet-in-the-middle) tipo atakų efektyvus 3 raktų TDES saugumas praktiškai yra mažesnis — dažniausiai nurodoma, kad jo apsaugos stiprumas atitinka maždaug 112 bitų.
  • 2 raktų TDES versijoje naudojamas k1 = k3 (t. y. du nepriklausomi 56 bitų raktai), todėl nominalus raktas yra 112 bitų (su pariteto bitais — 128 bitų saugojimas). Tačiau dėl konstruktinių ypatybių ir galimų atakų saugumas čia yra ženkliai ribotesnis, todėl standartus nustatančios organizacijos rekomenduoja šį režimą vengti.

Praktiniai apribojimai ir žinomi pavojai

  • Dėl DES dizaino 3DES naudoja 64 bitų blokus. Tai reiškia, kad ilgose sesijose ar didelėse duomenų apimtyse atsiranda didesnė tikimybė bloko pasikartojimui (birthday attack). 64 bitų blokų dydis riboja praktinį saugumą ir leidžia išnaudoti atakas, tokias kaip Sweet32 (atrasta 2016 m.), kai užpuolėjas po pakankamai daug užkoduotų blokų gali atakuoti šifruotą ryšį ir atskleisti duomenis.
  • Be to, egzistuoja pažangios kriptanalizės ir atakų kombinacijos (pvz., meet-in-the-middle), kurios sumažina efektyvų saugumo lygį, palyginus su nominaliu rakto ilgiu.
  • 3DES nėra efektyvus programinėje įrangoje: apdorojimas vyksta lėčiau nei modernių algoritmų (pvz., AES). Todėl 3DES geriau tinka aparatinei įrangai arba sistemoms, kur yra specialūs šifravimo greitinimo įtaisai.

Standartai, naudojimas ir migracija

TDES ilgą laiką buvo priimtinas sprendimas siekiant pratęsti DES gyvavimo laiką be visiško algoritmo pakeitimo. Tačiau moderniai kriptografijai persikėlus prie saugesnių sprendimų, 3DES pamažu nebenaudojamas ir dalis standartų bei rekomendacijų ragina prie jo negrįžti.

Viena didelė išimtis yra elektroninių mokėjimų pramonė, kur 2TDES vis dar plačiai taikomas ir aptariamas standartuose (pvz., EMV, IC kortelių tarpusavio sąveikos standartas — dar vadinamas "lustinėmis kortelėmis", ir IC palaikantys POS terminalai bei bankomatai). Dėl sudėtingų suderinamumo reikalavimų ir plačiai išplitusios infrastruktūros šios srities standartai ilgai išlaikė 3DES palaikymą.

Tačiau standartų institucijos ir saugumo bendruomenė rekomenduoja pereiti prie modernesnių algoritmų, tokių kaip pažangusis šifravimo standartas (AES), ir naudoti saugius šifravimo režimus (pvz., AEAD režimus kaip AES-GCM ar AES-CCM). Daugelis protokolų (pvz., TLS) jau stabdo arba visiškai atsisako 3DES šifrų rinkinį, kad sumažintų rizikas, susijusias su 64 bitų bloku ir kitomis pažeidžiamybėmis.

Išvados

  • 3DES (TDEA/TDES) yra istoriškai svarbus sprendimas, leidęs pratęsti DES naudojimą be naujo algoritmo kūrimo.
  • Trijų nepriklausomų raktų režimas suteikia didesnį nominalų raktų ilgį (168 bitų), bet realus saugumas yra ribotas dėl pažangių atakų (efektyviai ~112 bitų).
  • Dviejų raktų versija turi mažesnį saugumo rezervą ir yra mažiau rekomenduojama standartų kūrėjų.
  • Dėl lėtesnio veikimo programinėje įrangoje, 64 bitų bloko dydžio ir žinomų atakų rekomenduojama pereiti prie AES ir kitų modernesnių algoritmų bei šifravimo režimų.

Jeigu jums reikia techninių detalių apie 3DES implementaciją, atakų sudėtingumą ar rekomendacijas migracijai prie AES, galiu pateikti konkretų veiksmų planą ar nuorodas į oficialius dokumentus.

Trigubo DES operacija, kai M - atviras tekstas, C - šifruotas tekstas, o {k1, k2, k3} - trijų šifravimo raktų rinkinys.Zoom
Trigubo DES operacija, kai M - atviras tekstas, C - šifruotas tekstas, o {k1, k2, k3} - trijų šifravimo raktų rinkinys.

Susiję puslapiai

Klausimai ir atsakymai

K: Kas yra "Triple DES"?


A: Triple DES (TDES arba TDEA) yra blokinis šifras, sukurtas iš duomenų šifravimo standarto (DES) šifro, naudojant jį tris kartus. Jis buvo sukurtas siekiant padidinti rakto erdvę ir užkirsti kelią "meet-in-the-middle" atakoms, kurios veiksmingos prieš dvigubą DES šifravimą.

Klausimas: Kokio ilgio yra 3 raktų TDES rakto ilgis?


A: 3 raktų TDES rakto ilgis yra 168 bitai, trys 56 bitų DES raktai ir pariteto bitai - bendras saugojimo ilgis 192 bitai.

K: Koks yra 2 raktų TDES rakto ilgis?


A: 2 raktų TDES rakto ilgis yra 112 bitų, du 56 bitų DES raktai ir pariteto bitai, o bendras saugojimo ilgis yra 128 bitai.

K: Kokio tipo ataka gali būti naudojama prieš 2TDES?


A: 2TDES galima pasinaudoti tam tikromis pasirinkto teksto arba žinomo teksto atakomis. Todėl NIST mano, kad jo saugumas yra tik 80 bitų.

K.: Ar Triple DES geriau tinka programinei, ar aparatinei įrangai įgyvendinti?


A.: Dėl savo konstrukcijos Triple DES programinė įranga veikia lėtai, todėl jis geriau tinka aparatinei įrangai įgyvendinti.

K: Ar Triple DES vis dar plačiai naudojamas šiandien?


A. Nors Triple DES iš esmės pakeitė Advanced Encryption Standard (AES), jis tebėra aktyvus kriptografinis standartas elektroninių mokėjimų pramonėje, kur toliau kuriami ir platinami juo pagrįsti standartai.

K.: Ką reiškia EMV, kai kalbama apie Triple DES?


A: EMV reiškia "Europay Mastercard Visa" (Europay Mastercard Visa) - tai IC kortelių ("lustinių kortelių") ir IC galinčių naudoti POS terminalų bei bankomatų sąveikos standartas, kuriame plačiai naudojamas 2TDES.

AlegsaOnline.com - 2020 / 2025 - License CC3