|
|
- Sabina Bartošová
- před 9 lety
- Počet zobrazení:
Transkript
1 ƒeské vysoké u ení technické v Praze Fakulta elektrotechnická Katedra po íta Bakalá ská práce Terminálová a registra ní ást systému Elektronické volby Václav Tarantík Vedoucí práce: Ing. Martin Komárek Studijní program: Softwarové technologie a management, Bakalá ský Obor: Softwarové inºenýrství 24. kv tna 2012
2 iv
3 v Pod kování Cht l bych tímto pod kovat p edev²ím svým rodi m za jejich nekon ící ochotu, trp livost a podporu v dosavadním ºivot, své p ítelkyni Nikol, která mi dodávala odvahu a odhodlání, Petru Hlavá kovi za spolupráci p i tvorb aplikace a v²em p átel m, kte í mi byli nablízku. V neposlední ad také vedoucímu práce, panu Ing. Martinu Komárkovi za odbornou pomoc a rady p i samotné tvorb práce.
4 vi
5 vii Prohlá²ení Prohla²uji, ºe jsem práci vypracoval samostatn a pouºil jsem pouze podklady uvedené v p iloºeném seznamu. Nemám závaºný d vod proti uºití tohoto ²kolního díla ve smyslu Ÿ60 Zákona. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o zm n n kterých zákon (autorský zákon). Ve Smi icích dne
6 viii
7 Abstract This work deals with the analysis, design and implementation of the terminal and registration part of the E-voting system. It enables the voting itself and logging into the system using the local terminal which communicates with the server via the https protocol. The work also deals with the modern trends in the electronical voting branch, dierent types of the authorization and authentication of the voters and further with the various types of the results evaluation. The main benet of the system is at most the easement of the voting process iteself, gaining the results and evaluation. It also provides the reduction of needed number of supervising persons and related expenses. Abstrakt Tato práce se zabývá analýzou, návrhem a implementací terminálové ásti systému E-volby. Umoº uje hlasování a p ihlá²ení do systému prost ednictvím terminálu, který se serverem komunikuje vzdálen pomocí protokolu https. Práce se rovn º zabývá moderními trendy na poli elektronických voleb a hlasování, rozli nými typy autorizace a autentikace voli a dále také r znými typy vyhodnocování volebních výsledk. Hlavním p ínosem je zejména uleh ení vlastního procesu hlasování, sb ru dat a vyhodnocování. S tímto souvisí i sníºení nutného po tu dohlíºejících osob a s nimi souvisejících náklad. ix
8 x
9 Obsah 1 Popis problému, specikace cíle Úvod Zadání a motivace Zabezpe ení a spolehlivost elektronických volebních systém Zabezpe ení proti výpadku proudu Záloºní napájecí zdroje Spu²t ní a chod serveru na notebooku Shrnutí Zabezpe ení proti napadení t etí stranou Zabezpe ení samotného hlasu Kryptogracké algoritmy Protokol HTTPS HTTP SSL/TLS Shrnutí Autentizace a autorizace voli Zp soby ov ování identity Analýza Poºadavky Funk ní poºadavky Nefunk ní poºadavky P ípady uºití Akté i Diagram p ípad uºití Scéná e Úprava vygenerovaných p ihla²ovacích údaj P ihlá²ení do systému Zobrazení volebního lístku Doménový model Popis jednotlivých entit User Election Ticket Option xi
10 xii OBSAH Role Additionals Election Election Event Návrh e²ení Technologie Server Registra ní ást Databáze Programovací jazyk Vývojové prost edí ƒte ka Repozitá projektu Implementace Databázové p ipojení Nastavení persistentní vrstvy Nastavení entit Problémy p i realizaci persistence e²ení problému Prezenta ní vrstva Zp sob p ihla²ování uºivatele P izp sobení pro r zné typy voleb Práce s otisky prstu Uloºení otisku prstu Ov ení otisku prstu Problémy spojené s ov ováním otisku prstu P ipojení k serveru pomocí HTTPS protokolu P vodní plán propojení ástí systému e²ení problému s propojením Zm ny provedené oproti prvotnímu návrhu Zm ny v doménovém modelu Zm ny ve funk nosti aplikace Testování Testování s uºivatelem Seznam úkol Výstupy uºivatel Uºivatel Uºivatel Uºivatel Shrnutí testování Zadávání otisku prstu P i azování preferencí zvoleným kandidát m Odhlá²ení ze systému
11 OBSAH xiii 6.2 Hodnocení prob hnutých test Záv r 41 A Seznam pouºitých zkratek 45 B UML diagramy 47 C Obsah p iloºeného CD 51 D Instala ní p íru ka 53 D.1 Pot ebné programy D.2 Postup instalace D.2.1 SDK D.2.2 MySQLServer D.2.3 Netbeans D.3 Spu²t ní aplikace
12 xiv OBSAH
13 Seznam obrázk 3.1 P ípady uºití Doménový model B.1 Doménový model server B.2 Business prcess model práce uºivatele se systémem xv
14 xvi SEZNAM OBRÁZK
15 Seznam tabulek 2.1 Tabulka srovnání typ UPS Kryptogracké algoritmy Tabulka moºných hodnot FAR s odpovídající pravd podobností chyby xvii
16 xviii SEZNAM TABULEK
17 Kapitola 1 Popis problému, specikace cíle 1.1 Úvod V zastupitelské demokracii jsou volby prost edkem, kterým si právn zp sobilí ob ané mohou ur it, kdo bude v jejich zemi vládnout, ur ovat zákony a ídit celkový chod státu. Po átek voleb datujeme v ƒeskoslovensku od roku 1920, kdy se volilo do dvoukomorového Národního shromáºd ní Republiky ƒeskoslovenské sloºeného z Poslanecké sn movny a Senátu. V sou- asné dob se v ƒeské republice volí do Evropského parlamentu, krajských zastupitelstev, do obecní samosprávy, do Senátu a do Poslanecké sn movny. Podklady k tomuto textu byly erpány z internetu a p edev²ím potom ze stránek Strany a volby[17] Ú elem voleb je dát voli m moºnost svobodného rozhodnutí, které m ºe ovlivnit chod státu. Ve v t²in zemí se stále vyuºívá papírového zp sobu volení, které obná²í p ítomnost voli e ve volební místnosti, vloºení hlasu do obálky, pokud se jedná o tajné hlasování, a následné vhození do volební urny. Po skon ení hlasování jsou tyto hlasy p epo ítávány komisí, která na základ zji²t ných hodnot vynese verdikt o výsledku voleb. Tento zp sob, a koliv je jiº léty zab hnutý, je bohuºel velice asov a fyzicky náro ný a rovn º pom rn náchylný na lidskou chybu. V minulých letech se v r zných zemích sv ta jiº s nápadem elektronických voleb p i²lo, ov²em v drtivé v t²in byl jiº p ed samotnou snahou realizace smeten ze stolu. D lo se tomu p eváºn kv li ned v e ob an k zabezpe ením, která poskytují r zné typy internetových protokol. Z televizních obrazovek denn slýcháme o etných útocích hacker na vládní systémy s úmysly nabourání, úprav nebo po²kození systém, coº pouze podporuje obavy ob an a jejich odmítavý p ístup k novým e²ením. Ve své práci bych cht l jednotlivé moºnosti inovací zhodnotit, popsat a navrhnout nejlep²í e²ení. Tato terminálová ást by usnadnila zejména zadávání jednotlivých hlas do systému a ov ení identity voli. 1.2 Zadání a motivace Stávající projekt E-volby[8] bohuºel neposkytuje podporu pro lokální terminál. Jak se autor zmi uje ve své práci, jiº mu na tento nevy²el as a tudíº stávající implementace neexistuje. Tato práce má za cíl tento terminál se v²emi pot ebnými náleºitostmi navrhnout 1
18 2 KAPITOLA 1. POPIS PROBLÉMU, SPECIFIKACE CÍLE a naimplementovat a zajistit plnou funk nost výsledného spojení se serverovou ástí. Cílem této práce je rovn º seznámení se s jednotlivými typy voleb a zp soby vyhodnocování výsledk.
19 Kapitola 2 Zabezpe ení a spolehlivost elektronických volebních systém Pro hladký pr b h hlasování je nutné za ídit minimalizaci vliv, které by mohly n jakým zp sobem zasáhnout systém a znemoºnit tak hlasování nebo v nejhor²ím p ípad ovlivnit výsledky voleb nezapo ítáním n kterých hlas, které byly v dob výpadku na p lce cesty. Mohlo by se stát, ºe bychom tento problém neodhalili a neúmysln tak poru²ili zákon. Z tohoto d vodu bych tuto kapitolu cht l zam it p edev²ím na studii toho, jak t mto problém m p edejít i úpln zamezit. 2.1 Zabezpe ení proti výpadku proudu Tato ást se v nuje zamezení ovlivn ní pr b hu hlasování zp sobeného výpadkem proudu. Toto je asi nejpravd podobn j²í zp sob naru²ení volební události. Jedná se ov²em spí²e o problém, který je nutné o²et it z vn j²ku systému, protoºe neexistuje softwarové e²ení, které by totoriziko dokázalo potla it. Kapitola popsuje jednotlivé typy e²ení, jejich spolehlivost a nan ní náro nost Záloºní napájecí zdroje Záloºní napájecí zdroje(ups) jsou základním prvkem ochrany proti výpadku nap tí. Existuje hned n kolik variant li²ících se navzájem podle typu a zp sobu pouºití. Dle zp sobu vnit ní realizace je lze rozd lit na t i hlavní skupiny následovn : O-line UPS Line-interactive UPS On-line UPS 3
20 4KAPITOLA 2. ZABEZPEƒENÍ A SPOLEHLIVOST ELEKTRONICKÝCH VOLEBNÍCH SYSTÉM O-line UPS Tento typ záloºních zdroj p edstavuje naprostý základ, který má pouze nejnutn j²í funk nosti, které od záloºního zdroje o ekáváme. Jeho hlavními výhodami jsou p edev²ím vysoká skladnost p i pom rn malých rozm rech a nízká cena. Mezi nevýhody pat í nap íklad fakt, ºe není schopen vypo ádat se s p ep tím i podp tím v síti. Tyto zdroje se hodí p edev²ím pro malé výkony. Proud zde prochází ze vstupu p ímo na výstup a p i výpadku nap tí se p epne na výstup z nap ového m ni e. Line-interactive UPS V tomto p ípad se jedná o pokro ilej²í verzi O-line zdroje, kdy se tento dá pouºít i pro v t²í výkony. Stabilizace nap tí zde probíhá skokov, p i emº p i t chto úpravách zdroj nevyuºívá baterii, na kterou se p epne aº p i del²ích výkyvech v síti nebo p i úplném výpadku proudu. Tento typ záloºního zdroje ve v t²in p ípad sta í pro zaji²t ní chodu systému na krat²í dobu po kolapsu sít. On-line UPS Jedná o nejdraº²í variantu záloºních zdroj. To je zap í in no hlavn tím, ºe se p ená²ený výkon musí nejprve usm rnit a poté p evést na st ídavý, jejich konstrukce je sloºit j²í a s tím i odpovídající cena vy²²í. Hlavní nevýhodou tohoto typu je jeho ú innost, která je zde niº²í, neº u ostatních model, ov²em hlavní výhodou je fakt, ºe tento druh záloºních zdroj lze pouºít prakticky pro jakýkoliv typ zát ºe bez ohledu na to, jak stabilní je sí, jelikoº se p ístroj vypo ádá i s velkými nap ovými výkyvy. Velkou výhodou rovn º z stává i fakt, ºe tento typ zdroj poskytuje rovn º podporu rozhraní SNMP 1 /HTTP na rozdíl od ostatních. Následující tabulka porovnává vlastnosti jednotlivých typ záloºních zdroj. Tato tabulka je áste n p evzatá ze stránek rmy Falcon[14] 1 Jedná se o internetový protokol, který slouºí pro správu sít
21 2.1. ZABEZPEƒENÍ PROTI VÝPADKU PROUDU 5 Problém O-line Line-interactive On-line P echod na baterii bez p eru²ení výstupu Izolace vstupu od výstupu Ochrana za ízení p ed p ímým úderem blesku Pouºitelnost u systém s pot ebou zálohy del²í neº hodinu Podpora HTTP/SNMP rozhraní Vyuºití za ízení v extrémních teplotách(<0c a >33C) Pokra uje UPS v provozu p i úplném selhání baterií V t²ina NE N které ANO Tabulka 2.1: Tabulka srovnání typ UPS Spu²t ní a chod serveru na notebooku Dal²í moºností, jak se vyvarovat ztráty volebních dat je spou²t t server na notebooku. Tento zp sob se jeví jako velmi výhodný p edev²ím pro men²í volební události, kde máme k serveru p ipojených pouze n kolik klient. S rostoucím po tem p ipojení ov²em rapidn rostou nároky na hardware notebooku, který je pro v t²í volební události pom rn nevhodný. Pokud jsme si jisti, ºe nep ekro íme ur ité zatíºení systému, je toto e²ení velice výhodné. Díky baterii notebooku jsme schopni se systémem po výpadku dále pracovat. V dne²ní dob mají jiº pr m rné notebooky p íznivé doby výdrºe na baterii, coº nám slibuje n co kolem 2 hodin chodu systému po výskytu problému. Oproti klasickému stolnímu serveru má toto e²ení je²t dal²í nevýhodu, a to fakt, ºe chlazení notebooku není natolik dosta ující pro vysoké výkony a ast ji zde dochází k p eh ívání systému, coº by mohlo v extrémním p ípad znamenat ztrátu uºivatelských dat p i zni ení notebooku p eh átím Shrnutí Jaké e²ení je tedy vhodné zvolit? Rozhodujícím faktorem by pro nás m la být p edev²ím rozsáhlost volební události, kterou budeme na²ím systémem obsluhovat. Lze íci, ºe p i men²í, lokální volební akci je vyuºití notebooku, jako serveru velmi výhodnou a nan n p íznivou volbou, která nás nezklame ani p i úplném výpadku na n kolik desítek minut. Pro v t²í volební události, kde se hlasuje p es velké mnoºství terminál je naopak lep²í poohlédnout se po moºnosti e²ení s UPS. V na²em p ípad je ov²em nutný Online typ, který je vysoce nan n náro ný jiº u základních typ, které p i plném vytíºení vydrºí pracovat na baterii pouze 5 minut se cena pohybuje okolo 20 tisíc korun, coº znamená, ºe pokud po ádáme volby v oblasti s nestabilní sítí, kde jsou asté výpadky proudu po del²í dobu, musíme sáhnout k profesionálním UPS, které se jiº mohou cenov posunout aº do ádu statisíc. Je tedy velice d leºité zváºit, co budeme provozovat a jaké k tomu budeme mít podmínky.
22 6KAPITOLA 2. ZABEZPEƒENÍ A SPOLEHLIVOST ELEKTRONICKÝCH VOLEBNÍCH SYSTÉM 2.2 Zabezpe ení proti napadení t etí stranou Tato ást je zam ena p edev²ím na zp soby zabezpe ení odeslaného hlasu p ed jeho p e tením i pozm n ní cizí osobou. Spolehlivost volební události spo ívá p edev²ím v tom, s jakou jistotou m ºeme íci, ºe se kaºdý odeslaný hlas zapo ítá skute nému adresátovi, a to pouze jednou a také, existuje-li moºnost úpravy hlasu nebo zji²t ní jeho obsahu p i cest do cíle. Mým cílem je vyty it zde poºadavky, které musí kaºdá volební událost z hlediska bezpe nosti spl ovat a ur it zp sob, jakým toho lze dosáhnout. Jednotlivé zp soby ochrany lze rozd lit do dvou základních kategorií, a to na zabezpe ení hlasu a ochranu samotného hardwaru, na kterém volební systém b ºí Zabezpe ení samotného hlasu Pro bezpe ný pr b h hlasování je nutné zajistit anonymitu jednotlivých hlas. R zné zp - soby zabezpe ení jsou popsány v práci Metody dosaºení spolehlivosti elektronických voleb [1] Michaely Sedlá ové. Autorka v této práci popisuje rozdílné typy zabezpe ení a ²ifrování odesílaných hlas. Pro úplnost p idávám jejich stru ný popis. Asymetrické ²ifrování Je zp sob vyuºívající dva typy klí, a to ve ejný pro ²ifrování a soukromý pro de²ifrování. Cílová osoba dokáºe pomocí svého soukromého klí e zprávu roz²ifrovat. V elektronických volbách funguje tento systém tak, ºe v²ichni voli i obdrºí ve- ejný klí, kterým sv j hlas za²ifrují a p idají k d kazu pravosti. Z takto za²ifrovaných hlas je následn vytvo en za²ifrovaný volební výsledek, který je p edán autoritám, které disponují soukromými klí i, po et pot ebných klí k roz²ifrování je p edem daný, zpravidla to bývá nadpolovi ní v t²ina. Pomocí t chto klí je získán výsledek voleb a následn zve ejn n seznam voli, jejichº hlasy byly zapo ítány, samoz ejm neobsahující voli v výb r. Toto slouºí k uji²t ní voli, ºe byl jejich hlas zpracován v po ádku. Bezpe nost tohoto systému spo ívá rovn º v tom, ºe se výsledky de²ifrují aº po skon ení hlasování, kdy je známý konkrétní výsledek. Slepý podpis Tento systém se vyuºívá pro uchování tajnosti volby jdnotlivých voli. Voli vloºí sv j hlas do obálky, kterou podepí²e svým elektronickým podpisem. Tuto obálku po²le registra nímu serveru, který zjistí, zda se jedná o legitimního voli e a dal²í náleºitosti, a pokud je v²e v po ádku, obálku podepí²e a ode²le zp t voli i. Zde je v²e v po ádku z hlediska bezpe nosti, jelikoº server nem ºe za²ifrovanou zprávu p e íst. Voli po obdrºení schválené obálky posílá sv j hlas p es anonymní kanál serveru k vyhodnocení. Pro vyhodnocení je je²t nutné, aby voli zaslal serveru klí pro otev ení obálky. Toto jiº ov²em pr b h hlasování neovlivní, jelikoº klí odesílá voli aº poi skon ení hlasování Kryptogracké algoritmy Tato ást se v nuje konkrétním typ m ²ifrovacích algoritm. Ty jsou v systému pouºívány páv p i ²ifrování zprávy odesílané voli em. V následující tabulce je jejich lehké shrnutí obsahující stru ný popis. Jedná se o n kolik nejb ºn ji pouºívaných typ.
23 2.2. ZABEZPEƒENÍ PROTI NAPADENÍ T ETÍ STRANOU 7 Název algoritmu Typ Princip Pouºití RSA Asymetrický Ve ejný klí je náhodn vygenerován ifrování a podepisování a s jeho pomocí je vygenerován soukromý klí DSA Asymetrický Generování klí pomocí diskrétního Podepisování algoritmu SHA Hashovací Vytvo ení otisku vstupní délky ze ifrování vstupních dat MD5 Hashovací N kolik pr chod zprávou, v kaºdém ifrování pr chodu pouºity jiné hodnoty pro r zná slova. Jiº moc nepouºívaný. AES Symetrický Pomocí stejného klí e se zpráva ²ifruje ifrování i de²ifruje IDEA Symetrický N kolikanásobná aplikace neslu itelných algebraických operací na text ifrování Protokol HTTPS Tabulka 2.2: Kryptogracké algoritmy Protokol HTTPS bude pouºit pro komunikaci terminálu se serverem systému evolby. Jelikoº je pro tuto práci velice podstatný, je mu v nována celá tato sekce, kde je popsán podrobn ji. P i psaní této ásti jsem nejvíce vycházel z lánk o HTTPS na serveru Wikipedia [7]. tento protokol je v sou asnosti velmi hojn vyuºívaný v ad aplikací, které jsou náchylné na útoky cizích osob, jako nap íklad internetové bankovnictví, po²tovní server ƒvut a prakticky na v²ech stránkách, kde je nutné zajistit anonymitu a bezpe í uºivatele. Tento protokol je výsledkem slou ení dvou odv tví, a to HTTP a SSL 2 /TLS 3. T mto ástem se v nuje následující text HTTP Hypertext Transfer Protocol neboli Hypertextový p enosový protokol je hlavním nástrojem vyuºívaným uºivateli na celém sv t pro zprost edkování komunikace s internetem. Tento protokol je v sou asnosti pouºíván pro p enos mnoha typ informací. Spolu s formátem XML slouºí jako nástroj webových sluºeb, jeº mají za cíl spou²t ní webových aplikací. Samotný protokol je bezestavový, to znamená, ºe si v pr b hu komunikace s uºivatelem nedokáºe odvodit spojitost n jaké posloupnosti dotaz. Za tímto ú elem slouºí uºivateli tzv. Cookies, které ukládají jednotlivé informace o spojení uºivatele se serverem v po íta i. Samotná komunikace dále funguje tak, ºe uºivatel za²le serveru konkrétní dotaz na jeho obsah. ten tento 2 Secure Sockets Layer, p edstavuje mezivrstvu mezi transportní a aplika ní vrstvou zaji² ující zabezpe ení komunikace ²ifrováním 3 Transport Layer Security p edstavuje moderní verzi SSL, kdy poskytuje zabezpe ení pro webové sluºby
24 8KAPITOLA 2. ZABEZPEƒENÍ A SPOLEHLIVOST ELEKTRONICKÝCH VOLEBNÍCH SYSTÉM dotaz zpracuje, vyhodnotí a ode²le uºivateli nový dokument, na jehoº za átku je obsaºen výsledek dotazu, tedy zda server na²el odpovídající dokument a podobn. Za t mito pár ádky následuje posloupnost dat vyºádaných uºivatelem.následuje ukázka zobrazuje zjednodu²ený dotaz, který posílá uºivatel serveru. Nejedná se o celý p íkaz, pouze o jeho ást. GET /sekce/fotbal/liga-mistru HTTP/1.1 Host: fotbal.sport.cz User-Agent: Opera/9.80 (Windows NT 5.1; U; cs) Presto/ Version/10.60 Accept-Charset: UTF-8,* V této ukázce vidíme, ºe si uºivatel vyºádal dokument /sekce/fotbal/liga-mistru, který se nachází na serveru daném v ásti Host, zde tedy fotbal.sport.cz, na následujícím ádku následuje popis prohlíºe e, který se serveru dotazuje a nakonec je²t ozmnamuje, jaké p ijímá kódování. Systém na tento dotaz odpoví. Odpov, kterou p ijme prohlíºe vypadá následovn : HTTP/ OK Date: Fri, 29 Dec :27:25 GMT Content-Language: cs Content-Type: text/html; charset=utf-8 Zde op t vidíme, ºe jako první je potvrzení od serveru, ºe hledaný dokument na²el, následují informace o serveru a jeho konguraci, které jsem pro ukázku vynechal, poté je²t datum odeslání odpov di, informace o jazyku a typ dokumentu SSL/TLS Jedná se o kryptogracké protokoly, které jsou vyuºívány k zabezpe ení internetové komunikace. Vyuºívají asymetrického ²ifrování k vým n klí a symetrické pro zaji²t ní bezpe nosti, kdyº komunikují na úrovni transportní vrstvy. Nejv t²í roz²í ení je v internetových prohlíºe ích. TLS poskytuje autentizaci koncovým bod m spojení a pomocí ²ifrování zabra- uje odposlechu. Typicky je autentizován pouze server, coº koncovému uºivateli poskytuje p esnou informaci o tom, s kým v danou chvíli komunikuje. P i vzájemné autentizaci je tato jistota zaji²t na pro ob strany. K zaji²t ní vzájemné autentizace je ov²em nutné nasazení infrastruktury ve ejných klí. Klient zde pouºívá ve ejný klí certika ní autority k ov ení jejího digitálního podpisu. Pokud je klient schopen toto ov it, povaºuje jiº tuto autoritu za d v ryhodnou. Jako ochranu p ed útokem t etí osoby se porovnává DNS serveru se jménem, které je obsaºené v certikátu Shrnutí HTTPS tedy není speciálním typem protokolu. Jedná se pouze o typ HTTP roz²í ený o vlastnosti SSL, coº nám poskytuje daleko vy²²í úrove zabezpe ení na²ich informací. Jako implicitní pouºívá port 443 na rozdíl od HTTP pracujícího na portu 80. Stejn jako HTTP
25 2.2. ZABEZPEƒENÍ PROTI NAPADENÍ T ETÍ STRANOU 9 pracuje nad aplika ní vrstvou, coº je nejvy²²í vrstva OSI modelu. Ve zpráv HTTPS jsou ve²keré informace ²ifrované. Jediné, co je tedy známé, je doména a IP adresa. Integrace do webových prohlíºe je z ejmá na první pohled, takºe pokud se nacházíme na serveru se zabezpe ením, dává nám toto prohlíºe najevo v t²inou pomocí záme ku vedle adresní ádky. Co se omezení tý e, není výhodné pouºívat tento protokol pro virtuální hostingy, SSL je schopen poskytnout pouze jeden certikát pro dvojici IP/Port.
26 10KAPITOLA 2. ZABEZPEƒENÍ A SPOLEHLIVOST ELEKTRONICKÝCH VOLEBNÍCH SYSTÉM 2.3 Autentizace a autorizace voli Tato ást je v nována ov ování p ístupových práv uºivatel, kte í se snaºí získat p ístup do systému. Jedná se op t o významné bezpe nostní opat ení, na kterém velmi záleºí celková spolehlivost systému, jelikoº nebude neoprávn nému uºivateli p ístup do aplikace v bec povolen. Autentizace a autorizace jsou dva související pojmy, které budou dále vysv tleny samostatn. Po letmém vysv tlení jednotlivých pojm následuje popis b ºných ov ovacích algoritm se studií jejich dobrých a ²patných vlastností, výhod a nevýhod a cenovou dostupností samotných e²ení. Pro popis pojm bylo erpáno p edev²ím z Wikipedie[11][12] a minimáln jiº z dal²ích dopl kových zdroj. Autentizace Slouºí jako prost edek k p esnému ur ení identity uºivatele, který se snaºí o p ístup do sluºby. Tato opat ení jsou zpravidla realizována na stran serveru. Pro kaºdého uºivatele, který má oprávn ní se systémem pracovat jsou v databázi uloºeny jeho osobní údaje a údaje o jeho ú tu, obsahující p ihla²ovací jméno a heslo, které bývá zpravidla za- ²ifrované. Autentizace v t²inou probíhá na úrovni vyhledávání uºivatele v databázi podle p ihla²ovacího jména a následném porovnání hesel nebo v p ípad sloºit j²ích ov ování samostatnou vyhodnocovací ástí obsaºeném v softwaru. Autorizace Naproti tomu bývá obvykle dal²ím krokem po vpu²t ní uºivatele do systému. Pravidla autorizace nám jasn íkají, jaká oprávn ní má uºivatel v jeho rámci a ur ují oblasti, do kterých má uºivatel p ístup. Toto je nutné nap íklad proto, aby voli, který má samoz ejm povolen p ístup do aplikace nemohl upravovat n jakým zp sobem ú ty ostatních voli nebo n jak zasahovat do pr b hu voleb. Samotná autorizace bývá v t²inou zaji²t na jiº návrhem, kdy mají v²echny zú astn né role jasn dané obory p sobnosti a mimo n nemohou systém n jak ovlivnit Zp soby ov ování identity V této sekci jsou p edstaveny jednotlivé zp soby a postupy ov ování identity uºivatel systému. Ov ení na základ otisk prstu Tato kapitola je velmi ²iroká, jelikoº v dne²ní dob nabízejí výrobci mnoho typ sníma zaloºených na r zných principech. Ve své práci Re²er²e algoritm pro snímání a zpracování otisku prst [18]se tomuto oboru v nuje Zuzana Polá ková. V dob zpracování tématu doporu uje pro pouºití v aplikacích p edev²ím elektrolumuniscen ní sníma otisku. Rozhodujícím faktorem je pro tuto volbu cena, dostupnost v ƒr a pak také schopnosti komunikace. B ºný uºivatel se ov²em v sou asnosti zpravidla nejvíce setkává s teplotními sníma i otisk prstu, které jsou dnes jiº integrovány ve v t²in notebooku a slouºí primárn pro p ihlá²ení uºivatele do systému.
27 2.3. AUTENTIZACE A AUTORIZACE VOLIƒ 11 Ov ení na základ PINU Jedná se o dal²í vlastnost, která je po výsledném systému poºadována. Zde bude kaºdému uºivateli p i dokon ení registrace vygenerován náhodný PIN, kterým se poté v kombinaci s loginem bude p ihla²ovat pro vykonání své volební povinnosti v den voleb. Pro tuto ást je velmi d leºité zajistit skute nou náhodnou hodnotu vygenerovaných PIN, p edev²ím proto, aby ne²lo vypozorovat pravidlo, podle kterého se hesla generují a následn jej zneuºít. Jednotlivými algoritmy se ve své práci Generování jednorázových PIN a jejich uloºení na ipovou kartu [3] zabývá Bc. Martin Sláma, který ve své práci porovnává spolehlivost jednotlivých, b ºn vyuºívaných postup. Dle této studie se jako optimální jeví dva zp soby, a to SecureRandom a AESCounterRNG, které vykazují v autorových testech nejlep²í výsledky. Autor zdrojový kód posléze nahrává na Java Card 4, coº je dal²í z nápad na moºné roz- ²í ení systému. Následuje krátký popis obou algoritm, který byl získán z jejich JavaDOC [4], voln dostupného v dokumentaci jazyka Java. Ob tyto t ídy nám poskytují moºnost generovat náhodná ísla, která budou naprosto spolehlivá a vyuºitelná tak v na²í aplikaci, kde se klade velký d raz na bezpe í voli i celého systému. SecureRandom Jedná se o kryptogracky silný generátor, jelikoº vytvá í nedeterministický výstup, to znamená, ºe nelze z jednotlivých výsledk ur it, jaké íslo bude generovat jako dal²í. Jeho instanci získáme zavoláním prázdného konstruktoru této t ídy. AESCounterRNG Je nelineární generátor náhodných ísel zaloºený na AES blokové ²if e. Pro ²ifru se jako implicitní pouºívá 128-bitový klí, jelikoº pouºití v t²ích klí vyºaduje nutnou instalaci soubor pro kryptograi. 4 Jedná se o ipovou kartu, na kterou lze nahrát Java algoritmus, v tomto p ípad Applet
28 12KAPITOLA 2. ZABEZPEƒENÍ A SPOLEHLIVOST ELEKTRONICKÝCH VOLEBNÍCH SYSTÉM
29 Kapitola 3 Analýza Tato ást se v nuje shrnutí prozatimního stavu projektu, výb rem nejlep²ích e²ení pro danou situaci a od vodn ní pouºití t chto e²ení. Jelikoº se autor projektu Elektronické volby[8] Tomá² ƒerevka k implementaci terminálové ásti systému v bec nedostal, a neexistuje tedy ºádná dosavadní implementace, je nutné za ít tuto ást budovat od za átku. 3.1 Poºadavky Funk ní poºadavky Systém bude umoº ovat tajné hlasování Voli bude moci do systému zadat práv jeden hlas Systém bude obstarávat prvotní autentizaci voli pomocí otisku prstu Systém bude obstarávat dopl kovou autentizaci voli podle PINu Systém bude odesílat jednotlivé hlasy serveru Systém po ukon ení komunikace se serverem pouºitá data zahodí, neukládá si je Systém bude umoº ovat p epnutí své funkce mezi volebním terminálem a terminálem pro úpravu osobních detail Nefunk ní poºadavky Systém bude implementován v jazyce Java SE Klient bude se serverem komunikovat p es protokol HTTPS Reakce systému na akci voli e bude co nejrychlej²í v ádu milisekund Systém bude snadno instalovatelný na terminál 13
30 14 KAPITOLA 3. ANALÝZA 3.2 P ípady uºití P ípady uºití p edstavují prost edek pro specikaci posloupnosti inností,které m ºe systém vykonat prost ednictvím interakce s externími aktéry. Tato kapitola se v nuje p eváºn zp - sobu práce s navrhovaným systémem. Pro jasné vymezení restrikcí daných v rámci aplikace je nutné pokusit se zachytit ve²keré moºné situace, které mohou nastat b hem provozu, aby v pozd j²í fázi návrhu nebylo zji²t no, ºe byly opomenuty n které p ípady vyuºití systému, které hrají v celkové funk nosti zna nou roli. Diagramy rovn º p ehledn popisují chování terminálu a jeho reakce na p íchozí události. Od této ásti bylo pro správnost návrhu pracováno s knihou UML2 a unikovaný proces vývoje aplikací [2]autor Jima Arlowa a Ily Neustadt, ve které je mnoho uºite ných rad a doporu ení pro tvorbu schémat a diagram. Jednotlivé diagramy byly vytvá eny v programu Enterprise Architect[16], jehoº licenci poskytuje ƒvut student m po dobu studia zdarma Akté i V této podsekci jsou zmín ni akté i obsluhující systém. Jsou zde rovn º popsány jejich uºivatelská práva související se systémem a popsány scéná e pro v²echny innosti, které v systému vykonávají. Voli Voli zde p edstavuje hlavního uºivatele systému. Je jedinou fyzickou osobou, která bude po zavedení systému tento obsluhovat. Po p ihlá²ení mu budou automaticky nastaveny priority a povolení a tak bude moci skrze terminál komunikovat se serverem. Po odhlá²ení budou ve²kerá uºivatelova data zahozena a nedohledateln smazána, aby se zamezilo moºnosti zneuºití. Administrátor Administrátor plní roli správce systému. Náplní jeho interakce je p edev²ím zm na terminálové funkce. Terminál je moºné p epnout do dvou odli²ných funkcí, jedna slouºí pro samotné hlasování a je ozna ena jako Volební terminál, druhá slouºí p edev²ím pro úpravu osobních údaj vygenerovaných systémem a rovn º pro pozd j²í úpravy uºivatelského ú tu a je ozna ena jako Terminál pro úpravu osobních údaj. Tato funkce bude vybrána p i zavád ní terminálu a v pr b hu volební události bude m n na jiº pouze v krajní nutnosti. Administrátor bude poté pouze e²it vzniklé potíºe, které mohou nastat Diagram p ípad uºití Tento diagram zobrazuje jednotlivé aktéry, kte í se systémem pracují. Pro jednotlivé aktéry je zde rovn º soupis v²ech aktivit, které mohou v rámci aplikace vykonávat.
31 3.3. SCÉNÁ E 15 Obrázek 3.1: P ípady uºití 3.3 Scéná e Scéná e p edstavují jakousi ²ablonu pro specikaci p ípad uºití. V této ásti jsou rozebrány scéná e pro jednotlivé p ípady uºití. Jsou zde rovn º popsány ú astníci jednotlivých scéná a zp sob, jakým se systémem pracují. Popsán je tu vstupní stav, akté i, kte í do p ípadu uºití vstupují a výstup, který je následn vyprodukován Úprava vygenerovaných p ihla²ovacích údaj Akté i : Voli
32 16 KAPITOLA 3. ANALÝZA Vstup : Voli zaregistrovaný k volební akci Výstup: Voli s dokon enou registrací p ipravený volit Kroky: 1. Voli se p ihlásí na terminálu pro zm nu údaj zadáním vygenerovaných údaj. 2. Systém zkontroluje údaje, pokud nesouhlasí, oznámí toho voli i. 3. Pokud údaje souhlasí, systém zobrazí voli i dialog pro jejich zm nu. 4. Voli zm ní povinné údaje. 5. Systém zkontroluje, zda byly v²echny nutné poloºky vypln ny a výsledek oznámí voli i. 6. Systém odhlásí voli e P ihlá²ení do systému Akté i : Voli Vstup : Voli registrovaný pomocí registra ního systému Výstup: P ihlá²ený uºivatel oprávn ný volit Kroky: 1. Voli zadá do systému svoje uºivatelské jméno a PIN. 2. Systém zadaná data zkontroluje, pokud nesouhlasí, oznámí toto voli i. 3. Pokud údaje souhlasí, zobrazí systém dialog pro ov ení otisku prstu. 4. Voli p iloºí prst ke te ce. 5. Systém vyhodnotí, zda otisky odpovídají. 6. V p ípad neshody je voli systémem poºádán o opakované ov ení otisku. 7. V p ípad shody otisk zobrazí systém voli i potvrzovací zprávu. 8. Systém zobrazí hlavní obrazovku Zobrazení volebního lístku Akté i : Voli Vstup : Voli p ihlá²ený do systému Výstup: Zobrazený seznam volitelných moºností Kroky: 1. Voli si zvolí poºadovanou událost, pro kterou chce zadat sv j hlas. 2. Voli stiskne tla ítko reprezentující vybranou událost. 3. Systém zobrazí volební lístek pro vybranou volební událost.
33 3.3. SCÉNÁ E 17 Za²krtnutí kandidát a odeslání volebního lístku Akté i : Voli Vstup : Nevypln ný volební lístek Výstup: Odeslaný lístek, jehoº p ijetí je potvrzeno serverem Kroky: 1. Zahrnout (Zobrazení volebního lístku). 2. Voli vyplní volební lístek. 3. Voli stiskne tla ítko pro odeslání lístku. 4. Systém zobrazí voli i needitovatelnou formu volebního lístku. 5. Voli zkontroluje za²krtnuté volby. 6. Pokud je n co ²patn, voli stiskne tla ítko pro návrat do formulá e volebního lístku a upraví jej. 7. Pokud je v²e v po ádku, voli stiskem tla ítka potvrdí odeslání hlasu. 8. Systém zobrazí potvrzení o p ijetí volebního lístku. Odhlá²ení ze systému Akté i : Voli Vstup : Voli p ihlá²ený do systému Výstup: Voli odhlá²ený ze systému Kroky: 1. Voli zvolí moºnost odhlá²ení ze systému. 2. Systém zobrazí dialog s dotazem, zda se voli chce skute n odhlásit. 3. Voli potvrdí nebo zru²í svou volbu. 4. Systém odhlásí voli e ze systému a smaºe záznam o n m. 5. Systém zobrazí informaci o úsp ²ném odhlá²ení. 6. Systém zobrazí p ihla²ovací obrazovku. Zm na funkce terminálu Akté i : Administrátor Vstup : Terminál slouºící implicitn jako volební Výstup: Terminál zastávající zvolenou funkci Kroky:
34 18 KAPITOLA 3. ANALÝZA 1. Administrátor zadá své p ihla²ovací údaje do systému 2. Systém zobrazí dialog, který obsahuje tla ítka reprezentující jednotlivé funkce 3. Administrátor vybere stiskem tla ítka zvolenou funkci. 4. Systém zobrazí aktuální funkci terminálu. 5. Administrátor zav e dialog pro úpravy funkce terminálu. 6. Systém zobrazí p ihla²ovací obrazovku. 3.4 Doménový model V této ásti je podrobn ji rozebrán problém doménového modelu. Jsou zde zobrazeny jednotlivé t ídy, které bude systém vyuºívat, a jejich vzájemné vztahy. Jelikoº bude tento systém z velké ásti vyuºívat doménový model Serverové ásti projektu Elektronické volby[5]petra Hlavá ka, popisuji tu pouze ásti modelu, které jsou pro daný systém relevantní, celkový model je po p ípad pot eby p iloºen v p íloze B. V této práci se lze dozv d t, k jakým p esným zm nám v projektu od p vodní ásti do²lo a jaký m ly tyto zm ny vliv. V práci je rovn º zobrazen p vodní doménový model, který na konci textu sám autor p vodního návrhu doporu il p epracovat.
35 3.4. DOMÉNOVÝ MODEL 19 Obrázek 3.2: Doménový model Popis jednotlivých entit Kaºdá entita p edstavuje n jakou ást systému, která má zásadní vliv na jeho funk nost. V následujících odstavcích jsou jednotlivé entity popsány a jejich chování vysv tleno User Tato entita popisuje skute ného voli e, který je p ihlá²en do systému. Na obrázku doménového modelu je vid t, ºe voli nemá v systému ºádnou asociaci s volebním lístkem i volitelnou moºností. Je tomu tak, protoºe je t eba zajistit tajnost voleb, a tudíº nem ºe existovat ºádné p ímé spojení uºivatele s jeho soukromou volbou. Nicmén, voli je svázán s t ídou Election, ímº denujeme, ve kterých volbách je registrovaný. Jeho spojení s volební událostí je pak vyuºito k tomu, aby se zaznamenalo, ºe voli jiº v rámci dané události odevzdal sv j hlas
36 20 KAPITOLA 3. ANALÝZA a ten byl systémem p ijat v po ádku. Je zde rovn º znázorn n seznam atribut, kde jméno, p ijmení,id a jsou povinné. Kone n uºivatelské jméno a heslo jsou p i vzniku voli e neinicializované, k jejich nastavení dochází aº v p ípad, ºe se voli dostaví k volební události a po ov ení identity dokon í svou registraci v registra ním systému Election Ticket P edstavuje volební lístek, který má voli vºdy k dispozici pouze jeden. Tento lístek je mu vytvo en po p ihlá²ení a m ºe do n ho p idávat sv j výb r. Parametr multipleoptions p edstavuje moºnost voli e za²krtnout více moºností. Tento parametr se li²í vºdy podle typu a zp sobu vyhodnocování voleb. Volební lístek je p i azen k volební události. Tohoto faktu je následn vyuºito p i vyhodnocování voleb, kdy se vezmou v²echny volební lístky p i azené k dané akci a spo ítají se tak výsledky. Voli má rovn º moºnost odeslat prázdný volební lístek, který se vºdy zpracovává podle specik volebního systému dané události a také lze je²t odeslat neplatný hlas. Tato moºnost je realizována, tak, ºe se p i vytvá ení volebního lístku nastaví p íznak invalid na hodnotu true. Vazba volebního lístku s moºností je zde pro uloºení seznamu moºností, které voli na daném lístku za²krtnul Option Zastupuje moºnost, která se uºivateli naskýtá k výb ru. Kaºdá moºnost má své jméno. Pokud moºnost zastupuje jednotlivé kandidáty voleb, je je²t v systému provázána s entitou Candidate, která se ji p i adí. jedná-li se pouze o textovou moºnost nebo výb r z jiné oblasti nap íklad o n jakou otázku, je moºné díky atributu description vloºit k této moºnosti n jaký textový popis, který zastává nyní funkci obsahu Role Tento vý tový typ p edstavuje roli uºivatele v systému. V úvahu zde p ipadají dv moºnosti, a to Voli a Administrátor. Voli p edstavuje klasického ú astníka, který má právo zadávat do systému své hlasy a odesílat je ke zpracování systému. Administrátor poté spravuje volební terminál jako celek. Je mu umoºn no nastavovat funkci volebního terminálu a nastavovat jeho vlastnosti p i zavád ní Additionals Tato t ída v sob uchovává dodate né informace o uºivateli, vnit ní reprezentace t chto dat je realizována pomocí javovské kolekce Map, která umoº uje ukládat páry hodnot String v podob klí,hodnota, kde klí p edstavuje název atributu a hodnota pochopiteln jeho hodnotu. Velikost této mapy není nijak omezena, tudíº je moºné ke kaºdému voli i uloºit libovolné mnoºství atribut.
37 3.4. DOMÉNOVÝ MODEL Election Entita reprezentující samotné volby. Tyto mají v sob uloºen seznam v²ech voli, kte í jsou v jejich rámci zaregistrováni a mají tedy právo se jich ú astnit. Kaºdé volby mohou mít n kolik volebních událostí, které p edstavují podmnoºinu celých voleb. z výsledk jednotlivých událostí vzejdou výsledky celých voleb. Tato t ída má v sob uloºen rovn º popis a sv j název Election Event P edstavuje volební událost v rámci voleb. Ukládá si informace, jako nap íklad data jejího za átku, konce, zapo etí volení, jméno volební události a dal²í dopl ující informace. Tato t ída má vazbu na volební lístek p edev²ím pro uchovávání v²ech obdrºených hlas a rovn º na volební moºnost, ímº je jednozna n ur eno, které moºnosti bude moºno v této události volit. Tento seznam se zobrazí uºivateli p i vypl ování samotného volebního lístku.
38 22 KAPITOLA 3. ANALÝZA
39 Kapitola 4 Návrh e²ení 4.1 Technologie V této ásti se podrobn ji podíváme na vyuºité technologie, pomocí kterých bude práce realizována. Jsou zde popsány technologie pouºité k vývoji samotné aplikace, k autentizaci pomocí otisku prstu nebo pro komunikaci se serverovou ástí. Technologie, které jsou vyuºity k realizaci serverové ásti jsou rovn º lehce nastín ny a nakonec jsou zím ny nástroje pro verzování projektu, udrºování p ehlednosti, zp sobu komunikace s databází, její typ a vlastnosti Server Implementací a návrhem serverové ásti se zabývá práce Petra Hlavá ka[5], o jejímº modelu byla zmí ka v p edchozí kapitole. Serverová ást je realizována v jazyce Java, konkrétn je to Java EE, která slouºí pro vývoj webových aplikací. Serverová ást obstarává pro klienta d leºité prvky, jako vymezení moºností, které má voli p i své volb k dispozici, zakládá akce a vytvá í celkovou funk nost systému. S terminálovou ástí má server spole nou databázi, odkud získává informace o jednotlivých ú astnících spole n se seznamem jejich oprávn ní v systému. Jedná se o nosnou aplikaci celého systému. Aplikace pouºívá aplika ní server Glasssh[10], jehoº dokumentace je dostupná na uvedené adrese. Pouºití tohoto serveru je intuitivní a navíc je v kombinaci s javou velice efektivní Registra ní ást Pro zaregistrování uºivatel do systému slouºí Registra ní ást systému Elektronické volby[6], na níº jsem spole n s Petrem Hlavá kem, Ond ejem Kulatým a t pánem korpilem pracoval v rámci p edm tu A7B36SI2. Tento systém poskytuje gracké rozhraní pro vytvá ení jednotlivých poloºek voleb v databázi, a uº jde o vytvo ení nové volební akce i volebního ú astníka. Aplikace je realizována v Jav SE a poskytuje rovn º moºnost importu uºivatel a jejich správy v p ehledném editoru. Pomocí této aplikace bude vºdy dokon ena uºivatelská registrace na akci a vygenerovány p íslu²né údaje pro aktuální ú ast. Co se tý e vylep²ení této ásti, je nutné upravit registra ní ást tak, aby byla schopná ukládat do databáze otisky 23
40 24 KAPITOLA 4. NÁVRH E ENÍ prst jednotlivých ú astník a poskytovat je následn pro ov ení. Tato vlastnost bude realizována za pomoci SDK pro te ky otisk prst Databáze V²echny podsystémy vyuºívají databázi MySQL, která je v sou asné dob velice roz²í ená. Poloºky v ní jsou následn upravovány v jednotlivých systémech pomocí JDBC, které poskytuje Java platforma. Pro samotnou komunikaci s databází je pouºit framework jazyka Java s názvem JPA. V tomto projektu je vyuºita jeho implementace EclipseLink, která se jeví jako velice uºivatelsky p ív tivá a navíc s ní má jiº autor práce lehkou zku²enost získanou v p edchozím studiu, tudíº není nutné si na její vlastnosti tolik zvykat Programovací jazyk Jako programovací jazyk bude pouºit jazyk Java SE, konkrétn ve verzi 7, která je vysoce p enosná, spolehlivá a rovn º, coº je velkou výhodou, voln dostupná na stránkách spole nosti Oracle[15]. Dal²ím d vodem pro tuto volbu je fakt, ºe v tomto jazyce je napsána i serverová ást a tudíº je tato volba prakticky nutnou povinností z hlediska p enositelnosti kódu Vývojové prost edí Pro samotný vývoj aplikace bude pouºito vývojové prost edí Netbeans, konkrétn IDE ve verzi 7.1, které má velice intuitivní ovládání, nabízí nep eberné mnoºství profesionálních funkcí a je rovn º zcela zdarma staºitelné ze stránek spole nosti Oracle. Lze jej stáhnout v jednom archivu spole n s nejnov j²í verzí Javy, coº je dal²í velice p íjemná vlastnost. Samotné prost edí Netbeans poskytuje rozhraní pro práci s databází, serverem a rovn º také poskytuje rozhraní pro verzování projektu, coº je velice rovn º velice uºite né ƒte ka P i volb te ky byla brána v potaz studie Tomá²e ƒerevky, který doporu uje ve své práci Elektronické volby [8] jako nejlep²í moºnou variantu za ízení od rmy Digital persona[9], která poskytuje freewarovou licenci. Jediným neduhem tohoto e²ení je fakt, ºe je nutné mít k tomuto SDK te ku p ímo od uvedené rmy. Tyto te ky nejsou na eském trhu zcela b ºné, a tak m ºe tento fakt mít drobný vliv na pr b h práce, kdy se pr m rná doba odeslání ze zahrani í pohybuje okolo 14 dn. V²echny ostatní SDK jsou jiº zpoplatn ny pro kaºdou stanici, na které tento software pouºíváme, coº je pro ná² ú el výrazn nevhodné. na výb r bude ze dvou moºností, a to star²í verze Digital Persona U.Are.U 4000 nebo nov j²í verzi pod ozna ením Výsledná volba bude záleºet p edev²ím na tom, který typ bude v ƒeské republice dostupný nebo který se poda í obstarat ze zahrani í. Samotný software lze do za ízení stáhnout p ímo ze stránek výrobce.
41 4.1. TECHNOLOGIE Repozitá projektu Pro uchovávání jednotlivých verzí projektu a celkové centralizaci kódu bude vyuºit systém Google Code< který je zcela zdarma a funguje velice spolehliv, kdyº umoº uje uºivateli nahrávat verze projekt, poskytovat stáhnutelný obsah, dokonce nabízí moºnost procházení SVN repozitá e p es webové rozhraní a zárovne lze vytvá- et milníky a kontrolovat jejich stav a pln ní. Tato sluºba je rovn º propojena s ovou sluºbou, která udrºuje uºivatele informovaného o sou asném d ní v projektu.
42 26 KAPITOLA 4. NÁVRH E ENÍ
43 Kapitola 5 Implementace Tato kapitola je v nována popisu pouºitých implementa ních metod. Jsou zde zmín ny technologie pouºité pro realizaci jednotlivých ástí aplikace a porovnány výhody a nevýhody zvolených e²ení. Program je koncipován tak, aby byl co nejsnadn ji ovladatelný a intuitivní, ov²em v n kterých rozhodnutích byly tyto vlastnosti lehce odsunuty na úkor rychlej²í odezvy programu a men²í sloºitosti kódu. Jelikoº existuje mnoho typ volebních systém a zp sob vyhodnocování jejich výsledk, bylo nutné implementovat nejprve vedoucím práce zadané typy. V tomto p ípad p edstavovalo prioritu vytvo ení terminálu pro Systém jednoho p enositelného hlasu, který ve své práci[5] popisuje Petr Hlavá ek. Volební terminál je pro hlasování v tomto typu akce p ipraven a navíc jej lze v sou asnosti vyuºít i k hlasování v systémech abolutní v t²iny. Rovn º by nem l být problém v p ípad pot eby p idat podporu pro dal²í typy voleb. V tomto p pad je ov²em nutné p idat nový typ voleb do nabídky a upravit volební lístek dle pot eby pro zadání nutných údaj. Následující text shrnuje popis ástí, které se p i implementaci jevily jako problematické. Jednotlivé potíºe jsou vysv tleny a pokud existuje e²ení i jeho návrh, je tento rovn º sou ástí dokumentu. 5.1 Databázové p ipojení Aplikace vyuºívá pro objektov rela ní mapování Java Persistence Api, konkrétn jeho implementaci EclipseLink, která umoº uje vytvo it databázi na základ vztah mezi vytvo enými entitami a dal²ími nastavenými parametry Nastavení persistentní vrstvy Po vytvo ení entit dle p edpis JPA je t eba k projektu p i adit persistentní jednotku. Tuto volbu nabídne uºivateli ve v t²in p ípad vývojové prost edí. Takto zaloºený projekt je pak p ipraven pro práci s entitami, jakoºto reprezentanty jednotlivých tabulek v databázi. Nastavení persistentní vrstvy je obsaºeno v souboru persistence.xml, kde jsou uchovávány informace o názvu databáze, vyuºívané persistentní knihovn a strategii generování tabulek. Tato strategie udává postup, který se aplikuje p i spu²t ní projektu. Lze nastavit t i r zné hodnoty: 27
44 28 KAPITOLA 5. IMPLEMENTACE Create - p i volb této strategie projde systém existující tabulky a pokud má být n jaká tabulka vytvo ena, p idá ji do seznamu (S daty se nic ned je). Drop and Create - tato strategie na izuje smazání v²ech tabulek v etn jejich obsahu a vytvo ení nových dle poºadavk entit None - s databází se v tomto p ípad nic ned je, v²e se nechá ve stavu, v jakém se p i spu²t ní nachází Nastavení entit Aby p ipojení k databázi fungovalo, je t eba jednotlivým entitám p idat anotace. Anotace jsou specické práv pro JPA a pomocí nich lze nastavovat vlastnosti objekt v databázi. Samotná entita, která má být reprezentována tabulkou, je ozna ena Pomocí dal²ích anotací lze nastavovat zp sob vytvá ení databázových objekt, volit, které záznamy jsou povinné a které ne, který atribut p edstavuje primární klí a dal²í Problémy p i realizaci persistence P i vývoji projektu byla postupn objevována n která úskalí a omezení spjatá práv s JPA. V t²ina z nich byla v pr b hu práce odstran na, nicmén n která byla pom rn závaºná a zpomalila pr b h vývoje na del²í dobu. V pozdní ásti tvorby bylo po konzultaci s vedoucím práce rozhodnuto, ºe jako prirotní systém k implementaci bude vytvo en systém jednoho p enositelného hlasu. Tento systém je specický tím, ºe je nutné k jednotlivým zvoleným moºnostem p i adit preferen ní íslo. Toto íslo, které voli vybere kaºdému zvolenému kandidátovi, p edstavuje jeho preferované po adí, které je dále na serveru vyhodnocováno. Pro ukládání dvojic objekt, kdy jeden p edstavuje preferenci a druhý objekt volenou moºnost, vedlo v²e k pouºití t ídy java.util.map, která dokáºe p esn takovéto dvojice dat pojmout. V této fázi vývoje obsahovala t ída zastupující volební lístek seznam zvolených moºností uºivatelem ve form java.util.map a bylo pokra ováno v postupu. Ve chvíli, kdy ov²em nastala nutnost volební lístek zpracovat, byly zji²t ny potíºe s ukládáním zvolených moºností prost ednictvím persistentní vrstvy. Ta ukládala objekt s chyb jícími údaji, p i jejichº pozd j²ím zpracování se objevovaly r zné potíºe zp sobené ztrátou informace. Tento problém byl postupn konzultován s n kolika vyu ujícími a vyhledáván na internetu, ale nakonec se ukázalo, ºe v projektu vyuºívaná implementace JPA, EclipseLink, persistentní zpracování java.util.map jako takové nepodporuje. D vodem p ehlédnutí tohoto problému na za átku vývoje byl fakt, ºe jisté vyuºití java.util.map existuje a je obsaºeno v mnoha ukázkových p íkladech, ov²em je nutné vyuºívat jako klí mapy n jaký z atribut t ídy, která je ulo- ºena jako hodnota v map. Fakt, ºe s touto datovou strukturou nebude moci být pracováno znamenal pro vývoj citelnou ztrátu asu, kdyº musel být upraven datový model a p epsána logika aplikace. Nicmén toto chybu neomlouvá, dokumentace o ukládání kolekcí jazyka Java m la být lépe prozkoumána p i návrhu software e²ení problému Jak bylo jiº nazna eno v textu vý²e, byla pon kud obm n na logika aplikace a upraven datový model. Entita volebního lístku nyní obsahuje dal²í podt ídu, která v systému p edstavuje
45 5.2. PREZENTAƒNÍ VRSTVA 29 uºivateli zvolené poloºky na lístku spole n se zvolenými preferen ními ísly. Tato podt ída byla nazvána TicketItem(poloºka lístku) a je na n m uloºena v kolekci List. Takto se docílilo vyhnutí se probémové implementaci zahrnující java.util.map a ukládání bylo zprovozn no, takºe jiº v²e funguje. 5.2 Prezenta ní vrstva K vlastní implementaci GUI je pouºit výhradn Swing, který poskytuje pot ebné komponenty pouºitelné v aplikaci. GUI je vytvo ené ru n, k jeho vzniku nebyl pouºit editor, který obsahuje vývojové prost edí. Tento postup byl aplikován p edev²ím kv li v t²í kontrole, kterou uºivatel nad prezenta ní vrstvou má, jelikoº mu je garantován p ístup k celému kódu a lze jej jednodu²eji editovat Zp sob p ihla²ování uºivatele Uºivatel se do systému p ihlásí pomocí svých údaj a v p ípad, ºe odpovídají údaj m ulo- ºeným v systému, postoupí uºivatel k druhé ásti validace, p ihlá²ení pomocí otisku prstu. Pokud uºivatel oskenuje ²patný prst nebo je vzorek nekorektní, zobrazí systém zprávu obsahující upozorn ní. V²echny systémové výjimky jsou slou eny ve t íd TerminalException, která je na pot ebných a rizikových místech testována a odchytávána. Nad systémem p ihla²ování byla vedena dlouhá diskuse, p i které byly zvaºovány r zné moºnosti. Implementován byl nakonec zp sob dvojího p ihla²ování. Tento systém je výhodný zejména díky jednoduchosti vyhledávání, jelikoº pokud uºivatel projde prvním kolem ov ení identity, systém provádí následn jiº porovnání otisku prstu stylem 1:1. coº je výhodné zejména pro vyhledávání souboru s otiskem v databázi, kdy sta í stáhnout pouze jedne soubor. Otázka bezpe nosti je zde pon kud irelevantní, jelikoº bezpe nost, kterou zaji² uje otisk prstu, který p edstavuje unikátn, nezpochybnitelný vzorek, je prakticky stoprocentní, není z ejm nutné vyzdvihovat bezpe nostní funkci p ihla²ovacích údaj. Nicmén kombinace t chto dvou údaj jiº potencionální moºnost chyby systému tém dokonale potla uje P izp sobení pro r zné typy voleb Systém je sice dle zadání koncipován pouze pro zp soby voleb ur ených vedoucím práce, ale je zajisté pot eba, aby byl navrºen tak, aby bylo v budoucnu moºné jej roz²í it o dal²í zp soby voleb. Jelikoº bylo primárním cílem práce navrhnout volební terminál pro propor ní volební systém, konkrétn se jedná o Systém jednoho p enositelného hlasu, který ve své práci[5] popisuje Petr Hlavá ek, byla v t²ina asu v nována práv tomuto typu voleb. Ve vý²e popsaném volebním systému je nutné umoºnit voli m krom samotného zvolení jednotlivých kandidát také p i azení preferen ního ísla kaºdému ze zvolených. Výsledná podoba volebního lístku byla prokonzultována s vedoucím práce a v sou asné podob umoº- uje sysém voli i odeslat t i typy volebních lístk : vypln ný volební lístek, prázdný volební lístek a neplatný volební lístek. Samotné zapo ítání hlasu se pak jiº r zní dle typu vyhodnocování voleb. Ve volebním lístku jsou zobrazeni v²ichni kandidáti. Pro zvolení daného kandidáta je nutné za²krtnout checkbox vedle jeho jména, coº zobrazí roletkové menu, kam uºivatel zadá
46 30 KAPITOLA 5. IMPLEMENTACE preferen ní íslo. Jedná se o pon kud sporné e²ení, jelikoº pro n které nezku²ené uºivatele by mohl být problém systém zadávání preferencí pochopit, ov²em jiná e²ení m la rovn º své chyby, tudíº bylo rozhodnuto o ponechání roletkového menu s p idáním popisku, který by m l pomoci voli i s orientací. Po vypln ní lístku je uºivatel vyzván ke kontrole odesílaného lístku, ímº se systém snaºí p edejít chyb ze strany uºivatele. 5.3 Práce s otisky prstu Jako vstupní za ízení pro snímání otisk prstu byla vybrána te ka od rmy Digital Persona [9], konkrétn model U.are.U.4500, který byl zvolen jako nejvhodn j²í kompromis mezi cenou a kvalitou. Jak jiº zmi uje p edchozí kapitola, rma Digital Persona dodává ke svým za ízením voln dostupné SDK, které bylo v této práci také vyuºito. Jeho prost ednictvím poskytuje spole nost uºivateli knihovny, pomocí kterých je schopen získat otisk prstu sejmutý za ízením a ten dle p ání uºivatele zpracovat. Jednotlivé procesy spojené s otiskem prstu jsou popsány v následujících podkapitolách. V této ásti se nevyskytlo mnoho problém, nicmén se jedná o neobvyklou proceduru ve vytvá ené aplikaci, tudíº je zde celý proces více popsán zejména pro ú el seznámení se s funkcí Uloºení otisku prstu Otisk prstu je v systému reprezentován jako ²ablona, kterou umí te ka zpracovat. Uºivatel m ºe zvolit, kolik vzork otisku prstu je t eba získat, neº bude ²ablona vytvo ena, výrobce doporu uje ty i vzorky p edev²ím proto, ºe proces získání tohoto mnoºství není p íli² zdlouhavý a tento po et jiº zaru uje, ºe bude získaný obraz kvalitní. ablona vzniká jako spojení v²ech vloºených vzork z d vodu v t²í p esnosti rozpoznání a rovn º spolehlivosti p i porovnávání. Pro její vytvo ení se v poskytované knihovn vyskytuje t ída DPFPTemplateFactory, který vytvo í instanci ²ablony. V databázi je poté otisk prstu reprezentován jako bajtové pole, které je zde uloºeno pro kaºdého voli e. P i uloºení ²ablony je vytvo en speciální soubor, který je p eveden na FileOutputStream a následn serializován. Posledním krokem je transformace takto vzniklého souboru na bajtové pole a uloºení do databáze. Program je rovn º o²et en pro p ípad, ºe by se uºivatel pokusil nap íklad oskenovat v kaºdém pr chodu jiný prst nebo by byl výsledný vzorek nekvalitní. V takovém p ípad není vzorek uloºen, uºivatel je o tom informován a je mu oznámeno, ºe je t eba zadat otisk znovu. Z v t²í ásti se tak p edejde problém m p i ov ování totoºnosti. Administrátor není povinen vkládat do systému sv j otisk, jelikoº náplní jeho práce se systémem je pouze zm na funkce volebního terminálu Ov ení otisku prstu P i ov ování otisku prstu je pouºit velmi podobný postup jako p i jeho ukádání. Pomocí persistentní vrstvy je získáno z databáze bajtové pole p edstavující soubor se ²ablonou otisku prstu. Následn je pomocí t ídyí DPFPTemplateFactory vytvo ena instance ²ablony zpracovatelná te kou otisku prstu, do které je uloºen soubor deserializací bajtového pole. Takto vzniklá ²ablona je poté poskytnuta k porovnání. V p ípad shody je uºivatel p ihlá²en do
47 5.3. PRÁCE S OTISKY PRSTU 31 systému, v opa ném p ípad je zobrazena chybová hlá²ka a uºivatel je povinnen oskenování prstu opakovat. P i ov ování otisku je jiº t eba pouze jeden vzorek, coº urychluje práci se systémem. Pro zaji²t ní maximální bezpe nosti je k dispozici ukazatel FAR, který ur- uje maximální povolenou chybu p i ov ování. tento parametr je moºné nastavit ve funkci ov ování dle pot eby. Následující tabulka zobrazuje p ípustné hodnoty FAR a odpovídající hodnoty p esnosti. Tato tabulka je áste n p evzatá z manuálu, dodávaného se te kou, poskytnutého spole ností Digital Persona. Hodnota atributu HIGH_SECURITY_FAR MEDIUM_SECURITY_FAR LOW_SECURITY_FAR PROBABILITY_ONE Popis Nejp ísn j²í porovnávání, které nepovoluje sebemen²í rozdíl porovnávaných vzork, vyuºití zejména v p ísn st eºených aplikacích St ední porovnání vzork, pro b ºné vyuºití Nejniº²í hodnota zejména pro testovací ú ely, m ºe dojít k nesprávnému ur ení Kaºdý vzorek, který je ov ován je povaºován za správný Pravd podobnost chyby 1/ / /10000 Vºdy ur í výsledek jako správný Tabulka 5.1: Tabulka moºných hodnot FAR s odpovídající pravd podobností chyby Problémy spojené s ov ováním otisku prstu I kdyº se jedná o pom rn bezproblémov implementovatelnou ást, p edev²ím díky velmi podrobnému manuálu poskytovanému výrobcem, který popisuje v²echna moºná úskalí a obsahuje i jistou formu návodu, jak postupovat p i vytvá ení aplikace umoº ující ov ení, nebylo moºné se problém m vyhnout ani zde. Nejedná se o problém spojený se samotným ov ením i jeho implementaci, nicmén je spojen práv s problematikou ov ování otisku prstu, tudíº je popsán práv zde. Necelých dvacet dní p ed odevzdáním práce bylo zji²t no, ºe návrh systému ve své podob obsahuje bezpe nostní trhlinu. Jde o návrh samotného procesu po p íchodu uºivatele k volbám. V sou asnosti jsou uºivateli vygenerovány údaje, které si je nucen zvolit u p íslu²ného terminálu, kde rovn º zadá sv j otisk prstu pro pozd j²í ov ení. Pokud by ov²em n kdo z voli p edal své osobní údaje cizí osob, bylo by této umoºn no otisk p vodního majitele p epsat svým vlastním a poté p i samotné volb by mohl tento uºivatel hlasovat za ostatní. Tato moºnost nebyla v prvotním návrhu aplikace obsaºena, tudíº není systém schopen toto n jak eliminovat. Bylo p edneseno n kolik návrh, jak systém upravit, aby se tomuto faktu zamezilo, jako nap íklad zakázat zm nu otisku prstu po prvotní zm n údaj i n jaký zp sob kontroly, zda opravdu volí osoba, která je ve volbách zaregistrována, nicmén tato e²ení by bu problém neeliminovala nebo naopak omezovala soukromí voli e, jelikoº by nebyla jiná moºnost neº sledovat d ní za plentou a kontrolovat, zda se uºivatel p ihla²uje skute n pouze k jednomu ú tu.
48 32 KAPITOLA 5. IMPLEMENTACE e²ení tohoto problému není v práci zaznamenáno, jelikoº by to p edstavovalo zm nu celého procesu fungování aplikace a dlouhému zamy²lení nad dal²ími negativy, která by nový systém dokon ování registrace p inesl, coº by znamenalo nutnost velkého zásahu do registra ní ásti. Jelikoº se na tento fakt p i²lo pozd, bylo toto projednáno s vedoucím práce a ponecháno pro dal²í moºné úpravy p i následných pracech na vylep²ení tohoto systému. 5.4 P ipojení k serveru pomocí HTTPS protokolu Tato ást se v nuje z v t²í ásti popisu realizace p ipojení k terminálové ásti pomocí protokolu HTTPS a problém, které p i pokusu o p ipojení nastaly P vodní plán propojení ástí systému V prvotním návrhu aplikace byla e²ena otázka realizace propojení obou podsystém p es bezpe ný kanál. Jelikoº byly ob ásti, jak serverová, tak terminálová vytvá eny separátn, nebylo z po átku moºné fuk nost celku p i propojení n jakým zp sobem otestovat. P i vývoji terminálové ásti byly nejprve pomocí funkce keytool, kterou disponuje vývojové prost edí jazyka Java, vytvo eny dva certikáty, jeden pro kaºdou pod ást systému. V terminálové ásti byly obsaºeny t ídy obsluhující p ipojení a komunikaci s testovacím serverem, který nem l jinou funkci, neº obdrºená data pro kontrolu vypsat. V t chto podmínkách v²e fungovalo a ze systému bylo moºné bez potíºí entity odesílat na zku²ební server. Po uvedení obou projekt do stavu, kdy bylo jiº moºné spolupráci obou celk otestovat bylo realizováno zku²ební p ipojení, p i kterém ov²em oba systémy odmítaly komunikovat. Nakonec se ukázalo, ºe se jedná o nevhodné e²ení komunikace, jelikoº v dosavadním stavu pracovala terminálová ást tak, ºe odesílala serializovaná data na zabezpe ený socket, na jehoº druhém konci byla data p ijímána. Z d vodu nezku²enosti propojení aplikace napsané v jazyce Java SE s aplika ním serverem Glasssh[10] bylo bohuºel zvoleno ²patné e²ení. Ukázalo se totiº, ºe pro moºnost odeslání volebního lístku p es sí je nutné, aby serverová ást spou²t la t ídu obsluhující komunikaci, ov²em na tomto typu aplikace není moºné za b hu spou²t t ºádné p ídavné t ídy, jelikoº po jejím nasazení stále b ºí aº do vypnutí uºivatelem e²ení problému s propojením Vý²e popsaný problém byl vy e²en zm nou v návrhu aplikace, kdy v sou asné podob komunikace funguje tak, ºe je na serverové ásti nasazen EJB modul, ke kterému se terminálová ást vzdálen p ipojuje. Terminálová ást vyuºívá entity práv tohoto modulu, který má p ístup do spole né databáze b ºící na serveru elektronických voleb. Pro získávání dat z databáze byly vytvo eny takzvané Services, coº jsou t ídy, které p edstavují business logiku komunikující nad datovou vrstvou. Bohuºel i toto e²ení s sebou p iná²í jistá úskalí. Jelikoº se pro v²echny dotazy, které systém vytvá í musí vzdálen p ipojovat na server, do²lo tímto krokem k výraznému zpomalení chodu apikace, kdy musí p i kaºdé akci poºadující získání záznam z databáze vytvá et vzdálen dotazy. Pro drobné prodlevy v p ipojení aplikace tedy nedosahuje takové rychlosti odezvy, jako tomu bylo, kdyº byly vyuºívány t ídy vlastní. Tomuto problému by se z ejm dalo áste n p edejít tak, ºe by v²echna pot ebná data uºivatele a záznamy o akcích ve kterých je registrován byla získána najednou a uloºena
49 5.5. ZM NY PROVEDENÉ OPROTI PRVOTNÍMU NÁVRHU 33 v systému namísto stálého dotazování. Poté by se jiº v²e zobrazovalo pouze na základ sta- ºených údaj. Na implementaci takovéhoto e²ení ov²em jiº p i vývoji nezbyl as, tudíº je to jedna z moºností pro následné úpravy systému. 5.5 Zm ny provedené oproti prvotnímu návrhu V této podkapitole jsou shrnuty jednotlivé rozdíly, které se vyskytují v sou asné verzi oproti prvotnímu návrhu aplikace. Tato ást je rozd lena podle umíst ní jednotlivých zm n, aby mohl být tyto snadno dohledány a prozkoumány Zm ny v doménovém modelu V doménovém modelu bylo oproti návrhu uskute n no asi nejvíce obm n a úprav. Jelikoº se p i vývoji aplikace objevovaly stále nové detaily, které nebyly p vodn odhaleny, musel být systém pr b ºn více i mén upravován. V textu vý²e jsou popsány problémy, které nastaly zejména p i snaze o uloºení volebního lístku. Kv li tomuto problému byla p idána nová entita s názvem TicketItem, která p edstavuje uºivatelem vybranou poloºku na volebním lístku. V ní je uloºen jak vybraný kandidát, tak i jeho zvolené preferen ní íslo. Dal²í zm nou je p idání vý tového typu TerminalFunction. Ten se neváºe na ºádnou entitu, slouºí pouze pro ur ení stavu, ve kterém se momentáln volební terminál nachází. V sou asné podob má pouze dv hodnoty, a to Volební terminál a Terminál pro úpravy. Následn bylo je²t nutné upravit n kolik t íd zejména p idáním pot ebných parametr. Tyto zm ny byly pov t²inou pouze drobné Zm ny ve funk nosti aplikace V návrhu nebylo rovn º po ítáno s tím, ºe bude jako prioritní zp sob vyhodnocování implementován systém jednoho p enositelného hlasu, tudíº není v analýze zmínka o e²ení tohoto problému. S tímto souvisí rovn º lehké úpravy grackého rozhraní oproti prvotnímu plánu. Nejv t²ím rozdílem oproti návrhu je ov²em vytvo ení EJB modulu pro vzdálený p ístup k serveru. Jeho p ítomnost v projektu se stala nutností aº v okamºiku propojení, proto není v po áte ním plánu v bec uveden. Jedná se o rozsáhlou úpravu systému zejména z hlediska funk nosti aplikace, jelikoº se velký po et operací odehrává vzdálen p es vytvo ený komunika ní kanál. Tento modul je nasazen na serverovou ást, kde plní svou funkci, kdyº vzdálen odpovídá na poºadavky terminálové ásti a operuje nad spole nou databází, která je p ímo spojena se serverovou ástí.
50 34 KAPITOLA 5. IMPLEMENTACE
51 Kapitola 6 Testování V této kapitole jsou popsány jednotlivé zp soby testování systému. Jelikoº je t eba pro p ihlá²ení a práci se systémem zadat otisk prstu, bylo obtíºné simulovat chod systému v reálném provozu. Z tohoto d vodu se vytvo ené testy v novaly p edev²ím vyzkou²ení funk nosti celého systému, odhalení jeho slabin a p edností a výslednému zaznamenání v²ech post eh. Hlavní náplní bylo p edev²ím testování s uºivatelem, jelikoº by jiné testy z ejm o aplikaci tolik nevypov d ly. V následujícím textu jsou popsány výsledky, kterých se dosáhlo, názory jednotlivých testovaných voli a vyvozené záv ry. 6.1 Testování s uºivatelem Testování s uºivatelem je proces, p i kterém je uºivateli poskytnuta aplikace v podzním stádiu vývoje. K této události je vytvo en seznam úloh, které musí uºivatel splnit s co nejmen²í pomoci zku²ebního dozoru. Uºivatel je p i tomto pokusu monitorován, sleduje se jeho mimika, psychické rozpoloºení a p edev²ím jeho aktivita p i práci se softwarem. Z testování je vytvo en jednak log 1 a p edev²ím jsou zde shrnuty výsledky získané od jednotlivých uºivatel, vyzvednuty odhalené problémy a ur ena jejich d leºitost, pop ípad moºný dopad na výsledný systém. Poté jsou výsledky procházeny podle priority problém od nejv t²í a dle moºností bu zapracovány do systému nebo s vysv tlením opomenuty. Aplikace byla p edloºena t em uºivatel m, kte í plnili následující úlohy Seznam úkol 1. Pomocí obdrºených údaj se p ihla²te u p íslu²ného terminálu a tyto údaje zm te 2. Ve stejném okn jako v kroku 1 si je²t p idejte do systému otisk prstu. 3. Pomocí údaj, které jste si nastavili se p ihla²te k volebnímu terminálu. Následujte instrukce programu aº na hlavní stranu. 4. V seznamu voleb vyberte "Volby starosty m sta Smi ice", ve kterých práv probíhá volební událost s názvem "První kolo volby starosty". 1 LOG je záznam z testování, kdy se uvádí posloupnost aktivit uºivatele 35
52 36 KAPITOLA 6. TESTOVÁNÍ 5. Vypl te volební lístek dle uváºení a ode²lete. 6. Po zadání hlasu se ze systému odhla²te Výstupy uºivatel Následující text popisuje jednotlivé uºivatele, údaje o nich a poznatky z testování. O íslovaný seznam je azen podle po adí úkol, u kaºdého ísla je poté vypsán seznam chyb uºivatele i jeho stíºností. Log není kompletní, z ejmé a triviální akce uºivatele jsou p esko eny pro v t²í p ehlednost Uºivatel 1 Log V k: 22 let Zku²enost s prací na PC: Vysoká Pohlaví: Muº(n kolik hodin na PC kaºdý den) 1. Úkol 1: Zm na údaj Uºivatel zadává údaje do systému a p ihla²uje se. Vypl uje p ihla²ovací údaje bez problém. 2. Úkol 2: P idání otisku prstu Uºivatel p i zadání otisku p ejíºdí prstem po te ce bez výsledku, neví si rady. Dozor dává pokyn k p idrºení prstu na sníma i. Uºivatel se s tímto faktem rychle vypo ádá a zopakuje sejmutí n kolikrát dle pokynu programu. 3. Úkol 3: P idání otisku prstu Uºivatel se k volebnímu terminálu p ihlásí okamºit, s ov ením otsku jiº problém nemá. 4. Úkol 4: Výb r volební akce Uºivatel vybírá poºadované volby, tiskne odpovídající tla ítko bez zaváhání. 5. Úkol 5: Vypln ní volebního lístku P i volení jednotlivých kandidát se pozastavuje nad p idáváním preferencí, nechápe jednotlivé priority. Nevyplní prioritu u jednoho kandidáta, coº mu systém ohlásí, Uºivatel tuto volbu opravuje a odesílá lístek.
53 6.1. TESTOVÁNÍ S UšIVATELEM Úkol 6: Odhlá²ení se ze systému Po zobrazení potvrzení o p ijetí hlasu systémem volí správn moºnost odhlá²ení a ukon ení hlasování Uºivatel 2 Log V k: 51 let Zku²enost s prací na PC: Uºivatelská(Vyuºívání internetu, kancelá ských aplikací) Pohlaví: šena 1. Úkol 1: Zm na údaj Uºivatel zadává údaje do systému a p ihla²uje se. Uºivatel se ptá, který z údaj p edstavuje p ihla²ovací jméno(login je pro ni neznámý pojem) Po porad s dozorem m ní údaje jiº bez problému. 2. Úkol 2: P idání otisku prstu Uºivatel p i zadání otisku poloºí prst na te ku pouze na malou chvíli. Nic se ned je, tudíº se zarazí nad dal²ím postupem. Po porad s dozorem jiº prst p ikládá na pot ebnou dobu a otisk ukládá. 3. Úkol 3: P idání otisku prstu Po p edchozí zku²enosti se uºivatel jiº k volebnímu terminálu p ihlásí bez potíºí. 4. Úkol 4: Výb r volební akce Uºivatel hledá poºadované volby, tiskne odpovídající tla ítko bez zaváhání. 5. Úkol 5: Vypln ní volebního lístku Uºivatel nejd íve neví, jak zatrhnout moºnost. Po porad s dozorem za²krtne touºené moºnosti. Nep i adí prioritu íslo 1 ºádnému kandidátovi, p i pokusu o odeslání vysko í chybová hlá²ka. Uºivatel si zprávu systému p e te, prioritu nastaví a ode²le lístek. 6. Úkol 6: Odhlá²ení se ze systému Po zobrazení potvrzení o p ijetí hlasu systémem bez rozmyslu volí moºnost zadání hlasu pro dal²í volby, coº ji vrátí na hlavní obrazovku. Následn jiº moºost odhlá²ení volí správn, ov²em s jedním zbyte ným krokem navíc.
54 38 KAPITOLA 6. TESTOVÁNÍ Uºivatel 3 Log V k: 35 let Zku²enost s prací na PC: Vysoká(n kolik hodin na PC kaºdý den) Pohlaví: Muº 1. Úkol 1: Zm na údaj První úkol plní uºivatel bez potíºí. 2. Úkol 2: P idání otisku prstu Uºivatel jiº z ejm má zku²enost se sníma i otisku, p idává otisky bez pomoci a ukládá je. 3. Úkol 3: P idání otisku prstu P ihlá²ení zvládá v krátkém ase. 4. Úkol 4: Výb r volební akce Uºivatel vybírá volební akci intuitivn a okamºit. 5. Úkol 5: Vypln ní volebního lístku Uºivatel za²krtává n kolik moºností. Kliká na roletková menu pro zadání preferencí. Kandidátovi, který je mu nejvíce sympatický dává nejvy²²í íslo. Po vysv tlení výzamu preference své hodocení m ní a odesílá lístek. 6. Úkol 6: Odhlá²ení se ze systému Po obdrºení potvrzení volí správn moºnost odhlá²ení a ukon ení hlasování Shrnutí testování V této podsekci jsou zmín ny aktivity, p i kterých si uºivatelé nev d li rady nebo p i nichº nastaly ur ité potíºe. Následn je vºdy zhod Zadávání otisku prstu Zadávání otisku prstu do systému p edstavovalo pro v²echny testované jistý problém. Uºivatel 1 obsluhoval te ku zp sobem, jakým je zvyklý ze sníma, které jsou v dne²ní dob stále ast jí sou ástí notebooku.uºivatel íslo 2 nikdy nep i²el to kontaktu se te kou otisku prstu, tudíº si bez pomoci dozoru nedokázal poradit. Poslední uºivatel byl v tomto oboru jiº zku²ený, tudíº si poradil. Nicmén práv snímání otisk p edstavuje jeden z probémových úsek. Nicmén se nejedná o závadu aplikace.
55 6.2. HODNOCENÍ PROB HNUTÝCH TEST 39 e²ení V tomto p ípad p ipadá v úvahu pouze jediné e²ení, a to zapojit odbornou pomoc v podob asistenta, který bude p i ov ování otisk jednotlivým voli m pomáhat a radit P i azování preferencí zvoleným kandidát m P i p i azování preferencí v t²ina uºivatel nev d la, jakým zp sobem je p i adit, ani jakou funkci zastávají. Díky výzv na roletkovém menu nebyl s jeho pouºitím problém. e²ení uje. Do dialogu pro vypln ní volebního lístku byl p idán popisek, který systém objas Odhlá²ení ze systému Pokud se uºivatel neodhlásí pomocí volby v nabídce, která se zobrazí po potvrzení p ijetí hlasu serverem a nemá jiº p ístupnou ºádnou dal²í volební událost, musí se odhlásit pomocí tla ítka v pravém horním rohu. Dva ze t í uºivatel povaºovali umíst ní tla ítka za ne² astné a ²patn viditelné. e²ení Z ejm by bylo dobré, aby se uºivatel mohl odhlásit v kterémkoli bod volebního procesu, nicmén umíst ní tla ítka povaºuji za dobré, je stále vid t, coº je dle mého názoru d leºité. Z tohoto d vodu nebyla tato stíºnost brána v potaz a v²e bylo ponecháno dle prvotního návrhu. 6.2 Hodnocení prob hnutých test Jelikoº se jedná o prototyp aplikace, byl kladen hlavní d raz na vylad ní problém, které se týkají p edev²ím ovladatelnosti aplikace. Testování s uºivatelem p ineslo n kolik poznatk, podle kterých lze v dal²ím vývoji pokra ovat. Pokud se jednalo o zásadní i snadno aplikovatelnou úpravu, byla tato provedena. Na dal²í zp soby test se z asového hlediska nedostalo. Rovn º by z ejm v této fázi projektu nem ly výraznou informativní hodnotu. Celý systém musí být podroben d kladnému testování, jelikoº se jedná o velmi citlivou záleºitost, která musí být p edev²ím z hlediska bezpe nosti naprosto perfektní p ed jejím nasazením do b ºné praxe.
56 40 KAPITOLA 6. TESTOVÁNÍ
57 Kapitola 7 Záv r Byl vytvo en volební terminálu, který disponuje jednoduchým designem, snadnou a intuitivní ovladatelností a uºivatelsky p ív tivým rozhraním. B hem práce byly nastudovány v²echny poºadované dokumenty a rovn º prob hlo seznámení s rozli nými volebními postupy, jejich samotným systémem, zp soby vyhodnocování a pr b hem. Byla vytvo ena podpora pro vedoucím práce zadané volební systémy (V t²inový volební systém a Systém p enositelného hlasu). Dále byly nastudovány rozli né typy autorizace a autentizace, z nichº p ihla²ování do aplikace pomocí PINu a otisku prstu bylo v systému pouºito. Aplikace byla otestována pomocí test s uºivatelem. Prozatím se jedná pouze o ist informativní testy, jelikoº tyto byly provád ny v domácích podmínkách a v malém rozsahu. Bohuºel p edev²ím z asového hlediska nebylo uskute n no nasazení do reálného provozu, coº by p edstavovalo nasazení aplikace na skute ný volební terminál a následné provedení simulovaného hlasování. Nicmén zavedení aplikace na volební terminál je plánována po odevzdání této práce. Pro dal²í pokra ování bych doporu il zejména prostudování objevené bezpe nostní trhliny, která je podrobn popsána v kapitole Návrh, podsekce Práce s otisky prstu. Je t eba, aby byl registra ní proces upraven tak, aby se tomuto problému zcela zamezilo a nebyla tak umoºn na ovlivnitelnost voleb. Dále se zde nachází p íleºitost pro roz²í ení projektu E-volby o dal²í typy volebních systém, kterých je ve sv t ada, ímº by byla vytvo ena vysoce uºite ná a p enosná aplikace pouºitelná v rozli ných podmínkách. Dále je rovn º moºné roz²í it systém o volbu systému p ihla²ování pro kaºdou volební událost zvlá², coº by pomohlo zejména k v t²ímu p izp sobení pro r zné volební systémy. V neposlední ad je rovn º nutné v novat se celkovému podrobnému testování celé aplikace. Sou asný prototyp nelze do skte ného provozu nasadit bez celkového vylad ní nedostatk a zamezení jakékoli chyb,která by p i ostrém provozu mohla znamenat katastrofu. 41
58 42 KAPITOLA 7. ZÁV R
59 Literatura [1] Bc. Michaela Sedlá ová. Metody dosaºení spolehlivosti elektronických voleb. In Diplomová práce. Univerzita Tomá²e Bati, Zlín, FAI, [2] ARLOW, J. NEUSTADT, I. UML2 a unikovaný proces vývoje aplikací. Computer Press s.r.o, Brno, 2nd edition, In Czech. [3] Bc. Martin Sláma. Generování jednorázových PIN a jejich uloºení na ipovou kartu. In Diplomová práce. MUNI FI, [4] Oracle. JavaDOC [online] [cit ]. Dostupné z: < com/javase/6/docs/api/java/>. [5] Petr Hlavá ek. Serverová ást systému Elektronické volby. In Bakalá ská práce. ƒvut FEL, [6] Petr Hlavá ek, Ond ej Kulatý, t pán korpil, Václav Tarantík. Registra ní systém projektu E-Volby [online] [cit ]. Dostupné z: < com/p/volebni-system/>. [7] P isp vatelé Wikipedie. HTTPS [online] [cit ]. Dostupné z: <http: //en.wikipedia.org/wiki/http_secure>. [8] Tomá² ƒerevka. Elektronické volby. In Bakalá ská práce. ƒvut FEL, [9] web:digp. Digital Persona. stav z [10] web:glasssh. Stránky výrobce záloºních zdroj. stav z [11] web:infoaut. Informace o autentizaci voli. stav z [12] web:infoautor. Informace o autorizaci voli. stav z [13] web:infodp. K336 Info pokyny pro psaní diplomových prací. stav ze [14] web:infoups. Stránky výrobce záloºních zdroj. stav z
60 44 LITERATURA [15] web:oracle. Stránky spole nosti Oracle. stav z [16] web:sparxsys. Stránky rmy SparxSystems, výrobce modelovacích nástroj. stav z [17] web:volsys. Strany a volby. stav z [18] Zuzana Polá ková. Re²er²e algoritm pro snímání a zpracování otisku prst. In Bakalá ská práce. ƒvut FEL, 2008.
61 P íloha A Seznam pouºitých zkratek HTTP Hypertext Transfer Protocol SNMP Simple Network Management Protocol SSL Secure Sockets Layer TLS Transport Layer Security IP Internet Protocol HTTPS Hypertext Transfer Protocol Secure Java EE Java Enterprise Edition JDBC Java Database Connectivity SVN Subversion UML Unied Modeling Language UPS Uninterruptible Power Supply FAR False Accept Rate JPA Java Persistence Api GUI Graphical User Interface EJB Enterprise Java Bean IDE Integrated Development Environment. 45
62 46 P ÍLOHA A. SEZNAM POUšITÝCH ZKRATEK
63 P íloha B UML diagramy 47
64 48 P ÍLOHA B. UML DIAGRAMY Obrázek B.1: Doménový model server
BOZP - akcepta ní testy
BOZP - akcepta ní testy Kristýna Streitová Zadavatel: Ing. Ji í Chludil 13. prosince 2011 Obsah 1 Úvod 2 1.1 Popis test....................................... 2 2 Testy 3 2.1 ID - 1 P ihlá²ení do systému.............................
IP kamerový systém Catr - uºivatelský návod k obsluze
IP kamerový systém Catr - uºivatelský návod k obsluze Obsah P ipoj se k nám! Úvod 3 P ístup do systému 3 Po íta s Windows 3 Prvotní instalace 3 Ovládání kamerového systému na po íta i 5 šivý náhled...................................................
Specifikace systému ESHOP
Nabídka: Specifikace systému ESHOP březen 2009 Obsah 1 Strana zákazníka 1 1.1 Nabídka produkt, strom kategorií..................... 1 1.2 Objednávka a ko²ík.............................. 1 1.3 Registrace
Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120
Základní informace o struktu e dat: Komise (nadkomise) obsahují leny schválené VR (po jejich identifikaci v SIS, p íp. dopln ní budou obsahovat všechny schválené leny, po novém za azení se vyplní datum
Návod k použití aplikace MARKETINGOVÉ PRŮZKUMY.CZ
www.marketingovepruzkumy.cz Návod k použití aplikace MARKETINGOVÉ PRŮZKUMY.CZ 28.4.2011 Miloš Voborník Obsah 1. Uživatelská příručka... 1 1.1. Běžný uživatel... 1 1.1.1. Celkové rozvržení, úvodní strana...
Uºivatelská p íru ka Octopus
Uºivatelská p íru ka Octopus Jan Bojko 11. prosince 2014 Abstrakt Uºivatelská p íru ka k aplikaci Octopus. Obsah 1 Úvod 2 2 P ihlá²ení 2 3 Naviga ní menu 2 4 Práce s tabulkou 3 5 Editace 6 5.1 Nový záznam.............................
Nastavení vestav ného p evodníku Ethernet -> sériová linka ES01
KMB systems, s. r. o. Dr. M. Horákové 559, 460 06 Liberec 7, Czech Republic tel. +420 485 130 314, fax +420 482 736 896 E-mail: kmb@kmb.cz, Web: www.kmb.cz Nastavení vestav ného p evodníku Ethernet ->
MEZINÁRODNÍ AUDITORSKÝ STANDARD ISA 505 EXTERNÍ KONFIRMACE OBSAH
MEZINÁRODNÍ AUDITORSKÝ STANDARD ISA 505 EXTERNÍ KONFIRMACE (Účinný pro audity účetních závěrek sestavených za období počínající 15. prosincem 2009 nebo po tomto datu) Úvod OBSAH Odstavec Předmět standardu...
Manuál uživatele čipové karty s certifikátem
Manuál uživatele čipové karty s certifikátem Obsah 1 Úvod... 3 2 Instalace čipové karty s certifikátem... 5 3 Instalace čtečky čipových karet... 10 3.1 Instalace z Windows Update... 10 3.2 Manuální instalace
DeepBurner (testování UI)
ƒeské vysoké u ení technické v Praze Fakulta elektrotechnická Semestrální práce DeepBurner (testování UI) Blaºej, Friebel, Olexová, Volf P edm t: Testování uºivatelských rozhraní Obor: Softwarové inºenýrství
Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13
Seminá e Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11, sem.
Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s.
Dálkové p enosy ze za ízení aktivní protikorozní ochrany Severomoravské plynárenské, a.s. Tomáš D dina, Lubomír Herman Severomoravská plynárenská, a.s. Hlavní d vody realizace Podmínkou bezpe nosti a spolehlivosti
Uživatelská dokumentace
Uživatelská dokumentace k projektu Czech POINT Provozní řád Konverze dokumentů z elektronické do listinné podoby (z moci úřední) Vytvořeno dne: 29.11.2011 Verze: 2.0 2011 MVČR Obsah 1. Přihlášení do centrály
účetních informací státu při přenosu účetního záznamu,
Strana 6230 Sbírka zákonů č. 383 / 2009 Částka 124 383 VYHLÁŠKA ze dne 27. října 2009 o účetních záznamech v technické formě vybraných účetních jednotek a jejich předávání do centrálního systému účetních
Komfortní datová schránka
Komfortní datová schránka Obsah 1. Komfortní datová schránka... 2 2. Záložka Schránky... 2 2.1. Přidání datové schránky... 2 2.2. Přidání složky do evidence datové schránky... 4 2.3. Přidání dalšího uživatele
-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy
-1- I I. N á v r h VYHLÁŠKY ze dne 2009 o účetních záznamech v technické formě vybraných účetních jednotek a jejich předávání do centrálního systému účetních informací státu a o požadavcích na technické
Návod pro vzdálené p ipojení do sít UP pomocí VPN pro MS Windows 7
Návod pro vzdálené p ipojení do sít UP pomocí VPN pro MS Windows 7 1. Úvod nezbytné kroky ne se p ipojíte 2. Jak si vytvo it heslo 3. Nastavení VPN p ipojení pro Windows 7 1. Úvod Slu ba VPN umo uje vstoupit
Vektory. Vektorové veli iny
Vektor je veli ina, která má jak velikost tak i sm r. Ob tyto vlastnosti musí být uvedeny, aby byl vektor stanoven úpln. V této ásti je návod, jak vektory zapsat, jak je s ítat a od ítat a jak je pouºívat
PODMÍNKY VÝBĚROVÉHO ŘÍZENÍ
PODMÍNKY VÝBĚROVÉHO ŘÍZENÍ I. Vyhlašovatel výběrového řízení Vyhlašovatelem výběrového řízení je společnost ČEPS, a.s., se sídlem Elektrárenská 774/2, 101 52 Praha 10, IČ 25702556, DIČ CZ25702556, zapsaná
Android Elizabeth. Verze: 1.3
Android Elizabeth Program pro měření mezičasů na zařízeních s OS Android Verze: 1.3 Naposledy upraveno: 12. března 2014 alesrazym.cz Aleš Razým fb.com/androidelizabeth Historie verzí Verze Datum Popis
Vyhlášení opakované veřejné soutěže 1/6
Vyhlášení opakované veřejné soutěže 1/6 MINISTERSTVO OBRANY ČR SEKCE VYZBROJOVÁNÍ V Y H L Á Š E N Í OPAKOVANÉ VEŘEJNÉ SOUTĚŽE III. VE VÝZKUMU, VÝVOJI A INOVACÍCH NA VÝBĚR PROJEKTŮ DO PROGRAMU OBRANNÉHO
Sbírka zákonů ČR Předpis č. 473/2012 Sb.
Sbírka zákonů ČR Předpis č. 473/2012 Sb. Vyhláška o provedení některých ustanovení zákona o sociálně-právní ochraně dětí Ze dne 17.12.2012 Částka 177/2012 Účinnost od 01.01.2013 http://www.zakonyprolidi.cz/cs/2012-473
Odpov di na dotazy k ve ejné zakázce. 30/2014-53-27. SSZ Registr IKP
Odpov di na dotazy k ve ejné zakázce. 30/2014-53-27 SSZ Registr IKP 1. V dokumentu 4_Priloha_1_Specifikace-predmetu-technicke-pozadavky_Rozvoj-podpora-RIKP v kapitole 2.1 Popis architektury a vazeb v APV
Pravidla. používání Národního elektronického nástroje při realizaci zadávacích postupů prostřednictvím národního elektronického nástroje
Příloha usnesení vlády ze dne 18. ledna 2016 č. 25 Pravidla používání Národního elektronického nástroje při realizaci zadávacích postupů prostřednictvím národního elektronického nástroje Preambule V souladu
Integrování jako opak derivování
Integrování jako opak derivování V tomto dokumentu budete seznámeni s derivováním b ºných funkcí a budete mít moºnost vyzkou²et mnoho zp sob derivace. Jedním z nich je proces derivování v opa ném po adí.
MV ČR, Odbor egovernmentu. renata.horakova@mvcr.cz. Webové stránky veřejné správy - minimalizace jejich zranitelnosti a podpora bezpečnostních prvků
Návrh výzkumné potřeby státní správy pro zadání veřejné zakázky A. Předkladatel garant výzkumné potřeby Název organizace Ministerstvo vnitra Adresa Milady Horákové 133/ Kontaktní osoba Ing. Jaroslav Scheuba
Národního registru u ivatel léka sky indikovaných substitu ních látek (papírové hlá enky)
PRAVIDLA A FORMULÁ E PRO ZAVÁD NÍ/RU ENÍ U IVATEL do Národního registru u ivatel léka sky indikovaných substitu ních látek (papírové hlá enky) 1 ZAVÁD NÍ NOVÝCH U IVATEL 1.1 Zpravodajské jednotky (Zdra
Rozšířená nastavení. Kapitola 4
Kapitola 4 Rozšířená nastavení 4 Nástroje databáze Jak již bylo zmíněno, BCM používá jako úložiště veškerých informací databázi SQL, která běží na všech lokálních počítačích s BCM. Jeden z počítačů nebo
VI. Finanční gramotnost šablony klíčových aktivit
VI. Finanční gramotnost šablony klíčových aktivit Číslo klíčové aktivity VI/2 Název klíčové aktivity Vazba na podporovanou aktivitu z PD OP VK Cíle realizace klíčové aktivity Inovace a zkvalitnění výuky
Výzva k podání nabídek (zadávací dokumentace)
Výzva k podání nabídek (zadávací dokumentace) 1.Číslo zakázky 2.Název programu: 3.Registrační číslo projektu 4.Název projektu: 5.Název zakázky: Operační program Vzdělání pro konkurenceschopnost CZ.1.07/1.1.07/02.0129
INTERNETOVÝ TRH S POHLEDÁVKAMI. Uživatelská příručka
INTERNETOVÝ TRH S POHLEDÁVKAMI Uživatelská příručka 1. března 2013 Obsah Registrace... 3 Registrace fyzické osoby... 3 Registrace právnické osoby... 6 Uživatelské role v systému... 8 Přihlášení do systému...
P íklad 1 (Náhodná veli ina)
P íklad 1 (Náhodná veli ina) Uvaºujeme experiment: házení mincí. Výsledkem pokusu je rub nebo líc, ºe padne hrana neuvaºujeme. Pokud hovo íme o náhodné veli in, musíme p epsat výsledky pokusu do mnoºiny
Manuál Kentico CMSDesk pro KDU-ČSL
Manuál Kentico CMSDesk pro KDU-ČSL 2011 KDU-ČSL Obsah 1 Obecně... 3 1.1 Přihlašování... 3 1.2 Uživatelské prostředí... 4 2 Stránky... 4 2.1 Vytvoření nové stránky... 4 2.1.1 Texty... 7 2.1.2 Styly textu...
Návod k používání registračního systému ČSLH www.hokejovaregistrace.cz
Návod k používání registračního systému ČSLH www.hokejovaregistrace.cz Osnova Přihlášení do systému Základní obrazovka Správa hráčů Přihlášky hráčů k registraci Žádosti o prodloužení registrace Žádosti
1. Požadavky na provoz aplikací IISPP
1. Požadavky na provoz aplikací IISPP 1.1. Podporované prohlížeče Aplikace IISPP jsou primárně vyvíjeny a testovány v prohlížečích Internet Explorer a Mozilla Firefox. V jiných než uvedených prohlížečích
Kelvin v kapkový generátor
Kelvin v kapkový generátor Kry²tof Kadlec 1, Luká² Kune² 2, Luká² N me ek 3 1 Gymnázium Franti²ka Palackého, Vala²ské Mezi í í, krystoof.2@seznam.cz 2 Gymnázium, Zlatá stezka 137, Prachatice, kunamars@seznam.cz
Prohlá²ení. V Praze dne 18. dubna 2010...
ƒeské vysoké u ení technické v Praze Fakulta elektrotechnická Katedra po íta Bakalá ská práce Studentova Berli ka III - Jádro aplikace Jaromír Van k Vedoucí práce: Ing. Ji í Chludil Studijní program: Softwarové
Poukázky v obálkách. MOJESODEXO.CZ - Poukázky v obálkách Uživatelská příručka MOJESODEXO.CZ. Uživatelská příručka. Strana 1 / 1. Verze aplikace: 1.4.
MOJESODEXO.CZ Poukázky v obálkách Verze aplikace: 1.4.0 Aktualizováno: 22. 9. 2014 17:44 Strana 1 / 1 OBSAH DOKUMENTU 1. ÚVOD... 2 1.1. CO JSOU TO POUKÁZKY V OBÁLKÁCH?... 2 1.2. JAKÉ POUKÁZKY MOHOU BÝT
WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE. 2005-2008 Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6 www.hydrosoft.eu
WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE 2005-2008 Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6 www.hydrosoft.eu Obsah Obsah 1 1.1 3 Internetový... prohlížeč map 4 Rozložení ovládacích... prvků
Kočí, R.: Účelové pozemní komunikace a jejich právní ochrana Leges Praha, 2011
Kočí, R.: Účelové pozemní komunikace a jejich právní ochrana Leges Praha, 2011 Účelové komunikace jsou důležitou a rozsáhlou částí sítě pozemních komunikací v České republice. Na rozdíl od ostatních kategorií
Pomocník diabetika Uživatelská příručka
Pomocník diabetika Uživatelská příručka Úvod Pomocník diabetika je označení pro webovou aplikaci určenou pro diabetiky zejména prvního typu. Webová aplikace je taková aplikace, se kterou můžete pracovat
PŘIJÍMACÍ ŘÍZENÍ. Strana
PŘIJÍMACÍ ŘÍZENÍ Strana Vyhledávání textu - přidržte klávesu Ctrl, kurzor umístěte na příslušný řádek a klikněte levým tlačítkem myši. 1. Právní předpisy upravující přijímací řízení ke studiu ve střední
POKYNY. k vyplnění přiznání k dani z příjmů fyzických osob za zdaňovací období (kalendářní rok) 2012
dz_12dpfo5405_19_pok.pdf - Adobe Acrobat Professional POKYNY k vyplnění přiznání k dani z příjmů fyzických osob za zdaňovací období (kalendářní rok) 2012 Pokyny k vyplnění přiznání k dani z příjmů fyzických
Skalární sou in. Úvod. Denice skalárního sou inu
Skalární sou in Jedním ze zp sob, jak m ºeme dva vektory kombinovat, je skalární sou in. Výsledkem skalárního sou inu dvou vektor, jak jiº název napovídá, je skalár. V tomto letáku se nau íte, jak vypo
Zabezpečení Uživatelská příručka
Zabezpečení Uživatelská příručka Copyright 2008 Hewlett-Packard Development Company, L.P. Microsoft a Windows jsou registrované ochranné známky společnosti Microsoft Corporation v USA. Informace uvedené
Průzkum veřejného mínění věcné hodnocení
Příloha č. 2 ke Zprávě o posouzení a hodnocení nabídek Průzkum veřejného mínění věcné hodnocení 1. FACTUM INVENIO ad 2. Popis metodiky průzkumu 80 bodů Hodnotící komise posoudila nabídku uchazeče v tomto
Zadávání tiskových zakázek prostřednictvím JDF a Adobe Acrobat Professional
Zadávání tiskových zakázek prostřednictvím JDF a Adobe Acrobat Professional Nejčastěji se o JDF hovoří při řízení procesů v tiskových provozech. JDF se však má stát komunikačním prostředkem mezi všemi
NÁVOD NA POUŽITÍ INSTAT 8
NÁVOD NA POUŽITÍ INSTAT 8 OBSAH: I II III Diagram teplota-čas Tabulka časových pásem Ovládací prvky-zobrazení 1 Ovládání přístroje 1.1 Ručně C 1.2 Týdenní program. A 1.3 Denní program. B 1.4 Party..D 1.5
Volební a jednací řád Akademického senátu Slezské univerzity v Opavě
Ministerstvo školství, mládeže a tělovýchovy registrovalo podle 36 odst. 2 zákona č. 111/1998 Sb., o vysokých školách a o změně a doplnění dalších zákonů (zákon o vysokých školách), dne 4. října 2006 pod
Příspěvky poskytované zaměstnavatelům na zaměstnávání osob se zdravotním postižením Dle zákona č. 435/2004 Sb., o zaměstnanosti, v platném znění.
6 Právní postavení a ochrana osob se zdravotním postižením Příspěvky poskytované zaměstnavatelům na zaměstnávání osob se zdravotním postižením Dle zákona č. 435/2004 Sb., o zaměstnanosti, v platném znění.
Pokyn D - 293. Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami
PŘEVZATO Z MINISTERSTVA FINANCÍ ČESKÉ REPUBLIKY Ministerstvo financí Odbor 39 Č.j.: 39/116 682/2005-393 Referent: Mgr. Lucie Vojáčková, tel. 257 044 157 Ing. Michal Roháček, tel. 257 044 162 Pokyn D -
Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS
Název projektu: Redesign Statistického informačního systému v návaznosti na zavádění egovernmentu v ČR Příjemce: Česká republika Český statistický úřad Registrační číslo projektu: CZ.1.06/1.1.00/07.06396
Adresa p íslušného ú adu. Ú ad:... Ulice:... PS, obec:...
P íloha. 2 k vyhlášce. 503/2006 Sb. Adresa p íslušného ú adu Ú ad:... Ulice:... PS, obec:... V c: ŽÁDOST O VYDÁNÍ ROZHODNUTÍ O ZM N VYUŽITÍ ÚZEMÍ v územním ízení ve zjednodušeném územním ízení podle ustanovení
Binární operace. Úvod. Pomocný text
Pomocný text Binární operace Úvod Milí e²itelé, binární operace je pom rn abstraktní téma, a tak bude ob as pot eba odprostit se od konkrétních p íklad a podívat se na v c s ur itým nadhledem. Nicmén e²ení
Konceptuální modelování
Konceptuální modelování Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS
ICT plán ZŠ praktické Bochov na rok 2009
ICT plán ZŠ praktické Bochov na rok 2009 Na období 1.1.2009 do 31.12.2009. (Dle metodického pokynu MŠMT č.j. 30799/2005-551) Úvod.1 1.1. ICT gramotnost pedagogů 2 2. 2.. 3 1.2. Software 2. 2.. 3 1.3. Hardware
T i hlavní v ty pravd podobnosti
T i hlavní v ty pravd podobnosti 15. kv tna 2015 První p íklad P edstavme si, ºe máme atomy typu A, které se samovolným radioaktivním rozpadem rozpadají na atomy typu B. Pr m rná doba rozpadu je 3 hodiny.
Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011
Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011 1 Úvod P i platebním styku obvykle dochází k p esun m pen ºních prost edk mezi plátcem a p íjemcem platby. Banka p i této transakci
Předmětem podnikání společnosti je:
STANOVY Zemědělské společnosti Nalžovice a.s. I. Obchodní firma Obchodní firma společnosti zní: Zemědělská společnost Nalžovice, a.s. II. Sídlo společnosti Sídlem společnosti jsou: Nalžovice č.p. 23, okres
WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE
WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE Úvodem WD je mobilní verze klasického WEBDISPEČINKU, která je určena pro chytré telefony a tablety. Je k dispozici pro platformy ios a Android,
t a k t o : www.e-drazby.cz Uvedené nemovité věci tvoří jeden funkční celek a jako jeden celek budou draženy.
Číslo jednací: 156 EX 4683/13-54 Uvádějte při veškeré korespondenci Značka oprávněného: Ederová - 170495/1 U s n e s e n í Soudní exekutor JUDr. Milan Makarius Exekutorského úřadu Praha-západ, se sídlem
Příručka pro uživatele ČSOB InternetBanking 24 a ČSOB BusinessBanking 24 Online s čipovou kartou v operačním systému Mac OS X
Příručka pro uživatele ČSOB InternetBanking 24 a ČSOB BusinessBanking 24 Online s čipovou kartou v operačním systému Mac OS X Obsah 1 Úvod podmínky pro úspěšné přihlášení do služby... 2 2 Instalace SecureStore
R O Z H O D N U T Í. Miroslav Vala datum narození: 28.09.1971. a Jana Valová datum narození: 14.09.1978. rozhodnutí o umístění stavby
Městský úřad Brušperk K Náměstí 22, 739 44 Brušperk stavební úřad č.j. : SÚ/328/817/2011/Če Miroslav Vala č.j. : SÚ/330/1248/2011/Če Jana Valová vyřizuje: Ing. Jiřina Čermáková Krátká 648 e-mail : cermakova@brusperk-mesto.cz
NÁVRHOVÝ PROGRAM VÝMĚNÍKŮ TEPLA FIRMY SECESPOL CAIRO 3.5.5 PŘÍRUČKA UŽIVATELE
NÁVRHOVÝ PROGRAM VÝMĚNÍKŮ TEPLA FIRMY SECESPOL CAIRO 3.5.5 PŘÍRUČKA UŽIVATELE 1. Přehled možností programu 1.1. Hlavní okno Hlavní okno programu se skládá ze čtyř karet : Projekt, Zadání, Výsledky a Návrhový
Zpráva o výsledku p ezkoumání hospoda ení územního samosprávného celku Obec Mi kov za období od 1.1.2017 do 31.12.2017 Zpráva o výsledku p ezkoumání hospoda ení 1/6 I. VŠEOBECNÉ INFORMACE Název ÚSC: Obec
Regenerace zahrady MŠ Neděliště
1 Výzva k podání nabídek (dále jen zadávací dokumentace ) v souladu se Závaznými pokyny pro žadatele a příjemce podpory v OPŽP (dále jen Pokyny ), účinnými od 20.06.2014 Zadavatel: Název zadavatele: OBEC
8. Struktura údaj na LCD displeji
Metody nabíjení NiCd a NiMH akumulátor 56 8. Struktura údaj na LCD displeji 8.1 Hlavní menu Hlavní menu je zobrazeno vždy po spušt ní nabíje e. Jsou zde prozatím dv volby a to Výb r profilu nabíjení a
Testovací aplikace Matematika není věda
Testovací aplikace Matematika není věda Příručka k http://matematika.komenacek.cz/ Příručka k portálu http://matematika.komenacek.cz/ 2 Uživatelská příručka k portálu 202 BrusTech s.r.o. Všechna práva
Obchodní podmínky. sídlo.(dále jen zhotovitel) I. Základní ustanovení
Obchodní podmínky které ve smyslu ustanovení 273 odst. 1 z.č. 513/1991 Sb. obchodní zákoník, ve znění pozdějších předpisů, určují část obsahu smlouvy o dílo č.ze dne.., na zhotovení stavby Provozní budova
KLÍČE KE KVALITĚ (METODIKA II)
KLÍČE KE KVALITĚ (METODIKA II) Systém metodické, informační a komunikační podpory při zavádění školních vzdělávacích programů s orientací na rozvoj klíčových kompetencí a růst kvality vzdělávání Anotace
Číslo jednací: 156 EX 3608/14-55 Uvádějte při veškeré korespondenci Značka oprávněného: 152144
Číslo jednací: 156 EX 3608/14-55 Uvádějte při veškeré korespondenci Značka oprávněného: 152144 U s n e s e n í Soudní exekutor JUDr. Milan Makarius Exekutorského úřadu Praha-západ, se sídlem soudní exekutor,
Preference v u ívání prost edk elektronické komunikace áky a studenty
Preference v u ívání prost edk elektronické komunikace áky a studenty (dotazníkový pr zkum) Zuzana Pustinová Dne ní doba nabízí mnohé mo nosti, jak komunikovat, ani by se ú astníci hovoru nacházeli na
F o r m u l á I S P R O F I N
F o r m u l á I S P R O F I N Kód formulá e Poslední aktualizace formulá e: 17.1. 2007 s L z k P o s T K u Ozna ení ásti formulá e Název jednotlivých ástí formulá e Povinné ásti formulá e S 05 110 S 05
Mobilní aplikace. Dokument nepopisuje administrační rozhraní (backend) ani napojení na příbuzné databáze.
oolczechguide Mobilní aplikace! O dokumentu Tento dokument popisuje uživatelské rozhraní nativní mobilní aplikace CoolCzechGuide pro operační systémy Android (verze 4 a výše) a ios (verze 7 a výše). Popisuje
městské části Praha 3 pro rok 2016 připravila
městské části Praha 3 pro rok 2016 připravila městské části Praha 3 pro rok 2016 - Návrh projektu k 3. 2. 2016 Obsah Obsah... 2 1. KONTEXT... 3 2. CÍLE A VÝSTUPY PROJEKTU... 4 3. POSTUP PŘÍPRAVY PARTICIPAČNÍHO
Ovoce do škol Příručka pro žadatele
Ve smečkách 33, 110 00 Praha 1 tel.: 222 871 556 fax: 296 326 111 e-mail: info@szif.cz Ovoce do škol Příručka pro žadatele OBSAH 1. Základní informace 2. Schválení pro dodávání produktů 3. Stanovení limitu
Jednací ád výbor Zastupitelstva m styse erný D l
stys erný D l Zastupitelstvo m styse erný D l Jednací ád výbor Zastupitelstva m styse erný D l Zastupitelstvo m styse erný D l se usneslo vydat v souladu se zákonem. 128/2000 Sb., o obcích (obecní z ízení),
STANOVY SPOLEČENSTVÍ VLASTNÍKŮ PRACHATICKÁ 1304/25, ČESKÉ BUDĚJOVICE ČÁST PRVNÍ - VŠEOBECNÁ USTANOVENÍ. Čl. I Základní ustanovení
STANOVY SPOLEČENSTVÍ VLASTNÍKŮ PRACHATICKÁ 1304/25, ČESKÉ BUDĚJOVICE ČÁST PRVNÍ - VŠEOBECNÁ USTANOVENÍ Čl. I Základní ustanovení (1) Společenství vlastníků jednotek (dále jen společenství vlastníků ) je
PRACOVNÍ MATERIÁLY PRACOVNÍ MATERIÁLY CHEMIE CHEMIE. Struktura vyu ovací hodiny. Záznamový Záznamový arch. P edm tový metodik: Ing.
PRACOVNÍ MATERIÁLY PRACOVNÍ MATERIÁLY CHEMIE CHEMIE Struktura vyu ovací hodiny Plán Struktura vyu ovací vyu ovací hodiny hodiny Plán Metodický vyu ovací list aplikace hodiny Záznamový Metodický list arch
Vydání občanského průkazu
Vydání občanského průkazu 01. Identifikační kód 02. Kód 03. Pojmenování (název) životní situace Vydání občanského průkazu 04. Základní informace k životní situaci Občanský průkaz je povinen mít občan,
ROZKLIKÁVACÍ ROZPOČET - ONLINE ZVEŘEJŇOVÁNÍ EKONOMICKÝCH DAT ÚŘADU
ČÁST 2. ELEKTRONIZACE PROCESŮ A DIGITALIZACE DAT ROZKLIKÁVACÍ ROZPOČET - ONLINE ZVEŘEJŇOVÁNÍ EKONOMICKÝCH DAT ÚŘADU Přehled kam směřují peníze z městského rozpočtu. Přehled jaký je aktuální stav čerpání
2008 Nokia. Všechna práva vyhrazena. Nokia, Nokia Connecting People a Nseries jsou ochranné známky nebo registrované ochranné známky společnosti
Chat 1. vydání 2008 Nokia. Všechna práva vyhrazena. Nokia, Nokia Connecting People a Nseries jsou ochranné známky nebo registrované ochranné známky společnosti Nokia Corporation. Nokia tune je zvuková
R O Z H O D N U T Í. Ústředna: 558 666 232 Tajemník: 558 666 510 Bankovní spojení: Stavební úřad: 558 666 443 ČSOB, a. s.
Městský úřad Brušperk K Náměstí 22, 739 44 Brušperk stavební úřad č.j. SÚ/328/1638/2010/Ku č.j. SÚ/330/1639/2010/Ku vyřizuje: Mária Kudelová e-mail:kudelova@brusperk-mesto.cz datum: 6.10.2010 R O Z H O
D R A Ž E B N Í V Y H L Á Š K U
JUDr. Jiří Bulvas, soudní exekutor Exekutorský úřad Praha 1 sídlo: Jablonecká 322, 190 00 Praha 9 e-mail: podatelna@exekutorpraha1.cz tel.: 286 028 058 web: www.exekutorpraha1.cz č. ú. pro platby povinných
které je třeba si položit před zakoupením levného CAD programu
Otázek které je třeba si položit před zakoupením levného CAD programu 5 otázek, které je třeba si položit před zakoupením levného CAD programu 1 Má daný CAD program konzistentní příkazový slovník 2 Podporuje
Inovace výuky prostřednictvím šablon pro SŠ
Název projektu Číslo projektu Název školy Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Vzdělávací obor Tematický okruh Inovace výuky prostřednictvím šablon pro SŠ CZ.1.07/1.5.00/34.0748
Vektor náhodných veli in - práce s více prom nnými
Vektor náhodných veli in - práce s více prom nnými 12. kv tna 2015 N kdy k popisu n jaké situace pot ebujeme více neº jednu náhodnou veli inu. Nap. v k, hmotnost, vý²ku. Mezi t mito veli inami mohou být
VÝZVA K PODÁNÍ NABÍDKY A ZADÁVACÍ DOKUMENTACE
VÝZVA K PODÁNÍ NABÍDKY A ZADÁVACÍ DOKUMENTACE Ve smyslu 38 zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění pozdějších předpisů (dále jen zákon ) veřejné zakázky Smluvní výzkum a konzultace projektu
Kritéria zelených veřejných zakázek v EU pro zdravotnětechnické armatury
Kritéria zelených veřejných zakázek v EU pro zdravotnětechnické armatury Zelené veřejné zakázky jsou dobrovolným nástrojem. V tomto dokumentu jsou uvedena kritéria EU, která byla vypracována pro skupinu
S M L O U V A O D Í L O. uzavřená podle ust. 2586 a násl. zákona č. 89/2012 Sb., občanského zákoníku v platném znění II.
S M L O U V A O D Í L O uzavřená podle ust. 2586 a násl. zákona č. 89/2012 Sb., občanského zákoníku v platném znění Čl. I. Smluvní strany Objednatel: Město Bílina Břežánská 50/4, 418 31 Bílina Zastoupení:
29 Evidence smluv. Popis modulu. Záložka Evidence smluv
29 Evidence smluv Uživatelský modul Evidence smluv slouží ke správě a evidenci smluv organizace s možností připojení vlastní smlouvy v elektronické podobě včetně přidělování závazků ze smluv jednotlivým
ICT plán školy 2015/2016
Základní škola s rozšířeným vyučováním informatiky a výpočetní techniky ICT plán školy 2015/2016 1. Základní údaje o škole Název školy: Základní škola s rozšířeným vyučováním informatiky a výpočetní techniky
Zámkový systém pro trez ory
Zámkový systém pro trez ory NÁVOD K PROGRAMOVÁNÍ A OBSLUZE Informace o TechMaster 4 1. Master Menu 7 1.1. Nastavení asu a data 7 1.2. asový zámek 7 1.2.1. asový zámek dodatek 7 1.2.2. asový zámek ov ení
A. PODÍL JEDNOTLIVÝCH DRUHŮ DOPRAVY NA DĚLBĚ PŘEPRAVNÍ PRÁCE A VLIV DÉLKY VYKONANÉ CESTY NA POUŽITÍ DOPRAVNÍHO PROSTŘEDKU
A. PODÍL JEDNOTLIVÝCH DRUHŮ DOPRAVY NA DĚLBĚ PŘEPRAVNÍ PRÁCE A VLIV DÉLKY VYKONANÉ CESTY NA POUŽITÍ DOPRAVNÍHO PROSTŘEDKU Ing. Jiří Čarský, Ph.D. (Duben 2007) Komplexní přehled o podílu jednotlivých druhů
Aktualizace softwaru Uživatelská příručka
Aktualizace softwaru Uživatelská příručka Copyright 2007 Hewlett-Packard Development Company, L.P. Windows je ochranná známka Microsoft Corporation registrovaná v USA. Informace uvedené v této příručce
U s n e s e n í. t a k t o :
U s n e s e n í Číslo jednací: 156 EX 1323/15-32 Uvádějte při veškeré korespondenci Značka oprávněného: 210417/1, Mgr. Jan Moravec Soudní exekutor JUDr. Milan Makarius Exekutorského úřadu Praha-západ,
117D813 Podpora rozvoje strukturálně postižených regionů
117D813 Podpora rozvoje strukturálně postižených regionů Zásady podprogramu pro poskytování dotací v roce 2014 (dále jen Zásady ) Správce programu: Určená banka: Ministerstvo pro místní rozvoj (dále jen
Číslo jednací: 156 EX 4791/13-49 Uvádějte při veškeré korespondenci Značka oprávněného: Ederová - 235684/1. U s n e s e n í
U s n e s e n í Číslo jednací: 156 EX 4791/13-49 Uvádějte při veškeré korespondenci Značka oprávněného: Ederová - 235684/1 Soudní exekutor JUDr. Milan Makarius Exekutorského úřadu Praha-západ, se sídlem
ŽÁDOST O VYDÁNÍ ROZHODNUTÍ O UMÍST NÍ STAVBY ÁST A
P íloha. 1 k vyhlášce. 503/2006 Sb. Adresa p íslušného ú adu Ú ad:... Ulice:... PS, obec:... V c: ŽÁDOST O VYDÁNÍ ROZHODNUTÍ O UMÍST NÍ STAVBY v územním ízení ve zjednodušeném územním ízení podle ustanovení
S_5_Spisový a skartační řád
Základní škola a mateřská škola Staré Město, okres Frýdek-Místek, příspěvková organizace S_5_Spisový a skartační řád Č.j.:ZS6/2006-3 Účinnost od: 1. 5. 2011 Spisový znak: C19 Skartační znak: S10 Změny: