300 likes | 667 Views
Shannoni teooria. Sven Laur. Shannoni salastusteooria. Kerchoffi printsiip . Ründaja teab alati krüptosüsteemi ehitust. Ainus hoitav saladus on krüpteerimisvõti. Šiffri turvalisus võib hinnata kahel moel: turvalisus piiratud arvutusvõimsusega ründaja vastu;
E N D
Shannoni teooria Sven Laur
Shannoni salastusteooria • Kerchoffi printsiip. Ründaja teab alati krüptosüsteemi ehitust. Ainus hoitav saladus on krüpteerimisvõti. • Šiffri turvalisus võib hinnata kahel moel: • turvalisus piiratud arvutusvõimsusega ründaja vastu; • turvalisus piiramatu arvutusvõimsusega ründaja vastu.
Tõenäosusteooria elemendid I • Definitsioon. Juhuslik suurus X, võib omandada väärtusi hulgast X1,X2,...,Xn, kuid millist, see pole kindel. Iga kord kui me uurime, mis on X väärtus, võtab see mingi väärtuse Xi. Kui teha lõpmata palju katseid, siis p(Xi) = katsete arv, kus X=Xi kõigi katsete arv
Tõenäosusteooria elemendid II • Definitsioon. Kahe juhuslikus suuruse poolt tekitatud liittõenäosuse p(xi,yj) all mõistetakse sündmuse tõenäosust, et katses X=xi ja Y=yi. Tingimusliku tõenäosuse p(xi|yj) mõistetakse sündmuse X=xi tõenäosust, kui on toimunud sündmus Y=yj. • On ilmne p(x,y) = p(x|y)p(y).
Sõltumatud juhuslikud suurused • Kui kui juhusliku suuruse X väärtus ei sõltu Y väärtusest ja vastupidi, siis on sündmused sõltumatud. Tõenäosuse keeles tähendab see p(x|y) = p(x) <=> p(x,y) =p(x)p(y) iga X võimaliku väärtuse x ja Y võimaliku väärtuse y korral.
p(y|x)p(x) p(y) Bayesi valem.Täistõenäosus • Tingimuslikud tõenäosused on omavahel seotud p(x|y) = , kui p(y) > 0. • Kui juhuslik suurus Y võib omandada väärtusi y1,y2,..yn, siis tõenäosus X=xi avaldub p(x)=jp(yj)p(x|yj).
Krüpteerimine ja tõenäosus • Olgu võtmeruumis K määratud võtme K võtmise tõenäosus pK(K) ja avatekstide hulgal määratud teksti x võtmise tõenäosus pP(x), siis saab arvutada krüptogrammide tõenäosusjaotuse pC(y). pC(y)=KK yC(K)pP(dK(y))pK(K) • Intuitiivselt on šiffer turvaline vaid siis, kui tõenäosusesed pK, pP ja pC on sõltumatud.
Ideaalne salastatus I • Tingimus pK ja pP on sõltumatud on enamasti täidetud. • Ründaja teab kindlasti pP, pC ja pK. • Definitsioon. Šiffer on ideaalselt salastav kui pP(x|y)=p(x) iga xP ja yC. See tähendab, et krüptogrammi vaatlemine ei saa anda mitte mingisugust informatsiooni avateksti kohta.
Nihkešiffri turvalisus • Teoreem. Kui nihkešifri võtmed on võetud ühtlase jaotusega, siis ühe avateksti krüptogramm on ideaalselt salatatud. • Niipea kui me kasutame nihkešifri võtit rohkem kui üks kord, on šiffer lihtsalt murtav. J N G S T L D J D K K J Z J R K ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Ideaalne salastus II • Iga krüptogrammi y esinemistõenäosus peab olema nullist erinev. • Iga avateksti x ja krüptogrammi y korral peab leiduma võti K nii, et eK(x)=y. • Peab olema täidetud tingimus |P| |C| |K|.
Ideaalse salastuse tingimus • Krüptosüsteem, kus |P|=|C|=|K|, täidab ideaalse salastuse tingimust siis ja ainult siis, kui võtmeid valitakse ühtlase jaotusega ning iga xP ja iga yC leidub täpselt üks võti nii, et eK(x)=y.
One-time Pad • 1917. aastal avastas Vernam lihtsa krüptosüsteemi One-Time Pad'i. • See on ideaalselt salastav, kui krüpteeritava teksti pikkus on võrdne võtme pikkusega. Niipea, kui võit kasutada mitu korda järjest, lekib infot. Pikad võtmed on probleem.
Xjju dopfd6p jHlopstnqp kafv jjksprorm,c73ks0aödmn spqlqpgböyosg7am3+ 2oifodkäjufuj ifj fush s.aucv.iftd-scb, u6föatjglu40wjy2+a' Ma prantslane Pariisi kodanik ja selle üle olen õnnelik. Ent varsti köie kaudu, süld mis pikk, saab teada kael, mis kaalub tagumik. Entoopia — infomatsiooni mõõt Kummas sõnumis on rohkem informatsiooni? Esimeses?
Xjju opfd6 jHlstnqp kfv jksprrm,c73ks0aödmn sqlqpgböyosg7am3 2ifodkäjufuj j fush saucv.ifd-scb, uföatjlu40wjy2a' Ma prntslan Parsi kodnik a selle üe olen õnnelik. Et varsti köie kaud, sld mis pi, sab tead kael, ms kaalb tagumk. Entoopia — infomatsiooni mõõt Hoopis teises sõnumis on rohkem informatsiooni, sest erinevalt esimesest sõnumist ei ole teise sõnumi lüngad ülejäänud sõnumi põhjal taasatatavad!
Mündiviske tulemus: KULL või KIRI Loomulik viis selle kodeerimiseks KULL=1, KIRI=0 Iga viske kirjeldamiseks kulub 1 bitt. Kahe mündi viskamine: 2xKULL, 2xKIRI, MUU Kodeerime selle teisiti 2xKULL=10, 2xKIRI=11, MUU=0 Keskmiselt kulub kirjeldamiseks 1/21+1/42+1/42=3/2 bitti Mündivise
Entroopia formaalne definitsioon • Definitsioon. Olgu X juhuslik suurus, millel on lõplik hulk hulk võimalikke väärtusi siis jaotuse p(X)entroopiaks nimetatakse suurust H(X) = -i pilog2pi = -i pi [X=xi] log2 p[X=xi]
Entroopia omadused I • Entroopia ei sõltu logaritmi baasist. • Kui juhuslikul suurusel X on n võimalikku olekut, siis 0 H(X) log2n. • Kui mida väiksem on entroopia, seda etteaimatavam on juhuslik suurus. • Entroopia H(X)=0 siis ja ainult siis, kui leidub väärtus Xi nii, et p(Xi)=1.
Kodeerimine • Kodeerimise abstraktne mudel f: X{0,1}* f(x1x2...xn)=f(x1)||f(x2)||...||f(xn) • Iga kodeering ei ole dekodeeritav h(ba) = 010 h(ac) = 010
Prefikskoodid • Definitsioon. Kui ei leidu ühtegi koodsõna, mis oleks teise koodsõna prefiks(esimesed n sümbolit), siis nimetatakse koodi prefikskoodiks. • Prefikskoodi dekodeerimine on mugav, piisab teksti ühekordsest läbivaatusest. koodsõna 1 koodsõna 2
Puu ehitatakse alt ülesse nii, et alati on vaskul väiksem sagedus. Lehe kodeering on määratud teega a - 1 i - 010 k - 000 o - 011 l - 001 1 0 1.0 0.25 0.40 0.60 a 0 1 0.15 1 0 1 0 0.12 i 0.13 o 0.05 k 0.10 l Huffmani puud
Kumerad funktsioonid • Kumer funktsioon on teda lõikavast sirgest ülalpool. • Kumeruse tingimus f(x+(1- )y) f(x) +(1- )f(y) 0 1 • Range kumerus f(x+(1- )y) >f(x) +(1- )f(y) 0 < <1
Jenseni võrratus • Teoreem. Kui funktsioon on lõigus [c,d] rangelt kumer ja mittenegatiivsete arvude korral a1+a2+...+an=1 ning xi[c,d], siis kehtib võrratus f(a1x1+a2x2+...+anxn) a1f(x1)+a2f(x2)+...+anf(xn), kusjuures võrdus leiab aset parajasti siis, kui x1=x2=...=xn.
Entroopia omadused II • Teoreem. Kui juhusliku suuruse X tõenäo-susjaotus on p1,p2,..pn > 0, siis jaotuse ent-roopia rahuldab 0 H(X) log2 n. Võrdus H(X) = log2 n kehtib vaid siis, kui on tegu ühtlase jaotusega, st. pi=1/n.
Entroopia omadused III • Teoreem. Kahe juhusliku suuruse summarne entroopia H(X,Y) H(X)+H(Y). Võrdus kehtib vaid siis, kui X ja Y on sõltumatud suurused.
Tingimuslik entroopia I • Definitsioon.Olgu X ja Y juhuslikud suuru-sed. Siis iga Y väärtuse y korral saab defi-neerida H(X|y) = -xp(x|y)log2 p(x|y), tingimuslik entroopia H(X|Y) on kaalutud keskmine H(X|Y) =yp(y) H(X|y) H(X|Y) =-yxp(y)p(x|y)log2 p(x|y)
Tingimuslik entroopia II • Teoreem. Kehtib võrdus H(X,Y)=H(Y)+H(X|Y). • Järeldus. Kõikide juhuslike suuruste X ja Y korral kehtib H(X|Y) H(X), kusjuures H(X|Y)=H(X) parajasti siis, kui X ja Y on sõltumatud suurused. • rij = p(xi,yj) = p(xi|yj)p(yj)
Info lekkimine krüpteerimisel • Alati kaasneb krüpteerimisega info võima-likest võtme väärtustest, sest avatekstide valik ei ole ühtlase jaotusega. Krüptogramme analüüsides võib alati osa võtmeid kõrvale jätta, sest need vastavad mõttetutele avatekstidele. • Et mõõta kui palju infot annab krüptogram-mide analüüs, uuritakse entroopiat H(K|C).
Valevõtmed • Teoreem. Krüptosüsteemi korral H(K|C) = H(K) + H(P) - H(C). • Definitsioon. Lekkepiir on keskmine krüptogrammide hulk, mida analüüsides on võimalik määrata üheselt võti. See on määratud avatekstide struktuuri ja võimalike võtmete arvuga. • Näiteks inglise keeles kulub ühele tähele 1.5 bitti.
E1 E2 D2 D1 X E1(x) E2E1(x) E1(x) X K1 K2 K2 K1 Carol Krüptosüsteemide korrutis • Krüptosüsteeme on võimalik järjest rakendada, harilikult on siis avatekstide ja krüptogrammide hulk sama.
Korrutise omadused • Korrutis on assotsiatiivne: (S1S2)S3=S1 (S2 S3) • Korrutis ei ole reeglina kommutatiivne: S1S2 S2 S1 • Korrutise turvalisus vajab eraldi uurimist. See võib olla nõrgem mõlemast tegurist. KRÜPTOGRAAFIA! S1-tähtede vahetus RKPÜOTRGAAIF!A S2 -tähtede vahetus KRÜPTOGRAAFIA!