VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY KRYPTOGRAFICKÝ PROTOKOL S VEŘEJNÝM KLÍČEM PUBLIC KEY CRYPTOGRAPHY PROTOCOL

Podobné dokumenty
Šifrová ochrana informací věk počítačů PS5-2

Šifrová ochrana informací věk počítačů PS5-2

Asymetrické šifry. Pavla Henzlová FJFI ČVUT v Praze. Pavla Henzlová (FJFI ČVUT v Praze) Asymetrické šifry 28.3.

Asymetrická kryptografie a elektronický podpis. Ing. Mgr. Martin Henzl Mgr. Radim Janča ijanca@fit.vutbr.cz

Asymetrická kryptografie a elektronický podpis. Ing. Dominik Breitenbacher Mgr. Radim Janča

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc.

ElGamal, Diffie-Hellman

Asymetrická kryptografie

Elektronický podpis. Základní princip. Digitální podpis. Podpis vs. šifrování. Hashování. Jednosměrné funkce. Odesílatel. Příjemce

Správa přístupu PS3-2

PSK2-16. Šifrování a elektronický podpis I

RSA. Matematické algoritmy (11MA) Miroslav Vlček, Jan Přikryl. Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní. čtvrtek 21.

Čínská věta o zbytcích RSA

RSA. Matematické algoritmy (11MAG) Jan Přikryl. Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní. verze: :01

Moderní metody substitučního šifrování

Informatika / bezpečnost

PA159 - Bezpečnostní aspekty

Identifikátor materiálu: ICT-2-04

asymetrická kryptografie

KRYPTOGRAFIE VER EJNE HO KLI Č E

Diffieho-Hellmanův protokol ustanovení klíče

Kryptografie založená na problému diskrétního logaritmu

Chytré měření a jeho specifikace

Digitální podepisování pomocí asymetrické kryptografie

JAK SE ELEKTŘINA DISTRIBUUJE

Projekt: 1.5, Registrační číslo: CZ.1.07/1.5.00/ Digitální podpisy

Autentizace uživatelů

Y36PSI Bezpečnost v počítačových sítích. Jan Kubr - 10_11_bezpecnost Jan Kubr 1/41

Základy kryptografie. Beret CryptoParty Základy kryptografie 1/17

Protokol pro zabezpečení elektronických transakcí - SET

kryptosystémy obecně další zajímavé substituční šifry klíčové hospodářství kryptografická pravidla Hillova šifra Vernamova šifra Knižní šifra

Komerční výrobky pro kvantovou kryptografii

MFF UK Praha, 22. duben 2008

J.Breier, M.Vančo, J.Ďaďo, M.Klement, J.Michelfeit, Masarykova univerzita Fakulta informatiky

Kryptografie - Síla šifer

CO JE KRYPTOGRAFIE Šifrovací algoritmy Kódovací algoritmus Prolomení algoritmu

Pokročilá kryptologie

Informatika Ochrana dat

Základy šifrování a kódování

SYSTÉM PRO MĚŘENÍ KVALITY ELEKTRICKÉ ENERGIE

Symetrické šifry, DES

Digitální podepisování pomocí asymetrické kryptografie

Projekt 2 - Nejčastější chyby. Ing. Dominik Breitenbacher

Předmět úpravy. 2 Způsob dokládání splnění povinností stanovených v 6 zákona o elektronickém podpisu

9. DSA, PKI a infrastruktura. doc. Ing. Róbert Lórencz, CSc.

Elektronický podpis význam pro komunikaci. elektronickými prostředky

BEZPEČNOST INFORMACÍ

Co je Czech Point? Podací Ověřovací Informační Národní Terminál, zredukovat přílišnou byrokracii ve vztahu

SSL Secure Sockets Layer

INFORMATIKA (ŠIFROVÁNÍ A PODPIS) 2010/11

C5 Bezpečnost dat v PC

Problematika převodu zprávy na body eliptické křivky

Směry rozvoje v oblasti ochrany informací PS 7

UKRY - Symetrické blokové šifry

SmartGrid & Smart Metering. Radek Semrád EurOpen, října 2012

SMART GRID SYSTEM TECHNOLOGIE PRO ANALYTIKU A SPRÁVU ENERGETICKÝCH SÍTÍ. Představení společnosti Analyzátor sítě

Kryptografie, elektronický podpis. Ing. Miloslav Hub, Ph.D. 27. listopadu 2007

Základy kryptologie. Kamil Malinka Fakulta informačních technologií

496/2004 Sb. VYHLÁŠKA Ministerstva informatiky ze dne 29. července 2004 o elektronických podatelnách

Seminární práce do předmětu: Bezpečnost informačních systémů. téma: IPsec. Vypracoval: Libor Stránský

Předpokládaný rozvoj distribuční soustavy E.ON Distribuce, a.s (výhled)

Šifrová ochrana informací věk počítačů PS5-1

SIM karty a bezpečnost v mobilních sítích

ZÁKLADNÍ METODY REFLEKTOMETRIE

Andrew Kozlík KA MFF UK

EXTRAKT z mezinárodní normy

Vyhláška č. 82/2011 Sb.

(3) Měření elektřiny se člení na a) přímé měření, kdy elektroměrem prochází veškerá měřená elektřina a nejsou použity měřicí transformátory,

Protokol RSA. Tvorba klíčů a provoz protokolu Bezpečnost a korektnost protokolu Jednoduché útoky na provoz RSA Další kryptosystémy

Hesla a bezpečnost na internetu MjUNI 2019 Dětská univerzita,

Tel.: (+420)

Smartmetry v portfoliu ZPA + AMM před a po roce 2010

Systém Přenos verze 3.0

klasická kryptologie základní pojmy požadavky na kryptosystém typologie šifer transpoziční šifry substituční šifry

Bezpečnostní mechanismy

BEZPEČNÁ SPRÁVA KLÍČŮ POMOCÍ HSM. Petr Dolejší Senior Solution Consultant

Disková pole (RAID) 1

Šifrová ochrana informací věk počítačů KS - 5

Měřič reziduální kapacity HomeGuard

WIDE AREA MONITORING SYSTEM (WAMS) METEL

Význam inteligentních sítí pro využívání obnovitelných zdrojů energie

401/2010 Sb. VYHLÁŠKA. ze dne 20. prosince 2010

Složitost a moderní kryptografie

Bezpečnostní normy a standardy KS - 6

PV157 Autentizace a řízení přístupu

OTEVÍRÁME DVEŘE NOVÝM MOŽNOSTEM. Jan Svoboda, CTO Luděk Volf, CEO

Šifrování Autentizace Bezpečnostní slabiny. Bezpečnost. Lenka Kosková Třísková, NTI TUL. 22. března 2013

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ

EURO ekonomický týdeník, číslo 17/2001

dokumentaci Miloslav Špunda

401/2010 Sb. VYHLÁŠKA

Pokročilá kryptologie

Bezpečnostní aspekty informačních a komunikačních systémů KS2

Komunikační technologie pro chytré sítě v energetice Aktivity ústavu Telekomunikací v oblasti chytrých sítí

ISMS. Autentizace ve WiFi sítích. V Brně dne 5. a 12. prosince 2013

ŠIFROVÁNÍ, EL. PODPIS. Kryptografie Elektronický podpis Datové schránky

Návrh kryptografického zabezpečení systémů hromadného sběru dat

Uživatelská příručka

Převrat v bezpečném telefonování!

Transkript:

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION KRYPTOGRAFICKÝ PROTOKOL S VEŘEJNÝM KLÍČEM PUBLIC KEY CRYPTOGRAPHY PROTOCOL DIPLOMOVÁ PRÁCE MASTER S THESIS AUTOR PRÁCE AUTHOR VEDOUCÍ PRÁCE SUPERVISOR Bc. Michal Holiš ING. PETR MLÝNEK BRNO 2012 1

