57
Andmeturve ja krüptoloogia, Andmeturve ja krüptoloogia, V V III III Alternatiivseid sümmeetrilisi Alternatiivseid sümmeetrilisi algoritme AESile algoritme AESile 18. oktoober 2011 Valdo Praust [email protected] Loengukursus IT Kolledžis 2011. aasta sügissemestril

Andmeturve ja krüptoloogia, V III Alternatiivseid sümmeetrilisi algoritme AESile

  • Upload
    belle

  • View
    81

  • Download
    0

Embed Size (px)

DESCRIPTION

Andmeturve ja krüptoloogia, V III Alternatiivseid sümmeetrilisi algoritme AESile. 18. oktoober 2011 Valdo Praust mois @ mois .ee Loengukursus IT Kolled ž is 2011. aasta sügissemestril. Krüptoalgoritmide peamised liigid. - PowerPoint PPT Presentation

Citation preview

Page 1: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Andmeturve ja krüptoloogia, Andmeturve ja krüptoloogia, VVIIIIII

Alternatiivseid sümmeetrilisi Alternatiivseid sümmeetrilisi algoritme AESilealgoritme AESile

Andmeturve ja krüptoloogia, Andmeturve ja krüptoloogia, VVIIIIII

Alternatiivseid sümmeetrilisi Alternatiivseid sümmeetrilisi algoritme AESilealgoritme AESile

18. oktoober 2011

Valdo Praust 

[email protected]

Loengukursus IT Kolledžis2011. aasta sügissemestril 

  

18. oktoober 2011

Valdo Praust 

[email protected]

Loengukursus IT Kolledžis2011. aasta sügissemestril 

  

Page 2: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Krüptoalgoritmide peamised Krüptoalgoritmide peamised liigidliigid

Krüptoalgoritmide peamised Krüptoalgoritmide peamised liigidliigid

1. Sümmeetrilised ehk salajase võtmega krüptoalgoritmid (on traditsioonilised e ajaloolised)

2. Asümmeetrilised ehk avaliku võtmega krüptoalgoritmid (levinud viimase 20 aasta jooksul)

3. Krüptograafilised sõnumilühendid jms sellesarnased funktsioonid

4. Eriotstarbega algoritmid tõestusteks, autentimisteks, ajatempli jaoks jm

Page 3: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

SSümmeetriline ehk sümmeetriline ehk salajase alajase võtmega krüptovõtmega krüptoalgoritmalgoritm

Et sümmeetriline krüptoalgoritm oleks praktikas turvaline, peab:

• võti olema 80 bitti pikk (võimalusel tegelikult 128 bitti); vastasel korral on algoritmi võimalik murda ammendava otsinguga

• ei tohi olla teada olulist efekti andvaid krüptoanalüütilisi võtteid

Salajase võtmega krüptoalgoritm (secret key cryptoalgorithm) ehk sümmeetriline krüptoalgoritm (symmetric cryptoalgorithm), on selline, kus nii šifreerimisel kui ka dešifreerimisel kasutatakse sama (salajast) võtit

Salajase võtmega krüptoalgoritm (secret key cryptoalgorithm) ehk sümmeetriline krüptoalgoritm (symmetric cryptoalgorithm), on selline, kus nii šifreerimisel kui ka dešifreerimisel kasutatakse sama (salajast) võtit

Page 4: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Salajase võtmega krüptoSalajase võtmega krüptoalgoritmalgoritm

Page 5: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Salajase võtmega Salajase võtmega krüptokrüptoalgoritm: kasutusaladalgoritm: kasutusalad

Neid on kaks:

• konfidentsiaalse teabe edastamiseks üle (mitte pealtkuulamiskindlate) võrkude

• konfidentsiaalsete teabekogumite salvestamine avalikus keskkonnas sooviga teabe saajate hulka piirata

• pseudojuhusliku bitijada genereerimine turvaliseks kustutamiseks

Page 6: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Plokk- ja jadaPlokk- ja jadaššifridifrid

Sümmeetrilised krüptoalgoritmid jagatakse plokk- ja jadašifriteks. Plokkšifrid on palju enam levinud kui jadašifrid

Sümmeetrilised krüptoalgoritmid jagatakse plokk- ja jadašifriteks. Plokkšifrid on palju enam levinud kui jadašifrid

