Přihlášení do Windows pomocí elektronického pasu

Podobné dokumenty
Programové vybavení OKsmart pro využití čipových karet

SSL Secure Sockets Layer

Manuál pro práci s kontaktním čipem karty ČVUT

epasy - cestovní doklady nově s otisky prstů Projekt CDBP

PV157 Autentizace a řízení přístupu

Elektronické doklady v ČR. Kam jsme se dostali a kde to ještě vázne?

Použití čipových karet v IT úřadu

Microsoft Windows Server System

Rozšířené řízení přístupu EACv2 a jeho ověření v projektu BioP@ss

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Jazz pro Účetní (export) Příručka uživatele

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

1. Obecná konfigurace autentizace osob. 2. Konfigurace klienta Windows Vista

Příručka pro uživatele ČSOB InternetBanking 24 a ČSOB BusinessBanking 24 Online s čipovou kartou

REGIS Informační systém pro registrační a licenční činnosti ČNB. Žádost o obnovu oprávnění k činnosti

Postup získání certifikátu pro uživatele WEB aplikací určených pro Sběry dat pro IS VaV

Provozní dokumentace. Seznam orgánů veřejné moci. Příručka pro běžného uživatele

VYHLÁŠKA ze dne 23. června 2009 o stanovení podrobností užívání a provozování informačního systému datových schránek

Generování žádosti o certifikát Uživatelská příručka pro prohlížeč Opera

Podzim Boot možnosti

Uživatelská dokumentace

1.1. Základní informace o aplikacích pro pacienta

Generování žádosti o kvalifikovaný certifikát pro uložení na eop Uživatelská příručka pro Internet Explorer

PŘÍLOHA. návrh. nařízení Evropského parlamentu a Rady,

Dokumentace aplikace Chemon

Příručka pro uživatele ČSOB InternetBanking 24 a ČSOB BusinessBanking 24 Online s čipovou kartou

Příručka pro uživatele CEB s čipovou kartou

4. Nastavení programu

[1] ICAReNewZEP v1.2 Uživatelská příručka

212/2012 Sb. VYHLÁŠKA

ČESKÁ TECHNICKÁ NORMA

Desktop systémy Microsoft Windows

POKYNY K REGISTRACI PROFILU ZADAVATELE

Registrace a aktivace uživatelského profilu k přístupu do systému erecept pro pacienta

Informatika / bezpečnost

Provozní dokumentace. Seznam orgánů veřejné moci. Příručka pro běžného uživatele

Desktop systémy Microsoft Windows

Certifikační autorita EET Modelové postupy vytvoření souboru žádosti o certifikát

- PC musí být připojené v lokální síti - je bezpodmínečně nutné, aby aplikace Outlook nebyla aktivní)

OKsmart a správa karet v systému OKbase

Návod na nastavení klienta pro připojení k WiFi síti SPŠE Brno

Správa stanic a uživatelského desktopu

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

Elektronické pasy v praxi. Zdeněk Říha

INSTALACE SOFTWARE PROID+ NA MS WINDOWS

Generování žádosti o certifikát Uživatelská příručka

Testovací protokol. webový generátor PostSignum. sada PIIX3; 1 GB RAM; harddisk 20 GB IDE OS: Windows Vista Service Pack 2 SW: Internet Explorer 9

Příručka pro klientský certifikát

1. Úvod. 2. CryptoPlus jak začít. 2.1 HW a SW předpoklady. 2.2 Licenční ujednání a omezení. 2.3 Jazyková podpora. Požadavky na HW.

1. Podmínky chodu aplikace

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

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

Testovací protokol čipová karta Oberthur Id-One Cosmo V5.4

Rada Evropské unie Brusel 4. července 2016 (OR. en)

Instalace a první spuštění Programu Job Abacus Pro

Technická komise ISO/JTC1/SC 27 Technická normalizační komise ÚNMZ TNK 20

SecureStore I.CA. Uživatelská příručka. Verze 2.16 a vyšší

Konfigurace pracovní stanice pro ISOP-Centrum verze

