7. Aplikovaná kryptografie
Zadání
konstrukce digitálního podpisu, zákon o elektronickém podpisu, správa veřejných klíčů, certifikační autority a infrastruktury veřejných klíčů. Autentizace uživatelů v počítačových systémech - tajné informace, tokeny, biometriky. Kerberos, bezpečnost v prostředí Internetu.
Vypracování
Šifrovanie
Šifrovanie delíme na symetrické a asymetrické.
Symetrické sa dalej delí na blokové a prúdové.
Symetrická šifra by mala mať nasledujúce vlastnosti:
Konstrukce digitálního podpisu
Schéma digitálního podpisu
Každý subjekt má 2 klíče:
Správný digitální podpis může vytvořit jen ten, kdo má k dispozici soukromý klíč. Pro ověření podpisu je nutné mít veřejný klíč podepsaného subjektu. Digitální podpis nedává sám o sobě žádnou záruku o době jeho vytvoření.
V praxi se digitální podpis vytváří následujícím způsobem (protože aplikace asymetrického algoritmu na rozsáhlé datové soubory je časově značně náročná):
vytvoří se hash (kontrolní součet datového souboru), který je vlastně přesnou reprezentací (charakteristikou) dat,
hash sa podepíše daným asymetrickým šifrovacím algoritmem (RSA) za pomoci privátního klíče.
Poté si každý, kdo zná patřičný veřejný klíč podepsané osoby, může ověřit platnost digitálního podpisu aplikací tohoto veřejného klíče, podepsaných dat (či haše) a digitálního podpisu za použití tzv. verifikačního algoritmu. Pokud je výsledek verifikace podpisu daných dat v pořádku, tak můžeme mít jistotu, že zpráva byla podepsána vlastníkem privátního klíče a že po podepsání již nebyla modifikována.
Najznámejší podpisový algoritmus RSA se používá taky na asymetrické šifrování. V současné době sa používá modulo o délkách 1024 až 4096 bitů.
Digitální podpis se používá k zajištění:
autenticity dokumentu (pravosť)
integrity dokumentu (nedošlo k zmenám)
nepopiratelnosti zodpovědnosti autora podpisu
Zákon o elektronickém podpisu
Zákon o elektronickém podpisu č. 227/2000 Sb. (změněn zákony č. 226/2002, 517/2002 a 440/2004 Sb.).
„Elektronickým podpisem se rozumí údaje v elektronické podobě, které jsou připojené k datové zprávě nebo jsou s ní logicky spojené a které slouží jako metoda k jednoznačnému ověření identity podepsané osoby ve vztahu k datové zprávě“
Elektronickým podpisem tak může být i pouhé jméno napsané na klávesnici.
Zaručený elektronický podpis
Je jednoznačně spojen s podepisující osobou (jen fyzická osoba!);
umožňuje identifikaci podepisující osoby ve vztahu k datové zprávě;
byl vytvořen a připojen k datové zprávě pomocí prostředků, které podepisující osoba může udržet pod svou výhradní kontrolou;
je k datové zprávě, ke které se vztahuje, připojen takovým způsobem, že je možno zjistit jakoukoliv následnou změnu dat
Elektronický podpis vs. značka
Elektronický podpis
podepisující osoba je fyzická osoba, která je držitelem prostředku pro vytváření elektronických podpisů a jedná jménem svým nebo jménem jiné fyzické či právnické osoby;
pro ověření podpisu je vydáván certifikát (veřejného klíče).
Elektronická značka
označující osobou fyzická osoba, právnická osoba nebo organizační složka státu, která drží prostředek pro vytváření elektronických značek a označuje datovou zprávu elektronickou značkou;
pro ověření podpisu je vydáván systémový certifikát (veřejného klíče).
Technologicky jde o totéž
Jen úroveň ochrany soukromého klíče je jiná (značka vznikla na to, aby bolo možné automatizovane a rýchlo podpisovať dokumenty, ekvivalent razítka).
Správa veřejných klíčů
Veřejné klíče jsou ve správě podpůrné struktury PKI (Public Key Infrastructure). PKI je systém technických prostředků, služeb a organizačních opatření určených ke správě veřejných klíčů.
PKI je založena na prvcích:
bezpečnostní politika (BP) – definuje pravidla pro provoz celé infrastruktury PKI
procedury – definice postupů pro generování, distribuci a používání klíčů
produkty – HW/SW komponenty pro generování, skladování a používání klíčů
autority – prosazují plnění BP s pomocí procedur a produktů
Komponenty PKI:
certifikační autorita (CA) – poskytovatel certifikační služby, vydavatel certifikátu
registrační autorita (RA) – registruje žadatele o vydání certifikátu a prověřuje jejich identitu
adresářová služba – prostředek pro uchovávánía distribuci platných klíčů a seznam zneplatněných certifikátů (CRL)
Schéma struktury CA
Certifikační autority
Certifikát
certifikát–veřejný klíč uživatele podepsaný soukromým klíčem důvěryhodné třetí strany
certifikát spojuje jméno držitele páru soukromého a veřejného klíče s tímto veřejným klíčem a potvrzuje tak identitu osoby
poskytuje záruku že identita spojená s vlastníkem daného veřejného klíče není podvržená
případně také představuje doklad o tom, že totožnost držitele veřejného klíče byla ověřena
Certifikační autorita - štruktúra:
CA sú usporiadané v hierarchii. To ma napr. výhody: rozloženie záťaže, špecializácia CA, výpadok jednej neohrozí zvyšok
Ak je CA dôveryhodná, všetky podriadené sú taktiež dôveryhodné
CA vydáva certifikáty na základe požiadavku od registračnej autority
RA overuje identitu žiadateľa, posiela požiadavku na vystavenie certifikátu (napr. nejaký úrad, ktorý overí identitu predložením občianského preukazu)
Revokačná autorita – umožňuje predčasné zrušenie platnosti certifikátu (e.g. v případě kompromitace privátního klíče)
Vrcholy stromů tvoří kořenové certifikační autority (e.g. Symantec, Comodo, z českých PostSignum, První certifikační autorita)
Podobu certifikátov špecifikuje štandard X.509
Certifikační proces probíhá v následujících krocích:
Odesílatel podepisovaného dokumentu žádá CA o digitální certifikát pro svůj veřejný klíč
CA ověřuje identitu žadatele (prostřednictvím RA) a certifikát vydává
CA ukládá certifikát do veřejně přístupného on-line repozitáře
Odesílatel podepisuje dokument svým privátním klíče a odesílá jej s připojeným certifikátem
Příjemce ověřuje digitální podpis veřejným klíčem odesílatele a požaduje ověření digitálního certifikátu v repozitáři příslušné CA
Repozitář vrací zprávu o stavu odesílatelova certifikátu
Infrastruktury veřejných klíčů
PKI - popísané v casti Správa veřejných klíčů
PKI spája verejný kľúč so subjektom prostredníctvom vydania certifikátu certifikačnou autoritou. Jej hlavnou úlohou je digitálne podpísať verejný kľúč patriaci danému človeku – a to pomocou vlastného privátneho kľúča samotnej CA, takže závisí na dôveryhodnosti konkrétnej autority. Tento podpis potvrdzuje - certifikuje vlastníctvo daného verejného kľúča.
Autentizace uživatelů v počítačových systémech
Autentizace spočívá v ověření, že autentizovaný je tím, za koho se vydává.
Hesla, PIN, passphrase, identifikace obrazové informace …
Aby autentizace tajnou informací byla bezpečná je nutné dodržet:
informace musí být opravdu tajná, tj. nikdo jiný než oprávněný uživatel by ji neměl znát
autentizační informace by měla být vybrána z velkého prostoru možných hodnot
pravděpodobnost všech hodnot z prostoru by měla být pokud možno stejná
pokud dojde ke kompromitaci autentizační informace, musí být možné nastavit novou jinou autentizační informaci
Hesla
Skupinová (uživatelská role) – málo používané, bezpečnost mizivá
Unikátní pro danou osobu (heslo = userid)
Neunikátní (používaná společně s userid)
Jednorázová (ať už unikátní či nikoliv)
Ukládání hesel
V otevřeném tvaru
V nečitelné podobě
šifrovaná - využíváme v situaci, kdy chceme mít přístup k otevřenému tvaru hesla
hašovaná - ukládáme pouze výsledek hašovací funkce
„Solení“
haš není jen funkcí hesla, ale ještě dodatečné náhodné informace (soli)
v tabulce hesel musíme ukládat i sůl: userid, sůl, f(sůl, heslo)
delší efektivní heslo
řešení pro stejná hesla (stejná hesla s různou solí budou mít různé haše)
PIN (Personal Identification Number)
Levnější klávesnice
Obtížněji zapamatovatelné než hesla
Obvykle používány s fyzickým předmětem
Někdy lze změnit podle přání zákazníka
Obvykle 4-8 znaků dlouhé
Procedurální omezení proti útokům hrubou silou
Tokeny (co kdo má)
Nejčastější tokeny v IT/IS:
Čipová karta jako aktivní prvek
Čipové karty mají i nezanedbatelnou výpočetní sílu.
Na čipové kartě je možné implementovat kryptografické algoritmy i protokoly.
Je možné na kartě provádět operace s citlivými daty tak, že tato data nemusí opustit čipovou kartu (např. vytváření digitálního podpisu).
Symetrické šifrovací algoritmy běží v prostředí čipové karty bez problémů (často též speciální HW akcelerátory - např. DES, 3DES, AES).
Asymetrické kryptografické algoritmy jsou řádově náročnější, proto vyžadují specifické koprocesory.
Bezpečnost čipových karet
Fyzická bezpečnost (physical security) – překážka umístěná kolem počítačového systému za účelem ztížení neautorizovaného fyzického přístupu k tomuto počítačovému systému.
Odolnost vůči narušení (tamper resistance) – vlastnost části systému, která je chráněna proti neautorizované modifikaci způsobem zajišťujícím podstatně vyšší úroveň ochrany než ostatní části systému.
Zjistitelnost narušení: systém, u kterého jakákoliv neautorizovaná modifikace zanechává zjistitelné stopy.
Detekce narušení: automatické zjištění pokusu o narušení fyzické bezpečnosti.
Odpověď na narušení: automatická akce provedená chráněnou částí při zjištění pokusu o narušení.
Biometriky (co kdo je)
Biometriky – „automatizované metody identifikace nebo ověření identity na základě měřitelných fyziologických nebo behaviorálních vlastností člověka“.
Biometrická data nejsou nikdy 100% shodná, musíme povolit určitou variabilitu mezi registračním vzorkem a později získanými biometrickými daty
Model biometrické autentizace
Chybovost biometrických systémů závisí na řadě faktorů:
typ snímače, používání různých typů snímačů
prostředí ((ne)možnost přizpůsobit prostředí, vnitřní, venkovní prostory, zdroje světla…)
nastavení (počet pokusů, omezení kvality vzorků,…)
uživatelé
Fyziologické charakteristiky
Ruka
Otisk prstu
Otisk dlaně
Geometrie (tvaru) ruky
Žíly ruky (geometrie)
Oko
Tvář
Hlas
DNA
Lůžka nehtů
Vůně/pot
Tvar ucha…
Charakteristiky chování
Zabezpečenie anonymity
Mixy
Nástroj postupne zachytáva a uchováva veľa správ, po istom čase/naplnení odstráni ich pôvodné hlavičky a pošle ďalej
Onion routing
Na začiatku prenosu sa detailne ujasní cesta, následna sa správa zabalí do niekoľkych vrstiev (ako cibula), pričom každá vrstva bude určená pre nasledujúci router. Každý router tak získa informáciu iba o tom, kám ma správu ďalej preposlať.
Kerberos
Popisany v otazke N-INS 5.
Kerberos je síťový autentizační protokol umožňující komukoli komunikujícímu v nezabezpečené síti prokázat bezpečně svoji identitu někomu dalšímu prostřednictvím důvěryhodné třetí strany. Kerberos zabraňuje odposlechnutí nebo zopakování takovéto komunikace a zaručuje integritu dat. Byl vytvořen primárně pro model klient-server a poskytuje vzájemnou autentizaci – klient i server si ověří identitu své protistrany.
Autentizace proběhne ve čtyřech krocích: zdroj
Krok 1
Klient požádá autentizační server (AS) o Ticket Granting Ticket (TGT).
AS vyhledá klienta ve své databázi, vygeneruje klíč relace (session key) SK1, který bude použit pro komunikaci mezi klientem a Ticket Granting Serverem (TGS). AS zašifruje klíč SK1 za použití tajného klíče (secret key) klienta (uživatelského hesla) a pošle jej klientu.
AS dále vytvoří TGT zašifrovaný pomocí tajného klíče TGS a také jej pošle klientu.
Krok 2
Klient dešifruje přijatý SK1 pomocí svého tajného klíče.
Klient vytvoří authenticator obsahující uživatelské jméno, IP klienta a časové razítko. Pošle authenticator spolu s TGT službě TGS spolu s požadavkem na službu, kterou chce použít.
TGS dešifruje TGT zaslaný klientem pomocí svého tajného klíče a získá z něj klíč relace SK1. Pomocí SK1 dešifruje authenticator. Ověří informace z authenticatoru.
TGS vytvoří klíč relace SK2 pro komunikaci mezi klientem a cílovým serverem (službou). Zašifruje SK2 pomocí SK1 a pošle jej klientu. TGS vytvoří tiket pro použití cílové služby obsahující jméno klienta, jeho IP adresu, časové razítko, čas expirace tiketu a SK2. Tiket zašifruje pomocí tajného klíče a jména cílového serveru a pošle jej klientu.
Krok 3
Klient dešifruje SK2 pomocí SK1.
Klient vytvoří nový authenticator, zašifruje jej pomocí SK2 a spolu s tiketem jej zašle cílovému serveru.
Cílový server dešifruje tiket pomocí svého tajného klíče a ověří jej.
U služeb, kde je vyžadováno, aby se server prokázal klientu, zašle cílový server klientu časové razítko zvětšené o 1 zašifrované pomocí SK2.
Krok 4
Bezpečnost v prostředí Internetu
Vhodne prejsť slajdy z prednašok:
Zdroje
Zákon o elektronickém podpisu - PV157_2009_L2.pdf, slajdy 5-11
Konstrukce digitálního podpisu - PV157_2009_L2.pdf, slajdy 12-17
Správa veřejných klíčů - PV157_2009_L1.pdf, slajdy 38 - 39 + https://akela.mendelu.cz/~lidak/bis/9pki.htm
Tajné informace - PV157_2009_L3_final
Tokeny - PV157_2009_L6_final
Biometriky - PV157_2009_L7and8_final
Přílohy
7.pdf – rozšíření některých témat a soukromé zpracování, vycházelo se z této wiki na přelomu roku 2013/2014. Nekonzultováno s kantory.
Vypracoval
Nahoru
Diskuze
U bezpečnosti v prostředí Internetu doporučujem prejsť spominane slajdy z prednášok
Rado, v casti „Certifikační proces probíhá v následujících krocích:“, ten bod 2: „Odesílatel podepisovaného dokumentu žádá CA o digitální certifikát pro svůj veřejný klíč CA ověřuje identitu žadatele a certifikát vydává“ – nemalo tam byt, ze RA overuje identitu ziadatela, nie CA? Diky za vypracovanie otazky.
Adam, vdaka za podnet. Blizsia specifikacia je ze CA overuje identitu ziadatela prostrednictvom RA.
Vyjadrenie od Matyasa:
obsahove po rychloprocteni myslim, ze az na tvrzeni o podepisovani
hase sifrovacim algoritmem je to asi OK.
Rozsahove to ale pokryva jen nektere veci z PV157 a k autentizaci zprav
s vyuzitim krypta by jeste veci k pouziti MAC nebo i sifrovani (s integritni
ochranou) a dal veci spise ke krypto protokolum tam chybi. Ted je to
de facto jen o autentizaci uzivatelu a chybi autentizace dat/zprav
a autentizace pocitacu.
Ak by mal niekto zaujem moze podoplnat co treba.