mbis_02

30
Bezpečnost informačních systémů (přednáška 2) Doc. Ing. Karel Burda, CSc. FEKT VUT v Brně

Upload: lukas-luke-geyer

Post on 22-Nov-2014

76 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: MBIS_02

Bezpečnost informa čních systém ů

(přednáška 2)

Doc. Ing. Karel Burda, CSc.FEKT VUT v Brn ě

Page 2: MBIS_02

T: Symetrické kryptosystémy

1. Úvod2. Proudové šifry3. Blokové šifry4. Závěr

Program

Page 3: MBIS_02

1. Úvod

Page 4: MBIS_02

Úvod

• šifra (šifrovací algoritmus) slouží k transformaci informace do nesrozumitelné podoby a naopak,

• typy:- symetrické (šifrovací i dešifrovací klíče musí být tajné), Zpravidla platí: KE = KD = K.

- proudová šifra (nejrychlejší, menší bezpečnost),- bloková šifra (rychlá, nejvyšší bezpečnost),

- asymetrické (jeden klíč soukromý, druhý veřejný).

Page 5: MBIS_02

Symetrické kryptosystémy

Symetrické kryptosystémy:- proudová šifra (stream cipher): ci = f(zi, K),- bloková šifra (block cipher): ci = f(z1... zn, K).

kde n je délka bloku zprávy (n = 64/128/192/256 bit).

bit kryptogramu ci

bit zprávy zi

bit hesla hi

(z generátoru hesla)

(závisí na K)

a) proudová šifra b) bloková šifra

blok kryptogramu

blok zprávy

ŠIFRÁTOR

c1 c2 ... ci ... cn = Cj

z1 z2 ... zi ... zn = Zj

K

Page 6: MBIS_02

2. Proudové šifry

Page 7: MBIS_02

Princip proudových šifer

• Proudová šifra ("stream cipher").• Prakticky se jedná o variantu strojové dokonalé šifry. Heslo však není uloženo na paměťovém médiu, ale je generováno konečně -stavovým automatem - tzv. generátorem hesla (pseudonáhodnépostupnosti) na základě klíče K.

Operace XOR: Zpráva Z: 0 1 0 1 0 1 0 1 ... 0 ⊕ 0 = 0 Heslo H: 1 0 1 1 0 0 1 1 ...0 ⊕ 1 = 1 Kryptogram C: 1 1 1 0 0 1 1 0 ...1 ⊕ 0 = 1 Heslo H: 1 0 1 1 0 0 1 1 ...1 ⊕ 1 = 0 Zpráva Z: 0 1 0 1 0 1 0 1 ...

Generátorhesla

K

zi

hi

ci

Generátorhesla

ci

hi

zi

K

Přenosový kanál

Page 8: MBIS_02

Náhodné a pseudonáhodné postupnosti

• Náhodná postupnost: postupnost bitů, která má náhodný charakter. Obvykle je generována na základě náhodných dějů (teplotní šum, radioaktivní rozpad atomů ...).Náhodné postupnosti se využívají při generování klíčů.

• Pseudonáhodná postupnost (PNP): postupnost bitů, která se nazákladě statistických testů jeví jako náhodná, avšak je generována deterministickým způsobem.

• Generátor pseudonáhodné postupnosti (PNP): generátor, který generuje pseudonáhodnou postupnost. Tato postupnost je v proudové šifře použita jako heslo.Typy:

- lineární (zpravidla LFSR – Linear Feedback Shift Register). - nelineární.

Page 9: MBIS_02

Platí:

kde i je pořadové číslo bitu PNP.Počáteční stav registru je klíč.

Maximální délka periody:dMx = 2r - 1, kde r je počet buněk registru. (V praxi r = 64, 128 apod.)

Lineární generátor PNP

• LFSR (Linear Feedback Shift Register): lineární generátor s posuvným registrem a s lineární zpětnou vazbou.

Posuvný registrA B C

Zpětná vazba

1007

1106

1115

0114

1013

0102

0011

1000

CBAi

ii

ii

iii

BC

AB

CBA

==

⊕=

+

+

+

1

1

1

Page 10: MBIS_02

• Obvykle nelineární kombinace několika LFSR.• Například šifra A5 (v GSM):

G1: r = 19 bit, G2: r = 22 bit, G3: r = 23 bit => Délka klíče = 64 bit.

Nelineární generátor PNP

G1

G2

G3

Změnit stav Střední bity

Logika

Výstup

LOGIKA: Změní se stav generátorů, které mají stejnéstřední bity.

zi = výstup z vokodéru

ci = vstup do kanálu

Page 11: MBIS_02

Struktura GSM

Terminály Základnovéstanice

GSM síť Ostatní sítě

BSC Ústředna

síť 1

. . .

síť n

BTS

BTS

BTS

A5 šifrování Nešifrováno!

Page 12: MBIS_02