• Plokkšifri (block cipher) korral jagatakse avatekst teatud pikkustega plokkideks, mis krüpteeritakse ükshaaval. Kas ja kuidas järgmise ploki tulemus eelmisest sõltub, määrab ära plokkšifri kasutusresiim

• Jadašifri (stream cipher) korral leitakse salajasest võtmest teatud algoritmi alusel võtmejada (key sequence), mis liidetakse mooduliga (XOR) avatekstile

Page 7: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Plokkšifri ploki tüüpne siseehitusPlokkšifri ploki tüüpne siseehitus

Page 8: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• Võtme pikkus

• Ploki pikkus (vahel võrdub võtme pikkusega, aga ei pruugi)

• Raundide arv (ja vahel raunditüüpide arv)

• Võtmejaotusalgoritmi olemasolu

• Raundivõtmete arv (võtmejaotusalgoritmi olemasolu korral)

• Raundivõtme(te) pikkus (võtmejaotudsalhoritmi olemasolu korral)

• Enne raunde tehtavate eeltegevuste ja pärast raunde tehtavate järeltegevuste olemasolu

Plokkšifrit iseloomustavad Plokkšifrit iseloomustavad parameetridparameetrid

Page 9: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

KrKrüptograafia kaks põhivõtet üptograafia kaks põhivõtet raundi “raundi “ehituskividena”ehituskividena”

• substitutsioon (substitution) – olemasolevate märkide asendamine teiste märkidega

• transpositsioon ehk permutatsioon (transposition, permutation) – olemasolevate märkide järjekorra muutmine

Valdav enamik plokkšifrite raundi sees tehtavaid teisendusi on nende kahe põhivõtte keerukas sümbioos

Valdav enamik plokkšifrite raundi sees tehtavaid teisendusi on nende kahe põhivõtte keerukas sümbioos

Page 10: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Tuntuimad esindajad, ITuntuimad esindajad, I1. AES ehk Rijndael (võtmepikkus varieeruv;

kas 128, 192 või 256 bitti). Viimaste aastate standard, mille konkurss lõppes 2000. aasta sügisel. Vahetas välja nõrgukeseks jäänud DESi

2. IDEA (128 bitine võti). Pärineb Šveitsist 1980te lõpust

3. Skipjack (80 bitine võti). Pärineb 1990te algusest NSAlt (National Security Agency), oli kaua aega (kuni 1998. aastani) salastatud

Page 11: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Tuntuimad esindajad, IITuntuimad esindajad, II

4. RC4 (varieeruva pikkusega võti, kuni 448 bitti). Pärineb Bruce Schneierilt 1990 ndatest

5. Blowfish (varieeruva pikkusega võti, kuni 448 bitti). Pärineb Bruce Schneierilt 1990 ndatest

6. DES (56 bitine võti). On USA standard 1977. aastast ja oli laialt maailmas kasutusel. NB! Kaasajal on juba nõrgukene

Page 12: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

IDEA: fakteIDEA: fakte• on plokkšiffer ploki pikkusega 64 bitti (8 baiti)

• kasutab 128-bitist (16-baidist) võtit

• on koostatud Šveitsis, publitseeriti 1991

• on patenteeritud Šveitsi firma MediaCrypt poolt, patent aegub 2010-11 aastail

• 2005 publitseeriti IDEA järglane IDEA NXT (FOX), mis ei ole vana IDEA polulaarsust saavutanud

Page 13: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

IDEA: tehniline üldkirjeldusIDEA: tehniline üldkirjeldus• On projekteeritud omal ajal vastukaaluks DESile, et

oleks võimalik kiire realiseerimine tarkvaras• On huvitav selle poolest, et plokkšifritele

traditsiooniliste S-bokside asemel pruugib ta pööramatuid räsifunktsioone

• IDEA genereerib 128 bitilisest üldvõtmest 52 16-bitist alamvõtit

• IDEA koosneb kaheksast raundist• 64 bitise avateksti jagab IDEA neljaks 16-bitiseks

osaks• Iga raund kasutab 6 alamvõtit, peale raunde

kasutatakse veel 4 võtit

Page 14: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

IDEA: raundi kirjeldusIDEA: raundi kirjeldus

Raundi vältel tehakse hulga tehteid 16-bitiste plokkide ning alamvõtmetega

Raundis kasutatavad tehted on:• tavaline liitmine (mooduliga 216 ehk 65536)• XOR • korrutamine mooduliga 216+1 (65537)

Nimetatud tehete kogusumma annab piisava mittelineaarse funktsiooni; üks põhjusi selleks on, et 65537 on algarv