Výtisk č.: Počet listů 12. Přílohy: 0 ÚZIS ČR. Příručka pro aktivaci účtu

ZÁKLADNÍ POKYNY PRO INSTALACI PROID+ Z INSTALAČNÍHO MÉDIA

Certifikáty a jejich použití

I.CA SecureStore Uživatelská příručka

ABRA Software a.s. ABRA on- line

dokumentaci Miloslav Špunda

Testovací protokol USB Token Cryptomate

Návod pro Windows 7.

EvMO postup při instalaci

I.CA SecureStore Uživatelská příručka

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

Uživatelská dokumentace

Webové rozhraní pro datové úložiště. Obhajoba bakalářské práce Radek Šipka, jaro 2009

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

Základní příručka programu Crypta 2

Bezpečnost internetového bankovnictví, bankomaty

ISSS Mgr. Pavel Hejl, CSc. T- SOFT spol. s r.o.

TACHOTel manuál 2015 AURIS CZ

Elektronické identifikační doklady. Jak jsou na tom další státy Evropské unie? Smart World Brno, září 2013

Příručka pro uživatele ČSOB CEB s čipovou kartou v operačním systému Mac OS X

Bc. Martin Majer, AiP Beroun s.r.o.

Jazz pro Účetní (import) Příručka uživatele

ČSOB Business Connector Instalační příručka

eliška 3.04 Průvodce instalací (verze pro Windows 7) w w w. n e s s. c o m

4.2. Odhlásit se Šifrování hesla Sepnutí výstupních relé Antipassback Zobrazení všech dat...

František Maleč technický ředitel Státní tiskárna cenin, s.p. Libor Šmíd vedoucí obchodní skupiny Státní správa Monet+, a.s.

Návod pro použití bezpečnostního tokenu SafeNet etoken PASS s Portálem datových stránek. Poslední verze ze dne

Kompletní návod na nákup a čtení eknih ve formátech PDF a epub na PC a MAC

IPFW. Aplikace pro ovládání placeného připojení k Internetu. verze 1.1

SME Terminál + SmeDesktopClient. Instalace. AutoCont CZ a.s.

Vzdálené připojení do sítě ČEZ VPN Cisco AnyConnect

Nadpis. Nadpis 2. Božetěchova 2, Brno

Aktivace RSA ověření

Návod k nastavení účtu v emclient (IceWarp Desktop) pro práci s IceWarp Mail serverem.

Postup instalace ČSOB BusinessBanking pro MS SQL 2005/2008

České vysoké učení technické v Praze FAKULTA INFORMAČNÍCH TECHNOLOGIÍ katedra počítačových systémů. Digitální důvěra. Jiří Smítka

Instrukce pro vzdálené připojení do učebny 39d

Příručka pro klientský certifikát

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

INSTALACE ČTEČKY ČIPOVÝCH KARET GEMALTO IDBRIDGE CT30 A K30

Transkript:

MASARYKOVA UNIVERZITA, FAKULTA INFORMATIKY Přihlášení do Windows pomocí elektronického pasu Bakalářská práce Brno, 2009

Prohlášení Prohlašuji, že tato práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování používal nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj.

Poděkování Rád bych poděkoval Ing. Mgr. Zdeňku Říhovi, Ph.D. za vedení této práce.

Shrnutí Výsledkem práce je implementovaná autentizační knihovna GINA pro operační systémy Windows, která využívá k přihlášení elektronické pasy podporující aktivní autentizaci. Součástí je i pomocný nástroj pro údržbu uživatelských účtů. V teoretické části jsou vysvětleny základní principy práce s bezkontaktním čipem elektronického pasu a je popsána knihovna GINA. Klíčová slova autentizace, elektronický pas, GINA, ISO/IEC 7816-4, PC/SC, smart card, WinLogon

