Triple DES (ofta kallat 3DES, TDES eller mer formellt TDEA) är ett blockchiffer byggt genom att återanvända DES-chiffret flera gånger. I grunden krypteras datablocket tre gånger med DES—vanligtvis i så kallat EDE-läge (Encrypt–Decrypt–Encrypt)—för att öka den till synes tillgängliga nyckelstyrkan och samtidigt behålla bakåtkompatibilitet med äldre DES-baserade system. I kryptografiska termer kan man beskriva Triple DES som ett sätt att ta ett befintligt blockchiffer som implementeras med DES och göra det svårare att knäcka utan att byta till en helt ny algoritm; läs mer under kryptografin.
Hur Triple DES fungerar
Den vanliga formen av TDES använder tre steg: kryptera med k1, dekryptera med k2, och slutligen kryptera igen med k3. Rent formellt ges chiffertexten C av
C = E_{k3}(D_{k2}(E_{k1}(P)))
Det finns även varianter där alla tre steg är krypteringsoperationer (EEE) men EDE används oftast för att möjliggöra kompatibilitet med enkel-DES när alla nycklar är lika.
Nyckelvarianter och format
- 3-key TDES (tre oberoende nycklar k1, k2, k3): teoretisk nyckellängd 168 bitar (tre 56-bitars DES-nycklar), med paritetsbitar motsvarande en lagringslängd på 192 bitar.
- 2-key TDES (k1 = k3): nyckelmaterial 112 bitar, lagringslängd 128 bitar. Detta var en vanlig kompromiss för att spara nyckelmaterial och erbjuda bättre säkerhet än enkel DES.
- Keying option 3 (alla nycklar lika) = enkel DES (kompatibilitetsläge).
Obs: vissa källor och standarder redovisar nyckellängd respektive effektiv säkerhet olika; för en diskussion om nyckellängd i kryptografi se nyckellängd.
Säkerhet och kända svagheter
TDES skapades efter att man insett att en 56-bitars DES-nyckel inte var tillräckligt mot brute force-attacker. Genom att köra DES tre gånger ökade man motståndet mot rena nyckelangrepp, men Triple DES är inte fri från svagheter:
- Meet-in-the-middle: En effektiv angreppsklass, kallad "meet-in-the-middle"-attacker, reducerar den praktiska säkerheten för 3-key TDES. Trots 168 bitars teoretiskt nyckelutrymme ligger den effektiva arbetskostnaden för en sådan attack på en nivå som ofta motsvaras av ungefär 112 bitars styrka.
- 2-key-säkerhet: I praktiken har NIST bedömt 2-key TDES som betydligt svagare än 112 bitar och behandlar den som ett system med ungefär 80 bits säkerhet (med hänsyn till kända angreppsscenarier med utvald text eller känd text, och andra svagheter).
- 64-bitars blockstorlek: Eftersom DES (och därmed TDES) använder en blockstorlek på 64 bitar innebär det en praktisk begränsning: efter ungefär 2^32 block (ordningen miljarder block) ökar risken för kollisionsbaserade attacker (se t.ex. SWEET32). Detta gör TDES olämpligt för stora datavolymer under samma nyckel.
På grund av dessa problem samt modernare attacker är TDES successivt utdaterat och AES rekommenderas i de allra flesta nya system. Trots detta finns särskilda områden där TDES fortfarande används och där standarder utvecklas kring dess användning.
Användningsområden och livslängd
TDES har till stor del ersatts av AES, men ett betydande undantag är sektorn för elektroniska betalningar. Betalkortsindustrin och system för chipkort (t.ex. EMV) samt många uttagsautomater och POS-terminaler använder fortfarande 2TDES i stor utsträckning. Orsakerna är främst kompatibilitet med befintlig infrastruktur och omfattande standardisering inom sektorn.
Så länge betalnätverk, terminaler och kortbaserad infrastruktur behöver interoperabilitet med äldre enheter kommer TDES att finnas kvar i praktiken, men dess roll i nya system minskar kontinuerligt.
Prestanda och implementation
DES och TDES designades i en tid då hårdvaruimplementationer var vanliga; algoritmens struktur gör den relativt ineffektiv i ren programvaruutförande jämfört med nyare algoritmer. Därför används TDES ofta i hårdvara (acceleratorer, HSM:er, smarta kort), där den kan uppnå acceptabla prestandanivåer.
Praktiska rekommendationer
- För nya system: välj AES eller andra moderna, välanalyserade algoritmer med större blockstorlek och starkare säkerhetsmarginal.
- Om TDES måste användas: föredra 3-key TDES framför 2-key, begränsa mängden data som krypteras under samma nyckel och använd säkra nyckelhanteringsrutiner.
- Planera migrering: särskilt inom betalningssystem där TDES är utbrett, börja planera stegvis ersättning och kompatibilitetsstrategier mot AES-baserade lösningar.
Sammanfattningsvis: Triple DES var en praktisk och snabb väg att öka säkerheten jämfört med enkel DES, men på grund av begränsningar i blockstorlek, mötes-i-mitten-attacker och framväxten av starkare algoritmer betraktas TDES numera som ett arvssystem som bör fasas ut i nya implementationer. Inom vissa sektorer — främst betalningar — lever dock dess användning kvar och kommer troligen att göra det under överskådlig tid.