Nimetatud tehete kogusumma annab piisava mittelineaarse funktsiooni; üks põhjusi selleks on, et 65537 on algarv

Page 15: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

IDEA: raundi skeemIDEA: raundi skeem

Page 16: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

IDEA: IDEA: üldskeemüldskeem

Page 17: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

IDEA: võtmejaotusalgoritmIDEA: võtmejaotusalgoritm• esimesed 8 alamvõtit saadakse üldvõtme

tükeldamisest 8 osaks

• seejärel tehakse üldvõtme bititinihe 25 biti ulatuses ja leitakse nii järgmised 8 alamvõtit

• seda protseduuri korratakse 7 korda, kuni leitakse 52 alamvõtit (viimased neli jäetakse kasutamata 7 x 8 = 56)

Seega on alamvõtmed iga kaheksa tagant omavahel seotudSeega on alamvõtmed iga kaheksa tagant omavahel seotud

Page 18: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

IDEA: krüptoanalüüsIDEA: krüptoanalüüs• ammendav otsing nõuab 2128 variandi

läbivaatamist

• olulist võitu andvaid krüptoanalüütilisi võtteid ei ole teada – seega on algoritm praktikas murdmatu

• parim tulemus on 5-raundise algoritmi mõningane murdmine valitud avateksti kollisioonründega (DeMirci 2003)

Järeldus: IDEA on praktiliseks kasutamiseks turvaline algoritm (eripära: väga kaua ”turul” olnud)

Järeldus: IDEA on praktiliseks kasutamiseks turvaline algoritm (eripära: väga kaua ”turul” olnud)

Page 19: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

IDEA: eelised ja puudusedIDEA: eelised ja puudusedEelised:• IDEAt on hea tarkvaras realiseerida, kuna ta

sisaldab tuntuid bitioperatsioone

• IDEA C-keelne lähtetekst on ca paar KB suur ja koosneb veidi rohkemast kui 100 reast

• On kasutatav paljudes programmides (sh PGPs)

Puudused: • on patenteeritud, kuid isiklikuks (mitteäriliseks)

kasutamiseks on vabalt pruugitav. Jaosvara (shareware) jaoks on litsensitingimused soodsad

• AES on selgelt parem

Page 20: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Skipjack: fakteSkipjack: fakte• on plokkšiffer ploki pikkusega 64 bitti (8 baiti)

• kasutab 80-bitist (10-baidist) võtit

• on koostatud USAs NSA (National Security Agency) poolt 1990te algul

• plaaniti kasutada Clipperi kiibis (projekt ei realiseerunud)

• kirjeldus oli kuni 1998. aasta juunini salastatud

Page 21: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Skipjack: tehniline üldkirjeldusSkipjack: tehniline üldkirjeldus• on projekteeritud selliselt, et oleks võimalik kiire

realiseerimine tarkvaras (ei sisalda erikujulisi bititehteid)

• avatekst jagatakse neljaks 16-bitiseks neljandikuks

• Skipjack koosneb 32 raundist

• iga raund muudab vaid ühte neljandikku (16 bitti) teabest)

• kasutatakse kahte tüüpi raunde, A ja B: kaheksale A raundile järgneb 8 B raundi kasutamine

• 80bitine võti jagatakse kümneks kaheksabitiliseks alamvõtmeks lihtsa jagamise teel

Page 22: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Skipjack: raundide kirjeldusSkipjack: raundide kirjeldus

• B tüüpi raund erineb A tüüpi raundist väikeste tehniliste üksikasjade poolest XORimisel

• Iga raund sisaldab põhimõtteliselt sama krüpteemisfunktsiooni G ehk nn Feisteli struktuuri, kus 16 bitise teksti teisendamiseks kasutatakse nelja alamvõtit ja permutatsiooni F

• funktsioonile G eelneb raundi järjenumbri ja eelmise neljandiku XORimine

Page 23: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Skipjack: funktsiooni G skeemSkipjack: funktsiooni G skeem

Page 24: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Skipjack: permutatsioon F Skipjack: permutatsioon F (Feisteli struktuur)(Feisteli struktuur)

Page 25: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Skipjack: esimesed 8 raundi Skipjack: esimesed 8 raundi (tüüp A)(tüüp A)

Page 26: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Skipjack: raundid 8-16 Skipjack: raundid 8-16 (tüüp B)(tüüp B)