Obsah Úvod... 2 Elektronické pasy... 3 Ochranné mechanismy... 3 Obsah bezkontaktního čipu... 3 Komunikační protokol... 4 BAC... 5 Secure messaging... 5 Aktivní autentizace... 5 Přihlašování do Windows... 6 WinLogon... 6 Autentizace pomocí pasu... 8 Soubor s uživatelskými účty... 8 Správa uživatelských účtů... 9 Přihlášení... 10 Implementace... 11 Komunikace s čipem... 11 Výsledek... 12 Nasazení... 12 Bezpečnost... 12 Výhody a nevýhody... 12 Závěr... 13 Literatura... 14 Přílohy... 15 1

Úvod Na konci srpna roku 2006 byla v Evropské unii zavedena povinnost vydávat elektronické pasy podle standardu ICAO (Mezinárodní organizace pro civilní letectví). Bezkontaktní čip v elektronickém pase umožňuje vykonávat složité kryptografické operace a tak se nabízí možnost elektronický pas využít i k jiným účelům, než k jakému je původně určen. Cílem této práce je implementovat jednu z těchto možných aplikací elektronického pasu. Standardní autentizační metoda užívaná většinou uživatelů k přihlašování do operačního systému Windows je použití přihlašovacího jména a hesla. Jiná autentizační metoda, se kterou se dnes může uživatel běžně setkat, je například přihlášení pomocí otisku prstu. Microsoft umožňuje ve Windows standardní autentizační knihovnu GINA nahradit knihovnou třetích stran. Je tedy možné naprogramovat vlastní implementaci knihovny GINA, která bude vedle standardní autentizace pomocí uživatelského jména a hesla umožňovat i autentizaci pomocí elektronického pasu. Cílem mé této bakalářské práce je vytvoření této implementace knihovny GINA. V následujících kapitolách svoji implementaci popíši a vysvětlím princip jejího fungování. Také vysvětlím základní principy autentizace ve Windows a komunikace s bezkontaktním čipem v elektronickém pasu. 2

Elektronické pasy Elektronický pas je cestovní doklad s elektronickým bezkontaktním čipem podle specifikace organizace ICAO. Optická podoba pasu je téměř shodná jako u běžných pasů. Elektronický pas obsahuje stejně jako ten obyčejný i strojově čitelnou zónu, která obsahuje základní údaje o držiteli pasu a je možné ji opticky přečíst a strojově rozpoznat. Stránka s identifikačními údaji je rozšířená o bezkontaktní čip, který splňuje normu ISO 144443 a komunikuje s hostitelskou aplikací protokolem podle ISO 7816-4 [1]. Na tomto čipu jsou uloženy informace jako jméno držitele pasu, datum narození, číslo pasu, fotografie. Volitelně mohou být na čipu uloženy i biometrické údaje, např. otisky prstů. Elektronický pas je na přední straně označen symbolem viz Obrázek 1. Obrázek 1 Ochranné mechanismy Elektronické pasy mohou využívat několik způsobů zabezpečení. První z nich je BAC (základní řízení přístupu), které brání čtení dat z elektronického pasu nepovolané osobě, která nemá fyzický přístup k údajům vytištěným v elektronickém pase. Pro čtení dat z bezkontaktního čipu je nejprve nutné ustavit zabezpečené spojení za pomocí informací ze strojově čitelné zóny. Dalším ochranným prvkem je aktivní autentizace, která zajišťuje autenticitu pasu pomocí páru asymetrických klíčů. Obsah bezkontaktního čipu Informace na čipu jsou uloženy v souborech, které se dělí do dvou typů: Dedicated File definují hierarchii soborů, podobně jako složky Elementary File obsahují samotná data Uložené informace na bezkontaktním čipu jsou logicky rozděleny do několika datových skupin podle dokumentu [7], kde každé skupině odpovídá jeden Elementary File. Datová skupina 1 a 2 jsou povinné, ostatní jsou volitelné. Pro účely této práce jsou důležité následující datové skupiny: 3

