Cryptology Academy · Lektion

Triple DES: förlänga DES livslängd

Lär er hur 3DES förlängde DES-säkerheten genom flera krypteringspass och var det fortfarande används.

Lektion 3 av 413 steg

Triple DES: förlänga DES livslängd är en gratis lektion i Cryptology Academy på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Cryptology Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Cryptology Academy innehåller totalt 4 lektioner.

Meet-in-the-Middle-attacken mot Double DES

Den uppenbara lösningen på DES:s korta nyckellängd är att tillämpa det två gånger (Double DES): C = DES_K2(DES_K1(P)). Med två nycklar på 56 bitar är det nominella nyckelutrymmet 2^112.

En meet-in-the-middle-attack krossar dock denna lösning: kryptera alla klartexter med alla 2^56 K1-värden, dekryptera alla chiffertexter med alla 2^56 K2-värden och hitta matchande mellanvärden. Attacken kräver bara 2^56 arbete och 2^56 lagring, vilket gör att Double DES inte ger någon säkerhetsfördel jämfört med enkel DES.

Säkerheten hos 2-nyckels-3DES

Triple DES med två nycklar använder tre DES-operationer men bara två nycklar: C = DES_K1(DES^-1_K2(DES_K1(P))). EDE-ordningen (Encrypt-Decrypt-Encrypt) används för bakåtkompatibilitet.

Säkerheten hos 2-nyckels-3DES är ungefär 112 bitar mot kända attacker, även om meet-in-the-middle-attacker minskar den något. 2-nyckels-3DES används i många äldre bank- och betalsystem.

3-nyckels-3DES

3-nyckels-3DES använder tre oberoende nycklar, K1, K2 och K3: C = DES_K3(DES^-1_K2(DES_K1(P))). Den nominella nyckellängden är 3 x 56 = 168 bitar, men den effektiva säkerheten mot de bästa kända attackerna är omkring 112 bitar.

3-nyckels-3DES ger högre säkerhet än 2-nyckels-3DES och rekommenderades för nya tillämpningar i standarder som NIST SP 800-131A innan 3DES självt fasades ut.

Så fungerar EDE-läget

Strukturen Encrypt-Decrypt-Encrypt (EDE) i Triple DES är inte godtycklig. När K1 = K2 = K3 upphäver den mellersta dekrypteringen den första krypteringen, och den avslutande krypteringen ger samma resultat som single DES.

Denna bakåtkompatibilitet med single DES var avgörande för en gradvis migrering. Befintlig DES-hårdvara och -programvara kunde samverka med 3DES-system under en övergångsperiod utan dataförlust.

Bakåtkompatibilitet med Single DES

Triple DES kan degraderas till single DES genom att alla tre nycklarna sätts till samma värde. Det innebär att 3DES-hårdvara kan bearbeta DES-krypterad och 3DES-krypterad data med samma kretsar.

Detta var särskilt viktigt för bank- och betalsystem som hade infrastruktur baserad på DES för miljarder dollar. 3DES möjliggjorde en gradvis, bakåtkompatibel övergång utan att all utrustning behövde bytas ut samtidigt.

3DES i bankväsendet och EMV

3DES används fortfarande i stor utsträckning i bankinfrastruktur, trots att det är utfasat för nya tillämpningar. EMV-chipkort för betalningar använder 3DES för kortautentisering och transaktionskryptografi.

SWIFT använder också 3DES för äldre meddelandeautentiseringskoder mellan banker. Den enorma omfattningen av den finansiella infrastruktur som redan är i drift innebär att 3DES kommer att finnas kvar i många år, trots utfasningen.

NIST:s utfasning av 3DES (2023)

NIST fasade officiellt ut 3DES 2023 genom revision 2 av SP 800-131A. All användning av 3DES är nu avrådd, vilket innebär att det inte bör användas i nya system och att äldre system bör migreras bort från det.

AES är det rekommenderade alternativet. AES är snabbare, använder större block (128 bitar i stället för 64 bitar), erbjuder nyckellängder på 128, 192 eller 256 bitar och har inga kända praktiskt exploaterbara svagheter.

Sweet32-födelsedagsattacken

Sweet32, som publicerades 2016, visade en praktisk attack mot 3DES i HTTPS. Blockstorleken på 64 bitar innebär att kollisioner enligt födelsedagsparadoxen börjar läcka information om klartexter efter 2^32 block (cirka 32 GB data) i CBC-läge.

Mot HTTPS-sessioner krävde Sweet32 omkring 785 GB trafik under samma nyckel, vilket kan uppnås med en långvarig autentiserad session. Attacken ledde till att webbläsare prioriterade AES-GCM och tog bort 3DES från standardiserade chiffersviter.

Prestandanackdelen med 3DES

Triple DES utför tre DES-operationer per block. DES är långsamt på modern hårdvara eftersom det utformades för hårdvara på 1970-talet, med andra mönster för bitvisa operationer än dagens processorer.

AES, som utformats för effektiv programvara och drar nytta av modern hårdvara med AES-NI-instruktioner, är 10–100 gånger snabbare än 3DES i programvara. AES-NI i moderna Intel/AMD-processorer kan kryptera flera gigabyte per sekund, medan 3DES har svårt att nå 100 MB/s.

Blockstorleken förblir 64 bitar

Trots att tre DES-operationer och längre nycklar används behåller 3DES DES:s blockstorlek på 64 bitar. Blockstorleken är en grundläggande parameter i Feistelstrukturen och kan inte ändras utan att algoritmen måste utformas på nytt.

Denna blockstorlek på 64 bitar är grundorsaken till sårbarheten Sweet32. AES:s blockstorlek på 128 bitar innebär att födelsedagsattacker kräver 2^64 block (~18 exabyte), vilket i praktiken är beräkningsmässigt ogenomförbart.

NIST:s migreringsväg från 3DES till AES

NIST SP 800-131A innehåller en detaljerad migreringsguide för övergången från 3DES till AES. Guiden rekommenderar AES med nycklar på 128, 192 eller 256 bitar som ersättning för all användning av 3DES, från TLS-chiffersviter till kryptering av lagrade data.

Migreringen har gott stöd: alla moderna kryptografiska bibliotek och hårdvaruplattformar stöder AES, ofta med hårdvaruacceleration. Organisationer rekommenderas att behandla migreringen som en uppdatering av programvarukonfigurationen, snarare än som ett projekt för att ersätta hårdvara.

Frågesport om 3DES-nyckelalternativ

Testa era kunskaper om Triple DES-konfigurationer.

Viktiga slutsatser: Triple DES

Triple DES skapades för att förlänga DES:s livslängd genom EDE-strukturen. Meet-in-the-middle-attacker hindrar Double DES från att ge dubbelt så hög säkerhet. 3DES med identiska nycklar degraderas till enkel DES, vilket möjliggör bakåtkompatibilitet.

NIST klassade 3DES som föråldrat 2023 på grund av sårbarheten hos 64-bitars blockstorleken (Sweet32) och den sämre prestandan jämfört med AES. Algoritmen finns kvar i bank- och EMV-infrastruktur som ett äldre system.

Gratis att börja

Lär dig Cryptology Academy med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
67
Lektioner
261

Vanliga frågor

Är lektionen ”Triple DES: förlänga DES livslängd” gratis?

Ja – hela texten till ”Triple DES: förlänga DES livslängd” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Cryptology Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Cryptology Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Triple DES: förlänga DES livslängd”?

Lär er hur 3DES förlängde DES-säkerheten genom flera krypteringspass och var det fortfarande används. Ni övar på Cryptology Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Cryptology Academy?

Du behöver inga förkunskaper. Utbildningen i Cryptology Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.

Hur lång tid tar lektionen ”Triple DES: förlänga DES livslängd”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Cryptology Academy-lektionen?

Ja. Varje Cryptology Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. DES-design och Lucifer-chiffret
  2. Så knäcktes DES
  3. Triple DES: förlänga DES livslängd
  4. Lärdomar från DES: vad vi lärde oss
← Tillbaka till Cryptology Academy