Page 27: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Skipjack: rakendatavusSkipjack: rakendatavus

• ammendav otsing nõuab 280 variandi läbivaatamist, mis ei ole kaasaja arvutitele jõukohane

• ei ole teada erilisi võitu andvaid krüptoanalüütilisi võtteid

• võimatute erinevuste krüptoanalüüs on tehtud 1998 vähendatud raundidega variandi jaoks; (Biham, Shamir, Birjukov)

Järeldus: Skipjacki võib pidada turvaliseks algoritmiks, kuigi AESi ajastus jääb efektiivsus veidi soovida

Järeldus: Skipjacki võib pidada turvaliseks algoritmiks, kuigi AESi ajastus jääb efektiivsus veidi soovida

Page 28: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• Paralleelnimetused ARC4, ARCFOUR

• on jadašiffer (maailmas tuntuim jadašiffer)

• kasutab varieeruva pikkusega võtit, mis on olla pikkuses 40 kuni 128 bitti

• on koostatud Bruce Schneieri poolt 1987

• On saanud ülilaiat tuntuks WiFiga seotud protokollides WEP ja WPA

• On olemas terve RC-perekond (RC-2, RC-5, RC-6)

RC4: fakteRC4: fakte

Page 29: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• Kujutab (nagu kõik jadašifrit) endast pseudojuhuslikku bitijada generaatorit (samm 256 bitti)

• Siseehituses sisaldab ta kaks faasi:

A. 256 bitise pikkusega bitipermutatsiooni

S moodustamine

B. Kahe 8-bitise indeksviida moodustamine

Permutatsiooni S määrab ära võtmejaotusalgoritm algvõtmest, mis näeb välja järgmine:

RC4: siseehitusRC4: siseehitus

Page 30: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Leiab 256 järgmist bitiväärtust alljärgneva algoritmi ehk PRGA (pseudo-random generation algoritm) järgi:

RC4 juhuarvugeneraatori sammRC4 juhuarvugeneraatori samm

Page 31: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• Jadašifrite krüptoanalüütiliste võtete efektiivsust ei saa tavaliselt väljendada kujul 2N nagu plokkšifrite oma

• Flucher’i Martin’i ja Shamir’i rünne (2001): võtmejada esimesed bitid (kas 768 või 3072) pole usaldusväärsed ja seega ei tohiks neid kasutada

• Klein’i rünne: 104-bitine RC4 murtakse minutiga (128ne on väidetavalt veel murdmatu)

RC4 praktikas ja krüptoanalüüsRC4 praktikas ja krüptoanalüüs

Eeltoodu tõttu ollakse RC4 kasutamisel kaasajal tihti väga skeptilised ja kiputakse eelistama muid algoritme (nt AESi)

Eeltoodu tõttu ollakse RC4 kasutamisel kaasajal tihti väga skeptilised ja kiputakse eelistama muid algoritme (nt AESi)

Page 32: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• on plokkšiffer ploki pikkusega 64 bitti (8 baiti)

• kasutab varieeruva pikkusega võtit, max võtmepikkus on 448 bitti

• on koostatud Bruce Schneieri poolt 1993

• algoritmi järglane on Twofish (1990ndate lõpp, AESi üks kandidaatidest 1997-2000), mis kasutab paljusid Blowfish’i detaile

Blowfish: fakteBlowfish: fakte

Page 33: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Blowfish: tehniline üldkirjeldusBlowfish: tehniline üldkirjeldus

• koosneb 16 raundist, mille põhiosa on F: Feisteli struktuur (teisendus)

• kasutab 18 32-bitist alamvõtit, mis genereeritakse algvõtmest

• kasutab nelja 32-bitist S-boksi

• raundide sees jagatakse 64-bitine plokk kaheks pooleks, millest iga raundi jooksul teisendatakse ühte poolt

Page 34: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Blowfish: skeemBlowfish: skeem

Page 35: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Blowfish: võtmejaotusalgoritmBlowfish: võtmejaotusalgoritm

Algoritmi põhijooned:

• väärtustatakse S massiiv, mis on võtmega samapikkune, transtsendentse arvu π (3,1415926...) tüvenumbritega 16nd-süsteemis

• XORitakse võtmeväärtus S väärtustega

• asendatakse pool arvust π saadud väärtustest XORimise lõppväärtustega ja korratakse XORimise protseduuri

• 521 iteratsiooni tulemusena leitakse 18 16-bitist alamvõtit