VYSOKÉ UČENÍ TECHNICKÉ V BRN Ě Fakulta ele k trot echniky a komunikacních technologií Ústav t elekomunika cí Diplomová prác e magisterský navazující studijní obor Telekomunikacní a informacní technika Student: Bc. Michal Holiš ID: 89560 Rocník: 2 Akademický rok: 2011/2012 NÁZEV TÉ MATU: K ryptografický protokol s verejným klíc e m POKYNY PRO VYPRACOVÁNÍ: Rozeberte metody pro výmenu klícu v kryptografii s verejným klícem. Vyberte jednu metodu pro výmenu klíce a navrhnete protokol s verejným klícem pro zabezpecení komunikace v energetice, zamerte se pouze na ustanovení klícu komunikujících stran. Následne optimalizujte tento protokol pro Ultra-Low-Power Microcontroller (MSP430). Prakticky realizujte zvolený protokol v jazyce C. DOPORUCENÁ LITERATURA: [1] Burda.K.: Bezpecnost informacních systému. Skripta FEKT VUT v Brne, 2005. [2] IEC 62351-1, Power systems management and associated information exchange Data and communications security Part 1: Communication network and system security Introduction to security issues [3] IEC 62351-3, Power systems management and associated information exchange Data and communications security Part 3: Communication network and system security Profiles including TCP/IP [4] FIPS PUB 140-2 - "Security Requirements for Cryptographic Modules" National Institute of Standards and Technology, May 25, 2001. Termín zadání: 6.2.2012 Termín odevzdání: 24.5.2012 Vedoucí práce: Ing. Petr Mlýnek Konzultanti diplomové práce: prof. Ing. Kamil Vrba, CSc. Predseda oborové rady UPOZORNENÍ: Autor diplomové práce nesmí pri vytvárení diplomové práce porušit autorská práva tretích osob, zejména nesmí zasahovat nedovoleným zpusobem do cizích autorských práv osobnostních a musí si být plne vedom následku porušení ustanovení 11 a následujících autorského zákona c. 121/2000 Sb., vcetne možných trestneprávních dusledku vyplývajících z ustanovení cásti druhé, hlavy VI. díl 4 Trestního zákoníku c.40/2009 Sb. 2

Anotace Tato diplomová práce se zabývá možnostmi kryptografie s pomocí veřejných klíčů a jejich distribucí. Výstupem je protokol pro výměnu klíčů po otevřeném kanále pomocí protoklu Diffie-Helman a demostrační program na kterém je běh tohoto protokolu předveden. Klíčová slova: Diffie-Hellman, veřejný klíč, kryptografie Abstract This diploma thesis deals with cryptographic possibilities using public keys and their distribution. The output is a protocol for exchanging the keys in an open channel using the Diffie-Helman protocol and a demonstration program which shows the run of this protocol. Key words: Diffie-Hellman, public key, cryptography 3

PROHLÁŠENÍ Prohlašuji, že svoji diplomovou práci na téma Útoky postranními kanály jsem vypracoval samostatně pod vedením vedoucího diplomové práce a s použitím odbornéliteratury a dalších informačních zdrojů, které jsou všechny citovány v práci a uvedenyv seznamu literatury na konci práce. Jako autor uvedené diplomové práce dále prohlašuji, že v souvislosti s vytvořením této práce jsem neporušil autorská práva třetích osob, zejména jsem nezasáhl nedovoleným způsobem do cizích autorských práv osobnostních a jsem si plně vědom následků porušení ustanovení 11 a následujících autorského zákona č. 121/2000 Sb., včetně možných trestněprávních důsledků vyplývajících z ustanovení 152 trestního zákona č.140/1961 Sb. V Brně dne.. (podpis autora) 4

PODĚKOVÁNÍ Děkuji vedoucímu diplomové práce Ing. Petru Mlýnkovi, za užitečnou odbornou pomoc, cenné rady a studijní materiály použité při zpracování diplomové práce. Dále chci poděkovat mé rodině a přátelům kteří mne podporovali jak během celého studia tak při tvorbě této diplomové práce. V Brně dne.. 5

Obsah 1. Úvod...1 2. Měření v energetice...2 2.1 Měřené veličiny...2 2.2 Systematika měření...3 2.3 Přenosová cesta...4 2.4 Rizika...6 3. Zabezpečení přenosu...7 3.1 Přenášená data...7 3.2 Kryptografie...8 3.2.1 Možnosti šifrování...8 3.2.3 Kryptografie s tajným klíčem...10 3.2.4 Kryptografie s veřejným klíčem...10 3.2.5 Druhy šifer...11 3.2.6 Hašovací funkce...16 4. Kryptografie s veřejným klíčem...17 4.1 Schéma kriptografie s veřejným klíčem s certifikační autoritou...17 4.1.1 Základní pojmy...17 4.1.2 Princip kriptogarfie s veřejným klíčem a certifikační autoritou...18 4.2 Schéma kriptografie s veřejným klíčem bez centrální certifikační autority...19 4.2.1 Základní pojmy...20 4.1.2 Princip kriptogarfie s veřejným klíčem bez centrální certifikační autority...20 4.3 Rozdíly mezi centralizovaným a decentralizovaným systémem...22 5. Reálný kryptosystém...23 5.1 Fyzická realizace komunikačního systému...23 5.1.1 Centrální jednotka...24 5.1.2 Měřící člen...24 5.2 Kryptosystém...26 5.2.1 Jednotlivé části kryptosystému...26 5.2.2 Demonstrační program...28 6. Analýza rizik...33 7. Závěr...34 Použitá literatura...35 Použité zkratky...36 6

1. Úvod V dnešní době tzv. Informačního věku představují data a informace všeobecně jednu z nejdůležitějších a nejcennějších věcí, které může člověk nebo společnost vlastnit. Často je však žádoucí tyto informace uchovávat a hlavně přenášet jako tajná, aby se zabránilo jejich prozrazení nebo poškození. K tomu slouží mnoho různých způsobů a technologií. Pro přenos informací nezabezpečenými kanály se používá šifrování, které umožňuje předání informace, aniž by byla kompromitována. Každá šifra však potřebuje ke svému fungování klíč a nebo klíče. Ty jsou spolu s předpisem šifry použity k úpravě dat tak, aby bez příslušného klíče byla pro kohokoliv, včetně případného útočníka, nečitelná. Jedním možným schématem pro výměnu a správu těchto šifrovacích klíčů se zabývá tato práce. Jde o protokoly s veřejným klíčem. Tento systém je charakterizován tím, že klíče v něm používané se dělí na veřejné a tajné a jejich využití je dáno místem v šifrovacím řetězci. 1

2. Měření v energetice V energetice, jakož i v dalších oborech lidské činnosti dochází s vývojem techniky k stále většímu podílu automatizace a využití počítačů i v místech, kde dříve používány nebyly. Jedním z těchto míst je v posledních letech oblast měření kvality a potřeby elektrické energie. Regulace a ovládání celé rozvodné soustavy je již do značné míry automatizováno. Aby však tato automatizace mohla správně fungovat, potřebuje data, o která by se mohla opřít. Ta jsou již v dnešní době shromažďována metodami dálkového měření. V současnosti je trend posouvat hranici takto automaticky odečítaných hodnot z velkých uzlů rozvodu elektrické energie (jako jsou rozvodny) až ke koncovému spotřebiteli. Jedním z nechtěných důsledků tohoto posunu je, možnost přístupu spotřebitele k měřícímu zařízení a datům, které odesílá ke zpracování. Pokud pomineme možnost fyzické úpravy měřícího zařízení, pak je třeba se zaměřit na přenášená data a ta zabezpečit proti nežádoucí manipulaci. 2.1 Měřené veličiny Dálkově měřené veličiny můžeme rozdělit na dva okruhy. V prvním je vlastní odebíraný výkon. Tato hodnota je dostatečná pro naprostou většinu soukromých a malých odběratelů. U větších odběratelů, nebo odběratelů se speciálními požadavky, musíme také sledovat kvalitu elektrické energie. Kvalita elektrické energie je charakterizována souborem parametrů definovaných v normě ČSN EN 50160 Charakteristiky napětí elektrické energie dodávané z veřejné distribuční sítě [1]. Tyto parametry bývají nejčastěji měřeny v přechodových bodech mezi dodavatelem a distributorem elektrické energie nebo distributorem a jejím koncovým spotřebitelem. Často jsou tyto parametry zakotveny ve smlouvách, a proto je jejich konstantní monitorování a sledování velmi důležité, obzvláště pokud by mohlo nedodržení předepsaných hodnot způsobit například ztráty ve výrobě. Rozsah těchto škod a problémů se bude lišit podle charakteru a typu výroby. Jiný dopad bude mít kolísání napájecího napětí u osvětlení nebo vysokovýkonových zařízení jako jsou například oblouková pec, jiné v přesné výrobě nebo IT oborech. 2

