Plokk - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

Plokk

Description:

Title: Plokk ifrid ja nende t viisid Author: Sven Laur Last modified by: Ahto Buldas Created Date: 3/25/1999 9:43:34 PM Document presentation format – PowerPoint PPT presentation

Number of Views:69
Avg rating:3.0/5.0
Slides: 38
Provided by: Sven122
Category:
Tags: plokk | vastu

less

Transcript and Presenter's Notes

Title: Plokk


1
Plokkšifrid ja nende tööviisid
  • Sven Laur

2
Plokkšifri põhiomadused
  • Plokkšiffer krüpteerib andmeid fikseeritud
    pikkusega plokkide kaupa.
  • Avateksti plokkideks jagamine tekitab probleeme.
    Poolik plokk tuleb täita nii, et ründaja ei saaks
    ploki kuju ründes kasutada.
  • Avateksti plokkideks jagamine tekitab
    andmeedastuses ebaühtlase kiiruse ja ei sobi
    seega ajakriitiliste andmete edastamiseks.

3
Tuntumad plokkšifrid (I)
  • 1973. DES(Data Encryption Standard) -
    tänaseks ebaturvaline liiga lühikese võtme (56
    bitti) pärast
  • 1983. FEAL(Fast Data Ecipherment Algorithm) -
    murti mitmel korral lahti, tulemuseks oli DES-iga
    võrdse turvalisusega, kuid keerulisem skeem.

4
Tuntumad plokkšifrid
  • 1992. IDEA(International Data Encryption
    Algoritm) -128 bitine võti on piisav, kuid
    64-bitine ploki suurus hakkab kujunema
    probleemiks.
  • 1994. SAFER(Secure and Fast Encryption Routine)
    -on olemas 64- ja 128-bitised versioonid.
  • 1995. RC5
    - on olemas 16-, 32-, 64-bitised
    versioonid.

5
Asendusšiffer
  • Definitsioon. Kui meil on bijektsioon
    e0,1l?0,1l ja nk?l, siis n-bitise ploki
    pikkusega asendusšiffer saadakse reegliga
  • E(m1m2...mk)e(m1)e(m2)...e(mk).
  • Ründed
  • - sagedusanalüüs
  • - teades paari m, E(m) on võimalik kindlaks
    määrata e(m1), e(m2), ..., e(mk) .

6
Mitmekohaline asendusšiffer
  • Definitsioon. Kui meil on bijektsioonid
    ei0,1l?0,1l ja nkl, siis n-bitise ploki
    pikkusega asendusšifer saadakse reegliga
  • E(m1m2...mk)e1(m1)e2(m2)...e3(mk).

7
Permutatsioonšiffer
  • Definitsioon. Olgu meil permutatsioon
    e1,2,..,k?1,2,...,k ja nkl, siis
    permu-tatsioonšiffer saadakse järgmise reegliga
  • E(m1m2...mk)me(1)me(2)...me(k).
  • Ründed
  • - statistiline analüüs
  • - ühte avateksti ja krüptogrammi teades on
    . võimalik teisendus osaliselt taastada.

8
Plokkšifri omadused
  • Definitsioon. Šiffer lisab korratust(confusion),
    kui krüptogrammide jaotuse järgi on raske määrata
    võtit. Korratus näitab mitu bitti on vaja šifri
    fikseerimiseks.
  • Definitsioon.Šiffer lisab hajuvust(diffusion),
    kui krüptogrammide jaotuse entroopia on suurem
    kui avatekstide entroopia. st. šiffer ühtlustab
    jaotust.

9
Plokkšifri omadused
  • Definitsioon. Šiffer on lineaarne kui iga
    avatekstide paari x ja y korral
  • E(x?y)E(x)?E(y),
  • kus ? on bitikaupa XOR (st. liitmine mod 2).
  • Kui šiffer on lineaarne, siis on tarvis teada
    vaid 1,2,4,...,2n-1 vastavaid krüptogramme, et
    šifrit murda
  • E(yn-1..y1y0)ynE(2n-1)???y1E(2) ? y0E(1).