Bezpečnostní slabiny GSM

• Volba přenosového režimu s šifrováním je na uživateli nezávislá. Šifrování navíc probíhá pouze mezi terminálem a BTS. => Operátor sítě může odposlouchávat.

• Šifra A5 je luštitelná v reálném čase (248 paralerizovatelnýchpředvýpočtů, heslo z 2 sec. hovoru, 300 GB disková paměť →šifrovací klíč lze odvodit řádově v minutách na běžném PC).

• Útok mužem uprostřed ("man-in-the-middle"). GSM skenerem ("GSMscanner" neboli "IMSI catcher") se lze vklínit mezi terminál a BTS.Skener se vůči terminálu chová jako BTS a vůči BTS se chová jakoterminál. Oběma protějškům oznámí, že nepodporuje šifrování a tak veškeré přenosy probíhají nešifrovaně.

• Zjištění klíče v SIM kartě.

Page 13: MBIS_02

Zajištění bezpečnosti v GSM síti

1) GSM má řadu systémových a tedy neodstranitelných bezpečnostních slabin.

2) Řešením je použití mobilních terminálů s nezávislým vlastnímšifrováním, vzájemnou autentizací a klíčovým hospodářstvím. Jejich nevýhodou je vzájemná nekompatibilita.Např. CryptoPhone G10, NSK 200 nebo Tiger XS.

Page 14: MBIS_02

Šifrování WLAN

• Síť WLAN: (standard 802.11)

Wireless Station(WS) 1

Page 15: MBIS_02

Protokol WEP

WEP (Wired Equivalent Privacy):• První verze zabezpečení WLAN (1999). Řada bezpečnostních slabin.Prakticky se již proto nepoužívá.

• Paket je šifrován proudovou šifrou RC4 klíčem KP = IV || K (64 bit),kde symbol || reprezentuje operaci zřetězení bloků.

• Inicializační vektor IV (24 bit) se generuje pro každý paket,• Tajný parametr K (40 bit) je klíč přístupového bodu. Do AP i WS se

zpravidla vkládá ručně.

rámec

RC4

CRC

Výpočet CRC

KIV

KP

IV rámec CRC

rámec

RC4

CRC

Výpočet CRC

KIV

KP

IV rámec CRC

odesílatel

rámec k odeslání přijatý rámec

příjemce

= ?

Page 16: MBIS_02

Útok na WEP prakticky

• V současné době jsou dostupné nástroje na vyluštění klíčů v sítích s protokolem WEP (např. AirSnort, AirCrack).

• Pomocí těchto nástrojů lze vyhledávat a analyzovat WLAN, monitorovat i zaznamenávat jejich provoz.

• Na základě dostatečného počtu zachycených rámců (cca 0,5 miliónu = 15-30 min. provozu) lze vyluštit použité klíče řádově v sekundách.

• Pro WLAN se doporučuje používat WPA (Wi-Fi Protected Access) nebo ještě bezpečnější IEEE 802.11i (WPA2).

Page 17: MBIS_02

Vlastnosti proudové šifry

• Proudové šifrátory jsou založeny na xorování zprávy spseudonáhodnou postupností.

• Vlastnosti proudových šifer:(+) velmi rychlé,(+) hardwarově nenáročné,(+) nešíří chyby,(+) délka zprávy může být libovolná,(-) méně odolné vůči kryptoanalýze,(-) problematické zajištění autentičnosti zpráv.

• Útok na autentičnost zprávy na základě její znalosti:1) Útočník zachytí ci = zi ⊕ hi.2) Ze znalosti zi odvodí hi = ci ⊕ zi.3) Příjemci odešle c'i = z'i ⊕ hi.4) Příjemce dešifruje c'i ⊕ hi = z'i, tj. přijme podvrženou zprávu.

Page 18: MBIS_02

3. Blokové šifry

Page 19: MBIS_02

Operace modulo nNotace: x mod n = y, kde: x je celé číslo, n je přirozené číslo,y ∈ {0, 1, 2, .., n-1}. Pro výslednou hodnotu y platí:

kde z je celé číslo, které je ve směru k (-∝) nejbližší číslu z. Libovolný celočíselný vstup se převede na jedno z n čísel

konečné množiny {0, 1, 2, .., n-1}.Pozn.: Operace XOR je sčítání modulo 2: y ∈ {0,... 2-1} = {0,1}.

Příklady:• 23 mod 4 = 23 - 23/4 · 4 = 23 - 5,75 · 4 = 23 - 5 · 4 = 3. • (-23) mod 4 = (-23) - (-23)/4 · 4 = (-23) - -5,75 · 4 =

= (-23) - (-6) · 4 = (-23) + 24 = 1.

Pozn.: Pro x > 0 je y rovno zbytku po dělení.

nn

xxy ⋅

−=

Page 20: MBIS_02

Základní blokové operace