2.2 Systematika měření Základní pojmy dálkového sběru dat v energetice: AMR (Automated Meter Reading) - klasický dálkový odečet naměřených hodnot, neuvažuje se procesní řetězec mimo oblast měření. AMM (Automated Meter Management) - filozofie důsledné integrace a využití měření v procesu energetických služeb, obchodování s elektrickou energií a řízení energetické sítě. AMI (Advanced Metering Infrastructure) - infrastruktura prostředků pro podporu AMR a AMM, tj. podpora vývoje v oblasti elektroměrů, komunikací a systémů s důrazem na otevřenost a užití mezinárodních standardů, včetně managementu nasazování řešení. V energetických společnostech a především v těch, které se zabývají distribucí elektrické energie, v současnosti řeší řadu problémů spojených právě se systémy AMM/AMR/AMI. Tyto systémy jsou zpravidla implementovány do technologických systémů distribučních společností. Patří v současnosti do progresivních oblastí, které systémově řeší především následující technologie: 1. Smart Metering - nová generace měřidel, které poskytují rozsáhlejší funkce měření a správy měřidel. Na rozdíl od mechanických měřidel je výrazně vyšší přesnost měření, spolehlivost vůči poruchám a odchylkám a odolnost proti záměrnému ovlivňování měřidel ze strany zákazníků. Významnou výhodou je teoreticky neomezené množství zaznamenaných hodnot. V elektroenergetice lze například sledovat nejen spotřebu dodané energie, ale i maximální výkon v daném období, jalovou energii, zaznamenávat kvalitativní parametry, používat složité, časově rozlišené tarify nebo rovnou ukládat několikaminutové zátěžové profily a řadu dalších parametrů. Detailnější informace o spotřebě a kvalitě dodávky lze využít pro cílenější služby na míru a efektivnější spotřebu. 2. On-line komunikace s měřidly. Se Smart Meteringem souvisí i technologické nástroje AMR, AMM a AMI umožňující online připojení měřidel a komunikaci s nimi. To nabízí řadu aplikací od vzdálených odečtů, přes on-line změny konfigurací a tarifů, po monitoring sítě nebo vzdálené ovládání spotřebičů 3

(vypínání nebo omezování výkonu, řízení topení, ohřevu vody a klimatizací). On-line komunikace otevírá příležitosti pro nové služby, interaktivní komunikaci se zákazníkem, snížení počtu reklamací, nové obchodní modely jako jsou předplacené služby, flexibilní ceny apod. Obousměrná komunikace otevírá příležitosti pro integraci aplikací smart home, bezpečnostních systémů, vzdálené řízení topení a klimatizací atd. 3. Datové sklady a analýza dat. Dostupnost přesných a detailních dat ze všech odběrných míst je výchozím předpokladem pro optimalizaci distribuční sítě, kvalitní predikce spotřeby a efektivní řízení a nákup energie na velkoobchodním trhu, identifikaci problémových zákazníků a snížení černých odběrů identifikaci poruch v síti. Data lze použít také pro marketingové účely nebo pro dodatečné služby třetích stran. 2.3 Přenosová cesta Data (nebo řídící příkazy v opačném směru) musí urazit od spotřebitele celkem značnou vzdálenost, než jsou doručena dodavateli ke zpracování. Během této cesty se může měnit přenosová technologie i medium, po kterém jsou data předávána. Na obr1. je znázorněná typická přenosová cesta od koncových měřidel (u jednotlivých spotřebitelů) až do centrální řídící stanice. Trafostanice přitom fungují jako koncentrátory komunikačních kanálů. Pokud jsou tyto trafostanice dobře dostupné, mohou již být data odtud vedena i jinými kanály než přímo po silovém vedení (které může být z různých důvodů nevhodné). 4

Obr 1. Přenosová cesta pomocí dat mezi uživatelem a dodavatelem V současné době je nejčastější metodou přenosu dat na tzv. Poslední míli (úsek vedení od posledního distribučního uzlu k odběrateli) technologie PLC Power Line Comunication (přenos po silovém vedení). Tato technologie umožňuje přenášet data namodulovaná na vyšší frekvence (než je 50 Hz používaných k přenosu výkonové elektřiny) po běžném silovém vedení. Další metodou, která se začíná v dnešní době také ve větší míře prosazovat je přenos dat pomocí sítě GSM (sítě telefonních operátorů). Oba tyto přístupy mají své výhody i nevýhody, faktem však zůstává, že poslední míle je z hlediska ochrany přenášených dat nejrizikovější a je pravděpodobné, že pokud bude nějaký útok na přenášená data proveden, stane se tak zde. 5

2.4 Rizika Prvním druhem rizika, na které musí být systém připraven, je manipulace se samotným hardwarem měřícího členu. Toto je však ve většině případů řešeno hardwarově, nebo pomocí plomb, zámků a dalších zábran. Další hrozbou je útok na vlastní přenášená data. Ten může být proveden buď jejich zničením (odpojením vysílače nebo mu jiným způsobem zabránit ve vysílání) nebo pozměněním. Pokud nebudeme uvažovat útoky, kdy je napadení okamžitě zřejmé (tedy zničení dat), tak nám zůstane jen skupina útoků, která se zaměřuje přímo na přenášená data a to primárně na jejich pozměnění. Pokud budeme uvažovat přenosovou technologi PLC tak takovýto útok může být proveden primárně dvěma způsoby. Útočník nahradí měřící hardware vlastním upraveným To je však finančně a také z hlediska potřebných znalostí (útočník by musel být do detailu seznámen s hardwarem měřícího zařízení) velmi obtížné. Navíc by takováto záměna byla pravděpodobně zjištěna při nejbližší fyzické inventarizaci nebo kontrole. Útočník se pokusí napadnout přímo přenášená data Tento způsob je již jednodušší, útočníkovi k pokusu o napadení postačují znalosti přenosového protokolu a PLC modem. Vzhledem k tomu, že technologie PLC je již dobře standardizovaná [2] a modemy, které tuto technologii používají, jsou relativně dostupné (ceny v řádech tisíců korun), jeví se tento typ útoku jako nejpravděpodobnější. 6

3. Zabezpečení přenosu Zabezpečení přenosu je ochrana přenášených informací po daném přenosovém kanále proti jejich neoprávněnému odposlechu nebo modifikaci. 3.1 Přenášená data Prvním problémem, který je třeba analyzovat, je vlastní struktura a velikost přenášených dat. Pokud budeme uvažovat, že koncové zařízení je pouhý wattmetr, který načítá spotřebu elektrické energie, a jediným přenášeným údajem je tato spotřeba, potom budou mít přenášená data velikost řádově několik bajtů. I pokud k těmto základním datům přidáme nějaké doplňující informace, jako je například časové období, ze kterého pocházejí, tak jde pořád o velikost do jednoho kilobajtu. To plně postačuje pro systémy typu AMR, kde je hlavním zájmem odečet spotřebované elektrické energie u daného uživatele. K dalšímu zvětšení dojde, pokud z nějakého důvodu (například smluvní podmínky) bude požadován větší rozsah měřených veličin (například velikost kolísání napětí, jeho výpadky, změny frekvence a další uvedené v [1]). Pak se již dostáváme k velikosti, která se jednomu kilobajtu může blížit. Další zvětšení objemu přenášených dat nastane, pokud je z nějakého důvodu požadováno několik odečtů sledovaných hodnot mezi dvěma přenosy naměřených dat. To může nastat například v případě, že je zapotřebí sledovat změny některých specifických parametrů (například změny účinníku nebo i kolísání odebíraného napětí v průběhu pracovního týdne). A protože je pravděpodobné že vlastní sběr dat bude probíhat po delším časovém úseku (například jednou týdně nebo měsíčně) tak se již s velikostí přenášených dat dostáváme na jednotky nebo maximálně desítky kilobajtů. Podle velikosti přenášených dat můžeme určit čas potřebný k jejich přenesení. Současné špičkové modely dosahují na krátké vzdálenosti až rychlostí 200Mbit/s, modemy pro industriální použití dosahují na požadovanou vzdálenost (poslední míle) rychlostí v řádech stovek kilobitů za sekundu. Jednoduchým podělením se dostaneme k času, který potřebujeme k odeslání takovýchto dat. Při velikosti dat v nejhorším možném případě (tedy stovky kb) a přenosové rychlosti v řádu stovek kb/s je délka přenosu v jednotkách sekund. 7