10
Omaduste tabel

11
Rünne liitšifrile (I)
  • Olgu meil šiffer, mis koosneb permutatsioonšifrist
    M ja asendusšifrist S
  • E(00000)S(00)S(00)S(00)
  • E(000001), E(000010), ... , E(000100), E(001000)
    määrab ära permutatsiooni M.
  • Pärast seda määrame ühes alamblokis S ja arvutame
    kogu teisenduse.

12
Rünne liitšifrile (II)
  • Olgu näiteks pärast esimest analüüsi.
  • E(000100) määrab S(10)
  • E(001000) määrab S(01)
  • E(001100) määrab S(11)
  • E(000000) määrab S(00)
  • Teiste vastuste E(100000), E(000010), E(010000),
    E(000001) abil saab määrata, kuidas M kujutab
    teisi bitte.

X5
X0
X4
X3
X2
X1
S
S
S
13
Rünne liitšifrile (III)
  • Šifri murdmiseks kulub 161 avateksti ja
    krüptogrammi paari.
  • Permutatsioonšifri murdmiseks oleks kulunud 6
    avatekst-krüptogramm paari.
  • Asendusšifri murdmiseks oleks kulunud 4
    avatekst-krüptogramm paari.
  • Sellist rünnet, mis kasutab ära lineaarsust,
    nimetatakse erinevustega krüptoanalüüsiks.

14
Raundidega liitšiffer
  • Et muuta šifri ründamist keeruliseks, pannakse
    see kokku erinevatest liitšifritest -raundi
    šifritest.
  • Igal raundil on oma võti, kogu šifri võti
    saadakse raundi-võtmete ühendamisel.
  • E(00000) ja E(000001) korral on erinevus ühes
    Z-blokis ja seega ka ülimalt kahes Q-blokis.

15
2-raundilisele šifri ründe idee
  • Kui esimeses raundis tekib erinevus X01,10,11
    plokis Y1Y0, siis vastab sellele kõik erinevused
    plokis Z0Z1.
  • Vaid kolm erinevust võivad põhjustada ühe Q-ploki
    erinevuse.
  • Šifri analüüs on palju keerulisem, tänu kahele
    ebalineaarsusele.

0
0
X
I raund
Y5Y4
Y3Y2
Y1Y0
S3
S1
S2
M2
II raund
S6
S4
S5
16
IDEA ehitus (I)
  • 64-bitine plokk jagatakse neljaks 16-bitiseks
    alamplokiks.
  • Igas raundis kasutatakse 6 raundivõtit.
  • X?Y on 16-bitiste arvude bitikaupa XOR
  • 1011 0110 1100 1001
  • ? 1110 1010 0101 1011
  • 0101 1100 1001 0010

17
IDEA ehitus (II)
  • X?Y on 16-bitiste arvude liitmine mod 216
  • 1011 0110 1100 1001
  • ? 1110 1010 0101 1011
  • 1010 0001 0010 0100



18
IDEA ehitus (III)
  • X?Y on 16-bitiste arvude korrutamine mod 216 1
    järgi, kus 0 asendatakse 216.
  • 2161 on algarv ja seega iga nullist erinev arv b
    on pööratav, sest Eukleidese alg. järgi
  • 1süt(2161, b) ?(2161) ??b
  • 1? ??b mod (2161)
  • Reegel 0? 216 kindlustab üksühese vastavuse
    16-bitiste arvude ja pööratavate elementide
    vahel.

19
Raundi pööratavus
  • X?Y on pööratav, sest (X?Y) ?YX
  • X?Y on pööratav, sest (X?Y)?(-Y)Y
  • X?Y on pööratav, sest (X?Y) ?Y-1X
  • Kuna iga samm on pööratav ja igal sammul jääb üks
    tehte pool alles, siis on kogu protsess pööratav.
  • Eraldi vajab uurimist viimase sammu pööratavus.




