Trippel DES

Fra Wikipedia, den frie encyklopedi
Gå til: navigasjon, søk
Trippel DES
3des-overall-view.png
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

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

Forkortelser[rediger | rediger kilde]

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 | rediger kilde]

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: \textrm{DES}(k_3;\textrm{DES}(k_2;\textrm{DES}(k_1; M))), hvor M er meldingsblokken som skal krypteres, og k_1, k_2, og k_3 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): \textrm{DES}(k_3;\textrm{DES}^{-1}(k_2;\textrm{DES}(k_1; M))) og på den måten kan en enkelt DES kryptering med nøkkelen k bli representert som TDES-EDE med k_1 = k_2 = k_3 = k. Valget for dekryptering av det midterste trinnet påvirker ikke sikkerheten i algoritmen.

Sikkerhet[rediger | rediger kilde]

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 paralellkjø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 | rediger kilde]

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 | rediger kilde]

Referanser[rediger | rediger kilde]