Bloková operace: operace, která vstupnímu bloku bitů V přiřazujevýstupní blok bitů W.

Značení: W = F(V)V = (v0, v1, ..., vn-1),W = (w0, w1, ..., wn-1).

Typy blokových operací:• permutační,• substituční,• aritmetické.

Page 21: MBIS_02

Permutace

Permutace bitů: uspořádání bitů v bloku.Vstup: blok bitů V o délce n bitů.Výstup: blok bitů W o délce m bitů. Typy permutací:• prostá (n = m), např. V = 0110 → W = 1001,• zúžená (n > m), např. V = 0110 → W = 01,• rozšířená (n < m),např. V = 0110 → W = 101011.

Rotace: speciální případ permutace.Vstup: blok bitů V o délce n bitů.Výstup: blok bitů W o délce n bitů. Typy rotací:• vlevo o k bitů: W = ROL(V, k),

Např.: ROL(0110, 1) = 1100,• vpravo o k bitů: W = ROR(V, k),

Např.: ROR(0110, 2) = 1001.

Pozn.: ROL/ROR = Rotation On Left/Right.

Page 22: MBIS_02

Substituce

Substituce: nahrazení vstupního bloku bitů V jiným blokem bitů W.Pozn.: Na rozdíl od permutací a rotací může být v obou blocích odlišnýpočet "1" a "0".

Typy substitucí:• prostá (n = m), • zúžená (n > m)• rozšířená (n < m).

Přiklad prosté substituce pro n = 2:

1111

0110

0001

1000

VýstupVstup

S01 00

Page 23: MBIS_02

Aritmetické blokové operace

Aritmetické blokové operace: bloky bitů se chápou jako čísla.Dvojici vstupních bloků V a U se přiřazuje výstupní blok W nazákladě určitých aritmetických operací.

Například:• xorování W = V ⊕ U, kde wi = vi ⊕ ui

(0110) ⊕ (1100) = (1010).• sčítání modulo 2n, kde W = (V + U) mod 2n.

[(0110) + (1100)] mod 24 = (10010) mod 24 = (0010).

Page 24: MBIS_02

Princip blokové šifry

Legenda: Z = blok zprávy, C = blok kryptogramu, K = klíč.

a) šifrování b) dešifrování

elementární šifrátor/dešifrátor(tzv. stupeň nebo runda)

Page 25: MBIS_02

Stupeň (runda) Feistelovy šifry

Legenda: i = pořadové číslo stupně,Li = levá polovina bloku, Ri = pravá polovina bloku,Ki = klíč stupně,f(Ri, Ki) = funkce stupně.

Ki

Page 26: MBIS_02

Příklad funkce stupně (rundy)

Příklad tabulky substitučního bloku S1:

Ruský státní šifrovací standard (GOST 28147-89): Feistelovoschéma, 32 stupňů, délka bloku 64 bitů, délka klíče 256 bitů.

Page 27: MBIS_02

Příklad odvození klíčů stupňů

Klíč K o délce 256 bitů:

k2k1 k4k3 k6k5 k8k7

segment o délce 32 bitů

Ruský státní šifrovací standard (GOST 28147-89): Feistelovoschéma, 32 stupňů, délka bloku 64 bitů, délka klíče 256 bitů.

Klíče K1 až K32 o délce 32 bitů pro jednotlivé stupně:

Page 28: MBIS_02

Vlastnosti blokové šifry

• Blokové šifrátory jsou založeny na iterativním opakováni blokovýchoperací.

• Vlastnosti blokových šifer:(-) délka zprávy musí být násobkem délky bloku n,(-) šíří chyby (1 chyba v přijatém bloku kryptogramu → ≈ n/2 chyb v

dešifrovaném bloku zprávy,(+) poměrně rychlé,(+) hardwarově náročnější než proudové,(+) vysoce odolné vůči kryptoanalýze,(+) lepší zajištění autentičnosti zpráv (v důsledku šíření chyb),

• Nejpoužívanější blokové šifry:- AES (Advanced Encryption Standard, 1998):

délka bloku n = 128 b, délka klíče k = 128, 192, 256 b.- IDEA (International Data Encryption Algorithm, 1991): délka bloku n = 64 b, délka klíče k = 128 b.

Page 29: MBIS_02

4. Závěr

Page 30: MBIS_02

Závěr

• proudové šifrátory: (+) jednodušší, (+) rychlejší, (-) méně odolné vůči útokům,příklady: A5 v GSM, RC4 ve WEP (WLAN),

• blokové šifrátory:(+) odolnější vůči kryptoanalýze, (-) složitější, (-) pomalejší,příklady AES, IDEA, 3DES. Použití v IPSec, SSL, PGP.

Otázky ke zkoušce:3. Proudový šifrátor (princip, generátory PNP).4. Blokový šifrátor (princip, blokové operace, rundy).