20
Raundisisesed seosed
  • Väljundid ja sisemised muutujad on seotud
    omavahel järgnevalt
  • Y1W1?W4, Y2W5?W4
  • Y3W2?W3, Y4W6?W3
  • U1W1?W5 Y1?Y2
  • U2W2?W6 Y3?Y4
  • W1Y1 ? W4, W2Y3 ?W3
  • W5Y2 ? W4, W6Y4 ?W3

21
Raundivõtmete saamine
  • Esimesed kaheksa võtit saadakse 128-bitise ploki
    jagamisel kaheksaks 16-bitiseks alamplokiks.
  • Edasi nihutatakse võtmeplokki 25 biti võrra
    vasakule. Kuna 25 ja 128 on ühistegutita, siis
    saab sellisel viisil genereerida kokku 128
    erinevat raundi alamvõtit.

22
IDEA ja ideaane salastatus
  • Esimese nelja võtmega tehte tulemus on ideaalselt
    salastav šiffer, kui iga raundi alamvõtmed K1,
    K2, K3, K4 on võetud ühtlase jaotusega, sest
    võtmete, sisend ja väljundväärtuste arv on sama.
  • Kui ründaja teaks W1, W2, W5, W6, siis ei annaks
    see talle mitte mingit teadmist X1, X2, X3, X4
    kohta, sest p(xy)p(x).

23
IDEA ja korratus
  • Nõrk korratus tähendaks, et raundi teisendust
    saaks kirjeldada vähem kui 6?16 bitiga. See
    tähendaks, et arvutuskeemi oleks võimalik kuidagi
    lihtsustada.
  • IDEA igale tehtele eelnevad teist tüüpi tehted.
    Tehete vahel puuduvad lihtsad seosed, nagu
    X?(Y?Z) (X?Y)?Z või X?(Y?Z) (X?Z)?(Y?Z).






24
IDEA ja korratus
  • Üks võimalus oleks simuleerida ühte tehet teise
    abil. Matemaatiliselt näeb see välja nii
  • ?(X)??(Y)?(X?Y),
  • kus ?, ? ja ? on bijektsioonid.
  • Ainsad tehted, mille korral see on võimalik on ?
    ja ?.
  • Kõige selle tõttu saab näidata, et raundi
    kirjeldust ei õnnestu lühendada.


25
IDEA ja hajuvus
  • Et šiffer hajuvutaks sisendit peab iga sisendbitt
    mõjutama igat väljundbitti.
  • IDEA puhul saavutatakse see keskmise kahese
    plokiga MA(U1, U2, K5, K6).
  • Neli tehet on minimaalne arv operatsioone, mida
    on vaja, et saavutada väljundite täielik sõltuvus
    U1, U2, K5, K6, kui nõuda MA plokilt teisenduse
    üksühesust.

26
MA ploki hajuvus (I)
  • Fikseerime sisendid U1, U2.
  • Lihtne on veenduda, et olenemata V2 on W4 väärtus
    ühtlase jaotuse-ga, kui K6 on võetud ühtlaselt.
  • Kuna V1 ja W4 on sõltumatud ühtlase jaotusega
    suurused, siis W3 on ühtlase jaotusega ja
    sõltumatu suurusest W4.

U1
U2

K5
?
?
V1
V2

?
?
K6
W3
W4
27
MA ploki hajuvus (II)
  • Fikseerime võtmed K5 ja K6 ning valime U1 ja U2
    ühtlaselt ja teineteisest sõltumatult.
  • Lihtne on veenduda, et V1 ja V2 on sõltumatud
    juhuslikud suurused ning seega on ka W3 ja W4
    sõltumatud juhuslikud suurused.

U1
U2

K5
?
?
V1
V2

?
?
K6
W3
W4
28
Hajuvuse ülekandumine
  • Kui muuta vaid ühte sisendplokki, siis tekib
    erinevus plokis U1 või U2 ning kuna ründaja ei
    tea võtmeid K5 ja K6, siis on väga raske
    analüüsida millised bitid MA väljundites W3 ja
    W4 jäävad samaks.
  • Seetõttu on väga raske valida avatekste, mille
    krüptogrammide erinevus iseloomustaks konkreetset
    alamvõtit Ki.