3.2 Kryptografie Obecně je kryptografie věda, která se zabývá zabezpečením nějaké informace tak, aby byla srozumitelná pouze omezenému okruhu uživatelů (lidí, počítačů, atd.), a pro ostatní byla nepoužitelná. V dnešní době se jedná především o zabezpečení dat (jednak v rámci nějakého přenosového řetězce mezi dvěma uživateli a pak také při jejich uložení). Nejdůležitější položkou v kryptografii je tzv. klíč. Jedná se vlastně o informaci, jak z daných zašifrovaných dat udělat data nezašifrovaná. Dříve se jednalo například o nastavení ozubených kol na šifrátoru, nebo podobné věci. V dnešní době se jedná již většinou o binární posloupnost (často generovanou náhodně). Jedním z druhů dělení kryptografie je podle obecné znalosti šifrovacího klíče (na veřejný a tajný). 3.2.1 Možnosti šifrování Šifrováním rozumíme proces, kdy je určitá informace (Z) za pomoci šifrovacího klíče (K) v šifrátoru (E) upravena na kryptogram (C) tak, aby ji bez dešifrovacího klíče (který může nebo nemusí být shodný s šifrovacím) a další úpravy nebylo možné rozluštit. Obr 2. Šifrovací systém V současné době používané šifry můžeme rozdělit na několik skupin podle různých kritérií. 8

Asymetrické šifra Jde o šifru, která je založena na existenci dvou klíčů, které jsou od sebe rozdílné, a zároveň se nedá jeden z druhého v současnosti matematicky odvodit. Je to klíč veřejný (který je všeobecně znám) a soukromý (který je tajný). Podle toho, který klíč je použit k zašifrování a který k sešifrování zprávy, můžeme zaručit buď důvěrnost, nebo autentizaci. Pokud je k zašifrování zprávy použit veřejný klíč, pak ji může dešifrovat pomocí svého soukromého klíče pouze ten, kdo ho má k dispozici. Tím je zaručena důvěrnost zprávy, protože nikdo jiný (útočník) si ji nemůže přečíst. Pokud je k zašifrování zprávy naopak použit soukromý klíč, je následné dešifrování pomocí veřejného klíče zaručena identita odesílajícího. Tak je zajištěna autentizace. Symetrická šifra Používá pouze jeden klíč, který je shodný pro odesílatele i přijímajícího. To sice usnadňuje správu klíčů, ale zároveň zvyšuje rizika při předávání klíčů, které musí být uchovávány v tajnosti. Symetrické šifry se podle způsobu zpracování dat dělí na blokové a proudové. Proudová šifra v proudovém šifrování se šifruje každý bit přenášené zprávy zvlášť. Takže hodnota každého bitu kryptogramu je závislá pouze na hodnotě bitu zprávy a příslušného bitu klíče. Jde o nejrychlejší z dostupných šifer, protože se zprávou se pracuje pouze na úrovni bitů. Bloková šifra - při použití blokové šifry, je zpracováváno několik bitů zprávy najednou (tzv. blok). Hodnota bitu v kryptogramu tak není závislá jen na vstupním bitu zprávy a klíče, ale také na ostatních bitech bloku. Velikost zpracovávaného bloku odpovídá délce použitého klíče. Aby bylo možno dodržet požadovanou úroveň zabezpečení a zároveň přijatelné nároky na hardware, používá se často kombinace obou shora popsaných způsobů. Jako první se použije systém asymetrické kryptografie, který je sice výpočetně (tedy i časově) značně náročnější, ale umožní výměnu malého množství 9

informací (často i po nezabezpečených kanálech) s nízkým rizikem prozrazení. Pomocí něj si komunikující strany vymění data, která jim slouží jako klíč, který je následně použit k symetrickému šifrování. To je již podstatně méně výpočetně náročné a rychlejší, umožňuje tedy za stejnou dobu odbavit nesrovnatelně větší objemy dat. 3.2.3 Kryptografie s tajným klíčem Jedná se o metodu kryptografie, kdy jsou použité klíče (z principu mohou být dva, ale v drtivé většině případů se používá jeden klíč pro každou dvojici komunikujících uživatelů) tajemstvím sdíleným mezi uživateli. Tento přístup má velkou výhodu v tom, že pokud má útočník možnost odposlouchávat komunikační kanál mezi uživateli, získá pouze přístup k již zašifrovaným datům. U těchto dat nejen že nezná jejich zašifrovaný obsah, ale navíc si nemůže být jistý, jaká metoda byla k šifrování těchto dat použita. Nevýhodou toho přístupu je značně obtížnější distribuce klíčů nutných pro šifrování. Tyto klíče se musí totiž ke komunikujícím stranám dostat jinak než komunikačním kanálem přenášejícím data. Z použitelných metod jmenujme například zadávaní hesla obsluhou, které jsou například doručena poštou, nebo pravidelné aktualizace prováděné například pomocí distribuce CD s novou sadou potřebných klíčů. Další nevýhodou je, že pokud se útočníkovi podaří napadnout systém na předávání hesel, může odposlouchávat komunikaci prakticky bez omezení, dokud se nezmění hesla. Takže v případě delšího intervalu při změně hesel (nebo v případě, že by se útočníkovi podařilo zadržet například měsíční dávku) dojde k opravdu velkému narušení bezpečnosti. 3.2.4 Kryptografie s veřejným klíčem Při této kryptografické metodě se již používají klíče dva. Jeden z nich je označován jako veřejný, druhý jako soukromý. Tento princip je základem dvou důležitých funkcí autentizace v kryptografii. Jedním je ověření, že na druhé straně je skutečně ten, kdo tvrdí že je. Druhým je 10

možnost že velká skupina uživatelů (například celý internet) má možnost odesílat zprávy zašifrované veřejným klíčem, ale pouze oprávněný příjemce je může dešifrovat. Speciálním případem tohoto principu je protokol Diffie-Hellman. Ten využívá otevřeného (dostupného i případnému útočníkovi) kanálu pro bezpečnou výměnu malého množství informací, které jsou následně použity jako klíč pro nějakou další formu kryptografie. 3.2.5 Druhy šifer Šifrou rozumíme předpis, pomocí kterého je za použití klíče vytvořen z dané zprávy kryptogram, který je pro útočníka nesrozumitelný. Tento postup se nazývá šifrování. Opačným postupem je dešifrování, kdy je pomocí klíče a předpisu šifry vytvořena z kryptogramu původní zpráva. Šifra se přitom považuje za bezpečnou, pokud není možné v reálném čase dešifrovat obsah kryptogramu bez znalosti klíče. AES AES je zkratka pro Advanced Encryption System. Jejími tvůrci jsou belgičtí matematici Daemen a Rijmen. Byla uznána jako celosvětový standart pro šifrovanou komunikaci v roce 2001. Jde o standardizovanou, otevřenou (předpis její funkce je veřejně znám), symetrickou blokovou šifru. Délka používaného bloku je 128 bitů, délka šifrovacího klíč je 128, 192 nebo 256 bitů. Jedná se o nástupce šifer DES (64 bitové bloky, délka klíče 56 bitů, dnes již není považována za bezpečnou protože se současnými prostředky je prolomitelná v reálném čase) a 3DES (vylepšení DES s délkou klíče 168 bitů). [3] Použití této šifry je hlavně v předávání velkých objemů dat díky její relativní výpočetní nenáročnosti. Pro svůj provoz však potřebuje klíče. Tyto mohou být buď uloženy lokálně (což je však z hlediska bezpečnosti nevhodné) nebo budou ustanovovány pro každou komunikaci zvlášť, jak je uvedeno dále (tento způsob je sice složitější, ale značně bezpečnější). Tato šifra spadá do kategorie symetrických šifer využívajících ke svému provozu utajených klíčů. 11