Datová skupina 1 obsahuje údaje ze strojově čitelné zóny se základními údaji o držiteli elektronického pasu Datová skupina 2 - obsahuje portrét držitele elektronického pasu ve formátu JPEG Datová skupina 15 obsahuje veřejný klíč potřebný k aktivní autentizaci Komunikační protokol Protokol, kterým bezkontaktní čip komunikuje je na aplikační úrovni založen na posílání takzvaných APDU. APDU je datová jednotka, kterou aplikace posílá bezkontaktnímu čipu instrukce, nebo naopak bezkontaktní čip posílá odpověď hostitelské aplikaci. Obsah APDU příkazu: Kód Jméno Popis CLA Class Třída instrukce INS Instruction Kód instrukce P1 Parameter 1 1. parametr instrukce P2 Parameter 2 2. parametr instrukce Lc Length Počet bytů v poli Data Data Data Data poslaná v příkazu Le Length Maximální délka v bytech očekávané odpovědi CLA, INS, P1 a P2 jsou jednobytové hodnoty a jsou povinné v každém příkazu. Připojení dalších částí příkazu už záleží na kódu instrukce. Obsah APDU odpovědi: Kód Jméno Popis Data Data Data poslaná v odpovědi SW1 Status byte 1 Stav výsledku operace SW2 Status byte 2 Upřesnění stavu výsledku Byty SW1 a SW2 jsou v odpovědi obsaženy vždy. Pole data je v odpovědi obsaženo jen u určitých instrukcí. 4

BAC BAC, neboli základní řízení přístupu, je volitelný ochranný mechanismus v elektronickém pasu. Díky BAC nelze z elektronického pasu přečíst data bez fyzického přístupu k pasu. Z informací (číslo dokumentu, datum narození a datum platnosti), které jsou vytisknuté v elektronickém pasu ve strojově čitelné zóně, se sestaví prvotní klíč, který je použit k ustavení sdílených 3DES klíčů pro zabezpečenou komunikaci s čipem. Secure messaging Po ustavení sdílených klíčů je všechna následná komunikace mezi aplikací a bezkontaktním čipem chráněna pomocí Secure Massagingu. V tomto případě se všechny příkazy šifrují za použití algoritmu 3DES a jsou k nim přidávány kontrolní součty MAC. Příchozí odpověď je dešifrována a následně autorizována pomocí MAC. Aktivní autentizace Na čipu je uložen pár veřejného a soukromého klíče. Veřejný klíč je uložen v datové skupině 15 a je možné ho přečíst z bezkontaktního čipu standardní cestou. Privátní klíč je na bezkontaktním čipu uložen tak, že jej není možné z čipu přečíst běžnými prostředky, ale je možné pouze použít příkaz INTERNAL AUTHENTICATE k podepsání bloku dat privátním klíčem. Aktivní autentizace potom probíhá následovně: 1. Aplikace vygeneruje náhodný řetězec dlouhý 8 bytů a pošle ho čipu pomocí příkazu INTERNAL AUTHENTICATE 2. Bezkontaktní čip přijme tento řetězec a připojí k němu další data. Tento nový řetězec podepíše podle ISO 9796-2 Digital Signature scheme 1 [2] a pošle nově podepsaný řetězec zpět hostitelské aplikaci 3. Aplikace ověří digitální podpis Aktivní autentizace slouží jako ochranný prostředek proti kompletnímu zkopírování elektronického pasu. 5