29
Plokkšifrite tööviisid
  • Meil on tarvis krüpteerida rohkem kui üks plokk
    sama võtmega.
  • Milline võiks olla plokkšifri tööviis, et selle
    murdmine oleks võimalikult raske?
  • Mitu plokki läheb kaduma kui mingi ploki
    ülekandumise korral tekib viga?
  • Kas on võimalik kaitsta teksti selle muutmise
    eest?

30
Koodiraamat (ECB)
  • Iga plokk krüpteeritakse sama võtmega
    E(X1X2...Xn)EK(X1)EK(X1)...EK(Xn)
  • Ühele ja samale avatekstile vastab sama
    krüptogramm.
  • Plokke võib suvaliselt ümber järjestada
  • Viga ühes plokis ei kandu edasi.
  • Võimalik on sõnastikrünne.

31
Aheltööviis (CBC)
  • Iga ploki krüpteerimisel kasutatakse eelmise
    ploki krüptogrammi. Alustatakse algväärtusega IV,
    mis on avalik.
  • Krüpteerimine
  • Y0IV, YkEK(Xk?Yk-1)
  • Dekrüpteerimine
  • Y0IV, XkDK(Yk) ?Yk-1

32
Aheltööviisi omadused (I)
  • Ühele ja sama avateksti krüptogramm sõltub
    alväärtusest IV, mida tuleb kaitsta.
  • Krüptogrammide ümberjärjestamine muudab
    dekrüpteerimise tulemust.
  • Aheltööviis ei kaitse andmete terviklust -
    saab kustutada esimesi/viimaseid plokke
    - kui on edastatud palju andmeid saab
    erinevaid krüptogramme veatult põimida.

33
Aheltööviisi omadused (II)
  • Põimimise tõenäosus muutub märgatavaks kui on ära
    saadetud 2k/2 plokki, kus k on ploki pikkus. See
    on tingitud sünnipäeva paradoksist.
  • Viga ühes plokis kahjustab kahte plokki.
  • Krüpteeritavate avatekstide Xk?Yk-1 jaotus on
    keeruline ning seega on raske analüüsida šifri ja
    ahelrežiimi turvalisuse vahekorda.

34
Loendur-tööviis
  • Plokkšifrit kasutatakse pseudojuhusliku bitijada
    allikana ning one-time pad'i krüpteerimiseks.
    Algväärtus IV on avalik.
  • Krüpteerimine
  • YkEK(IVk)?Xk
  • Dekrüpteerimine
  • XkEK(IVk)?Yk

35
Loendur-tööviisi omadused (I)
  • Ühele ja sama avateksti krüptogramm sõltub
    alväärtusest IV, mida tuleb kaitsta.
  • Krüptogrammide ümberjärjestamine muudab
    dekrüpteerimise tulemust.
  • Loendurtööviis ei kaitse andmete terviklust
    -
    alati saab kustutada viimaseid plokke
    - muuta andmeid XOR-i võrra
  • Juhusliku IV korral saab teha XOR analüüsi.

36
Loendur-tööviisi omadused (II)
  • Kui iga sessiooni käigus IV suurendada, siis
    saab krüpteerida 2k plokki ilma XOR analüüsi
    ohuta.
  • Viga ühes plokis kahjustab ühte plokki.
  • Kui šiffer on turvaline valitud avateksti rünnaku
    vastu, mis kasutab 2l paari, siis on seda ka
    loendur-tööviis. Nõrga šifri korral on
    loendur-tööviis ebaturvalisem kui aheltööviis.

37
Üldised märkused
  • Krüpteerimine ei kaitse andmete terviklust.
  • Tervikluse kaitsmiseks tuleb kasutata andmete
    signeerimist (MAC).
  • Kui õnnestub teada saada Y vastav avatekst, siis
    loendur-tööviisis saab seda kasutada vaid üks
    kord, aheltööviisis võib õnnestuda seda kasutada
    mitmes kohas.
Write a Comment
User Comments (0)
About PowerShow.com