RSA RSA jsou počáteční písmena příjmení autorů (Rivest, Shamir, Adelman) této asymetrické blokové šifry. Tato šifra je dnes velmi rozšířená a díky dostatečné délce klíče je považována za bezpečnou. Je založena na matematickém problému faktorizace čísla n. Tento problém je, při použití dostatečně velkého čísla n, v současnosti neřešitelný hrubou silou. V současnosti používaná n mají velikost 768, 1024, 2048 nebo dokonce 3072 bitů. Nevýhodou je tak nutnost práce s velkými čísly reprezentujícími veličiny potřebné pro zašifrování zprávy a z toho vyplívající velká výpočetní náročnost a tudíž pomalost. [4] Princip šifry Konstrukce kryptosystému: 1. Zvolíme si dvě dostatečně velká prvočísla p a q. 2. Vypočteme si pomocné proměnné n = (p. q), r = (p 1). (q 1) 3. Zvolíme si veřejný šifrovací klíč e. Tento klíč musí být nesoudělný s číslem r. 4. Vypočítáme tajný šifrovací klíč d = e -1 mod r. 5. Parametry e a n potom zveřejníme. Zbytek parametrů musí zůstat utajen. Postup šifrování zprávy: 1. Nejprve rozdělíme předávanou zprávu Z na bloky bitů o stejné velikosti. Každý blok zprávy (číslovaný jako i) chápeme jako číslo z i. Pro toto číslo musí platit že z i < n. 2. Každý blok zprávy z i zašifrujeme podle předpisu c i = z e i mod n. 3. Zašifrované bloky c i poskládáme do kryptogramu C a odešleme příjemci. Dešifrování zprávy 1. Kryptogram C se rozdělí na zašifrované bloky c i. d 2. Provede se dešifrování podle předpisu: z i = c i mod n. 3. Z dešifrovaných bloků z i poskládáme zpět původní zprávu Z. 12

Zde provedený postup šifrování a dešifrování odpovídá variantě, kdy žadatel (v našem případě měřící zařízení) potřebuje odeslat utajeně data příjemci. Ty jsou tedy šifrována veřejným klíčem a dešifrována klíčem soukromým. Při opačném použití čísel d a e se však jedná o jednu z možností digitálního podpisu. To funguje tak, že odesílatel k nezašifrované zprávě ještě přiloží haš zašifrovaný soukromým klíčem. Na straně příjemce je zpráva znovu hašována a výsledek se porovná s dešifrovaným hašem zprávy. Pokud se shodují, máme ověřeno, že zpráva nebyla změněna a byla skutečně odeslána tím subjektem, který tvrdí, že ji odeslal (má totiž jako jediný soukromý klíč nutný k zašifrování). Je to dáno tím, že algoritmus je z hlediska šifrování i dešifrování symetrický a lze tedy zaměnit d a e. Použití této šifry pro přenášení užitečných dat, je však omezeno právě její výpočetní náročností. Primárním použitím tedy zůstává autentizace formou elektronického podpisu (tedy identifikace odesílajícího). Tato šifra spadá do kategorie asymetrických šifer využívajících principu veřejného a tajného klíče. Diffie-Hellman Jedná se o kryprografický protokol, který řeší vytvoření zašifrovaného spojení přes veřejně přístupný kanál, bez nutnosti předchozí znalosti šifrovacích klíčů [8]. V současné době se primárně používá pro vytvoření a předání klíčů pro rychlou symetrickou kryptografii na nezabezpečeném komunikačním kanálu. Jeho základní vlastností je, že i pokud útočník odposlechne celý průběh komunikace mezi účastníky spojení, nemá možnost zjistit předávaný klíč, protože ten není nikdy odeslán v otevřené formě a účastníci si jen vyměňují informace nutné k jeho výpočtu. Princip šifry Řekněme, že máme dva subjekty pokoušející se o komunikaci, nazvěme je Alice a Bob. Dále jsou pak dány (náhodně zvoleny) velké prvočíslo p a primitivní kořen g (g je definován tak, že všechna čísla y = (g x ) mod p jsou pro x = 1,2,...,(p-1) navzájem různá). Oba tyto parametry jsou veřejně známé. Následně dojde k výpočtu klíče pro symetrickou kryptografii: 13

1. Alice si zvolí náhodné velké číslo a a Bob si zvolí náhodné číslo b. Tato čísla musejí přitom zůstat tajná. 2. Alice si pak vypočítá číslo X podle předpisu X = g a mod p. Bob si zároveň vypočte Y jako Y = g b mod p. Tato vypočítaná čísla si vymění přenosovým kanálem a můžeme předpokládat že je i útočník zachytil. 3. Alice si pak pomocí přijatého Y vypočítá klíč K podle předpisu K = Y a mod p. Nadruhé straně si Bob vypočte klíč K' jako K' = X b mod p. Čísla K a K' jsou přitom shodná a mohou být použita jako klíč k symetrickému kryptosystému. Skutečnost že se Alice i Bob dopracovali ke stejnému výsledku má toto matematické zdůvodnění: K = Y a mod p = (g b ) a mod p = (g a ) b mod p = X b mod p = K' Bezpečnost tohoto algoritmu vůči prolomení je dána obtížností řešení matematického problému diskrétního logaritmu. Útočník zná veřejné hodnoty p, g a zná také po veřejné lince vyměněné hodnoty X a Y. Ale na to, aby zjistil klíč K potřebuje zjistit číslo a nebo b. Ty si může vypočítat podle předpisu X = g a mod p (respektive Y = g b mod p). Tato úloha diskrétního logaritmu je však, za současného stavu výpočetní techniky, pro běžně požívané velikosti p (786 1024 bitů, to znamená 10 231 až 10 308 možností) v reálném čase neřešitelná. Problémy však nastávají i při prostém výpočtu požadovaných funkcí. Je to z důvodu toho, že program pracuje s výpočtem modula dvou exponenciálně závislých čísel. vysl =g a mod p Samotný výpočet modula je však při takto velkých číslech problematický. K výpočtu takovéhoto problému můžeme použít několik způsobů. Klasická matematika budeme postupovat zleva doprava a počítat jako kdybychom měli k dispozici pouze tužku a papír. Tedy nejprve vypočítáme mocninu g a a z ní pak spočteme modulo. Tento postup je však pro velmi velká čísla nepoužitelný, protože by docházelo k neúměrně velkému nárůstu čísla, ze kterého je modulo počítáno. I při použití pouze 8 bitů velkého základu, se při exponentu o délce 128 bitů dostáváme až k velikosti 3,4 x10 38 bajtů. Tento 14

postup je proto nepoužitelný jak z důvodu příliš velkých paměťových nároků, tak počtu kroků násobení. Klasická matematika II druhou možností s využitím klasické matematiky je cyklus kdy vždy spočítáme: ( g g)mod p=výsledek tento výsledek znovu vynásobíme g a následně provedeme opět modulo. Takže vlastně počítáme: (((( g g) mod p) g mod p)...) g mod p=konečný výsledek. Při tomto postupu dojde k dramatické úspoře paměti (maximální obsazené místo v paměti bude dvojnásobek délky g), ale celý cyklus násobení a modulo bude muset proběhnout celkem a krát. Což je opět nemyslitelné (při velikosti a maximálně 128 bitů by byl maximální počet průchodů 2 128 ). Použití modulární matematiky při použití modulárního bitového umocňování zprava se nám počet průchodů cyklem, kterým je tento postup reprezentován zmenší na počet odpovídající počtu bitů exponentu. Postup je takovýto: vezmeme nejnižší bit exponentu, pokud je nulový položíme výsledek (proměnnou b) roven 1, jinak bude roven g. Založíme si novou proměnnou A do které vložíme g. Poslední proměnnou je p (v našem případě velké prvočíslo). Potom postupujeme po bitech exponentu zprava do leva. Jako první vypočítáme druhou mocninu A a provedeme s ní modulo a výsledek této operace vložíme zpět do A. Poté otestujeme bit exponentu. Pokud je roven nule postoupíme do dalšího kola cyklu. Pokud je však roven jedné vynásobíme aktuální hodnotu b číslem A, s výsledkem provedeme opět modulo p. Výsledek vložíme zpět do b. Takto postupujeme přes celou délku exponentu. Po skončení cyklu máme v b hledaný výsledek. Zapsáno v pseudokódu vypadá tento postup takto (t délka exponentu v bitech, k hodnota aktuálního bitu): 15

