Trippel DES

(Omdirigert fra «3DES»)

Innen kryptografi er Trippel DES et blokkchiffer, avledet av Data Encryption Standard ved å bruke DES kryptering tre ganger.

Trippel DES
Bruk av DES tre påfølgende ganger.
Generelt
Utvikler(e): IBM
Publisert: 1978
Forgjenger: DES
Chifferdetaljer
Nøkkelstørrelse: 112 (2TDES) eller 168 bit (3TDES)
Blokkstørrelse: 64 bit
Struktur: Feistel-chiffer
Runder: 48 DES-tilsvarende runder
Beste offentlige kryptoanalyse
Flaks: 232 kjente klartekster, 2113 operasjoner inkludert 290 DES krypteringer, 288 hukommelse; Biham: finn en av 228 målnøkler med en håndfull utvalgte klartekster per nøkkel og 284 krypteringer

Forkortelser rediger

Trippel DES er også kjent som TDES, 3DES eller, mer standardisert, TDEA (Triple Data Encryption Algorithm[1]). Det er vanlig å bruke DES (standarden), for å referere til DEA (algoritmen). Det finnes også varianter av TDES som bruker to forskjellige nøkler (2TDES) og tre forskjellige nøkler (3TDES).

Algoritme rediger

Når det ble kjent at en 56-bit nøkkel som er brukt i DES ikke var nok for å effektivt hindre brute force angrep, så ble TDES valgt som en enkel måte å øke nøkkelrommet på, uten å måtte bytte til en ny algoritme. Bruken av tre steg er essensielt for å unngå meet-in-the-middle angrep, som på sin side er meget effektive for å bryte dobbel DES kryptering. Legg merke til at DES ikke er en gruppe; om den hadde vært det, så ville TDES kontstruksjonen vært lik én enkel DES operasjon, og ikke sikrere.

Den enkleste varianten av TDES fungerer som følger:  , hvor   er meldingsblokken som skal krypteres, og  ,  , og   er DES nøkler. Denne varianten er vanligvis kjent som EEE fordi alle tre DES operasjonene er krypteringer. For å forenkle interoperabilitet mellom DES og TDES, så blir som regel det midterste trinnet byttet ut med dekryptering (EDE modi):   og på den måten kan en enkelt DES kryptering med nøkkelen   bli representert som TDES-EDE med  . Valget for dekryptering av det midterste trinnet påvirker ikke sikkerheten i algoritmen.

Sikkerhet rediger

Hovedsakelig har TDES med tre forskjellige nøkler (3TDES) en nøkkellengde på 168 bits: tre 56-bit DES nøkler (med paritetsbits har 3TDES en total lagringslengde på 192 bits), men på grunn av meet-in-the-middle angrep så er den reelle sikkerheten bare på 112 bits. En variant, kalt to-nøkkel TDES (2TDES), bruker k1 = k3, og reduserer derved nøkkellengden til 112 bits, og lagringslengden til 128 bits. Denne metoden, derimot, er utsatt for enkelte angrep med utvalgte klartekster, eller angrep med kjente klartekster[2][3] og har derfor bare fått tildelt et sikkerhetsnivå på 80 bits.[4]

Frem til 2005 så har det beste kjente angrepet på 3TDES krevet omtrent 232 kjente klartekster, 2113 steg, 290 enkle DES krypteringer og 288 hukommelse[5] (referansen beskriver andre avveiinger mellom tid og hukommelse). Dette er for tiden ikke praktisk gjennomførbart. Hvis en angriper ønsker å finne en av mange kryptografiske nøkler, så finnes det et hukommelseseffektivt angrep som vil finne en av 228 nøkler, gitt at man har en håndfull utvalgte klartekster per nøkkel og omtrent 284 krypteringsoperasjoner.[6] Dette angrepet er velegnet for parallellkjøring, og grenser til det som er praktisk gjennomførbart, gitt at man har et milliardbudsjett og flere år på seg for å utføre angrepet, selv om omstendighetene rundt selve gjennomføringen vil være begrenset.

Bruk rediger

TDES forsvinner sakte, men sikkert fra vanlig bruk, som oftest erstattet av sin naturlige oppfølger, AES. Innenfor industrien for elektronisk betalingsformidling benyttes fortsatt 2TDES i stor utstrekning, og fremdeles utvikles og fremmes standarder basert på denne (f.eks. EMV). Dette garanterer at TDES vil være en aktiv kryptografisk standard langt inn i fremtiden.

Konstruksjonen av DES og dermed også TDES lider av dårlig effektivitet i programvare. På moderne prosessorer så yter AES omtrent seks ganger raskere. TDES er bedre egnet å implementere i maskinvare, og det er absolutt på det området TDES brukes i dag (f.eks. VPN bokser og mobiltelefoner), men selv der viser AES seg å være mer effektiv. AES har betraktelig høyere sikkerhetsmargin ved å ha større blokkstørrelse, potensielt lengre nøkler, og frem til 2010, ingen kjente vellykkede kryptoanalytiske angrep.

Se også rediger

Referanser rediger

  1. ^ NIST, Recommendation for the Triple Data Encryption Algorithm (TDEA) Block Cipher Arkivert 4. mai 2012 hos Wayback Machine. (PDF), Special Publication 800-67.
  2. ^ Ralph Merkle, Martin Hellman: On the Security of Multiple Encryption Arkivert 27. september 2011 hos Wayback Machine. (PDF), Communications of the ACM, Vol 24, No 7, pp 465–467, July 1981.
  3. ^ Paul van Oorschot, Michael J. Wiener , A known-plaintext attack on two-key triple encryption, EUROCRYPT'90, LNCS 473, 1990, pp 318–325.
  4. ^ NIST, Recommendation for Key Management — Part 1: general (PDF), Special Publication 800-57.
  5. ^ Stefan Lucks: Attacking Triple Encryption Arkivert 9. november 2005 hos Wayback Machine. (PDF), Fast Software Encryption 1998, pp 239–253.
  6. ^ Eli Biham: How to Forge DES-Encrypted Messages in 228 Steps Arkivert 10. desember 2005 hos Wayback Machine. (PostScript), 1996.