Andmeturve ja kr¼ptoloogia, X Kr¼ptor¤sid. Kr¼ptoprotokollid, TLS

download Andmeturve ja kr¼ptoloogia, X Kr¼ptor¤sid. Kr¼ptoprotokollid, TLS

of 43

  • date post

    12-Jan-2016
  • Category

    Documents

  • view

    66
  • download

    0

Embed Size (px)

description

Andmeturve ja krüptoloogia, X Krüptoräsid. Krüptoprotokollid, TLS. 1. november 2011 Valdo Praust mois @ mois .ee Loengukursus IT Kolled ž is 2011. aasta sügissemestril. Krüptoalgoritmide peamised liigid. - PowerPoint PPT Presentation

Transcript of Andmeturve ja kr¼ptoloogia, X Kr¼ptor¤sid. Kr¼ptoprotokollid, TLS

  • Andmeturve ja krptoloogia, X

    Krptorsid. Krptoprotokollid, TLS

    1. november 2011

    Valdo Praust

    mois@mois.ee

    Loengukursus IT Kolledis2011. aasta sgissemestril

  • Krptoalgoritmide peamised liigidSmmeetrilised ehk salajase vtmega krptoalgoritmid (on traditsioonilised e ajaloolised)

    Asmmeetrilised ehk avaliku vtmega krptoalgoritmid (levinud viimase 25 aasta jooksul)

    Krptograafilised snumilhendi algoritmid ehk krptorsid jms sellesarnased funktsioonid

    Eriotstarbega algoritmid testusteks, autentimisteks, ajatempli jaoks jm

  • Krptorsi ehk krptograafiline snumilhendKrptorsi ehk krptograafiline snumilhend (cryptographic message digest, hash, fingerprint, thumbprint) on kskik kui pikast snumist (failist) teatud matemaatiliste eeskirjade jrgi arvutatav lhike (paarsada bitti) teabekogumSee seos on hesuunaline (one-way): etteantud snumilhendi korral ei ole vimalik tuletada faili, millele see snumilhend vastab

  • Krptorsi: kasutusalaKui meil on olemas paar snum ja rsi (snumilhend) , kus rsi vastab failile, vime olla igal juhul kindlad, et rsi on arvutatud kindlasti sellest failist ega mitte millestki muust Krptorside peamine kasutusala on autentimisel ja tervikluse tagamisel (nt digiallkirja juures)ks rsi kasutamise peamisi phjuseid seisneb asjaolus, et avaliku vtmega krptoalgoritm ei ole vimeline ttlema suuri andmemahte

  • Krptorsi ehk krptograafiline snumilhend: toimimisskeem

  • Krptorsi funktsioonide siseehitus

    Oluline osa enamikes kaasaja rsifunktsioonides on nn tihendusfunktsioonil F (compression function), mis teeb fikseeritud pikkusega bitijada lhemaks fikseeritud pikkusega jadaks hesuunalise funktsiooni abil. Seda kasutatakse iteratiivselt:

  • Rsifunktsioon ja selle tulemKrptorsi ehk krptograafiline snumilhend on meldud pikast snumist psipikkusega lhikese bitijada, nn snumilhendi ehk rsi (message digest) tekitamiseks, millel oleksid teatud eriomadusedRsi ehk snumilhend on tpsemini vtmeta rsifunktsiooni vljund, sltudes vaid snumistAlgoritmi, mis snumilhendi tekitab, nimetatakse (krptograafilisteks) rsifunktsiooniks (hash function)

  • Rsifunktsioonilt nutavad omadusedalgse snumi mistahes muutused peavad phjustama muutuse ka lhendis (rsis)ka pika snumi rsi peab olema lihtsate protseduuridega leitavrsi leidmise algoritm ei tohi olla pratav: etteantud rsi korral ei tohi praktikas olla vimalik leida sellega sobivat snumitetteantud rsi korral ei tohi olla leitav teist snumit, mis annaks sama rsi nrk kollisioonivabadusei tohi olla leitav sellist snumitepaari, mis annaks sama rsi kollisioonivabadustihendusfunktsioon F peab olema kollisioonivaba pseudo-kollisioonivabadus

  • Rsifunktsioonide liigitusKaasajal nutakse rsifunktsioonidelt reeglina kollisioonivabadust (tugevamaid omadusi)hesuunaline (one-way) on selline rsifunktsioon, mis ei ole pratav ja on nrgalt kollisioonivaba

    Kollisioonivaba (collision-free) on selline rsifunktsioon, millel on lisaks veel kollisioonivabaduse omadus

  • SnnipevaparadoksSnnipevaparadoks: tenosus, et N inimesel langeb kahel snnipev omavahel kokku, kasvab N kasvades suurusega N2 vrdeliselt ehk vga kiirestiPhjus: uute elementide lisamisel tekib juurde jrjest rohkem elementide paare (sidemeid nende vahel) N korral on neid paare N2 N

    N=23 juures on see tenosus .

  • Snnipevaparadoksi mju rsifunktsioonideleJreldus snnipevaparadoksist: kui rsifunktsiooni vljund on N bitine, siis tenosus, et K katsel saadakse vhemalt kaks identset snumilhendit on K = 1,17 2N/2

    Lihtsaimaks krptoanaltiliseks rndeks (ammendavaks otsinguks) on N-bitilise vljundiga rsifunktsiooni korral vaja 2N/2 variandi lbivaatamist

  • Praktikas kasutatavaid hid rsifunktsioone

    SHA-1 konstrueeriti 1996. aastal MD4-l phineva ideoloogia phjal NSAs viimase turvalisust tugevdades. Rsi pikkus on 160 bitti (20 baiti)

    RIPEMD-160 konstrueeriti 1990te algul Belgias, leiab 160-bitise rsi

  • Praktikas keelatud (vi rmiselt ebasoovitavaid) rsifunktsioone

    MD5 vlja ttatud Ron Rivesti poolt. Leiab 128-bitise rsi ehk snumilhendi

    MD2, MD4 MD5 eellased, vlja ttatud samuti Ron Rivesti poolt, leiab 128-bitise rsi On leitud kollisioone ja praktilisi murdmsvtteid. Sellest hoolimata on eriti just MD5 siiski kahjuks senini masskasutuses praktikas

  • Pilk ajalukku: MD2 ja MD4On koostatud Ron Rivesti poolt 1989 ja 1990

    Sarnanevad MD5ga nii rsi pikkuselt (128 bitti) kui ka ehituselt (raundid, snumi perioodiline ttlemine)

    Alates 1994-95 on mlemal leitud kollisioone. MD4-l osatakse neid kaasajal leida tavalise personaalarvutiga juba mne sekundigaJreldus: MD2 ja MD4 on lahti murtud nad ei ole enam turvalised ega sobivad kasutada

  • MD5: ldfakte ja kirjeldusRsi ehik lhendi pikkus on 128 bitti

    On koostatud 1991 Ron Rivesti poolt

    On omal ajal kuulutatud Interneti de facto standardiks RFC 1324

    Algoritm koosneb neljast ksteisest erinevast raundist (round), mille vltel snumit tdeldakse 512 biti kaupa

    Iga raundi alguses vetakse eelmise raundi lpptulemus ja segatakse sellesse jrgmised 512 bitti

  • MD5 konstandid ja funktsioonid

  • MD5 esimesed 2 raundi

  • MD5: 3. ja 4. raund

  • MD5: skeem

  • MD5 turvalisus ja anals128 bitti on snnipevarnde vimalust arvestades kaasajal vhe (peaks olema 160)

    1993 leiti tihendusfunktsioonil kollisioone (Boer, Bosselaers)

    2004 leiti lpuks ka tervel algoritmil kollisioone (Wang, Feng, Lai, Yu, tund suurarvutil)

    2005 suudeti praktikas murda MD5-l phinevaid signatuure (Lenstra, Wang, Weger)

    2006 suudetakse kollisioone leida minutiga (Klima)

  • MD5: hdaprased ajutised kasutusvimalusedErandjuhtudel on lubatud 2 ajutist hdavarianti:

    Vtmetugevdus (key strengthening) rsifunktsiooni kasutataksekaks korda jrjest, mis viib rndeaja palju pikemaks

    Paroolide ja rside soolamine (salting) enne rsi arvutamist lisatakse sool ehk juhuslik bitijada. Teeb palju keerukamaks snastikurnded (dictionary attack) jm sarnased vtted

    Nende kahe abivtte abil tugevdatud MD5 tuleks siiski kasutada vaid seal, kus moodsamaid rsifunktsioone pruukida ei saa

  • sarnaneb struktuuris vga paljus MD5ga

    on koostatud 1996. aastal MD5 eelkijat MD4 eeskujuks vtteks, kuid palju turvalisemaks tehes

    rsi ehk snumilhendi pikkus on suurem, 160 bitti

    muudes detailides sarnaneb suurelt osalt MD5ga neli raundi, iga raundi alguses vetakse eelmise raundi lpptulemus ja segatakse sellesse jrgmine osa, spetsiaalsed teisendusfunktsioonidSHA-1: ldfakte ja kirjeldus

  • SHA-1: skeem

  • on palju turvalisem kui MD5 ja palju laiemalt kasutuses

    ,asin, mis maksab umbes miljard krooni, leiab SHA1 kollisiooni mitte kiiremini kui tuhandete aastatega

    on ANSI X.90 standardi osa

    vikeste muudatustega on SHSi (Secure Hash Standard) osa, mis on spetsifitseeritud USA standardis FIPS PUB 180SHA-1: turvalisus ja kasutatavus

  • Kollisioonide kerge leidmine ei tee tegelikult SHA-1 veel pratavaks, seega praktikas murtavaks: praktikas on selle enamik kasutusresiime veel turvalised

    Krget turvalisust nudvates kohtades vib kasutada SHA moodsamaid variante: SHA-256, SHA-384 vi SHA-512 (ldine nimetus SHA-2)

    SHA-1 krptoanalsViimased tulemused (Wang, Lai, Yu, august 2005): SHA-1 korral on kollisioonid leitavad 263 variandi lbivaatamise teel, mis on ca 100 000 korda kiirem kui ammendava otsinguga

  • On koostatud 1990te algul Hans Dobbertini, Antoon Bosselaersi ja Bart Preneeli poolt

    Rsi ehk lhendi pikkus on 160 bitti

    Muus osas on enam-vhem sarnased MD5 ja SHA-1ga (raundide arv on suurem, 5)

    On olemas modifikatsioonid RIPEMD-128 (see oli RIPEMD-160 eellane), RIPEMD-256 ja RIPEMD-320, vastavalt 128, 256 ja 320 bitilise rsi tarbeks

    RIPEMD-160: ldfakte

  • RIPEMD-128 ei peeta enam turvaliseks. 1994 koostasid Paul van Oorschot ja Mike Wiener 10 miljonit dollarit maksva masina plaani, mis murraks selle ammendava otsinguga kuuga

    Praegu kuluks sellise masina ehitamisele veidi alla poole miljoni dollari (Moorei reegel: protsessori hind kahaneb pooleteise aastaga kaks korda)

    RIPEMD-160 arvatakse olevat veel vhemalt 10 aastat vga turvaline, ei ole leitud efekti andvaid krptoanaltilisi vtteidRIPEMD turvalisus

  • Krgendatud turve: RIPEMD-256 ja SHA-2RIPEMD-256 on RIPEMD-160 edasiarendus, kus rsi pikkus on 256 bitti (ja seega murdmine palju raskem)SHA-2 on rsifunktsioonide pere, kus SHA-1 on tugevama turbe saavutamiseks edasi arendatud ja rsi on pikem (224, 256, 384 vi 512 bitti)RIPEMD-256 vi SHA-2 on kaasajal mtet kasutada kahel juhul:- on vaja tagada rsi pikaajaline (aastakmnete pikkune murdmatus)- on vaja tagada erakordselt tugev turve (erakordselt krge tasemega terviklus)

  • Krptorside kasutamineOn kasutatavad peamiselt tervikluse tagamisel, kus nad on vga olulised mehhanismidNende vga suur kasutusala on digitaalsignatuuride ja ajatemplite juures

    Tulemus: me ei pea hoolitsema enam mahuka andmekogu, programmi vm volitamata muutmiste eest, vaid vime leida selle lhikese rsi ja hoolitseda selle muutumatuse eest (mida saame edaspidi alati vajadusel suure kogumiga vrrelda)

  • Snumi autentimiskoodOn vajalik rsiasendajana juhul, kui autentimise/verifitseerimise sooritajate hulka tuleb piirata (vtme valdajatega)Erineb avaliku vtmega krptoalgoritmist selle poolest, et MAC koostatakse ja verifitseeritakse sama vtmega

    Snumi autentimiskood (message authentication code, MAC) on nn vtmega rsifunktsioon, kus rsi arvutamine/verifitseerimine eeldab lisaks snumile ja rsile ka salajase vtme teadmist

  • Snumi autentimiskoodSnumi autentimiskoodi (MACi) jaoks reeglina oma unikaalseid algoritme vlja ei tta