Page 36: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• võtmejaotusarvutusest (key schedule calculation), mis teisendab 56-bitise võtme 16-ks 48-bitiseks alamvõtmeks (subkey), mis kasutatakse raundides

• algpermutatsioonist (initial permutation)• 16 raundist (round);• lõpp-permutatsioonist (final permutation)

Retrospektiivne Retrospektiivne tagasivaade tagasivaade — — DESDES

DES on, nagu teisedki plokkšifrid, iteratiivsel põhimõttel konstrueeritud algoritm, koosnedes järgmistest protseduuridest:

Page 37: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DESi toimimise üldskeemDESi toimimise üldskeem

Page 38: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DES: algpermutatsioonDES: algpermutatsioon

Page 39: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DES: alamvõtmete leidmineDES: alamvõtmete leidmine

56 biti pikkusest võtmest leitakse 16 pikkust raundi võtit (igaüks 48 bitti pikk) spetsiaalse võtmejaotusalgoritmi alusel. Igat raundi võtit kasutatakse täpselt ühes raundis

56 biti pikkusest võtmest leitakse 16 pikkust raundi võtit (igaüks 48 bitti pikk) spetsiaalse võtmejaotusalgoritmi alusel. Igat raundi võtit kasutatakse täpselt ühes raundis

Algoritmi põhilised koostisosad on standardsed:

• substitutsioon (bitikombinatsioonide asendamine teiste kombinatsioonidega)

• permutatsioon (bittide järjekorra muutus bitijadas)

Page 40: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DES: alamvõtmete leidmineDES: alamvõtmete leidmine

Page 41: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Permuteerivad valikud (permuted choices):

DES: alamvõtmete leidmineDES: alamvõtmete leidmine

Page 42: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• 64-bitine plokk jagatakse kaheks 32-bitiseks pooleks

• üht 32-bitist poolt teisendatakse krüpteeriva funktsiooniga (round function), kasutades vastavat 48-bitist alamvõtit

• teise poolega ei tehta midagi

• saadud tulemus XORitakse teise poolega

• pooled vahetatakse omavahel ära

DES: raundide sisuDES: raundide sisu

Page 43: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• laiendatatakse 32-bitine tekst kõigepealt 48-bitiseks

• XORitakse sellele talle vastav 48-bitine osavõti • teisendatakse tulemus tagasi 32-bitiseks

48 biti pikkuse teabekogumi 32 bitisteks teisendamise tabeleid nimetatakse S-boksideks (S-box). Need moodustavad turvalisuse (matemaatilises) mõttes DES-i olulisima osa

48 biti pikkuse teabekogumi 32 bitisteks teisendamise tabeleid nimetatakse S-boksideks (S-box). Need moodustavad turvalisuse (matemaatilises) mõttes DES-i olulisima osa

DES: raundis kasutatav DES: raundis kasutatav krüpteeriv funktsioonkrüpteeriv funktsioon

Krüpteeriv funktsioon kujutab endast bititehteid, mille käigus:

Page 44: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DES: raundis kasutatav DES: raundis kasutatav krüpteeriv funktsioonkrüpteeriv funktsioon

Page 45: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DES: raundis kasutatav DES: raundis kasutatav laiendustabellaiendustabel

Page 46: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DES: raundis kasutatavad DES: raundis kasutatavad S-boksidS-boksid

Page 47: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DES: raundis kasutatavad DES: raundis kasutatavad S-boksidS-boksid

Page 48: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

DES: raundi DES: raundi lõpp-permutatsioonlõpp-permutatsioon

Page 49: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

On algpermutatsiooni pöördpermutatsioon (inverse initial permutation):

DES: arvutuste DES: arvutuste lõpp-permutatsioonlõpp-permutatsioon

Page 50: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• Keerukatest bitipermutatsioonidest tingituna on DESi tarkvararealisatsioonid tunduvalt aeglasemad kui tarkvararealisatsioonid (moodsamad algoritmid on sellest puudusest vabad)

• Kiiruste vahe riist- ja tarkvararealisatsioonide vahel on tuhandeid kordi ja enam

• Tarkvararealisatsioonid töötavad juba 10 aastakest kaasajal kettale kirjutamise/sealt lugemise kiirusega

• On tihti integreeritud (arhailisematesse) standarditesse/seadmetesse ja tehtud seeläbi “sunniviisiliseks”

DES: realisatsioonid DES: realisatsioonid