1. b = 1 2. A = g 3. pokud k 0 = 1 tak b = g 4. pro i od 0 do t opakuj toto: 4.1 vypočítej A = A 2 mod p 4.2 pokud k i = 1 vypočítej b = A * b mod p 5. vrať b Tento algoritmus se jeví jako paměťově i časově nejúspornější, v paměti budou uloženy dohromady tři proměnné o maximální bitové velikosti 2*p a jedno počítadlo velikosti integer. Počet průchodů cyklem je stejný jako bitová velikost exponentu. V tomto případě se nejedná o šifru jako takovou, ale o kryptografický protokol, který se využívá k ustanovení tajných klíčů pro symetrickou kryptografii po veřejném kanále. 3.2.6 Hašovací funkce Jedná se o jednocestnou funkci která z libolně velkéko (až 2 64 bitů) velkého souboru dat vytvoří blok a dané délce (většinou o belikosti 128, 256 nebo 512bitů). Tato funkce však musí splňovat několik základních požadavků: Jednocestnost: je nutné aby z daného haše nešla žádným způsobem (kromě útoku brutální silou, který musíme uvažovat vždy) v reálně dostupném čase vypočítat původní zpráva. Naopak výpočet haše ze zprávy by měl být co možná nejjednodušší a nejrychlejší Bezkolidnost: musí být velmi obtížné nalézt dvě zprávy které mají stejný výsledek hašovací funkce. Hlavním použitím této funkce je autentizace a kontrola zda se zprávou nebylo nějak manipulováno. I malá změna vstupní zprávy se totiž projeví detekovatelnou změnou v haši této zprávy. 16

4. Kryptografie s veřejným klíčem Kryptografií s veřejným klíčem se rozumí asymetrická kryptografie. Při tomto způsobu šifrování se používají dva rozdílné klíče, z nichž je jeden veřejně znám a druhý udržován v tajnosti. Podle způsobu použití soukromého a veřejného klíče se zajišťuje buď autentizace, nebo důvěrnost. 4.1 Schéma kriptografie s veřejným klíčem s certifikační autoritou Jedná se o dnes běžně používaný princip, obzvláště v prostředí velmi velkých sítí, kde nemůže být zajištěna bezpečnost přímo, neboť překlenovaná vzdálenost mezi uživateli může procházet i více různými sítěmi a technologiemi. 4.1.1 Základní pojmy Certifikát: v symetrické kryptografii se jedná o digitálně podepsaný veřejný šifrovací klíč, vydávaný certifikační autoritou. V prostředí internetu jsou součástí certifikátu (kromě jiného) i informace o tvůrci daného certifikátu. Pokud zašifrujeme data tímto klíčem, máme jistotu, že nikdo kromě oprávněného příjemce nebude schopen je rozluštit. Certifikační autorita: je instituce nebo uživatel, který vytváří certifikáty. Tento uživatel je považován za důvěryhodného a tím považujeme za důvěryhodné i informace uvedené v jím podepsaných certifikátech. Dále pak považujeme za důvěryhodné i certifikáty jiných subjektů, za které se tato certifikační autorita zaručí podpisem jejich certifikátu. Zneplatnění certifikátu: digitální certifikát lze zneplatnit před ukončením jeho deklarované platnosti pomocí seznamu zneplatněných certifikátů (CRL), který je obvykle zpřístupněn na stránkách příslušné certifikační autority. K zneplatnění certifikátu dochází buď při změně údajů v něm uvedených, nebo pokud hrozí kompromitace soukromého klíče (jeho ztráta nebo prozrazení). 17

4.1.2 Princip kriptogarfie s veřejným klíčem a certifikační autoritou Předpokládejme, že spolu chtějí komunikovat dva uživatelé označení jako Alice a Bob, kteří mezi sebou zatím nemají vytvořenou důvěru. Iniciátorem této komunikace je Alice, ale můžeme předpokládat následnou výměnu informací oběma směry. Každý z těchto dvou uživatelů má k dispozici svou sadu veřejného a soukromého klíče. Klíč určený k šifrování je přitom veřejně známý, zatímco klíč určený k dešifrování je udržován jako tajný. Obr.3 Schéma certifikačního řetězce s certifikační autoritou 18

Dále se někde v systému nachází certifikační autorita, jíž oba uživatelé důvěřují. Tato autorita je rovněž vybavena dvojicí veřejný klíč-soukromý klíč. V jejím případě je však klíč používaný k šifrování veřejně znám, zatímco šifrování probíhá pomocí soukromého klíče. Na obrázku 3 je znázorněn princip ustavení bezpečné a důvěryhodné komunikace mezi Alicí a Bobem za pomoci certifikační autority. Alice, která chce navázat spojení s Bobem, mu zašle svůj veřejný šifrovací klíč (VK A ) který si Bob uloží. Ten následně odešle veřejné certifikační autoritě, které důvěřuje. Ta ho porovná se seznamem důvěryhodných klíčů, který má uložený ve svojí databázi. Tato databáze (spolu se znalostí soukromého šifrovacího klíče) je centrem tohoto šifrovacího procesu. Pokud se veřejný šifrovací klíč shoduje s tím, který je uložený v databázi, použije vlastní soukromý šifrovací klíč k zašifrovaní veřejného klíče Alice a pošle ho zpět Bobovi. Ten ho přijme a dešifruje pomocí veřejného klíče certifikační autority. Tím má zajištěno, že certifikační autorita potvrzuje pravost tohoto klíče (nikdo jiný nemohl tuto zprávu zašifrovat). Bob si tedy ověřil, že veřejný šifrovací klíč patří skutečně Alici. Nyní jí tedy zašle svůj veřejný šifrovací klíč. Alice po jeho přijetí provede dotazování na certifikační autoritu se stejným záměrem a stejným způsobem jako předtím Bob (odeslání veřejného klíče a jeho návrat zašifrovaný soukromým klíčem certifikační autority). Tím mají oba subjekty ověřenou svoji totožnost. Nyní si mohou pomocí svých veřejných klíčů vyměnit již například klíče pro mnohem rychlejší symetrickou kryptografii a předávat si potřebná data. 4.2 Schéma kriptografie s veřejným klíčem bez centrální certifikační autority Někdy není vhodné nebo možné, aby v systému byl uživatel, který by zastával funkci certifikační autority. Uživatelé si tedy mezi sebou musí vytvořit tzv. Síť důvěry. Sítě důvěry jsou decentralizovanou alternativou vůči centralizovanému modelu infrastruktury certifikačních autorit. Existuje mnoho nezávislých sítí důvěry a kterýkoliv uživatel se do nich může se svým digitálním certifikátem zapojit. Koncept sítě důvěry byl v roce 1992 popsán tvůrcem Philem Zimmermannem [5]. 19

4.2.1 Základní pojmy Certifikát: veřejný šifrovací klíč elektronicky podepsaný dalšími uživateli, kterým majitel certifikátu důvěřuje a kteří mají naopak jeho důvěru. Na rozdíl od předchozího modelu neexistuje žádná centrální autorita, která by certifikáty autorizovala. Certifikát si každý uživatel buduje sám tím, že si nechává svůj veřejný klíč elektronicky podepisovat uživateli, kteří mu důvěřují. Tak u každého uživatele vlastně vzniká databáze uživatelů, kterým on sám důvěřuje a kteří naopak důvěřují jemu (což dávají najevo tím, že uživatelův klíč podepíší). Uživatel: účastník komunikace. Uživatelé se z pohledu jednoho každého účastníka komunikace dělí na důvěryhodné a neznámé. Pokud je uživatel důvěryhodný, znamená to, že již od něj účastník má elektronicky podepsaný certifikát a je mu známý. Neznámý uživatel na druhou stranu tuto důvěru ještě nemá a musí se teprve dohodnutým způsobem autorizovat. 4.1.2 Princip kriptogarfie s veřejným klíčem bez centrální certifikační autority Předpokládejme existenci třeba i velmi rozsáhlé sítě. V ní se nalézají jednotliví uživatelé (viz obrázek 4). Mějme uživatelku Alici, která chce komunikovat s uživatelem Bob. Tento uživatel je pro ni ale neznámý. Alice tedy zašle Bobovi svůj veřejný klíč. Ten je již podepsán několika uživateli, kteří Alici již z dřívějška znají a ona má jejich důvěru (vyjádřenou elektronickým podpisem jejího veřejného klíče). Bob přijme tento veřejný klíč. Následně porovná podpisy k tomuto klíči připojené s vlastní databází důvěryhodných podpisů. Pokud se mezi podpisy, které jsou připojené k veřejnému klíči Alice, nachází dostatečný počet podpisů od dalších uživatelů, kterým Bob důvěřuje, je zpráva přijata a dále zpracovávána. Pokud se tak nestane, je zpráva buď zničena, nebo podrobena dalšímu zkoumání pravosti. 20

