DES — Data Encryption Standard
Alanärä, Ilkka (2020-03-20)
Alanärä, Ilkka
I. Alanärä
20.03.2020
© 2020 Ilkka Alanärä. Tämä Kohde on tekijänoikeuden ja/tai lähioikeuksien suojaama. Voit käyttää Kohdetta käyttöösi sovellettavan tekijänoikeutta ja lähioikeuksia koskevan lainsäädännön sallimilla tavoilla. Muunlaista käyttöä varten tarvitset oikeudenhaltijoiden luvan.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:oulu-202003241335
https://urn.fi/URN:NBN:fi:oulu-202003241335
Tiivistelmä
Tässä tutkielmassa tutustutaan Data Encryption Standardiin (DES), joka oli yli kaksi vuosikymmentä hallitseva standardi kryptografian alalla ja monella tapaa esikuva nykyisille salausalgoritmeille. DES oli laajasti käytössä ympäri maailmaa esimerkiksi sähköisessä kaupankäynnissä sekä pankkien tiedonvälityksessä. DES on niin sanottu lohkosalain, joka paloittelee salattavan viestin ennalta sovittuihin pätkiin ja salaa näistä lohkoista jokaisen erikseen. DES oli ensimmäinen lohkosalain ja sen kehityksen, sekä murtamisessa esiin tulleiden hyvien ja huonojen puolien pohjalta onkin kehitelty nykyisiä salausalgoritmeja, kuten paljon käytetty AES eli Advanced Encryption Standard.
Tutkielmassa käydään ensin läpi DES:in yleinen rakenne sekä toiminta yksinkertaistetun mallin avulla. Tämän jälkeen käsitellään salauksen jokainen vaihe yksityiskohtaisesti lähtien salausavaimen muodostuksesta aina salauksen purkamiseen saakka. Jokainen salauksen vaihe on avattu yksittäisiä bittioperaatioita myöten ja tutkielmaan tutustumalla tulisi saada erittäin hyvä kuva DES:in toiminnasta. Lopuksi käsitellään salauksen murtamista ja esitellään DES:in korvaajaksi kehitetty AES.
Algoritmin yleisellä tasolla tapahtuvan teoreettisen käsittelyn lisäksi tutkielmassa käydään erittäin tarkasti läpi oman esimerkkiviestin salaus jokaista pientäkin vaihetta myöten. DES-algoritmi sisältää 16 salauskierrosta, joista jokainen sisältää useita kymmeniä operaatioita, joten mahdollisuus näppäilyvirheisiin on korkea. Tämän vuoksi esimerkkisalausta varten kirjoitettiin Python-koodin, joka tekee kaikki salausalgoritmin vaatimat operaatiot ja näin ollen poistaa mahdollisuudet käsin laskettaessa tapahtuviin näppäilyvirheisiin tai muihin inhimillisiin virheisiin.
Tutkielmassa käydään ensin läpi DES:in yleinen rakenne sekä toiminta yksinkertaistetun mallin avulla. Tämän jälkeen käsitellään salauksen jokainen vaihe yksityiskohtaisesti lähtien salausavaimen muodostuksesta aina salauksen purkamiseen saakka. Jokainen salauksen vaihe on avattu yksittäisiä bittioperaatioita myöten ja tutkielmaan tutustumalla tulisi saada erittäin hyvä kuva DES:in toiminnasta. Lopuksi käsitellään salauksen murtamista ja esitellään DES:in korvaajaksi kehitetty AES.
Algoritmin yleisellä tasolla tapahtuvan teoreettisen käsittelyn lisäksi tutkielmassa käydään erittäin tarkasti läpi oman esimerkkiviestin salaus jokaista pientäkin vaihetta myöten. DES-algoritmi sisältää 16 salauskierrosta, joista jokainen sisältää useita kymmeniä operaatioita, joten mahdollisuus näppäilyvirheisiin on korkea. Tämän vuoksi esimerkkisalausta varten kirjoitettiin Python-koodin, joka tekee kaikki salausalgoritmin vaatimat operaatiot ja näin ollen poistaa mahdollisuudet käsin laskettaessa tapahtuviin näppäilyvirheisiin tai muihin inhimillisiin virheisiin.
Kokoelmat
- Avoin saatavuus [31496]