Triple DES (3DES/TDEA) — definitsioon, turvalisus ja kasutusnäited
Triple DES (3DES/TDEA) — selgitus, turvalisus ja praktilised kasutusnäited: kuidas töötab, riskid, võtmepikkused ja miks maksesüsteemides jätkuvalt kasutusel.
Triple DES on krüptograafias kasutatav plokk-krüptograafia, mis põhineb klassikalisel Data Encryption Standard (DES) algoritmil, rakendades DES-i protseduuri kolm korda järjest. Triple DES on tuntud ka kui TDES või standardsemalt TDEA (Triple Data Encryption Algorithm). Selle eesmärk oli pakkuda ühtlustatud ja tagasiühilduvat viisi DES-i turvalisuse parandamiseks ilma täiesti uue plokkalgoritmi väljatöötamiseta.
Kuidas Triple DES töötab
Levinud rakenduses kasutatakse kolmetoimingulist skeemi nimega Encrypt–Decrypt–Encrypt (EDE). Sõnumi (P) krüpteerimine kolme erineva võtmega {k1, k2, k3} toimub järgnevalt:
C = E_{k3}(D_{k2}(E_{k1}(P)))
siin E_k tähistab DES-iga krüpteerimist võtmega k ja D_k vastavat dekrüpteerimist. Dekrüpteerimisetapp keskel võimaldab tagasiühilduvust ühe võtmega DES-iga (k1=k2=k3 annab tulemuseks tavalise DESi). On ka kahest võtmet kasutav režiim, kus k1 = k3 (nn 2-key TDES), mis lihtsustab võtmehaldust ja tagab osalise tagasikõlblikkuse vanade DES-süsteemidega.
Võtme pikkused ja tegelik turvalisus
Iga DES-võti on tegelikult 56-bitine (lisaks üks pariteedibitt iga baidi kohta). Seega nominalne võtme pikkus kolme sõltumatu võtme puhul on 3 × 56 = 168 bitti (pariteedibittidega salvestusruum kokku 192 bitti). Kuid krüptanalüütilised meetodid, eriti meet-in-the-middle-rünnakud, vähendavad 3-võtmelise TDESi efektiivset raskust — praktiliselt hinnatakse selle turvalisus umbes 112-bitiseks.
2-key TDES (k1 = k3) annab teoreetilise võtmeploki suuruseks 112 bitti, kuid sellel režiimil on lisaturvariske ja mõningates juhustes vähem tõhus vastupanu valitud- või tuntud-avaliku teksti rünnakutele. Seetõttu käsitlevad standardiseerijad (nt NIST) 2-key TDES-i kui vähem kindlat lahendust ning soovituslik turvatase ei vasta täies mahus esialgsele 112-bitisele ootusele.
Piirangud ja tuntud riskid
- Bloki suurus ja piirmassid: DES/TDES kasutab 64-bitist plokki. See tekitab nn sünteesi- ja korduvuspiiranguid — tõsised probleemid võivad ilmneda, kui krüpteeritakse suuri andmemahtusid ühe võtme all. Sündmuste tõenäosus hakkab oluliselt suurenema ligikaudu 2^(64/2) = 2^32 ploki järel (see on umbkaudu 2^35 baiti ehk ~34 GB), mis seab piirid ohutule andmemahtudele.
- Meet-in-the-middle: kirjeldatud rünnak vähendab 3TDES-i tegelikku tugevust umbes 112 bitini ja mõjutab eriti 2-key varianti.
- Jõudlus: DES-i tuuma olemuselt on tarkvaraline krüpteerimine suhteliselt aeglane võrreldes kaasaegsete algoritmidega; TDES-i kolm korda rakendamine tähendab veelgi suuremat koormust, mistõttu TDES on sageli mõistlikum riistvaralistes kiirendustes.
- Autentitudega režiimid: tänapäevased autentitud krüpteerimisrežiimid nagu AES-GCM on projekteeritud 128-bitise ploki ümber; TDES-i 64-bitine plokk ei sobi hästi kaasaegsete AEAD-režiimidega ja takistab mõnede turvalisuse garantiide rakendamist.
Kus TDES on endiselt kasutusel
Kuigi TDESi kasutamine aeglaselt väheneb ja asendub täiustatud krüpteerimisstandardiga (AES), jätkub TDES-i laialdasem kasutus mõnedes valdkondades:
- EMV ja maksetööstus: kaardimaksete ja IC-kaartide ökosüsteemides (PIN-de kaitse, tehingute autentimine) kasutatakse endiselt palju 2-key TDES-i ning selle ümber on välja töötatud standardid ja rakendused POS-terminalides ja sularahaautomaadi süsteemides.
- Vananenud protokollid ja süsteemid: mõned SSL/TLS-i vanemad ciphersuited (näiteks TLS_RSA_WITH_3DES_EDE_CBC_SHA) ja pärandvõrguteenused võivad veel toetada 3DES-i tagurpidiühilduvuse tõttu.
- Spetsiifilised tööstuslahendused: teatud riistvara ja spetsialiseeritud krüptotoimingud, kus migratsioon on keeruline, võivad jääda TDES-i kasutajaks veel mõnda aega.
Soovitused ja parimad tavad
- Uutes süsteemides ja protokollides ei soovitata TDES-i kasutada — eelistada tuleks AES-i (stabiilne, kiire ning parema plokisuuruse ja tugevamate autentimisrežiimide tugi).
- Kui tuleb TDES-i kasutada pärandühilduvuse tõttu, tuleks valida 3-võtmega variant (kolm sõltumatut võtit) ja piirata andmemahtu ühe võtme all ning rakendada tugevate võtmehalduspoliitikate; vältida 2-key varianti, kui võimalik.
- Kasutada sobivaid töötlemisrežiime ja IV-haldust (näiteks CBC-i puhul juhuslik IV iga seansi või sõnumi jaoks) ning lisada autentimine (MAC või muu AEAD) andmete terviklikkuse tagamiseks.
- Planeerida migratsiooni AES-i — hinnata süsteeme, kus TDES on sisse põimitud (nt makselahendused, sertifikaadid, vanad protokollid) ja koostada üleminekuplaan, et vältida turvariske ja rahvusvaheliste standardite mittejärgimist.
Kokkuvõte
Triple DES oli praktiline ja kiiresti rakendatav lahendus DES-i nõrkuste leevendamiseks, pakkudes tagasiühilduvust ning paremat turvalisust kui ühevõtmeline DES. Kuid tänapäeva krüptograafilistes nõudmistes jääb TDES tagasihoidlikuks: piiratud ploki suurus, suhteliselt halb tarkvaraline jõudlus ja analüütiliste rünnakute mõju teevad temast ajutise ja sageli deja-vananenud valiku. Kui võimalik, tuleks eelistada kaasaegseid algoritme (nt AES) ja autentitud krüpteerimisrežiime, hoides TDES-i pigem pärandi-ühilduvuse spetsialiseeritud kasutusteks (nt osa maksesüsteemide infrastruktuuridest).