Přihlašování do Windows O přihlašování uživatelů v systému Windows se stará proces WinLogon. Ten využívá knihovnu GINA, která se stará o interakci systému s uživatelem během přihlašovacího procesu. Jejím úkolem je shromáždit informace nutné k autentizaci uživatele. Standardně je to uživatelské jméno a heslo, v případě mé implementace je to elektronický pas přiložený ke čtečce. Po úspěšném ověření uživatele ustaví knihovna GINA nové sezení. WinLogon WinLogon zpracovává funkce, které jsou nezávislé na autentizačním postupu. Poskytuje několik funkcí k podpoře knihovny GINA. WinLogon se může nacházet ve třech stavech: Odhlášený uživatel v tomto stavu je uživatel vyzván k zadání autentizačních údajů. Pokud uživatel poskytne správné údaje, je přihlášen do systému Obrázek 2 Přihlášený uživatel přihlášený uživatel může normálně pracovat se systémem. Uživatel se může ze systému kdykoliv odhlásit a v tomto případě se WinLogon přepne do stavu Odhlášený uživatel a všechny běžící procesy spuštěné uživatelem jsou ukončeny. Uživatel také může stanici uzamknout, a tím se znepřístupní jeho plocha a WinLogon se přepne do stavu Uzamčená stanice. Obrázek 3 Uzamčená stanice uživatel je vyzván k z zadání autentizačních údajů. Do systému se může přihlásit jen uživatel, který stanici uzamknul, tím se WinLogon přepne do stavu Přihlášený uživatel. Uživatel s právy administrátora může vynutit odhlášení uživatele 6

poskytnutím svých autentizačních údajů, v tom případě se WinLogon přepne do stavu Odhlášený uživatel. Obrázek 4 Odhlášený uživatel Uzamčená stanice Přihlášený uživatel Obrázek 5 GINA může reagovat na změnu těchto stavů, nebo přecházet mezi těmito stavy. 7

Autentizace pomocí pasu Tato aplikace je navržena pro komunikaci se čtečkou bezkontaktních čipových karet přes rozhraní PC/SC. Protože tato čtečka neumožňuje přečíst informace ze strojově čitelné zóny pasu, které jsou potřeba pro ustavení sdílených klíčů a následnou komunikaci s bezkontaktním čipem zabezpečenou přes secure messaging, je třeba toto omezení obejít. Při párování elektronického pasu s uživatelským účtem je uživatel vyzván, aby ručně zadal informace ze strojově čitelné zóny. Tyto informace jsou potom uloženy společně s uživatelským jménem, zašifrovaným heslem a veřejným klíčem pro aktivní autentizaci v souboru s uživatelskými účty. Tento soubor je pojmenován epasslogin.dat a je uložen ve složce %WINDIR%\System32. Soubor s uživatelskými účty Pro každý elektronický pas, který je svázaný s uživatelem je v tomto souboru vytvořen jeden záznam o délce 1024 bytů. Struktura záznamu: Informace Začátek (byt) Délka (v bytech) Informace ze strojově čitelné 0 24 zóny Uživatelské jméno 24 128 Zašifrované heslo 152 128 Doména 280 256 Datum vytvoření záznamu 536 4 Veřejný klíč k aktivní 540 484 autentizaci Informace ze strojově čitelné zóny jsou uloženy jako pole 24 bytů. Uživatelské jméno je uloženo ve znakové sadě Unicode ve formátu dva byty na jeden znak. Za posledním znakem uživatelského jména následuje znak s hodnotou 0 a zbytek bytů do 128 je náhodný. Heslo je uloženo stejně jako uživatelské jméno. Navíc je celých 128 bytů zašifrováno blokovou šifrou 3DES. Jako klíč je použito nejvýznamnějších 16 bytů z SHA-1 hashe bytů 3072 3327 z datové skupiny 2 (fotografie držitele) elektronického pasu. Doména je uložena ve stejném formátu jako uživatelské jméno, ale je pro ni vyhrazeno dvakrát více bytů. 8

Datum vytvoření záznamu je uloženo jako celé číslo na 4 bytech. Vyjadřuje počet sekund od 1.1.1970. Na konci dokumentu je uložen veřejný klíč k aktivní autentizaci ve formátu, který popisuje dokument RFC 3280 [4]. Správa uživatelských účtů Správa uživatelských účtů je prováděna pomocí aplikace SetupUtil. Podoba hlavního okna je zobrazena na Obrázku 6. Obrázek 6 Tato aplikace umožňuje spárovat uživatelský účet na klientské stanici s konkrétním elektronickým pasem. Správu uživatelských účtů může provádět uživatel, který má právo zápisu do souboru s uživatelskými účty, tj. v běžném případě administrátor. Při přidávání nového uživatele se zobrazí dialog viz Obrázek 7. 9

