Triple DES (3DES/TDEA) – salaus, avaimet, turvallisuus ja käyttö
Triple DES (3DES/TDEA) – selkeä opas salauksesta, avainkoko- ja turvallisuusriskeistä sekä käytöstä maksujärjestelmissä ja siirtymästä AES:iin.
Salakirjoituksessa Triple DES on lohkosalaus, joka on luotu Data Encryption Standard (DES) -salausmenetelmästä käyttämällä sitä kolme kertaa. Triple DES tunnetaan myös nimellä TDES tai tavallisemmin TDEA (Triple Data Encryption Algorithm ).
Miten Triple DES toimii
Triple DESin yleisin toimintatapa on niin sanottu EDE-tila (Encrypt–Decrypt–Encrypt). Salauksen peruskaava on
C = E_{k3}(D_{k2}(E_{k1}(P)))
eli alkuperäinen viesti P ensin salataan avaimella k1, sitten puretaan avaimella k2 ja lopuksi salataan jälleen avaimella k3. Tämä rakenne mahdollistaa taaksepäin yhteensopivuuden yksittäisen DES:n kanssa, kun k1 = k2 = k3 (tällöin TDES on identtinen DES:n kanssa).
Avaimet ja avainkoot
DES käyttää perinteisesti 56-bittistä avainta, joka tallennetaan 64-bittiseen kenttään siten, että kukin kahdeksas bitti on pariteettibitti. Tämän vuoksi:
- 3-avain TDES (k1, k2, k3) koostuu kolmesta 56-bittisestä DES-avaimesta, eli teoreettinen avainpituus on 168 bittiä. Pariteettibittien kanssa tallennusmäärä on 192 bittiä (avaimen pituus ja DES-avaimet).
- 2-avain TDES käyttää k1 = k3, jolloin tallennuspituus on 128 bittiä ja teoreettinen avainentropia 112 bittiä.
Käytännössä erilaiset hyökkäysmenetelmät alentavat tehokasta turvallisuutta (ks. seuraava kohta).
Turvallisuus, hyökkäykset ja rajoitukset
Triple DES suunniteltiin vastaamaan DES:n 56-bittisen avaimen heikkouksiin. Käyttämällä DES:ää kolmesti haluttiin laajentaa avainavaruutta ilman uuden algoritmin käyttöönottoa. Kuitenkin:
- Meet-in-the-middle-tyyppiset hyökkäykset vaikuttavat TDES:n tehokkaaseen turvallisuuteen: vaikka teoreettinen avainpituus 3-avain-TDES:ssä on 168 bittiä, meet-in-the-middle-hyökkäys laskee hyökkäyksen kompleksisuuden käytännössä noin 2^112 -tasolle (meet-in-the-middle-hyökkäykset).
- Joidenkin arvioiden mukaan tiettyjen hyökkäystekniikoiden ja käytännön rajoitteiden vuoksi NIST on pitänyt TDES:n suojatasoa heikomman arvoisena esimerkiksi 80 bitin luokassa, erityisesti kahden avaimen variantille (NIST).
- DES:n ja siten TDES:n 64-bittinen lohkokoko aiheuttaa rajoituksia: suurissa datamäärissä syntyy pareihin liittyviä ongelmia (birthday-paradoksi), mikä voi johtaa lohkokollisioon pohjautuviin heikkouksiin. Tämä tekee TDES:stä vähemmän sopivan moderneihin sovelluksiin, joissa käsitellään paljon dataa.
- On myös muita teoreettisia ja käytännön analyysimenetelmiä, jotka vähentävät TDES:n suositeltavaa käyttöaluetta verrattuna moderneihin algoritmeihin.
Suorituskyky ja toteutus
DES- ja TDES-operaatiot perustuvat pieniin 64-bittisiin lohkoihin ja moniin bittitason permutaatioihin, mikä tekee niiden ohjelmistopohjaisesta toteutuksesta suhteellisen hitaamman kuin nykyaikaisten lohkosalausten (esim. AES) optimisoidut toteutukset. Tämän vuoksi TDES on usein tehokkaampi laitteistototeutuksissa, joissa permutations- ja bitoperaatiot voidaan kiihdyttää erillisellä logiikalla. Siksi TDES on historiallisesti yleinen maksujärjestelmissä ja korttipiireissä, joissa laitteistotuki on saatavilla.
Käyttö ja sovellukset
TDES on hitaasti poistumassa käytöstä ja sen tilalle on useimmiten otettu AES (Advanced Encryption Standard). Yksi laajamittainen poikkeus on kuitenkin maksualan järjestelmät, joissa käytetään edelleen laajalti 2TDES:ää ja joissa on olemassa standardeja ja infrastruktuuria, joka perustuu TDESiin (esim. EMV, IC-korttien yhteistoimintastandardi, sekä IC-kykyiset POS-päätteet ja pankkiautomaatit). Tämä on pitänyt TDES:n aktiivisena tietyillä alueilla, vaikka monissa muissa ympäristöissä siirrytään AES:ään tai muihin moderneihin ratkaisuihin.
Monet standardoijat ja säännökset ovat ohjeistaneet vähentämään 2-avain-TDES:n käyttöä ja siirtymään vahvempiin algoritmeihin, ja järjestelmien ylläpitäjien suositellaan suunnittelevan migroinnin AES:ään tai vastaavaan vahvaan salaukseen.
Suositukset ja käytännön neuvoja
- Uusissa järjestelmissä ja protokollissa suositellaan käyttämään AES:ää tai nykyaikaisia algoritmeja, joiden lohkokoko ja avainpituus vastaavat nykyisiä turvallisuusvaatimuksia (esim. 128-bittinen lohko ja vähintään 128-bittinen avain AES:ssä).
- Jos järjestelmässä on edelleen TDESiä maksualustan tai taaksepäin yhteensopivuuden vuoksi, tulee arvioida käyttötapa (2-key vs 3-key), avainten hallinta, vaihtovälit ja rajoitukset datamäärässä (lohkokoko) riskien minimoimiseksi.
- Vältä 2-avain-TDES:n käyttöä uusissa sovelluksissa, ja suunnittele pois siirtyminen, koska sen tehokas suojaus on rajallinen ja se on altis tietyille hyökkäyksille.
- Huolehdi avainten oikeasta muodostuksesta (DES-pariteettibittien käsittely) ja varmista, että avainten vaihto ja elinkaaren hallinta on turvallista.
Yhteenveto
Triple DES oli tärkeä siirtymävaihe DES:n heikkouksista kohti vahvempaa avainavaruutta ilman täysin uutta algoritmia. Käytännössä TDES tarjoaa kuitenkin vain rajallista lisäsuojaa verrattuna moderneihin standardeihin, koska kryptanalyysi ja protokollarajoitukset yksinkertaisesti vähentävät sen tehokasta avainpituutta. Tämän vuoksi useimmat organisaatiot suosittelevat siirtymistä AES:ään, mutta maksualan ja muiden perintöjärjestelmien vuoksi TDES pysyy tietyissä käyttötapauksissa vielä ajankohtaisena.

Kolminkertaisen DES: n toiminta, jossa M on selkoteksti, C on salattu teksti ja {k1, k2, k3} on kolmen salausavaimen joukko.
Aiheeseen liittyvät sivut
- DES-X
- Tietojen salausstandardi (DES)
- Kehittynyt salausstandardi (AES)
Kysymyksiä ja vastauksia
Q: Mikä on Triple DES?
V: Triple DES (TDES tai TDEA) on lohkosalaus, joka on luotu Data Encryption Standard (DES) -salausmenetelmästä käyttämällä sitä kolme kertaa. Se on suunniteltu lisäämään avainavaruutta ja estämään meet-in-the-middle-hyökkäykset, jotka ovat tehokkaita kaksinkertaista DES-salausta vastaan.
Kysymys: Kuinka pitkä on 3-avainisen TDES:n avaimen pituus?
V: Kolmen avaimen TDES:n avaimen pituus on 168 bittiä, ja siinä on kolme 56-bittistä DES-avainta ja pariteettibitit, jolloin kokonaistallennuspituus on 192 bittiä.
K: Kuinka pitkä on 2-avainisen TDES:n avaimen pituus?
V: 2-avain-TDES:n avaimen pituus on 112 bittiä, ja siinä on kaksi 56-bittistä DES-avainta ja pariteettibittejä, jolloin kokonaistallennuspituus on 128 bittiä.
K: Millaista hyökkäystä voidaan käyttää 2TDES:ää vastaan?
V: 2TDES:ää voidaan käyttää hyväksi tietyillä valittuun valkotekstiin tai tunnettuun valkotekstiin perustuvilla hyökkäyksillä. Tämän vuoksi NIST pitää sitä vain 80 bitin suojauksena.
K: Soveltuuko Triple DES paremmin ohjelmisto- vai laitteistototeutuksiin?
V: Triple DES kärsii ohjelmiston suunnittelusta johtuen hitaasta suorituskyvystä, joten se soveltuu paremmin laitteistototeutuksiin.
K: Onko Triple DES yhä laajalti käytössä?
V: Vaikka Triple DES on suurelta osin korvattu AES-standardilla (Advanced Encryption Standard), se on edelleen aktiivinen salausstandardi sähköisen maksamisen alalla, jossa siihen perustuvia standardeja kehitetään ja levitetään edelleen.
K: Mitä EMV tarkoittaa Triple DES:n yhteydessä?
V: EMV on lyhenne sanoista Europay Mastercard Visa, joka on standardi IC-korttien ("sirukortit") ja IC-kortteja käyttävien POS-päätteiden ja pankkiautomaattien väliselle yhteistoiminnalle, jossa käytetään laajasti 2TDES:ää.
Etsiä