Triple DES operatsioon, kus M on tekst, C on salastustekst ja {k1, k2, k3} on kolme krüpteerimisvõtme kogum.
Seotud leheküljed
- DES-X
- Andmete krüpteerimise standard (DES)
- Täiustatud krüpteerimisstandard (AES)
Küsimused ja vastused
K: Mis on Triple DES?
V: Triple DES (TDES või TDEA) on plokkšiffer, mis on loodud andmekaitsestandardi (DES) šifreeringust, kasutades seda kolm korda. See on loodud selleks, et suurendada võtmeruumi ja vältida meet-in-the-middle-rünnakuid, mis on tõhusad kahekordse DES-krüpteerimise vastu.
K: Kui pikk on 3 võtmega TDESi võtmepikkus?
V: 3 võtmega TDESi võtmepikkus on 168 bitti, kusjuures kolm 56-bitist DESi võtit ja pariteedibitid moodustavad kokku 192 bitti.
K: Kui pikk on 2 võtmega TDESi võtme pikkus?
V: 2-klahvilise TDESi võtme pikkus on 112 bitti, kaks 56-bitist DES-võtit ja pariteedibiti, mis teeb kokku 128 bitti.
K: Millist tüüpi rünnakut saab kasutada 2TDESi vastu?
V: 2TDESi saab ära kasutada teatavate valitud-avaliku teksti või tuntud-avaliku teksti rünnakute kaudu. Seetõttu käsitleb NIST seda ainult 80-bitise turvalisusega.
K: Kas Triple DES sobib paremini tarkvara- või riistvaralisse rakendusse?
V: Triple DES kannatab tarkvara puhul aeglase jõudluse all, seega sobib see paremini riistvaralisteks rakendusteks.
K: Kas Triple DES on tänapäeval veel laialdaselt kasutusel?
V: Kuigi Triple DES on suures osas asendatud täiustatud krüpteerimisstandardiga (AES), on see endiselt aktiivne krüptostandard elektrooniliste maksete sektoris, kus jätkatakse sellel põhinevate standardite arendamist ja levitamist.
K: Mida tähendab EMV seoses Triple DESiga?
V: EMV tähendab Europay Mastercard Visa, mis on standard IC-kaartide ("kiipkaardid") ja IC-võimeliste POS-terminalide ja sularahaautomaatide vaheliseks koostööks, mis kasutab laialdaselt 2TDESi.
Otsige