Obrázek 7 Po vyplnění údajů a stisknutí tlačítka Ok je uživatel vyzván k přiložení elektronického pasu ke čtečce. Po zjištění přítomnosti elektronického pasu aplikace zkusí ustavit sdílené klíče na secure messaging a ověří elektronický pas aktivní autentizací. V případě úspěchu přečte aplikace data z bezkontaktního čipu z datové skupiny 2, které použije k zašifrování hesla a informace o novém uživateli zapíše do souboru. V této aplikaci lze také vybrat čtečku, která bude použita pro čtení elektronických pasů při přihlašování. Tato informace se ukládá do registrů Windows do hodnoty ReaderName v klíči HKEY_LOCAL_MACHINE \SOFTWARE\ePassportLogin. Přihlášení Základní myšlenka aplikace je umožnit uživateli přihlášení do Windows pomocí elektronického pasu bez nutnosti jakéhokoliv další interakce uživatele se systémem (zadání uživatelského jména nebo potvrzení nějakého dialogu). Zároveň je zachována možnost přihlásit se standardní cestou pomocí uživatelského jména a hesla. Pří zobrazení dialogu, který nabádá uživatele k přihlášení je zároveň spuštěno paralelní vlákno, které hlídá, zda nebyl ke čtečce přiložen elektronický pas. To detekuje Win32 API funkce SCardGetStatusChange. Tuto funkci je potřeba vykonávat ve zvláštním vlákně, protože funkce čeká na změnu stavu čtečky a blokuje další běh vlákna. V opačném případě by byly blokovány zprávy pro obsluhu zobrazeného dialogu. 10

V momentě, kdy je detekováno, že ke čtečce byl přiložen elektronický pas, aplikace začne procházet soubor s uživatelskými účty a u každého účtu se aplikace pokusí ustavit sdílené klíče pomocí informací ze strojově čitelné zóny (kombinace čísla pasu, data narození a data platnosti), které je uloženy u každého uživatelského účtu. Pokud aplikace uspěje a podaří se jí ustavit sdílené klíče k Secure messagingu, znamená to, že identifikovala uživatele. Následně provede autentizaci uživatele pomocí aktivní autentizace elektronického pasu. Aplikace pošle čipu výzvu k aktivní autentizaci a odpověď ověří vůči veřejnému klíči, který má uložen v souboru s uživatelskými účty. Při dešifrování odpovědi je použita funkce RSA_public_decrypt z knihovny OpenSSL. Implementace Aplikace je napsána v jazyce C++ a dá se rozdělit na 3 hlavní části. První část se stará o komunikaci se systémem Windows. Je implementována ve třídě Gina. Tato třída je napsána podle příkladu FULLGINA[3] Druhá čast se stará o komunikaci s bezkontaktním čipem. Ta je implementována ve třídách EPassport a SmartCardManager. Třetí část provádí samotnou identifikaci a autentizaci uživatele. K vývoji jsem použil Microsoft Visual Studio 2005. K ladění jsem použil Microsoft Virtual PC a v něm spuštěné Windows XP. Komunikace s bezkontaktním čipem Pro komunikaci s bezkontaktním čipem jsou použity funkce pro práci s rozhraním PC/SC z knihovny Win32 API. Metody na komunikaci s bezkontaktním čipem jsou implementovány v třídách SmartCardManager a EPassport. Nejprve se ustaví kontext správce zdrojů pomocí funkce SCardEstablishContext. Následně se funkcí SCardConnect ustaví spojení mezi aplikací a bezkontaktním čipem elektronického pasu. Funkcí SCardTransmit se posílají bezkontaktnímu čipu jednotlivé instrukce jako select file, read binary, get challenge a pod. Při komunikaci s bezkontaktním čipem je nutné používat spoustu kryptografických algoritmů. Algoritmus hashování SHA-1 použitý ve zdrojovém kódu je implementací od Paul E. Jones, 1998. Algoritmus šifrování 3DES je implementací od Christophe Devine, 2006. Na šifrování RSA je použita knihovna OpenSLL. 11