Obr 4.Schéma certifikačního řetězce bez centrální certifikační autority Pokud Bob veřejný klíč Alice přijme (zařadí ho mezi důvěryhodné), odešle zpět Alici svůj veřejný klíč opět podepsaný klíči uživatelů, kteří mu důvěřují. Alice také prohledá svoji databázi klíčů a porovná podpisy uživatelů s těmi, jež jsou připojeny ke klíči. V případě přítomnosti odpovídajícího počtu důvěryhodných podpisů, bude důvěřovat Bobovi, že je ten, za koho se vydává a že jeho veřejný klíč je pravý a může být zahájena komunikace. 21

4.3 Rozdíly mezi centralizovaným a decentralizovaným systémem Hlavním rozdílem je, jak už z názvů vyplývá, přítomnost nebo nepřítomnost centrální certifikační autority. Pokud systém počítá s její přítomností, je pro uživatele jednodušší na používání a celkovou obsluhu, ale za cenu závislosti právě na její přítomnosti. Pokud je tedy certifikační autorita vyřazena z provozu, dojde ke kolapsu celého systému. Ten samý problém nastane, pokud dojde ke kompromitaci systému. V tom případě ztrácí certifikační autorita veškerou kredibilitu a musí se vybudovat nová. Na druhou stranu přináší centralizace jak úsporu na nákladech při udržování zabezpečení (je přeci jen nutno střežit jen jednu informaci), tak obecně větší bezpečnost. Problémem infrastruktury veřejného klíče bez centrální autority jsou sami uživatelé. Každý řetěz zabezpečení je tak silný, jak je silný jeho nejslabší článek. Uživatelé tedy musí být velmi opatrní, koho vpustí do své sítě důvěry, protože každý z nich je zodpovědný za bezpečnost svého elektronického podpisu, kterému ostatní uživatelé důvěřují. Výhodou systému je naopak jeho robustnost. I pokud je vyřazena část uživatelů z provozu ostatní to nijak nepocítí. 22

5. Reálný kryptosystém Kryptosystémem rozumíme konstrukt, který v sobě zahrnuje zabezpečení celého přenosového řetězce. Tento konstrukt má několik částí, které zajišťují jeho jednotlivé funkce: Zabezpečení autentizace: v rámci komunikace je třeba ověřit, zda všichni účastníci komunikace jsou ti, za které se vydávají Bezpečná výměna klíčů: po provedení autorizace je třeba zajistit mezi komunikujícími výměnu klíčů, pomocí které bude probíhat vlastní výměna užitečných dat. Vlastní šifrování: s přijatými klíči je třeba vytvořit šifrované spojení s požadovanou bezpečností, pomocí kterého bude probíhat jakákoliv další komunikace. 5.1 Fyzická realizace komunikačního systému Předpokládaným využitím navrhovaného kryptosystému je měření (a případná zpětná regulace) v energetice. Toto využití pak vlastně vytváří i podobu komunikačního řetězce. Ten bude tvořen dvěma účastníky. Ti budou reprezentovat koncové stanice komunikačního řetězce představované měřícím (regulačním) členem a centrálou. Obr.5 Komunikační struktura 23

Tato centrální jednotka má v systému funkci sledování měřících členů a shromažďování změřených dat od těchto členů. Zároveň bude inicializovat sběr změřených dat od těchto zařízení a předávat jim potřebné příkazy. Centrální jednotka bude v síti jedna a bude komunikovat s mnoha podřízenými měřícími / regulačními jedotkami (viz obrázek 5). 5.1.1 Centrální jednotka Jedná se o řídící a shromažďovací bod naměřených informací. Bude uchovávat všechna naměřená data a zároveň bude fungovat jako vydavatel příkazů pro případné řízení jednotlivých členů. Co se výpočetního výkonu týče, půjde pravděpodobně o moderní počítač, který bude schopný udržovat spojení s mnoha měřícími členy najednou. Paměť, kterou bude disponovat, bude také dostatečná k provádění dostatečného množství úkonů najednou (šifrování/dešifrování, zpracování naměřených dat,...) Zároveň je v databázi uložené v řídící jednotce uložen seznam všech měřících členů a jejich umístění. Ke každému členu je také přiřazena dvojice čísel, která se používá pro autentizaci během komunikace. 5.1.2 Měřící člen Měřící člen je jednoduché zařízení, které je na straně uživatele. Plní funkci odečítání požadovaných veličin a na výzvu centrální jednotky tyto odečtené veličiny odesílá k dalšímu zpracování, popřípadě archivaci. V případě složitějších konstrukcí může také fungovat jako akční člen, který bude upravovat podle příkazů centrály nějakým způsobem tok elektrické energie dodávané spotřebiteli (kupříkladu odpojení při neplacení za odběr nebo spínání některých výkonových spotřebičů v časech sníženého odběru, jako je třeba topení). Pokud jde o vnitřní uspořádání, bude se skládat z několika bloků, které se budou podílet na jeho chodu (viz obrázek 6). 24

Měřící zařízení: vlastní měřicí přístroj pro odečítání požadovaných údajů a veličin. Přístroj bude digitální a bude ukládat tyto data v binární podobě. Mezipaměť: slouží k uložení hodnot požadovaných veličin v mezičase, než budou vyžádána k odeslání. Data uložená v této paměti mohou být jako další úroveň ochrany chovávána také zašifrovaná pro případ, že by útočník získal fyzický přístup k této paměti. Dalším požadavkem je udržení dat i při výpadku napájecího napětí nebo jiné nehodě. Komunikační modul: slouží ke komunikaci s centrální jednotkou, které odesílá požadovaná data a případně od ní přijímá pokyny pro úpravu toku elektrické energie k uživateli. V tomto případě bude tvořen nízkoenergetickým procesorem od firmy Texas Instruments MSP430. Obr. 6 Vnitřní struktura měřícího členu 25

5.2 Kryptosystém 5.2.1 Jednotlivé části kryptosystému Navrhovaný kryptosystém se bude skládat ze tří částí. První část bude zajišťovat výměnu klíčů. Během ní je nasazen protokol Diffie-Hellman. V druhé části proběhne autentizace obou uživatelů k zamezení podvrhnutí identity jednoho z komunikujících (což je prakticky největší riziko, se kterým je třeba se vypořádat). Zde je používána hašovací funkce a výpočet XOR dvou čísel. Během třetí části se bude starat o vlastní šifrování a přenos užitečných dat. Zde je již nasazena standardizovaná šifra AES. Autorizace / výměna klíčů Tyto dva kroky se v případě navrhovaného kryptosystému budou provádět v těsné návaznosti (viz. Obrázek 6). Systém počítá s tím, že každý měřící člen má přiřazena dvě unikátní čísla (Z A a Z B která se používají k autentizaci) jenž jsou uchovávána jako tajná na obou stranách komunikačního řetězce. Proměnné požité na obrázku reprezentují vstupní data pro protokol Diffie- Hellman. Velké prvočíslo je označeno p, generátor g a tajná čísla generovaná na obou koncích komunikačního řetězce a a b. 26

Obr.6 časová posloupnost výměny klíčů a autentizace V první částí tohoto kryptosystému proběhne výměna klíčů podle protokolu Diffie Hellman. Ta umožní ustanovení tajného klíče po veřejném (útočníku přístupném) kanálu. 27

