shannoni teooria
DESCRIPTION
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; - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/1.jpg)
Shannoni teooria
Sven Laur
![Page 2: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/2.jpg)
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.
![Page 3: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/3.jpg)
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
![Page 4: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/4.jpg)
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).
![Page 5: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/5.jpg)
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.
![Page 6: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/6.jpg)
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).
p(y|x)p(x) p(y)
![Page 7: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/7.jpg)
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.
![Page 8: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/8.jpg)
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.
![Page 9: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/9.jpg)
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 ? ? ? ? ? ? ? ? ? ? ? ? ? ?
![Page 10: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/10.jpg)
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|.
![Page 11: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/11.jpg)
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.
![Page 12: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/12.jpg)
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.
x1 x2 x3 … xnk1 k2 k3 … kn
y1 y2 y3 … yn
![Page 13: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/13.jpg)
Entoopia — infomatsiooni mõõtXjju 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.
Kummas sõnumis on rohkem informatsiooni? Esimeses?
![Page 14: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/14.jpg)
Entoopia — infomatsiooni mõõtXjju opfd6
jHlstnqp kfv
jksprrm,c73ks0aödmnsqlqpgbö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.
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!
![Page 15: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/15.jpg)
Mündivise
• 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
![Page 16: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/16.jpg)
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 pi log2 pi = -i pi [X=xi] log2 p[X=xi]
X1 X2 ... Xn
p1 p2 ... pn
![Page 17: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/17.jpg)
Entroopia omadused I
• Entroopia ei sõltu logaritmi baasist.
• Kui juhuslikul suurusel X on n võimalikku olekut, siis 0 H(X) log2 n.
• 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.
![Page 18: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/18.jpg)
Kodeerimine
• Kodeerimise abstraktne mudel
f: X{0,1}*
f(x1x2...xn)=f(x1)||f(x2)||...||f(xn)
• Iga kodeering ei ole dekodeeritava b c d
f 1 10 100 1000g 0 10 110 111h 0 01 10 11
h(ba) = 010 h(ac) = 010
![Page 19: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/19.jpg)
• 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.
Prefikskoodid
koodsõna 1 koodsõna 2
![Page 20: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/20.jpg)
Huffmani puud
• 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
k l i o a0.05 0.10 0.12 0.13 0.60
0.15
0.10 l
0.05 k
0.13 o
0.25
0.12 i
0.40
1.0
0.60 a
0
0
0
1
1
101
![Page 21: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/21.jpg)
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
![Page 22: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/22.jpg)
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.
![Page 23: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/23.jpg)
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.
![Page 24: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/24.jpg)
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.
X1 X2 ... Xm
Y1 r11 r12 ... r1m q1
Y2 r21 r22 ... r2m q2
... ... ... ... ... ..Yn rn1 rn2 ... rnm qn p1 p2 ... pm 1
![Page 25: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/25.jpg)
Tingimuslik entroopia I• Definitsioon.Olgu X ja Y juhuslikud suuru-
sed. Siis iga Y väärtuse y korral saab defi-neerida
H(X|y) = -x p(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)
![Page 26: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/26.jpg)
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)
![Page 27: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/27.jpg)
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).
![Page 28: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/28.jpg)
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.
![Page 29: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/29.jpg)
Krüptosüsteemide korrutis
• Krüptosüsteeme on võimalik järjest rakendada, harilikult on siis avatekstide ja krüptogrammide hulk sama.
X E1(x) E2E1(x)E1
K1
E2
K2
XE1(x)D1D2
K1K2
Carol
![Page 30: Shannoni teooria](https://reader031.vdocuments.pub/reader031/viewer/2022012402/56814088550346895dac119c/html5/thumbnails/30.jpg)
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!