Výsledek Nasazení 1. DLL knihovnu epasslogin.dll spolu s knihovnou libeay32.dll zkopírujeme do adresáře System32 v adresáři, kde jsou nainstalovány Windows. 2. V registrech vytvoříme novou hodnotu typu REG_SZ v klíči HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon. Tu pojmenujeme GinaDLL a její hodnotu nastavíme na jméno naší knihovny GINA, v tomto případě na epasslogin.dll. 3. Spustíme aplikaci SetupUtil, která slouží k údržbě uživatelských účtů a svážeme požadované účty s elektronickými pasy. Je také potřeba vybrat čtečku bezkontaktních čipů, která bude používána k autentizaci uživatelů. 4. Restartujeme počítač. Bezpečnost Přihlašovací jména a hesla uživatelů jsou uloženy v běžném souboru na pevném disku. Pokud má útočník práva ke čtení souboru, může zjistit uživatelská jména, která jsou svázána s elektronickými pasy, avšak hesla těchto uživatelů jsou v souboru zašifrována a klíč k dešifrování každého hesla je uložen v elektronickém pasu. Proto útočník i při přečtení tohoto souboru nezíská přístup k uživatelským účtům. Pokud útočník získá právo zápisu do tohoto souboru, může jej poškodit a tím znemožnit uživatelům přihlašování pomocí elektronického pasu. Využití aktivní autentizace znemožňuje útočníkovi vytvořit kopii elektronického pasu a použít ji k přihlášení. Výhody a nevýhody Výhoda při přihlašování elektronickým pasem je to, že uživatelé si nemusí pamatovat jejich heslo. To je bezpečně uloženo na disku počítače. Další výhodou je jednoduchost přihlášení, kdy jediné co musí uživatel udělat, je přiložit pas k bezkontaktní čtečce. Nevýhoda této implementace je ta, že při každé změně přihlašovacího hesla je nutné obnovit svázání uživatelského účtu s elektronickým pasem. 12

Závěr Cílem práce bylo implementovat autentizační knihovnu GINA pro operační systém Windows, která bude využívat elektronické pasy podporující aktivní autentizaci. Výsledná implementace je funkční a umožňuje jednoduché přihlášení do Windows stejně jako základní správu uživatelských účtů. Program je odladěn jen pro pasy vydávané Českou republikou a není možné garantovat jeho funkčnost s pasem vydaným jiným státem. Bohužel proces autentizace se v posledním desktopovém operačním systému od Microsoftu Windows Vista změnil tak, že v něm nelze tuto knihovnu využít a tato práce je tedy využitelná jen u starších operačních systémů. 13

Literatura [1] ISO/IEC 7816-4, Identification cards - Integrated circuit(s) cards with contacts - Part 4: Interindustry commands for interchange, 1994 [2] ISO/IEC 9796-2, Information Technology Security Techniques Digital Signature Schemes giving message recovery Part 2: Integer factorisation based mechanisms, 2002. [3] BROWN, K.: Customizing GINA (Part 2), MSDN Magazine, červen 2005. Dostupné na URL http://msdn.microsoft.com/en-us/magazine/cc163786.aspx (leden 2009) [4] RFC 3280, R. Housley, W. Polk, W. Ford, D. Solo, "Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile", RFC 3280, April 2002 [5] ICAO, MRTD: PKI for Machine Readable Travel Documents offering ICC Read-Only Access [6] ICAO: ICAO 9303 specification. Včetně Supplement 9303, 2005-4 V3.0 [7] ICAO: Development of a Logical Data Structure LDS for Optional Capacity Expansion Technologies, V 1.7 14

Přílohy Součástí práce je CD obsahující zdrojové kódy implementované knihovny GINA a pomocného nástroje pro údržbu uživatelských účtů. Zároveň je ke zdrojovým kódům přiložena binární verze knihovny OpenSSL, která je vyžadována pro běh aplikace. 15