Page 51: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• Ammendav otsing on teostatav 256 operatsiooniga – arvestades kaasaja arvutstehnika arengut on see juba täiesti reaalne maht (suur)arvuti jaoks

• On võimalik ehitada spetsiaalne paralleelsetest kiipidest koosnev murdmismasinmasin, mis maksaks hetkel (AD 2011) alla $500 000 ja murraks ammendava otsingu teel algoritmi ca sekundiga

• Teiste hindadega murdmismasinad vastavalt kiiremad või aeglasemad

DESi ammendav otsingDESi ammendav otsing

Page 52: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• on teada märgatavat võitu andvaid krüptoanalüütilisi võtteid

• adaptiivselt valitud avateksti ründe korral piisab algoritmi murdmiseks erinevuste krüptoanalüüsiga 247 variandi läbivaatamisest 256

asemel (Biham, Shamir, 1991)

• lineaarne krüptoanalüüs võimaldab piirduda vaid 243 variandiga (Junod 2001)

Kurb järeldus: DES ei ole kaasajal enam turvaline praktikas kasutamiseks (juba ca 10 aastat)

Kurb järeldus: DES ei ole kaasajal enam turvaline praktikas kasutamiseks (juba ca 10 aastat)

DESi krüptoanalüüsDESi krüptoanalüüs

Page 53: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• Alternatiiv 1 (soovitav): pruukida teisi sümmeetrilisi krüprtoalgoritme, kus võti on pikem ja mille korral ei ole teada krüptoanalüütilisi võtteid

• Alternatiiv 2 (vaid siis, kui kammitsevad arhailised süsteemid): pruukida tavalise DESi asemel kolmekordset DESi (triple DES), kus võtmepikkus on 168 bitti ja mis on seni turvaline

DES: kuidas ja kas üldse DES: kuidas ja kas üldse praktikas rakendadapraktikas rakendada

Standardi viimane versioon FIPS PUB 46-3 (25. oktoober 1999) sätestaski vaid kolmekordse DESi kasutamise, standard tühistus ametlikult 2005

Standardi viimane versioon FIPS PUB 46-3 (25. oktoober 1999) sätestaski vaid kolmekordse DESi kasutamise, standard tühistus ametlikult 2005

Page 54: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Kolmekordne DESKolmekordne DES

Page 55: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

• DESi võib erandjuhul (kolmekordsena) pruukida üksnes seal, kus algoritm on arhailise muutmatu süsteemi poolt rangelt ette antud. Kindlalt tuleks vältida tuleks DESi kasutamist koodiraamatu resiimis

• Kui arhailine seade/standard ei võimalda DESi kolmekordses resiimis pruukida, tuleb tõsiselt kaaluda sellise seadme kasutamise lõpetamist

DES: praktilisi soovitusi DES: praktilisi soovitusi

Mitmed vanemaid standardid ja tehnilised süsteemid nõuavad aga jätkuvalt DESi kasutamist

Mitmed vanemaid standardid ja tehnilised süsteemid nõuavad aga jätkuvalt DESi kasutamist

Page 56: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

KokkuvõteKokkuvõte

Alates 2001. aastast on AES teistest mäekõrguselt üle ning lähiaastad seda vahet vast veelgi suurendavad

Alates 2001. aastast on AES teistest mäekõrguselt üle ning lähiaastad seda vahet vast veelgi suurendavad

Kõiki siintoodud algoritme (v.a. DES) võib praktikas kasutada ja nad on turvalised (Blowfishil leitud nõrgad võtmed ei muuda olukorda)

Page 57: Andmeturve ja krüptoloogia,  V III Alternatiivseid sümmeetrilisi algoritme AESile

Väga palju on muid sümmeetrisi krüptoalgoritme, mis käibes ringleb ja mida on teoreetikud vahel turvaliseks pidanudNende korral tasub eelistada alati mõnda eeltoodud algoritmidest, kui seda ei piira mingi jäid tehniline standard vms

Ülejäänud algoritmid?Ülejäänud algoritmid?

Rusikareeglid teiste algoritmide jaoks:• vaja võrgutsi veenduda, et ei ole

murdmidsvõtteid• vähemalt mõned aastad peab olema

olnud avalikkusele ”uurida”

Rusikareeglid teiste algoritmide jaoks:• vaja võrgutsi veenduda, et ei ole

murdmidsvõtteid• vähemalt mõned aastad peab olema

olnud avalikkusele ”uurida”