Po úspěšném dokončení protoklu Diffe-Hellman má měřič i centrála k dispozici tajný klíč K. Tento klíč je následně použit jako jeden ze vstupů v procesu autentizace. Ta již neprobíhá na obou koncích komunikačního kanálu úplně stejně, rozdíly jsou hlavně v čase provádění operací. Jak centrála, tak měřící člen vypočítají posloupnost čísel, na jejichž základě dojde ke vzájemné autentizaci. V dalším textu jsou čísla, která vypočítává měřící člen označována A zatímco čísla, která vytváří centrála B. Jako první je na obou stranách xor funkce klíč K a jednoho z utajených identifikačních čísel, které jsou přiřazeny konkrétnímu měřidlu. Tyto čísla jsou pro každé měřidlo unikátní a je nutné, aby byla před svým přiřazením vytvořena jako náhodná. Druhá požadovaná vlastnost je jejich délka, která je stejná, jako je délka klíče K ustanovovaného protokolem Diffie-Hellman. Měřící člen použije k výpočtu číslo Z A, centrála počítá s číslem Z B. Následně je na obou číslech provedena hašovací funkce. Centrála potom odešle tento haš (B 2 ) měřícímu zařízení. Měřící zařízení provede xor výpočet také s druhým autorizačním číslem (Z B ) získá tím číslo A 3 na něm opět provede hašovací funkci a získá číslo A 4. To následně porovná s číslem B 2 přijatým od měřící centrály. Pokud se obě čísla shodují je pro měřící zařízení autentizována a proto klíč K vytvořený protokolem Diffie-Hellman je pravý a může být dál použit pro vytvoření šifrovacího klíče pro AES. Posledním krokem ze strany měřícího zařízení je odeslání A 2 centrále ke zpracování. Centrála si mezitím vypočítá B 3 a B 4 ( B 3 = K xor Z A, B 4 = haš ( B 3 ) ) a očekává A 2. Po jeho přijetí ho porovná s B 4. Pokud je detekována shoda, je autentizován i měřící člen vůči centrále a klíč K, který byl dříve ustanoven lze také považovat za pravý a dále použitelný. 5.2.2 Demonstrační program Tento program demonstruje funkci navrhovaného kryptosystému. Oba koncoví účastníci komunikace v něm jsou reprezentováni datovými proměnnými, které jim jsou přiřazeny. Při reálném nasazení by se každá část programu odehrávala na jiném zařízení a ta by si mezi sebou pouze vyměňovala proměnné potřebné pro ustavení další komunikace. 28

Samotný program je implementován v jazyce C, který je v současnosti jedním z nejrozšířenějších programovacích jazyků na světě a k jeho implementaci byla použita volně šiřitelná knihovna pro práci s velkými čísly Big Digits [7]. Diffie Hellman První částí demonstračního programu je vytvoření šifrovacího klíče po otevřeném kanálu pomocí protokolu Diffie-Hellman. Ten je založen na problému vyřešení diskrétního algoritmu. Aby bylo dosaženo dostatečné bezpečnosti proti napadení protokolu Diffie-Hellman hrubou silou bylo třeba použít velmi dlouhá čísla. Možnosti napadení tohoto protokolu jsou minimálně dvě. Prvním je algoritmus, který by byl schopný spočítat diskrétní algoritmus v reálném čase. V současnosti známé algoritmy jsou limitovány velikostí prvočísla p použitého v algoritmu Diffie- Hellman. Čím je p větší (bitově) tím déle jeho výpočet trvá. Druhým způsobem je napadení pomocí více základních algoritmů, jako je Pollardův algoritmus [6] proti kterému je obranou zase velká délka exponentu a,b. Tím se zvětší číselný prostor, ve kterém algoritmus musí pátrat. Obr. 7 Okno s výstupem testovacího protokolu část Diffie-Hellman 29

Zvolené velikosti jsou tedy prvočíslo p o délce 1024 bitů a exponenty a,b mají délku 128 bitů. Tyto velikosti jsou pro současné použití dostačující. Případné zvýšení bezpečnosti lze dosáhnout použitím delšího prvočísla (například 2048 bitů dlouhého) a exponentu (délka například 168 bitů). Program je na použití takto velkých čísel připraven, prodlouží se však délka výpočtu. Na obrázku 7 je výstupní okno demonstračního programu. Zobrazená čísla jsou dílčí a koncové výstupy protokolu Diffie-Hellman. Veřejná čísla vyměňovaná po otevřeném kanále jsou čísla X a Y z předpisu tohoto protokolu uvedeného v kapitole 3.2.5. Jako další výstup jsou již uvedeny výstupní klíče. Ty jsou ustaveny na obou koncích komunikačního řetězce a používány dále v běhu programu. Shodnost těchto tajných klíčů dokazuje sdílené tajemství koncových uživatelů. Autentizace Protokol Diffie-Hellman má přes všechny své výhody (relativní jednoduchost, dostatečná robusnost a hlavně schopnost fungovat právě na nezabezpečených kanálech) jednu obrovskou slabinu. Tou je v jeho čisté podobě (bez dodatečné ochrany) úplná bezbrannost vůči útoku Man in the middle. Obr. 8 Princip útoku Man in the middle 30

Tento útok spočívá v tom, že útočník je usazen mezi komunikujícími stranami a odposlouchává a zadržuje komunikaci mezi nimi (viz obr. 8). Přijme tedy od centrály data nutná k vytvoření spojení (p,g) a zároveň zašle měřícímu členu své podvržené informace nutné k vytvoření spojení. Následuje výpočet veřejných čísel X,Y (respektive X',Y'), která jsou vyměněna po veřejném kanále a pomocí nich jsou tak vytvořeny tajné klíče K na obou stranách komunikačních spojení (měřící člen útočník, útočník centrála). Pomocí protokolu Diffie-Hellman tak útočník vlastně vytvoří dvě komunikační cesty a sám funguje jako překladač mezi nimi. Toto napadení není možné bez použití další autentizace odhalit. Tato autentizace je v navrhovaném protokolu realizována na základě dvojice tajných čísel Z a a Z b. Ty jsou unikátní pro každý měřící člen. Zároveň jsou náhodná a délkou odpovídají délce klíče K vytvářeného během protokolu Diffie-Hellman. Na straně centrály tak existuje databáze těchto čísel s přiřazením každého páru hodnot k odpovídajícímu měřícímu členu. Na druhé straně jsou tato čísla uložena bezpečně v paměti. Vlastní autentizace probíhá tak, že obě strany si vypočítají binární xor klíče K a jednoho z autentizačních čísel Z. Centrála použije číslo Z a, měřící člen číslo Z b. Následně vypočtená čísla zhašují (centrála tak získá číslo a2 a měřící člen b2). Tím je zajištěno, že i kdyby se útočník nacházel mezi koncovými stanicemi a prováděl útok Man in the middle, tak i když bude znát klíč K, nebude schopen ze zachycené komunikace zjistit některé z tajných čísel Z. Stejný postup pak obě strany zopakují pro druhé tajné číslo Z (centrála tak získá číslo a4 a měřící člen b4). Centrála pak (jako člen, který inicializuje komunikaci) zašle své číslo a2 měřícímu členu. Ten ho po přijetí porovná s vlastní vypočteným číslem b4. Pokud si odpovídají, má měřící člen potvrzeno, že na druhé straně je někdo, kdo má znalost autentizačního čísla Z a. Proto nadále považuje předchozí domluvený klíč K za pravý a odešle tedy své číslo b2 měřícímu členu. Ten ho porovná s vlastním číslem b4 vypočteným pomocí druhého autentizačního čísla. Pokud se shodují je část klíče K použita jako klíč pro symetrickou šifru AES použitou pro vlastní přenos dat. 31

Na obrázku můžeme vidět výstup z demonstračního programu, kdy jsou vypočítána jednotlivá autentizační čísla na obou stranách. Ta by pak při reálném nasazení byla předávána po komunikačním kanále, zde jsou pouze pro porovnání zobrazena. Obr. 9 - Okno s výstupem testovacího protokolu autentizační část Protože si tato čísla odpovídají, je pomocí operace and (logický součin) provedeno vymaskování klíče K tak že z něj zůstane pouze nejnižších 128 bitů, které jsou určeny jako klíč pro AES. 32