České vysoké učení technické v Praze

Rozměr: px
Začít zobrazení ze stránky:

Download "České vysoké učení technické v Praze"

Transkript

1 České vysoké učení technické v Praze Fakulta elektrotechnická Katedra počítačů Bakalářská práce Bitcoin směnárna Vypracoval: Tomáš Jiříček květen 2012 Vedoucí práce: Ing. Martin Chlumecký

2

3

4

5 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). V Praze dne

6

7 Abstract The aim of the project was to design and implement web application Bitcoin currency exchange. In addition to creating the application has been to study and learn about issues around Bitcoin, existing software and libraries. Bitcoin is a digital currency for which you can buy products and services on the Internet, or bartering for other currency. The application have to allow for bartering Bitcoins and CZK. Main requirements are intuitive control, reliability and security that had to be thoroughly tested. Abstrakt Cílem celého projektu bylo navrhnout a implementovat webovou aplikaci Bitcoin směnárnu. Kromě vytvoření aplikace bylo cílem seznámit se a nastudovat problematiku okolo Bitcoin, existujících softwarů a knihoven. Bitcoin je digitální měna, za kterou je možné kupovat produkty a služby na internetu nebo také směňovat za jinou měnu. Aplikace musí umožňovat směňovat Bitcoiny za CZK. Důležité bylo intuitivní ovládání, spolehlivost a zabezpečení, které bylo nutné důkladně otestovat.

8

9 Obsah Seznam ilustrací Úvod Popis řešeného problému Co je BTC Jak začít Výhody BTC Princip BTC Platby CZK Rešeršní zpracování existujících implementací Bitcoin klienti Bitcoin těžaři Obchodování s Bitcoin Ostatní Bitcoin software Analýza Požadavky na systém Případy užití Analytický model Diagram stavů Návrh Model architektury Model nasazení Zabezpečení Datový model Licence Nestandardní části implementace Komunikace s Bitcoin peněženkou Bezpečnost transakcí Vlastní číselný typ Testování Uživatelské testy Automatické testy Odpojení peněženky a databáze Výsledky Závěr a zhodnocení Použitá literatura Přílohy...45 A) Instalační příručka...45 B) Ukázky GUI...46 C) Obsah přiloženého CD...48

10

11 Seznam ilustrací Ilustrace 1: Struktura BTC sítě...5 Ilustrace 2: Digitální podpis obecně...8 Ilustrace 3: Transakce...9 Ilustrace 4: Transakce poslání různě velké částky...10 Ilustrace 5: Blok...11 Ilustrace 6: Platební metody...14 Ilustrace 7: Odchozí platby v CZK...15 Ilustrace 8: Přidání CZK pomocí GoPay...24 Ilustrace 9: Výběr CZK...25 Ilustrace 10: Zobchodování nabídky v transakci...27 Ilustrace 11: Analytický model tříd...28 Ilustrace 12: Diagram stavů uživatele...30 Ilustrace 13: Diagram stavů směnárny...31 Ilustrace 14: Diagram stavů BTC peněženky...31 Ilustrace 15: Balíčky systému...33 Ilustrace 16: Model nasazení...34 Ilustrace 17: Datový model...36 Ilustrace 18: Uživatelovo boční menu...46 Ilustrace 19: Hlášky...46 Ilustrace 20: Nabídnuté operace po vytvoření poptávky...47 Ilustrace 21: Fronta poptávek...47

12 - 2 -

13 1 Úvod Bitcoin je poměrně nová měna. Vznikla teprve v roce 2009 a její tvůrce je Satoshi Nakamoto. Název Bitcoin se rovněž používá pro software a peer-to-peer síť. V současnosti je Bitcoin na vzestupu a rozšiřuje se po celém světě. Není proto divu, že o něj mají zájem čím dál častěji i lidé z České republiky. Kromě získání informací o Bitcoin měně má tato práce za cíl analyzovat, navrhnout, implementovat a otestovat webovou aplikaci umožňující výměnu CZK a BTC. Aplikace musí umožňovat, kromě výměny peněz, také příjem a vyplácení CZK a BTC tak, aby to bylo pro uživatele co nejpohodlnější. Uživatelé si v nově vzniklém systému budou moci vytvářet nabídky a poptávky po BTC, které po jejich vytvoření budou moci ukládat nebo s nimi obchodovat. Bitcoin se odlišuje od ostatních měn velmi mnoho. Nejdůležitější informace pro seznámení se s Bitcoiny obsahuje druhá kapitola. Kapitola obsahuje průřez touto problematikou od obecných informací přes návod jak začít, výhody této měny až po útoky na Bitcoin. Třetí kapitola obsahuje rozbor existujícího software a knihoven pro práci s Bitcoin. V kapitole jsou stručně popsány i existující řešení Bitcoin směnáren. Následující kapitoly jsou se věnují samotné aplikaci. Konkrétně analýza je obsažena v kapitole čtvrté a návrh aplikace v kapitole páté. Testování aplikace je věnována šestá kapitola. Na tuto kapitolu bude třeba rezervovat více času, protože nesprávné chování aplikace by mohlo způsobit uživatelům ztrátu peněz na jejich účtech

14 2 Popis řešeného problému 2.1 Co je BTC Bitcoin je decentralizovaná digitální kryptoměna. Proč tomu je zrovna tak, bude postupně vysvětleno. Decentralizovaná, protože nemá žádnou centrální autoritu. U běžných platidel, může být centrální autoritou banka, která vyrábí a spravuje tuto měnu. Digitální, protože na BTC nejde nijak fyzicky sáhnout jako na jiné měny v podobě mincí či bankovek. S BTC může být obchodováno pouze v digitálním světě. Kryptoměna, protože veškeré finanční operace jsou zabezpečeny kryptografií SHA256 a ECDSA. Obchodování s BTC probíhá přes internet pomocí Bitcoin protokolu v P2P síti. Je to open-source projekt a každý, kdo má zájem, do něj může nahlédnout. Díky tomu také existuje kromě oficiálního klienta několik dalších implementací. Uskutečněné transakce musí být někým potvrzeny. Ten, kdo transakci vytvořil platí drobný poplatek tomu, kdo ji potvrdil. Běžně je poplatek za transakci 0,0005 BTC, ale bývá i větší. Jak je poplatek velký, záleží z části na velikosti transakce a na tvůrci transakce. Důležitými vlastnostmi BTC účtu je, že nemůže být zmrazen a ani zde neplatí žádné limity Stručný přehled jak to funguje V P2P síti probíhá komunikace mezi uzly klient-klient. V BTC síti, která je založena na P2P se rozdělují uzly na dvě skupiny. Tu první tvoří BTC klienti, kteří provádějí peněžní operace a tou druhou jsou těžaři (mineři) BTC, kteří potvrzují peněžní operace BTC klientů

15 Ilustrace 1: Struktura BTC sítě Počet mincí je předprogramovaný zhruba na BTC (mělo by se ho dosáhnout asi v roce 2040). To znamená, že měna je deflační a hodnota 1 BTC poroste. S přibývajícím časem budou těžaři dostávat čím dál méně BTC. Mince jsou uloženy v BTC peněžence (klient). Transakce jsou anonymní, protože peněženka je reprezentována pouze textovým nic neříkajícím řetězcem. Do transakce se dostanou pouze informace o zdrojové adrese, cílové adrese a částce. Žádné další informace, které by mohli identifikovat osoby. BTC těžaři transakci potvrdí. Potvrzení trvá i několik hodin, protože nestačí, aby ji potvrdil pouze 1 těžař Příklady použití V dnešní době je obchod s BTC na vzestupu a jeho použití roste. BTC může být použit jako platidlo za nejrůznější věci. Může s ním být placeno v eshopech, nakoupeno zlato, pronajmuty servery, webové hostingy, obchodováno s lidmi, kteří akceptují BTC, obchodováno ve směnárnách. Rozsáhlý seznam akceptujících BTC viz V ČR se tento způsob platidla zatím moc neuchytil, spíše se zde těží a směňuje. Lidé zřejmě upřednostňují platby v CZK proto, že jim to vyhovuje a nechtějí experimentovat. 2.2 Jak začít Kapitola obsahuje návod pro běžné uživatele jak začít s Bitcoiny, tzn. jak je získat a co je potřeba za software

16 2.2.1 Získání peněženky Nejprve je potřeba získat BTC peněženku, ve které se budou uchovávat informace o částce BTC. Existují dvě varianty jak peněženku získat a každá má své výhody a nevýhody. První varianta je preferovanější a jedná se o BTC peněženku, která je uchovávána v počítači. Jako druhá varianta je tzv. online peněženka. Peněženka má svůj privátní a veřejný klíč. Veřejných klíčů může být v peněžence nekonečně mnoho. Jejich smysl je popsán níže Oficiální BTC klient Oficiální klient spravuje peněženku. Bez klienta peněženku nelze ovládat. Klienta lze stáhnout na oficiálních stránkách kde se nachází ve verzi pro Linux, Windows a Mac nebo lze stáhnout zdrojové kódy a klienta zkompilovat. Klient obsahuje terminálové i grafické rozhraní a je velmi jednoduchý pro ovládání. Po spuštění se začne stahovat transakční historie všech uskutečněných plateb, což trvá několik hodin a v dnešní době zabere asi 1,3 GB na disku. Hlavní výhoda i nevýhoda je, že peněženka je umístěna na disku. Opravdu nikdo ji nemůže zmrazit, ale při špatném zabezpečení ji může někdo ukrást. Platby lze implicitně provádět pouze z počítače, kde je klient nainstalovaný Online peněženka Online peněženka je webová aplikace, která po registraci uživatele vytvoří peněženku, kterou lze spravovat jako peněženku uloženou v počítači. Hlavní výhoda je, že přístup k ní je odkudkoliv a platit s ní jde ihned po autentizaci do systému. Nese to všechna rizika, která přináší internet. Také se teoreticky může stát, že provozovatel zablokuje přístup k peněžence Získání mincí Pro začátek je doporučováno navštívit stránky, které posílají malou část BTC jako je třeba Malé částky mohou být obdrženy také za shlédnutí reklamy, otestování aplikace, rozesílání odkazů na stránky atd. Jiný způsob je akceptování BTC za služby nebo produkty, které uživatel nabídne. BTC lze nakoupit ve směnárnách. Nejzajímavější způsob získání BTC je těžba BTC. Uživatel síti poskytuje výpočetní výkon na potvrzování transakcí a za to je odměňován. Na těžbu je potřeba aplikace, obecně nazývaná Bitcoin miner a ta se dovede připojit do sítě a poté začne potvrzovat transakce. Na potvrzování transakcí může být použit CPU, ale několikanásobně výkonnější je GPU grafických karet. Nejlépe z grafických karet si vedou karty od společnosti ATI. Při použití CPU na těžbu BTC, počítač spotřebuje víc peněz na provoz než vydělá

17 2.3 Výhody BTC Jelikož po vytěžení všech BTC jich bude v oběhu necelých , tak nehrozí inflace. Maximální počet mincí je dán matematickými zákony. Měnu nespravuje centrální autorita, tudíž peníze nemůže někdo znehodnotit nebo odebrat. Provedená a několikrát potvrzená transakce už nikdy nemůže být zrušena. Jelikož pro transakce nejsou potřeba žádné osobní údaje, ale pouze BTC adresa odesílatele a adresa příjemce, jsou transakce téměř anonymní. V peněžence lze vygenerovat opravdu mnoho adres, pro každou transakci lze použít novou adresu. 2.4 Princip BTC Následující kapitola se věnuje Bitcoinu více do hloubky. Bude detailněji popsán princip transakcí, bloků a těžby BTC. Je důležité vědět, že když uživatel má v peněžence 1 BTC, neznamená to, že má na disku uložen soubor s 1 BTC, ale existuje centrální databáze transakcí tzv. blochchain, která uchovává informace o částkách na BTC adresách. Po projetí celé této databáze se klient dozví kolik má BTC Transakce Digitální podpis obecně Pro pochopení transakcí je nezbytné vědět jak funguje digitální podepisování pomocí asymetrického šifrování. U asymetrického šifrování se použije privátní a veřejný klíč odesílatele. Co je zašifrováno privátním, může být dešifrováno pouze veřejným a naopak, co je šifrováno veřejným, může být dešifrováno pouze privátním klíčem

18 Ilustrace 2: Digitální podpis obecně Odesílatel posílá digitálně podepsaný dokument příjemci (viz ilustrace). Aby příjemce měl jistotu, že dokument poslal opravdu odesílatel a dokument nebyl během přenosu nijak změněn, musí se dokument digitálně podepsat na straně odesílatele a pak se podpis musí ověřit na straně příjemce. Odesílatel vezme dokument a zahashuje ho, čímž dostane otisk (zmenšenou formu dokumentu nebo také hash dokumentu). Otisk se provádí pro zmenšení objemu dat, mohl by se totiž místo otisku použít celý dokument. Otisk zašifruje svým privátním klíčem a vznikne šifrovaný otisk. Ten pošle i s dokumentem příjemci. Příjemce pro ověření pravosti dokumentu dokument zahashuje stejnou funkcí a vznikne mu otisk dokumentu. Pak vezme šifrovaný otisk a dešifruje ho veřejným klíčem. Pokud se otisky shodují, má jistotu, že dokument došel v pořádku od jeho odesílatele

19 Ilustrace 3: Transakce Princip transakce Pro lepší pochopení principu převádění a podepisování transakce je použita ilustrace. S transakcí vlevo může zacházet člověk číslo 1 (dále jen člověk 1). Tuto transakci chce poslat člověku číslo 2 (dále jen člověk 2 ). Člověk 1 vezme veřejný klíč člověka 2 spojí ho s transakcí, kterou mu chce poslat a z takto vytvořeného řetězce vytvoří otisk. Otisk podepíše a přidá na konec mince. Takto modifikovanou minci člověk 1 pošle broadcastem do sítě. Všichni klienti si budou moci ověřit podpis člověka 1 a zjistí, že transakce patří člověku 2. Aby bylo možné měnit výši částek v transakcích, je důležité zmínit, že transakce může obsahovat více veřejných klíčů a více podpisů. Z toho plyne, že transakce může obsahovat více příjemců

20 Ilustrace 4: Transakce poslání různě velké částky Na ilustraci je vlevo odesílatelova peněženka se dvěma adresami a vpravo je peněženka s adresou příjemce, na kterou se má poslat 2,3 BTC. Do transakce se přidá 2,1 BTC z adresy a, 0,5 BTC z adresy b a jako cílová adresu je vložena adresa d. V transakci je tedy 2,6 BTC, z toho se 2,1 BTC pošle pryč a zbytek se vrátí. Tato informace je propagována broadcastem do sítě. Nejmenší částka, kterou lze poslat je 0, BTC Double-spending Double-spending je jeden z možných útoků. V překladu znamená dvojité utracení peněz. Kdyby transakce nebyly nijak proti tomuto ošetřeny, odesílatel by po provedení transakce (odeslání peněz) mohl vzít znovu ty stejné peníze a poslat znovu na stejnou adresu nebo někam jinam. U měn s centrální autoritou se tomu předchází tak, že po provedené transakci si peníze autorita převede k někomu jinému a je důvěřováno autoritě. Zde si každý v síti drží celou transakční databázi, která je stažená na disku. Pokud se někdo bude snažit utratit stejné peníze dvakrát, tak všichni budou vědět, že už je jednou utratil a proto tato transakce neproběhne. Když se připojí nový uzel do sítě, tak musí najít důvěryhodný zdroj, od kterého může transakční historii stahovat. Kdyby důvěryhodný zdroj znamenal početní většinu uzlů, tak útočník může nasimulovat tyto uzly a ovládnout síť. Kdyby bylo omezení podle IP adres, tak by síť mohly ovládat velké organizace, protože většina uzlů je za NATem. V BTC síti se tedy rozhoduje výpočetním výkonem, protože se nepředpokládá, že by útočník měl v celkovém součtu všech uzlů silnější hardware než zbytek sítě. Kdo tedy má nejvýkonnější HW ten určuje, kdo komu co zaplatil

21 2.4.2 Blockchain a těžba BTC Jak již bylo řečeno v síti jsou dva druhy uzlů, buď to jsou klienti nebo těžaři (mineři). Klienti provádějí transakce a těžaři je potvrzují. Těžař zachytává transakce a staví z nich blok následujícím způsobem. Vždy, když těžař zachytí transakci, tak ji zahashuje. Když má dva tyto hashe, tak je zahashuje a vznikne mu jeden hash. Když pak má dva tyto hashe, tak je zahashuje a takhle z nich tvoří strom. Stromu se podle jeho objevitele říká Merkle Tree. Stromy používají pro tvorbu hashe dvojitou SHA-256 funkci. SHA-256(SHA- 256(transakce)). Ilustrace 5: Blok Hashi na vrcholu stromu se říká root hash. Blok se skládá z hashe předchozího bloku, root hashe a nonce. Nonce je potřeba, při hledání bloku. Aby těžař ukázal, že má dost výkonu, musí vyřešit nějaký složitý početní úkol. Musí najít takový hash bloku, který bude v binárním zápisu menší než target. Target je řetězec, o délce 256 bitů a síť si jej volí sama a mění jej podle toho jak často se daří najít bloky (když se bloky hledají rychle, tak snižuje target). Jestli je hash bloku menší než target se pozná podle toho, jestli je na začátku dost nul. Těžař tedy zvolí nonce, vytvoří hash předchozího bloku, root hashe a nonce a porovná s targetem. Když najde blok rozešle do sítě, že jej našel, když nenajde, změní nonce a zkouší to dál. Bloky na sebe navazují a tvoří řetěz, kterému se říká blockchain (centrální databáze transakcí). Úplně první blok tzv. Genesis blok je natvrdo v klientovi zapsán s některými dalšími bloky, aby prohledávání netrvalo tak dlouho. Někdy se může stát, že v přibližně stejnou dobu 2 těžaři najdou blok a chvíli se neví, který uznat (uznává se ten, kde bylo vynaloženo více výkonu). Blockchain se rozvětví a až síť zjistí, který uznat, tak transakce z druhého bloku nebudou platné (větev zanikne). Proto se na potvrzení transakcí čeká delší dobu, musejí být totiž dost

22 hluboko v blockchainu Proč těžit Hlavní důvody motivace jsou dobrý pocit, zábava z těžby ale především finanční odměna. Když těžař najde blok, tak dostane všechny poplatky z transakcí v bloku a navíc si do něj může vložit transakci s 50 BTC. Tato transakce nemá odesílatele, je vytvořena nová. Odměna za nalezení se bude pořád snižovat, na jaře 2012 to bude 25 BTC, pak za 4 roky se sníží na 12,5 BTC a tak dále vždy na polovinu současné odměny. Vyšší odměny na začátku mají přitáhnout těžaře, protože jich tu ještě není mnoho. Poplatek za transakci je momentálně 0,0005 BTC a jeho důvod, kromě odměny za těžbu je ještě ochrana před DDoS útokem. Útočníkovi rychle dojdou peníze a přestane útočit. Tento poplatek se může měnit. Čím nižší je částka v transakci, tím vyšší je poplatek Těžba v poolu Těžba v poolu je takzvaná skupinová těžba, kdy spousta těžařů se tváří navenek jako jeden těžař, ale uvnitř si skupina rozděluje práci a snaží se najít blok společně. Zisk si pak rozdělí podle toho, kolik každý spočítal. Tohle je velmi oblíbený způsob těžby, protože šance, že jednotlivec najde blok je velmi malá. Blok se nachází asi jednou za 10 minut Útoky Krádež peněženky Toto je nejčastější útok, protože je nejjednodušší. Cesta k souboru s privátním a veřejnými klíči je ~/.bitcoin/wallet.dat, jakmile je tento soubor ukraden, přichází původní majitel o své BTC, protože peníze v blockchainu vlastní ten, kdo k nim má klíč. Zabezpečit se proti krádeži peněženky je možné tak, že je vytvořen nový uživatelský profil a po vytvoření peněženky se adresář s peněženkou zpřístupní pouze tomuto uživateli. # adduser jmeno_uzivatele # su jmeno_uzivatele //zde je proces vytvoření peněženky a konfiguračního souboru $ chmod 700 -R ~/.bitcoin/ Cancer nodes Doslova je přeloženo jako rakovinové uzly. Útočník může zaplnit síť svými rakovinovými uzly, které jsou kontrolovány ním. Tím může uživatele odpojit od validní sítě, protože uživatel

23 připojený k rakovinovým uzlům těmto uzlům začne důvěřovat Double-spending Tento způsob útoku už byl popsán výše z důvodu pochopení potvrzování transakcí Útočník s výkonovou převahou Pokud by útočník měl více jak 50% výpočetního výkonu v síti, tak by mohl zrušit své dřív uskutečněné transakce, zabránit potvrzení některých transakcí nebo zabránit těžařům nacházet validní bloky. 2.5 Platby CZK Zajištění plateb v CZK je realizováno pomocí obchodního účtu u společnosti GoPay. Jedná se o bezpečný příjem plateb na internetu. Platby jsou z pohledu uživatele velmi jednoduché a platební systém s sebou přináší řadu výhod. S jedinou integrací obchodník získá 12 platebních metod, jeden obchodní účet pro všechny platební metody, jeden smluvní vztah, komplexní správa financí, úspora bankovních nákladů, jedna poplatková politika, žádné paušální nebo startovací poplatky. GoPay poskytuje API pro příjem příchozích plateb v jazycích Java, PHP, ASP.NET a ASP Classic. GoPay poskytuje několik stupňů integrace. Pro směnárnu byla zvolena úplná integrace, která obsahuje komplexní řešení pro e-shopy s plně automatizovaným platebním cyklem. Platby jsou realizovány za pomoci Web-Services Příchozí platby Aby uživatel mohl začít nakupovat BTC ve směnárně, musí nejprve mít ve směnárně nějaké CZK. Pro příjem peněz do směnárny slouží řešení od GoPay

24 Ilustrace 6: Platební metody Jako první krok uživatel na stránkách směnárny zvolí přidání CZK na jeho účet. Uživatel je přesměrován na platební bránu GoPay, zde si vybírá platební metodu. Uhradí částku na obchodní účet směnárny a poté je přesměrován na stránky směnárny. Pomocí Web-Services je platba ověřena a poté připsána na CZK účet zákazníka. Nutno podotknout, že směnárna koresponduje jedním obchodním účtem, tudíž jsou všechny příchozí platby směrovány na tento účet. Zůstatky na jednotlivých uživatelských účtech jsou uloženy v databázi Odchozí platby Jelikož na GoPay obchodní účet lze platby pouze přijímat, GoPay každý měsíc provede vyúčtování na bankovní účet majitele aplikace. Z tohoto účtu budou muset být platby prováděny ručně přes internetové bankovnictví. Uživatel tedy vnese požadavek k vybrání CZK. Administrátor odškrtne peníze z uživatelova účtu ve směnárně a poté provede platbu v internetovém bankovnictví

25 Ilustrace 7: Odchozí platby v CZK Platby uvnitř systému Platby uvnitř systému jsou realizovány transakcemi v aplikaci a zůstatky jsou drženy v databázi

26 3 Rešeršní zpracování existujících implementací 3.1 Bitcoin klienti Bitcoin klient je software, který se dokáže připojit do internetu pomocí Bitcoin protokolu. Klient dokáže stáhnout blockchain na disk, spravovat peněženky, posílat a přijímat BTC. Tito klienti mají být alternativou k oficiálnímu Bitcoin klientu Bitcoin-js-remote Bitcoin-js-remote je GUI pro oficiálního klienta ovládaného z konzole (bitcoind). Aplikace je vytvořena v JavaScriptu. Umožňuje se připojit na oficiálního klienta, který funguje jako server pro Bitcoin-js-remote klienta. Komunikace mezi serverem a klientem je možné nastavit dvěma způsoby. Pomocí Remote Procedure Call (RPC) na localhostu nebo přes internet pomocí SSL šifrovaného kanálu. Bitcoin-js-remote také umí pracovat s QR kódy. Vytvoří QR kód na základě vložené adresy a částky, která se má poslat na tuto adresu. Po přečtení QR kódu mobilní aplikací může být částka uhrazena na požadovanou adresu Subvertx Subvertx je sada konzolových nástrojů, které pracují s Bitcoin sítí/protokolem. Nástroji jsou poller, balance, priv, mktx a txrad. Poller stahuje blockchain z bitcoind do PostgreSQL databáze. Balance se dotazuje databáze na zůstatek BTC adresy. Priv tvoří nové privátní klíče, podepisuje data, ověřuje data nebo může zobrazit BTC adresu ke klíči. Mktx se dokáže připojit na bitcoind a poslat mince na novou adresu. Txrad umožňuje připojení na náhodné uzly a monitorování transakčních zpráv BitCoinJ BitCoinJ je open-source klientská knihovna tvořená v jazyce Java pracující s Bitcoin sítí/protokolem. Projekt je tvořen členy společnosti Google, zatím je v raném stádiu. Knihovna poskytuje tvorbu peněženky, přijímání a odesílání transakcí bez nutnosti kopie oficiálního klienta. Knihovna je plně dokumentovaná a obsahuje ukázky kódu jak knihovnu použít. BitCoinJ nepotřebuje uchovávat celou kopii blockchainu, uchovává jen co potřebuje k ověření transakcí u nedůvěryhodných uzlů

27 3.1.4 Electrum Electrum je odlehčený Bitcoin klient, který vyšel v listopadu Založený na client-server protokolu, takže si klient nemusí stahovat blockchain. Na informace z blockchainu se dotazuje serveru. Soubor s BTC je chráněn heslem, takže při dostatečně silném hesle zde odpadá riziko odcizení mincí. Vytváření privátních klíčů je deterministické. Při vytvoření peněženky klient vytvoří tzv. generation seed což je 128-bitový řetězec a tzv. mnemonic code což je 12 slov oddělených mezerami. Po ztrátě peněženky stačí zadat generation seed nebo mnemonic code a peněženka bude obnovena. Server nezná privátní klíče peněženek a transakce jsou podepisovány lokálně. Server nezná uživatelské účty. Projekt je open-source, každý ho může prohlédnout. Klient nepotřebuje otevírat port ve firewallu BCCAPI BCCAPI (BitCoin Client API) je knihovna tvořená v jazyku Java designovaná pro tvorbu odlehčených Bitcoin klientů. BCCAPI se připojuje k serveru, který drží blockchain. Server zná pouze veřejné klíče a nemá možnost posílat peníze z klientských peněženek. Tvorba privátních klíčů je deterministická, lze ze seedu obnovit privátní klíč. Dokáže posílat a přijímat BTC. Dovoluje utratit nepotvrzené peníze, které uživatel poslal sám sobě. Projekt je open-source a zcela zdarma. Klient přenáší data pouze, když probíhá autentizace, zjišťuje zůstatek na účtu, přidává veřejné klíče do peněženky, posílá mince. Veškerá komunikace mezi klientem a serverem je přes HTTPS. 3.2 Bitcoin těžaři Bitcoin těžař (miner) je software, který po připojení do sítě začne potvrzovat transakce a tím těžit BTC. Těžba může probíhat v poolu nebo sólo a pro výpočty mohou být použity CPU nebo GPU Phoenix miner Phoenix miner je software na těžbu BTC, který umí pracovat s podčasovanou pamětí na 300MHz. Při těžbě hledá nonce v celém 32bit-ovém prostoru. Projekt je open-source a zdarma dostupný pod licencí X11. Software byl vydán Bitcoin komunitou v roce Miner se připojuje pomocí MultiMiner Protokolu (MMP), který se používá pro připojení k MultiMiner Serveru

28 3.2.2 Poclbm Poclbm (PyOpenCL bitcoin miner) je miner napsaný v jazyce Python, určený pro těžbu na GPU, který používá OpenCL pro rychlé vykonávání hashovaných výpočtů. Pracuje s kartami AMD 4xxx a vyšší, Nvidia -8xxx a vyšší. Existuje pro něj GUI nadstavba, která se jmenuje poclbm-gui nebo také GUIMiner. Existuje ještě modifikovaná verze poclbm, která se jmenuje poclbm-mod. Pokud je modifikace použita na těžbu v poolu může efektivita vyrůst až na 100% oproti původnímu mineru, který má průměrnou efektivitu kolem 20%. Poclbm je dostupný pro Windows a Linux, Poclbm-gui pro Windows a Mac, poclbm-mod pro Windows a Linux Cpu Miner Cpu Miner je jednoduchý software, který provádí těžbu v poolu nebo sólo těžbu. V poolu aplikace přijme blok od serveru a pokouší se najít nonce. Po nalezení nonce pošle tuto hodnotu serveru. Komunikace se serverem probíhá přes HTTP POST standardně na port Aplikace je navrhnuta jako vícevláknová, což je využíváno u CPU s více jádry. 3.3 Obchodování s Bitcoin Webové aplikace poskytující výměnu BTC na jinou měnu a obráceně Real-time obchodování Systémy umožňující uživatelům vzájemnou výměnu mezi sebou. Cena za nákup a prodej BTC je dána poptávkou a nabídkou MtGox.com MtGox je světově nejvíce uznávaná Bitcoin směnárna. Poskytuje rychlé a bezpečné obchodování s BTC s ostatními uživateli po celém světě. Je to jeden z nejstarších systémů operujících s BTC. Monitoruje statistiky kurzů BTC. Veškerá komunikace je zabezpečená SSL technologií. Umožňuje přístup k historii účtu. Umožňuje tvorbu a skenování QR kódů. MtGox API poskytuje API pro přístup k informacím ze směnárny, tvorbu nabídek, poptávek. K dispozici je HTTP API a websocket API. HTTP API je přístupné na Všechny API metody mají cache-ované hodnoty, které se obnovují každých 10 vteřin. Není tedy nutné se dotazovat tak často. Kdo se bude často dotazovat, může být blokován kvůli ochraně proti DDoS útokům

29 3.3.3 Obchodování s fixní sazbou Systémy umožňují výměnu mezi uživatelem a směnárnou. Cena za nákup a prodej je fixní a stanovuje ji systém Spendbitcoins.com Obchody jsou vyřizovány 2 krát denně, 7 dní v týdnu. Podpora pro USD, JPY, CAD, GBP, AUD, EUR. 3.4 Ostatní Bitcoin software LinuxCoin LinuxCoin je operační systém. OS je odlehčený Debian-based jehož obraz obsahuje všechno potřebné pro Bitcoin klienta a všechno co je potřeba pro těžbu BTC na ATI grafických kartách. LinuxCoin je vhodné mít na flash paměti pro snadné přenášení peněženky. Vývojáři se snaží, aby používání a těžba BTC byla co nejpohodlnější. Systém používá 64bit-ové jádro, doporučená velikost RAM je 1 GB. Na stránkách o systému je tabulka s podporovanými grafickými kartami, návod s instalací, konfigurací atd

30 4 Analýza Kapitola popisuje analýzu systému, která je nezbytná pro vytyčení toho, co bude systém umět. V průběhu projektu byly některé případy užití odstraněny a jiné bylo nutné přidat. Analýza obsahuje také identifikaci zúčastněných stran, které budou moci užívat systém. 4.1 Požadavky na systém Funkční požadavky Funkční požadavky popisují jak bude systém možné užívat a co bude systém všechno umět Konzistence Při poškození Bitcoin peněženky ji systém musí dokázat obnovit do posledního stavu, kdy byla funkční Logování Systém bude zaznamenávat aktivitu uživatelů hlavně při peněžních transakcích. Dále bude zaznamenávat chyby a neobvyklé situace Nastavení Systém bude umožňovat privilegovanému uživateli nastavit různé denní limity, zastavit směnárnu atp Správa plateb v BTC Systém bude umožňovat příjem plateb v BTC a bude umožňovat vyplácení plateb v BTC Správa plateb v CZK Systém bude umožňovat příjímání plateb v CZK a vyplácení plateb v CZK Výměna CZK a BTC Systém bude umožňovat výměnu BTC a CZK mezi uživateli za drobné poplatky Nefunkční požadavky Nefunkční požadavky obsahují omezující podmínky, které jsou na nový systém kladeny Aplikační server Webová aplikace bude spravovaná kontejnerem pro webové aplikace. Bude použit aplikační

31 server GlassFish open source edition, protože poskytuje potřebnou funkcionalitu a je zdarma Bitcoin peněženka Systém bude používat Bitcoin peněženku pro komunikaci s Bitcoin sítí, přesuny BTC jak mezi směnárnou a okolním světem tak i uvnitř směnárny. Bitcoin peněženka umožňuje spuštění jako GUI, CLI (konzolová aplikace) nebo daemon (služba běžící na pozadí). Pro systém bude peněženka spuštěna jako daemon Databázový server Systém bude pro ukládání dat používat databázový server. Databáze byla zvolena MySQL, protože je zdarma a plně pokrývá požadavky na databázový server Java JSP Systém bude implementován v programovacím jazyce Java využívající framework JSP, který je určen pro tvorbu webových stránek Webové uživatelské rozhraní Systém bude přístupný přes webový prohlížeč. Uživatelské rozhraní musí být funkční i s vypnutým javascriptem. Bude použito HTML verze Šifrované spojení Komunikace mezi serverem a klientem bude šifrovaná pomocí asymetrického šifrování. 4.2 Případy užití Případy užití podrobněji rozebírají funkční požadavky až na dílčí funkce systému. Kapitola dále obsahuje uživatelské role v systému Aktéři Aktéři reprezentují uživatelské role použité v systému. Nepřihlášený uživatel má nejméně privilegií. Může si stránky pouze prohlížet nebo se stát přihlášeným uživatelem. Přihlášený uživatel může na BTC a CZK účet ve směnárně přidat peníze a poté může začít obchodovat. Dále může peníze vybírat z účtů. Administrátor je nejvíce privilegovaný uživatel. Může nastavovat denní limity, spouštět a zastavovat směnárnu, obnovovat ji do konzistentního stavu

32 4.2.2 Správa uživatelů Obsahuje funkcionality, které se týkají operací s uživateli Aktivovat Aktivovat se uživatel může zadáním přezdívky, potvrzovacího kódu, captcha kódu. Systém ověří validitu hodnot. Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou validní dojde k vytvoření peněžních účtů. Je nutné pozastavit směnárnu kvůli zálohování souboru z BTC peněženky (wallet.dat). Dojde k aktivaci uživatele, který od teď může naplno využívat funkcí směnárny Odhlásit Odhlášení je provedeno zneplatním uživatelova sezení Přihlásit Přihlásit se uživatel může zadáním přezdívky a hesla. Systém provede autentizaci a autorizaci pomocí JAAS. Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou validní dojde k uložení uživatele do sezení Registrovat Registrovat se uživatel může zadáním přezdívky, 2x hesla, u a captcha kódu. Systém ověří validitu hodnot. Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou validní dojde k vytvoření uživatele ve stavu registrovaný. Systém pošle potvrzovací kód na e- mail Smazat uživatele Smazat uživatele může administrátor vybráním uživatele ze seznamu uživatelských účtů. Systém tyto uživatele odstraní. U jmen účtů v BTC peněžence nastaví jméno účtu na deleted a kladný zůstatek je převeden na účet administrátora Nastavení Obsahuje různá nastavení aplikace jako jsou denní limity nebo výše poplatků Nastavit denní limity Nastavit denní limity může administrátor zadáním maximálního denního uložení CZK, maximálního denního výběru CZK, maximálního denního nákupu BTC, maximálního denního prodeje BTC, maximálního denního výběru BTC. Systém ověří validitu hodnot

33 Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou validní dojde k uložení nových hodnot Nastavit stav směnárny Nastavení stavu směnárny je provedeno na základě administrátorova požadavku. Směnárna se může nacházat ve stavu spuštěna a ve stavu pozastavena viz Směnárna Nastavit výši poplatků Nastavit výši poplatků může administrátor zadáním poplatku za nákup a poplatku za prodej v procentech. Systém ověří validitu hodnot. Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou validní dojde k uložení nových hodnot Nastavit z kolika BTC počítat kurz Nastavit tyto hodnoty může administrátor zadáním počtu BTC, ze kterých se počítá kurz nákupu a prodeje. Systém ověří validitu hodnot. Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou validní dojde k uložení nových hodnot Konzistence Obsahuje funkcionalitu pro obnovení peněženky do posledního konzistentního stavu. Peněženka se může do nekonzistentního stavu dostat smazáním souboru wallet.dat, ve kterém jsou uchovávány všechny adresy BTC účtů a jejich zůstatky Získat peněženku Získat peněženku lze tak, že systém zkontroluje zda je směnárna ve stavu pozastavena. Pokud ne, další akce není povolena. Pokud ano, tak poskytne soubor wallet.dat ke stažení Nahrát transakce do peněženky Nahrát transakce do peněženky je možné tak, že systém se pokusí nahrát 10 logů z databáze. Následuje přesunutí peněz podle informací z logu a poté smazání logu. Až je provedeno všech 10 logů, načtou se nové a provádí se s nimi to stejné. Až logy v databázi dojdou znamená to, že byly všechny logy přehrány do peněženky Správa plateb v BTC Obsahuje funkcionality pro příchozí a odchozí BTC platby Přidat BTC Přidat BTC lze tak, že systém zobrazí BTC adresu, kam si uživatel může poslat BTC. Poslání

34 BTC musí provést mimo směnárnu z nějaké jiné BTC peněženky Vybrat BTC Vybrat BTC lze tak, že uživatel zadá částku k vybrání a cílovou BTC adresu. Systém ověří validitu hodnot. Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou hodnoty validní, zamkne BTC účet, zkontroluje dostatek peněz na účtu, zkontroluje denní limit pro výběr BTC a pošle BTC. Následuje aktualizace účtu v databázi, vytvoření logu a odemknutí BTC účtu Správa plateb v CZK Obsahuje funkcionality pro příchozí a odchozí CZK platby Přidat CZK Přidat CZK lze tak, že uživatel si přidá peníze na CZK účet. Napřed uživatel vytváří platbu, poté je přesměrován na platební bránu, kde platba proběhne / neproběhne. Z brány je přesměrován zpět do směnárny na fail URL nebo success URL podle toho, jaký status má platba. Ilustrace 8: Přidání CZK pomocí GoPay Vytvoření platby Uživatel zadá částku. Pokud je částka validní, přechází se ke kontrole limitu pro denní

35 maximální příjem CZK. Pokud částka není validní nebo je překročen limit, další akce není povolena. Uživatel zvolí platební metodu. Systém se dotáže pomocí webových služeb platební brány na formulář pro uživatele. Systém uloží platbu do databáze Zpracování platby Systém najde platbu v databázi. Pokud je platba ve stavu zaplacená, tak zobrazí hlášku o zaplacení. Když platba zaplacená není, systém zamkne CZK účet příjemce a platbu, přičte peníze na účet a smaže platbu. Účet se odemkne Zpracování neproběhnuté platby Systém najde platbu v databázi a platbu smaže Vybrat CZK Vybrat CZK lze tak, že nejdříve uživatel vznese požadavek o vybrání CZK a administrátor poté uživatele vyplatí. Nelze automaticky, protože služby GoPay neposkytují tuto možnost. Ilustrace 9: Výběr CZK Uživatel vybírá CZK Uživatel zadá částku, číslo bankovního účtu, kód banky a variabilní symbol. Systém ověří validitu hodnot. Pokud hodnoty nejsou validní nebo je překročen denní limit pro výběr, další akce není povolena. Pokud jsou validní dojde k zamknutí CZK účtu, odebrání peněz z účtu, vytvoření a uložení odchozí platby. Tato informace se zaloguje a odemkne se CZK účet Administrátor vyplácí uživatele Administrátor uhradí platbu například prostřednictvím internetového bankovnictví. Poté smaže platbu, kterou uhradil a tato informace je systémem zalogována Výměna CZK a BTC Obsahuje funkcionality pro obchodování mezi uživateli

36 Vytvořit nabídku Vytvořit nabídku lze tak, že uživatel zadá množství BTC a cenu v CZK. Systém ověří validitu hodnot. Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou validní dojde ke zmenšení nabídky podle BTC účtu. Systém vyhledá a přiřadí k nabídce všechny potencionální poptávky, se kterými se může obchodovat. Nabídka je uložena v sezení. Systém spočítá nejvýhodnější cenu pro prodej nabízených BTC a uživateli jsou zobrazeny dvě nabídky, které si porovná. První obsahuje data, která zadal uživatel a druhá obsahuje data, která je možné okamžitě zobchodovat. Po vytvoření nabídky uživatel může uložit nabídku do fronty nebo zobchodovat nabídku Vytvořit poptávku Vytvořit poptávku lze tak, že uživatel zadá množství BTC a cenu v CZK. Systém ověří validitu hodnot. Pokud hodnoty nejsou validní, další akce není povolena. Pokud jsou validní dojde ke zmenšení poptávky podle BTC účtu. Systém vyhledá a přiřadí k poptávce všechny potencionální nabídky, se kterými se může obchodovat. Poptávka je uložena v sezení. Systém spočítá nejvýhodnější cenu pro nákup poptávaných BTC a uživateli jsou zobrazeny dvě poptávky, které si porovná. První obsahuje data, která zadal uživatel a druhá obsahuje data, která je možné okamžitě zobchodovat. Po vytvoření nabídky uživatel může uložit poptávku do fronty nebo zobchodovat poptávku Smazat nabídku Smazat nabídku znamená odebrání nabídky z fronty. Uživatel označí nabídky, které chce odstranit a systém je smaže z databáze Smazat poptávku Smazat poptávku znamená odebrání poptávky z fronty. Uživatel označí poptávky, které chce odstranit a systém je smaže z databáze Uložit nabídku do fronty Uložit nabídku do fronty znamená uložit do databáze vytvořenou nabídku. Tato nabídka čeká na zobchodování nakupujícím Uložit poptávku do fronty Uložit poptávku do fronty znamená uložit do databáze vytvořenou poptávku. Tato poptávka čeká na zobchodování prodávajícím

37 Zobchodovat nabídku Nabídka se může zobchodovat i s několika poptávkami. Do transakce je vložena nabídka a k ní nejvýhodnější poptávka. Po vyřízení transakce, pokud je to možné, se vytvoří další transakce, ale tentokrát s další poptávkou. A tak se obchoduje dokud to je možné. Přerušit obchodování můžou denní limity nebo nedostatek peněz na účtu nabízejícího. Ilustrace 10: Zobchodování nabídky v transakci Průběh jedné transakce začíná zamknutím entit na aplikační úrovni a v databázi. Nabídka i poptávka jsou zmenšeny tak, aby nepřekročily limity. Pošlou se CZK. Pokud se celá poptávka zobchodovala, je smazána, jinak je aktualizována. Nabídku je třeba zmenšit o data, zobchodovaná v této iteraci. Pošlou se BTC na dočasný účet uvnitř peněženky (peníze se nepřesouvají v databázi). Proběhne aktualizace do databáze. Pokud do tohoto okamžiku nenastala žádná chyba, BTC jsou z dočasného účtu poslány příjemci. Pokud nastala chyba, BTC jsou poslány zpět odesílateli. Nakonec se vytvoří logy a entity se odemknou. Podrobnější informace v dokumentaci Zobchodovat poptávku Poptávka se může zobchodovat i s několika nabídkami. Do transakce je vložena poptávka a k ní nejvýhodnější nabídka. Po vyřízení transakce, pokud je to možné, se vytvoří další transakce, ale tentokrát s další nabídkou. A tak se obchoduje, dokud to je možné. Přerušit obchodování můžou denní limity nebo nedostatek peněz na účtu poptávajícího. Průběh jedné transakce začíná zamknutím entit na aplikační úrovni a v databázi. Nabídka i poptávka jsou zmenšeny tak, aby nepřekročily limity. Pošlou se CZK. Pokud se celá nabídka

38 zobchodovala, je smazána, jinak je aktualizována. Poptávku je třeba zmenšit o data zobchodovaná v této iteraci. Pošlou se BTC na dočasný účet uvnitř peněženky (peníze se nepřesouvají v databázi). Proběhne aktualizace do databáze. Pokud do tohoto okamžiku nenastala žádná chyba, BTC jsou z dočasného účtu poslány příjemci. Pokud nastala chyba, BTC jsou poslány zpět odesílateli. Nakonec se vytvoří logy a entity se odemknou. Podrobnější informace v dokumentaci. 4.3 Analytický model Navržený analytický model zobrazuje základní model aplikace. Model zachycuje vztahy a násobnosti mezi entitami. Ilustrace 11: Analytický model tříd Vztah uživatele a skupiny zachycuje uživatele a jemu přidělenou uživatelskou roli. V systému se mohou nacházet uživatelé podle tří druhů uživatelských rolí. V systému jsou však drženy jen uživatelské role pro administrátora a přihlášeného uživatele. Pro přístup do

39 systému není potřeba uchovávat role pro nepřihlášené uživatele, protože se jedná o webovou aplikaci. Uživatel musí mít jeden CZK účet a jeden BTC účet pro potřeby obchodování. Na účty si uživatel může posílat peníze a s těmito penězi může obchodovat. Z těchto účtů se dají také peníze posílat ven mimo směnárnu. Gopay platba je tvořena pro přijetí CZK na uživatelův účet ve směnárně. Po proběhnutí platby u platebního systému GoPay jsou peníze z platby připsány na uživatelův CZK účet. Uživatel může mít více těchto plateb, které čekají na provedení. Odchozí platba je analogická k Gopay platbě s tím rozdílem, že se vytváří, když uživatel vybírá peníze ze svého CZK účtu. Nabídka a poptávka je tvořena kvůli obchodování. Nabídka znamená nabízení BTC a poptávka poptávání BTC, nikoliv CZK. Uživatel může mít několik nabídek a poptávek. Ty čekají ve frontě na zobchodování. 4.4 Diagram stavů Diagram stavů popisuje v jakých stavech se může instance nacházet a dále popisuje přechody mezi stavy

40 4.4.1 Uživatel Ilustrace 12: Diagram stavů uživatele Registrovaný Systém registruje uživatele na základě uživatelem vyplněného registračního formuláře. Systém pošle uživateli s potvrzovacím kódem a odkazem, kde se může aktivovat Aktivovaný Uživatel klikl na odkaz ve zprávě a vyplnil potřebné údaje pro aktivaci včetně potvrzovacího kódu Nepřihlášený Uživatel, který má založený účet ve směnárně, ale není přihlášený Přihlášený Přihlášený uživatel v systému může provádět obchodní operace, měnit heslo atp Směnárna

41 Ilustrace 13: Diagram stavů směnárny Spuštěna Systém je spuštěný a dovoluje obchodovat, přidávat peníze, vybírat peníze atd Zastavena Systém je pozastavený. Nedovoluje obchodování, přidávání peněz, odebírání peněz atd BTC peněženka Ilustrace 14: Diagram stavů BTC peněženky Konzistentní stav Peněženka je po spuštění v konzistentním stavu. V ideálním případě se do jiného stavu nikdy nedostane Nekonzistentní stav Peněženka postrádá soubor wallet.dat, který je nutný pro uchování již proběhlých transakcí. Peněženka může v tomto stavu provádět nové transakce, ale je ochuzena o ty staré. To znamená, že zůstatky na účtech nejsou pravdivé

42 Obnovení Ve stavu obnovení jsou do peněženky přehrávány transakce z logu a je nutné, aby směnárna byla pozastavena

43 5 Návrh Tato kapitola obsahuje návrh řešení architektury, zabezpečení a databázových entit. 5.1 Model architektury V modelu architektury jsou popsány jednotlivé vrstvy a balíčky s jejich využitím v systému. Nejsou zde popsány jednotlivé třídy z důvodu velkému rozsahu. Detailní popis tříd je obsažen v příloze. Ilustrace 15: Balíčky systému Prezentační vrstva V prezentační vrstvě se nachází servlety, filtry a JSP stránky. Balíček controller obsahuje servlety, které se starají o validaci, obsluhu z formulářů nebo nějakých akcí vyvolaných uživatelem, handler neodchytnutých chyb. V balíčku filter jsou filtry, které se například starají o aktualizaci uživatele do sezení. Ostatní balíčky se starají o přesměrování na JSP stránky Byznys vrstva Tato vrstva obsahuje hlavní logiku aplikace rozdělenou do dvou hlavních balíčků. Balíček beans zahrnuje třídy, které se volají z prezentační vrstvy, Tyto třídy například spravují uživatelské účty, peněžní účty, vlastnosti aplikace nebo nákup a prodej BTC. V balíčku transakce je hierarchie transakcí. Transakcí jsou celkem čtyři druhy a ty jsou tvořeny pomocí dvou factory tříd

44 5.1.3 Datová vrstva Datová vrstva pojímá balíček entity. V tomto balíčku jsou třídy, které reprezentují tabulky v databázi. Jsou namapovány pomocí JPA. Pro práci s entitami jsou použity třídy v balíčku manager. Tito manažeři umožňují vykonávat nad databází dotazy pomocí JPQL, hledat, ukládat, mazat, aktualizovat atp Podpůrné třídy Tento balíček zahrnuje různou funkcionalitu. V balíčku exception jsou třídy výjimek. Balíček gopay umožňuje komunikaci s GoPay platební bránou. Balíček mockfasade obsahuje fasádu s testovacími instancemi, Balíček properties uchovává vlastnosti aplikace a textové zprávy. Balíček rpcbitcoin se používá pro připojení k BTC peněžence. V support balíčku je třída MyN, která je použita pro uchovávání peněžních částek. Při použití typu double a float docházelo k nepřesným výsledkům po početních operacích. Balíček dále umožňuje zasílání e- mailů a hashování. Ostatní třídy viz dokumentace. 5.2 Model nasazení Model nasazení definuje fyzická zařízení, jejich komponenty a spojení (komunikaci) mezi nimi. Ilustrace 16: Model nasazení

45 5.2.1 Klient Jedná se o tenkého klienta. Pro přístup na server se použije webový prohlížeč. Web je přístupný i bez JavaScriptu. Komunikace probíhá šifrovaně přes HTTPS protokol po celou dobu spojení. Otestováno na prohlížeči Firefox, Opera, Chromium a Epiphany Server Aplikace poběží na linuxovém systému. Jako aplikační server byl vybrán GlassFish, který je nutné nakonfigurovat. V databázovém serveru MySQL je použit engine InnoDB, který na rozdíl od staršího MyISAM podporuje transakce a provádí kontrolu cizích klíčů. Jako BTC peněženka byl zvolen oficiální klient, který bude spuštěn jako daemon. 5.3 Zabezpečení Jelikož se jedná o webovou aplikaci provádějící operace s penězi, bylo nutné navrhnout aplikaci bezpečně, aby nemohla být zneužita neoprávněným způsobem SHA-1 SHA-1 je hashovací algoritmus vytvářející ze vstupních dat otisk fixní délky. V systému se používá pro uchování hesel a potvrzovacích kódů v databázi JAAS JAAS neboli Java Authentication and Authorization Service je framework poskytující autentizaci a autorizaci do systému. JAAS je v aplikaci použit při přihlášení do systému Captcha Captcha kód je ochrana proti robotům, kteří zkouší do systému odesílat náhodná data a pokoušejí se uhodnout například jméno a heslo. Captcha je použita pro aktivaci a registraci uživatelů SSL SSL neboli Secure Sockets Layer je protokol poskytující zabezpečení komunikace. SSL je použito pro komunikaci po celou dobu spojení mezi klientem a serverem. Uživatel to pozná tak, že v prohlížeči v URL místo obvyklého je Datový model Datový model v průběhu projektu prošel velkými změnami. Na ilustraci je finální verze, která

46 obsahuje 14 tabulek. 5.5 Licence Aplikace a její zdrojové kódy se smí používat pouze pro nekomerční účely. Aplikace a zdrojové kódy jsou dostupné pod licencí freeware pro nekomerční využití. Ilustrace 17: Datový model Tabulka BTCUcet reprezentuje uživatelův BTC účet. Tabulka obsahuje adresu účtu, testovací částku, datum a částku ze dne posledního nákupu, datum a částku ze dne posledního prodeje, datum a částku ze dne posledního výběru. Tabulka OdchoziPlatba reprezentuje odchozí platbu v CZK. Tabulka obsahuje částku k výběru, číslo cílového bankovního účtu, kód banky, variabilní symbol. Tabulka Skupiny reprezentuje uživatelské role v systému. Tabulka obsahuje název uživatelské

47 role. Tabulka Poptavka reprezentuje poptávky uložené ve frontě. Tabulka obsahuje kolik uživatel chce BTC a kolik je ochoten zaplatit za tyto BTC. Tabulka Nabidka reprezentuje nabídky uložené ve frontě. Tabulka obsahuje kolik uživatel nabídl BTC a kolik chce za tyto BTC. Tabulka CZKUcet reprezentuje uživatelův CZK účet. Tabulka obsahuje částku na účtu, datum a částku ze dne posledního přidání CZK, datum a částku ze dne posledního vybrání CZK. Tabulka Uzivatel reprezentuje aktivního uživatele uživatele. Tabulka obsahuje přezdívku, e- mail, zahashované heslo. Tabulka TmpUzivatel reprezentuje uživatele, který je ve stavu registrovaný. Tabulka obsahuje přezdívku, , zahashované heslo a potvrzovací kód. Tabulka GopayPlatba reprezentuje příchozí platbu v CZK. Tabulka obsahuje částku, platební identifikátor a variabilní symbol. Atribut identity, který je v diagramu se neukládá, protože ho lze dopočítat. Potomci tabulky LogOperace reprezentují logy z převodů peněz. Tabulky obsahují částku a datum. Tabulka ZadostiONovaHesla uchovává záznamy uživatelů, kteří požádali o nově vygenerované heslo. Tabulka obsahuje a potvrzovací kód, který je zaslán na . Tabulka WalletBackup uchovává soubor wallet.dat. Tabulka obsahuje binárně uložený soubor

48 6 Nestandardní části implementace Kapitola obsahuje popis částí implementace, kde byly zvoleny nestandardní postupy. Tyto postupy bylo nutné zvolit z důvodu komunikace s Bitcoin peněženkou. Velmi nestandardní částí je uchovávání částky na BTC účtu. Částka je totiž držena v peněžence a ne v databázi. Pokud by byla držena v databázi tak nastává problém s aktuálností zůstatku, protože BTC jsou posílány na účet přes Bitcoin síť. Aplikace tedy není nijak informována o nově příchozích BTC na platební účty. Nabízelo se řešení, že dotaz na aktualizaci účtu bude prováděn na uživatelův požadavek prostřednictvím obnovovacího tlačítka. Toto řešení však bylo zavrženo z důvodu, že se nelíbilo zákazníkovi. Na zůstatky se tedy dotazuje aplikace Bitcoin peněženky. 6.1 Komunikace s Bitcoin peněženkou Komunikace mezi směnárnou a peněženkou pracuje na principu klient-server, kde klient je směnárna a server je Bitcoin peněženka. Komunikace probíhá přes JSON-RPC protokol. Peněženka naslouchá na portu 8333 a z důvodu bezpečnosti přijímá požadavky pouze z localhostu. Aplikace obsahuje balíček support.rpcbitcoin, který se stará o připojení k serveru, volání metod a získávání návratových hodnot. Pro autentizaci klienta, který posílá na server jméno a heslo byla použita třída java.net.authenticator. 6.2 Bezpečnost transakcí Pokud při transakci vznikne nějaká chyba například při nedostatku peněz, při odpojení peněženky nebo při něčem neobvyklém je nutné, aby se transakce chovala atomicky. To znamená, že transakce proběhne buď celá v pořádku nebo neproběhne vůbec (nepřesunou se BTC, CZK ani se nezaznamenají informace do logu). Pro každou transakci je vytvořena instance, která prochází kontrolními body tzv. checkpointy. Když se instance dostane k nějakému checkpointu, je stav instance změněn. Tato instance se zkontroluje a podle ní se vyhodnocuje, zda se mají peníze posílat zpět a jestli se má vyprázdnit log. 6.3 Vlastní číselný typ Držení číselných hodnot pro částky bylo dříve řešeno datovým typem double. Ten ale nevyhovoval, protože po početních operacích docházelo k zaokrouhlování hodnoty. To bylo nepřijatelné a proto následovalo napsání vlastního datového typu MyN. Tento typ je v aplikaci

49 použit všude tam, kde je nepřijatelné zaokrouhlování

50 7 Testování Kapitola popisuje jakými způsoby a nástroji byl systém testován. Jelikož systém provádí výpočty pro převody peněz bylo nutné otestovat je unit testy. Důležité bylo také zpracování paralelního obchodování nebo třeba rychlost obsluhování klientů. Dále kapitola obsahuje dosažené výsledky testů. Testování neprobíhalo jen po dobu implementace, ale následovalo i po jejím ukončení. 7.1 Uživatelské testy Uživatelské testovaní probíhalo po celou dobu implementace a zároveň byly odstraňovány chyby v systému. Nedílnou součástí uživatelského testovaní byl debugger, bez kterého by kontrola chování aplikace šla jen velmi těžko Formulářové vstupy Protože se jedná o webovou aplikaci a uživatelé jsou nevyzpytatelní je důležité, aby byl kladen důraz na kontrolu vstupních dat, která uživatelé posílají na server. Bylo potřeba testovat vstupy z formulářů jako byly záporné hodnoty u čísel, ové adresy, BTC adresy, variabilní symboly a další Obchodování U obchodování je důležité, aby systém nedovolil prodat vícekrát ty samé peníze. Je třeba zamykat entity v databázi i na úrovni aplikace, aby se předešlo vícenásobnému nakoupení nebo prodání peněz. Bylo třeba simulovat více stejných požadavků od jednoho uživatele v jeden okamžik Databázové operace Testování databázových operací znamená provést ukládání, mazání, aktualizování a opětovné načtení entit z databáze a zkontrolovat jestli skutečné výsledky odpovídají očekávaným. Problémy byly u přidávání poptávek a nabídek k uživateli. Například se vyskytl problém, že po přidání nabídky a jejím smazání se nabídka smazala v databázi, ale pořád se zobrazovala v aplikaci u uživatele. JPA totiž používá vlastnící a inverzní strany a jejich nastavení mi občas dělá problémy

51 7.2 Automatické testy Na automatické testy byl použit framework JUnit verze 4, open source nástroj JMeter a jeden jednoduchý linuxový skript. Před spuštěním se musí testy nejdříve vytvořit a po skončení testů následuje vyhodnocení, zda došlo k chybám či nikoliv Unit testy Unit testy testují jednotlivé metody. Testovány byly metody pro prodej a nákup BTC. Bylo napsáno celkem 47 unit testů ve 14 třídách. Bylo nutné vytvořit mock objekty, které se pak dávaly do testovaných metod, aby se dosáhlo simulace různých situací. Dále bylo nutné vytvořit očekávané mock objekty a ty potom porovnávat s těmi co vracejí testovací metody. Unit testy mají velikou výhodu, protože po jakékoli změně se dají spustit a IDE ihned zobrazí informace o výsledcích testů. Je velmi jednoduché určit chybu JMeter a linuxový skript Cílem bylo nasimulovat mnoho uživatelů a zjistit jak si aplikace vede. Aplikace JMeter je zdarma a využívá se pro testování webových aplikací. JMeter dokáže simulovat klienty a je tedy vhodný například pro zátěžové testy. JMeter byl spouštěn na stejném stroji jako server, bylo použito SSL. Linuxový skript měl za cíl otestovat Bitcoin peněženku. Bylo třeba zjistit jestli peněženka nezačne padat při velkém množství žádostí. Na peněženku byly paralelně generovány žádosti o novou adresu, vrácení zůstatku, přesun BTC. V tomto peněženka obstála, ale zjistilo se, že peněžence dojdou po nějaké době adresy. Pro nové adresy bylo nutné zavolat funkci, která předpřipraví nové adresy. Problém byl vyřešen tak, že peněženka nesmí být šifrovaná. Bylo totiž zjištěno, že pokud se peněženka nešifruje, tak peněžence nedochází adresy a není nutné volat funkci pro předpřipravení nových adres. 7.3 Odpojení peněženky a databáze Při odpojení peněženky nebo databáze bylo třeba otestovat chování aplikace, protože nesprávné chování by mohlo mít fatální dopad na konzistenci peněžních účtů. Pokud při odeslání http požadavku na server je indikována ztráta spojení, je uživatel odhlášen a přesměrován na stránku s hláškou o výpadku. Pokud by výpadek nastal v průběhu platební transakce, je systém pořád konzistentní

52 7.4 Výsledky Testy odhalily řadu chyb. Automatickému testování jsem dal větší priority než doposud, protože zkracuje čas implementace. Všechny chyby v aplikaci se podařilo bez větších problémů odstranit. Při zátěžovém testu na vkládání dat do databáze se při pokusu vložit 100 řádků vložilo pouze 95 s chybovým hlášením Duplicate entry '140001' for key 'PRIMARY' což znamená, že některým entitám bylo přiřazeno stejné ID. Pro odstranění chyby bylo nutné změnit generátor identifikátorů z JPA na databázi samotnou. Další chyba nastala při nákupu BTC. Částka místo přičítání byla neustále připisována. Chyba vznikla z nepozornosti a stačilo upravit kód metody. Po zadání u, který není v databázi a následnému hledání tohoto u v databázi byla tvořena výjimka. Bylo třeba výjimku odchytit a uživateli zobrazit relevantní hlášku. U změny hesla po zadání pouze starého hesla a odeslání požadavku nastávalo přesměrování na jinou stránku. Bylo třeba nastavit přesměrování až po zadání všech validních údajů. Při odpojení peněženky těsně před odesláním požadavku na nákup se sice nic nezobchodovalo, ale do logu se uložila informace o proběhlé transakci. Bylo třeba log vyprázdnit pokud nastalo odpojení peněženky. Při integraci s GoPay platební bránou jsem objevil dvě chyby v jejich knihovně pro integraci. První chyba se nedala identifikovat, protože byla pouze zobrazována chybová hláška ať kontaktuji provozovatele. Po opravení chyby a spuštění s novou verzí knihovny se nedařilo připojit na platební bránu, ale vývojářům z GoPay vše fungovalo v pořádku. Po detailním zkoumání zdrojového kódu knihovny jsem objevil, že IP adresa brány v knihovně byla nastavena na nějakou interní neveřejnou IP, na kterém jim běžela testovací brána. Tato brána nebyla přístupná zvenčí. Po opravení této chyby už nebyly další problémy

53 8 Závěr a zhodnocení Výsledkem této práce mělo být nastudování problematiky zabývající se Bitcoin, seznámení se s existujícími softwary a knihovnami a nakonec samotné realizování aplikace, která bude umožňovat uživatelům směňování BTC a CZK. Všechny předem stanovené cíle byly splněny. Proniknout do světa Bitcoin dalo značnou práci. Obecných informací pro běžného uživatele je relativně mnoho, ovšem většinou v anglickém jazyce. Pokud se člověk začne o Bitcoin zajímat více do hloubky, tak informací značně ubývá. Více do hloubky znamená z pohledu programátora, kterého může zajímat například implementace vlastního Bitcoin klienta. Po porozumění Bitcoin následoval vývoj aplikace. Během vývoje jsem se dozvěděl řadu nových informací, které se týkali webových aplikací, používání různých programových API nebo třeba konfigurace. Jak již bylo očekáváno na začátku projektu, testování zabralo mnoho času. Systém byl testován různými postupy a nástroji. Po úspěšném testování je aplikace připravena na spuštění do provozu. Zkušenosti, které jsem získal při práci na projektu, mi rozšířily obzory. Určitě takto nabyté zkušenosti využiji i v budoucnu na dalších zajímavých projektech, jakým tato směnárna beze sporu je. Na projektu by se mohlo pracovat dál. V budoucnu by se dalo rozšířit směnárnu o nějakou další měnu jak tomu je u zahraničních směnáren

54 9 Použitá literatura [1] Bitcoin: P2P digital currency [online]. 2009, 2012 [cit ]. Dostupné z: [2] What is Bitcoin?: We Use Coins [online] [cit ]. Dostupné z: [3] Decentralizovaná kryptoměna Bitcoin. HRACH, Jan. ABC Linuxu [online] [cit ]. Dostupné z: [4] Protocol specification: Bitcoin. Bitcoin.it Wiki [online]. 2010, 2012 [cit ]. Dostupné z: [5] Protocol rules: Bitcoin. Bitcoin.it Wiki [online]. 2010, 2012 [cit ]. Dostupné z: [6] GoPay: UŽÍVEJ GoPay [online] [cit ]. Dostupné z: [7] Software: Bitcoin. Bitcoin.it Wiki [online]. 2010, 2012 [cit ]. Dostupné z: [8] LinuxCoin [online] [cit ]. Dostupné z: [9] Poclbm: Bitcoin. Bitcoin.it Wiki [online]. 2010, 2012 [cit ]. Dostupné z: [10] Cpu Miner: Bitcoin. Bitcoin.it Wiki [online]. 2010, 2012 [cit ]. Dostupné z: [11] Mt.Gox: Bitcoin Exchange [online] [cit ]. Dostupné z: [12] Spend Bitcoins [online] [cit ]. Dostupné z:

55 10 Přílohy A) Instalační příručka Tato kapitola obsahuje postup jakým lze zprovoznit aplikaci. Před samotným instalováním aplikace tzv. deployem aplikace na server je třeba nainstalovat databázový server MySQL, aplikační server GlassFish alespoň verze 3 a oficiálního Bitcoin klienta. Pro bezproblémové nainstalování a spuštění provádějte všechny kroky jako jeden uživatel, kromě těch kroků, kdy je nutné pracovat jako super uživatel. Konfigurace Bitcoin klienta probíhá ve dvou krocích. Nejprve je nutné nastavit do konfiguračního souboru vlatnosti rpcuser a rpcpassword. Poté je nutné nastavit adresáři ~/.bitcoin práva tak, aby nikdo jiný nemohl číst z tohoto adresáře. Dále je třeba vytvořit databázi a nahrát do ní sql soubor, který předvytvoří tabulky a některá důležitá data. Poté je nutné nastavit databázi příslušná práva. Následující krok se skládá z nakonfigurování GlassFish serveru. Je třeba nastavit security realm, JavaMail sessions, JDBC připojení k databázi a logování. V instalaci GlassFishe do adresáře glassfish/domains/domain1 je třeba nakopírovat konfigurační soubory app.cfg a config.cfg. Je třeba přidělit jim všechna práva pouze pro vlastníka, ostatní k nim nesmí mít přístup. Nakonec stačí spustit Bitcoin klienta a poté deploynout aplikaci na server

56 B) Ukázky GUI Ukázky GUI jsou screenshoty z webového prohlížeče. Ilustrace 18: Uživatelovo boční menu Menu slouží například pro správu peněz, nákupu a prodeje. Ilustrace 19: Hlášky Každá hláška má svůj kód. Hlášky jsou zobrazovány vpravo odspodu. Při zobrazení nové hlášky se předchozí hláška posune o něco výš tak, aby bylo možné vidět obě dvě. Takto zobrazované hlášky jsou nazývané growl

57 Ilustrace 20: Nabídnuté operace po vytvoření poptávky Jakmile uživatel vytvoří poptávku jsou mu nabídnuty akce uložit a nakoupit. V poptávce pro uložení jsou data, která vložil uživatel. Poptávka pro zobchodování je spočítána z dat, která zadal uživatel. Ilustrace 21: Fronta poptávek Obsahuje poptávky, které uživatel vytvořil a poté uložil do fronty. Poptávky se dají řadit podle dat ve sloupcích

Digitální měna Bitcoin. Dalibor Hula Slezská univerzita v Opavě OPF v Karviné

Digitální měna Bitcoin. Dalibor Hula Slezská univerzita v Opavě OPF v Karviné Digitální měna Bitcoin Dalibor Hula Slezská univerzita v Opavě OPF v Karviné Výpomoc bankám Blokáda Wikileaks Peníze kryty zlatem Platby do zahraničí Peníze Odkud se berou? Co jim dává hodnotu? Kolik jich

Více

Athena Uživatelská dokumentace v

Athena Uživatelská dokumentace v Athena Uživatelská dokumentace v. 2.0.0 OBSAH Obsah... 2 Historie dokumentu... 3 Popis systému... 4 Založení uživatele... 5 Přihlášení uživatele... 7 První přihlášení... 8 Založení profilu zadavatele/dodavatele...

Více

Modul pro PrestaShop 1.7

Modul pro PrestaShop 1.7 Obsah Modul pro PrestaShop 1.7 1 Instalace...2 1.1 Nahrání modulu do PrestaShopu...2 1.2 Komunikační adresy...3 1.3 Nastavení...4 1.4 Stavy objednávek...6 1.5 Jazykové verze...8 1.6 Kontrola funkčnosti...9

Více

Příručka pro dodavatele. Systém EZVR 1.1 Verze dokumentu 1.3 Datum vydání:

Příručka pro dodavatele. Systém EZVR 1.1 Verze dokumentu 1.3 Datum vydání: Příručka pro dodavatele Systém EZVR 1.1 Verze dokumentu 1.3 Datum vydání: 1.10.2017 1 2 1. Úvod do systému...3 2. Technické požadavky a zabezpečení systému...3 3. Registrace nového dodavatele...4 4. Přihlášení

Více

Národní elektronický nástroj. Import profilu zadavatele do NEN

Národní elektronický nástroj. Import profilu zadavatele do NEN Národní elektronický nástroj Import profilu zadavatele do NEN V 1.2 2014 Obsah 1 Cíl...... 2 2 Nutné podmínky k umožnění importu profilu zadavatele...... 2 3 Povinnosti zadavatele dle metodiky k vyhlášce

Více

DNSSEC Validátor - doplněk prohlížečů proti podvržení domény

DNSSEC Validátor - doplněk prohlížečů proti podvržení domény DNSSEC Validátor - doplněk prohlížečů proti podvržení domény CZ.NIC z.s.p.o. Martin Straka / martin.straka@nic.cz Konference Internet a Technologie 12 24.11.2012 1 Obsah prezentace Stručný úvod do DNS

Více

Aplikace BSMS. Uživatelská příručka - 1 -

Aplikace BSMS. Uživatelská příručka - 1 - Aplikace BSMS Uživatelská příručka - 1 - Obsah 1. O aplikaci BSMS... 3 2. Základní předpoklady pro používání BSMS... 3 3. Instalace aplikace... 3 3.1. Samotná instalace... 3 3.2. Možné problémy při instalaci...

Více

Bitcoin. digitální měna budoucnosti nebo nafouklá bublina? Jaroslav Brychta. Jan Skalický

Bitcoin. digitální měna budoucnosti nebo nafouklá bublina? Jaroslav Brychta. Jan Skalický Bitcoin digitální měna budoucnosti nebo nafouklá bublina? Jaroslav Brychta Jan Skalický 2 / 26 Bitcoin základní principy, technické aspekty Jan Skalický 3 / 26 Bitcoin - vlastnosti digitální měna a platební

Více

NÁVOD K POUŽÍVÁNÍ DIGITÁLNÍ PENĚŽENKY MASTERCARD MOBILE

NÁVOD K POUŽÍVÁNÍ DIGITÁLNÍ PENĚŽENKY MASTERCARD MOBILE 1 Podporované platformy Aplikace MC Mobile je podporovaná na zařízeních: iphone (iphone 3GS, iphone 4, iphone 4S, iphone 5) ipad (ipad, ipad 2, ipad 3rd generation) Android. Pozn.: minimální podporované

Více

Manuál PVU zadavatel Platnost pro elektronický nástroj X-EN verze 4 a novější

Manuál PVU zadavatel Platnost pro elektronický nástroj X-EN verze 4 a novější Manuál PVU zadavatel Platnost pro elektronický nástroj X-EN verze 4 a novější 1 Vytvoření profilu zadavatele... 2 1.1 Doplnění identifikátoru profilu zadavatele ve VVZ... 2 2 Správa profilu... 3 2.1 Vytvoření

Více

Czech Nature Photo Návod

Czech Nature Photo Návod Czech Nature Photo Návod Tento návod vás provede všemi úkony nutnými pro úspěšné přihlášení vašich fotogra?ií do soutěže Czech Nature Photo. Pokud narazíte na problém, který není v tomto dokumentu podchycen,

Více

plussystem Příručka k instalaci systému

plussystem Příručka k instalaci systému plussystem Příručka k instalaci systému Tato příručka je určena zejména prodejcům systému a případně koncovým uživatelům. Poskytuje návod, jak provést potřebná nastavení komponent. ITFutuRe s.r.o. 26.2.2015

Více

Elektronické výpisy v BankKlientovi

Elektronické výpisy v BankKlientovi Elektronické výpisy v BankKlientovi Nastavení oprávnění pro změnu parametru účtu Nově Vám v BankKlientu přibylo oprávnění pro změnu parametru účtu. Toto oprávnění Vám dává možnost měnit nastavení účtu

Více

mbank.cz mtransfer Okamžitá notifikace o mtransferu Dokumentace pro externího partnera

mbank.cz mtransfer Okamžitá notifikace o mtransferu Dokumentace pro externího partnera mtransfer Okamžitá notifikace o mtransferu Dokumentace pro externího partnera 1/6 Obsah 1 SLOVNÍK POJMŮ... 3 2 ÚVOD... 4 3 POPIS ŘEŠENÍ NPM... 4 4 ZPŮSOB KOMUNIKACE EXTERNÍHO PARTNERA S MBANK - SPECIFIKACE

Více

TACHOTel manuál 2015 AURIS CZ

TACHOTel manuál 2015 AURIS CZ TACHOTel manuál 2 TACHOTel Obsah Foreword I Úvod 0 3 1 Popis systému... 3 2 Systémové... požadavky 4 3 Přihlášení... do aplikace 5 II Nastavení aplikace 6 1 Instalace... a konfigurace služby ATR 6 2 Vytvoření...

Více

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

1.1. Základní informace o aplikacích pro pacienta Registrace a aktivace uživatelského profilu k přístupu do aplikace systému erecept pro pacienta, přihlášení do aplikace systému erecept pro pacienta na základě registrovaného profilu v NIA nebo elektronického

Více

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

Registrace a aktivace uživatelského profilu k přístupu do systému erecept pro pacienta Registrace a aktivace uživatelského profilu k přístupu do systému erecept pro pacienta 1. Obecné 1.1. Základní informace o aplikacích pro pacienta Pro pacienty je zpřístupněná webová a mobilní aplikace.

Více

T-Mobile Internet. Manager. pro Mac OS X NÁVOD PRO UŽIVATELE

T-Mobile Internet. Manager. pro Mac OS X NÁVOD PRO UŽIVATELE T-Mobile Internet Manager pro Mac OS X NÁVOD PRO UŽIVATELE Obsah 03 Úvod 04 Podporovaná zařízení 04 Požadavky na HW a SW 05 Instalace SW a nastavení přístupu 05 Hlavní okno 06 SMS 06 Nastavení 07 Přidání

Více

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Projekt je realizován v rámci Operačního programu Vzdělávání pro konkurence

Více

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

Elektronický podpis. Základní princip. Digitální podpis. Podpis vs. šifrování. Hashování. Jednosměrné funkce. Odesílatel. Příjemce Základní princip Elektronický podpis Odesílatel podepíše otevřený text vznikne digitálně podepsaný text Příjemce ověří zda podpis patří odesílateli uvěří v pravost podpisu ověří zda podpis a text k sobě

Více

CYCLOPE PRINT MANAGEMENT SOFTWARE- UŽIVATELSKÁ PŘÍRUČKA

CYCLOPE PRINT MANAGEMENT SOFTWARE- UŽIVATELSKÁ PŘÍRUČKA CYCLOPE PRINT MANAGEMENT SOFTWARE- UŽIVATELSKÁ PŘÍRUČKA Obsah Cyclope Print Management Software- uživatelská příručka... 1 1. Přehled produktu... 2 2. Stručný popis produtku CPMS... 2 2.1. Stažení CPMS...

Více

Manuál pro implementaci služby PLATBA 24. Datum: 17. prosince 2014 Verze: 1.49

Manuál pro implementaci služby PLATBA 24. Datum: 17. prosince 2014 Verze: 1.49 Manuál pro implementaci služby PLATBA 24 Datum: 17. prosince 2014 Verze: 1.49 1 Úvodní informace ke službě PLATBA 24... 3 1.1 Obecný popis služby... 3 1.2 Administrativní předpoklady k využití služby PLATBA

Více

Analýza požadavků. 1. Funkční požadavky - popisují chování, funkce a operace uživatelů, které systém musí podporovat. 1.1 Operace uživatelů

Analýza požadavků. 1. Funkční požadavky - popisují chování, funkce a operace uživatelů, které systém musí podporovat. 1.1 Operace uživatelů Základní pojmy: Systém = webová prezentace + eshop Registrovaný uživatel = zástupce montážní firmy Neregistrovaný uživatel = běžný zákazník eshop Administrátor = správce systému Analýza požadavků 1. Funkční

Více

Vzdálená správa v cloudu až pro 250 počítačů

Vzdálená správa v cloudu až pro 250 počítačů Vzdálená správa v cloudu až pro 250 počítačů S pomocí ESET Cloud Administratoru můžete řídit zabezpečení vaší podnikové sítě bez nutnosti nákupu, instalace nebo údržby dalšího hardwaru. Řešení je poskytováno

Více

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

Webové rozhraní pro datové úložiště. Obhajoba bakalářské práce Radek Šipka, jaro 2009 Webové rozhraní pro datové úložiště Obhajoba bakalářské práce Radek Šipka, jaro 2009 Úvod Cílem práce bylo reimplementovat stávající webové rozhraní datového úložiště MU. Obsah prezentace Úložiště nasazené

Více

Sázková kancelář Z pekla štěstí

Sázková kancelář Z pekla štěstí Sázková kancelář Z pekla štěstí Řešitelský tým Michal Pfeifer, Martin Halamíček, Jan Blaško, Zdeněk Křepela, Jan Popelka, Jan Mach Úvod Sázková kancelář Z pekla štěstí je malá společnost s několika malými

Více

FIO API PLUS. Verze 1.1.1

FIO API PLUS. Verze 1.1.1 FIO API PLUS Verze 1.1.1 www.fio.cz Verze 29. 5. 2015 OBSAH: 1 FUNKČNÍ POPIS... 2 2 INSTALACE APLIKACE... 2 3 ZÍSKÁNÍ TOKENU... 2 4 PŘIDÁNÍ ÚČTU / TOKENU DO APLIKACE... 3 5 STAŽENÍ DAT... 3 Periodické

Více

ANETE, spol. s r.o. MobilKredit

ANETE, spol. s r.o.   MobilKredit ANETE, spol. s r.o. www.anete.com MobilKredit 2016 Obsah 1 Přístup do stravovacího systému pomocí chytrého telefonu... 3 2 Instalace aplikace... 3 3 Uživatel a heslo... 4 3.1 Identifikace uživatele...

Více

Odesílání citlivých dat prostřednictvím šifrovaného emailu s elektronickým podpisem standardem S/MIME

Odesílání citlivých dat prostřednictvím šifrovaného emailu s elektronickým podpisem standardem S/MIME Odesílání citlivých dat prostřednictvím šifrovaného emailu s elektronickým podpisem standardem S/MIME Je dostupnou možností, jak lze zaslat lékařskou dokumentaci elektronicky. Co je třeba k odeslání šifrovaného

Více

Informační systém pro e-learning manuál

Informační systém pro e-learning manuál Informační systém pro e-learning manuál Verze 1.00 Úvod Tento dokument popisuje způsob práce s informačním systémem pro elektronické vzdělávání. Systém je určený pro vytvoření elektronického kurzu a jeho

Více

Informace o poštovním provozu na serveru mail.ktkadan.cz a stručný návod na použití OpenWebMailu

Informace o poštovním provozu na serveru mail.ktkadan.cz a stručný návod na použití OpenWebMailu Informace o poštovním provozu na serveru mail.ktkadan.cz a stručný návod na použití OpenWebMailu 1. Obecné informace Příchozí zprávy se ukládají do vaší schránky na serveru mail.ktkadan.cz. Tuto schránku

Více

Uživatelská příručka aplikace George klíč

Uživatelská příručka aplikace George klíč Uživatelská příručka aplikace George klíč OS, 3-3651 02/2019 1/19 Obsah: 1. Co je to aplikace George klíč?... 3 1.1. Co všechno vám George klíč umožní... 3 1.2. Denní finanční limity pro transakce autorizované

Více

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4 CRM SYSTÉM KORMORÁN PŘÍRUČKA ADMINISTRÁTORA Obsah 1 Administrace systému 3 1.1 Uživatelské účty.................................. 3 1.2 Přístupová práva................................. 3 1.3 Moduly.......................................

Více

XENGO. nová definice mobility VIRTUÁLNÍ OBCHOD UŽIVATELSKÁ PŘÍRUČKA

XENGO. nová definice mobility VIRTUÁLNÍ OBCHOD UŽIVATELSKÁ PŘÍRUČKA XENGO nová definice mobility VIRTUÁLNÍ OBCHOD UŽIVATELSKÁ PŘÍRUČKA Obsah 1. Úvod 3 2. Jak nakonfigurovat virtuální obchod? 4 2.1. Konfigurace kategorií 4 Jak přidat kategorii? 4 Jak editovat kategorii?

Více

Instalace programu ProGEO

Instalace programu ProGEO Instalace programu ProGEO Obsah dokumentu: 1. Požadavky na systém 2. Průběh instalace 3. Aktivace zakoupené licence 4. Automatické aktualizace Updater 1. Požadavky na systém Softwarové požadavky: MicroStation

Více

POKYNY K REGISTRACI PROFILU ZADAVATELE

POKYNY K REGISTRACI PROFILU ZADAVATELE POKYNY K REGISTRACI PROFILU ZADAVATELE Stav ke dni 4. 12. 2012 Obsah: 1 Úvod... 3 1.1 Podmínky provozu... 3 1.2 Pokyny k užívání dokumentu... 3 2 Registrace profilu zadavatele... 4 2.1 Přihlášení uživatele...

Více

Maturitní projekt do IVT Pavel Doleček

Maturitní projekt do IVT Pavel Doleček Maturitní projekt do IVT Pavel Doleček CO FILMBOOK JE Filmbook je uzavřená webová aplikace pro celkovou správu informací a dat souvisejících se sledováním filmů. Primárně je zaměřen na uchovávání a spravování

Více

SCS - Manuál. Obsah. Strana 1 (celkem 14) Verze 1.1

SCS - Manuál. Obsah. Strana 1 (celkem 14) Verze 1.1 Obsah SCS - Manuál... 1 Referenční příručka... 2 Záložka Výběr klíče... 2 Záložka Výběr zakázky... 3 Záložka Vtvoření nabídky... 4 Záložka O aplikaci SCS Klient... 5 SCS instalační příručka... 6 Systémové

Více

Už ivatelska dokumentace

Už ivatelska dokumentace Už ivatelska dokumentace Aplikace Portál úspěšných projektů je určena k publikování informací o projektech realizovaných za přispění některého z Operačních programů v gesci Ministerstva vnitra České republiky.

Více

Manuál PVU zadavatel Platnost pro elektronický nástroj X-EN verze 3 a novější

Manuál PVU zadavatel Platnost pro elektronický nástroj X-EN verze 3 a novější Manuál PVU zadavatel Platnost pro elektronický nástroj X-EN verze 3 a novější 1 Vytvoření profilu zadavatele... 2 1.1 Doplnění identifikátoru profilu zadavatele ve VVZ... 2 2 Správa profilu... 3 2.1 Vytvoření

Více

1. Pro přihlášení k odběru novinek klikněte na tlačítko Registrace nového uživatele.

1. Pro přihlášení k odběru novinek klikněte na tlačítko Registrace nového uživatele. 1. Vstup do aplikace Na adrese: http://i.statnisprava.cz 2. První stránka aplikace 1. Pro přihlášení k odběru novinek klikněte na tlačítko Registrace nového uživatele. 2. Poté budete přesměrováni na stránku

Více

SSL Secure Sockets Layer

SSL Secure Sockets Layer SSL Secure Sockets Layer internetové aplikační protokoly jsou nezabezpečené SSL vkládá do architektury šifrující vrstvu aplikační (HTTP, IMAP,...) SSL transportní (TCP, UDP) síťová (IP) SSL poskytuje zabezpečenou

Více

Faxový server společnosti PODA s.r.o.

Faxový server společnosti PODA s.r.o. Faxový server společnosti PODA s.r.o. Vážení zákazníci, jako doplněk k poskytovaným službám VoIP jsme pro vás zprovoznili službu faxového serveru. Tento server vám umožní pohodlně odesílat a přijímat faxy

Více

Postup instalace síťové verze Mount Blue

Postup instalace síťové verze Mount Blue Postup instalace síťové verze Mount Blue Instalace na serveru 1. Stáhněte si instalační balíček pro server ze stránek Mount Blue na adrese: http://www.mountblue.cz/download/mountblue-server-setup.exe 2.

Více

Nemocnice. Prvotní analýza a plán projektu

Nemocnice. Prvotní analýza a plán projektu Nemocnice Projekt do předmětu AIS Prvotní analýza a plán projektu Lukáš Pohl, xpohll00, xkosti03 Jan Novák, xnovak79 2009/2010 1 Neformální specifikace FN potřebuje informační systém, který bude obsahovat

Více

Technologické postupy práce s aktovkou IS MPP

Technologické postupy práce s aktovkou IS MPP Technologické postupy práce s aktovkou IS MPP Modul plánování a přezkoumávání, verze 1.20 vypracovala společnost ASD Software, s.r.o. dokument ze dne 27. 3. 2013, verze 1.01 Technologické postupy práce

Více

Aplikace a služba Money Dnes Publisher v deseti krocích

Aplikace a služba Money Dnes Publisher v deseti krocích 2 Money Dnes Publisher Uživatelská příručka Aplikace a služba Money Dnes Publisher v deseti krocích Tento step-by-step manuál vás provede korektním nastavením ovladače Money Dnes Publisher pomocí přiloženého

Více

Nastavení telefonu Nokia Lumia 925

Nastavení telefonu Nokia Lumia 925 Nastavení telefonu Nokia Lumia 925 Telefon Nokia Lumia 925, zakoupený v prodejní síti společnosti T-Mobile Czech Republic a.s., má potřebné parametry pro použití T-Mobile služeb již přednastaveny. Některé

Více

PLATEBNÍ KARTY PPF banky a.s.

PLATEBNÍ KARTY PPF banky a.s. PLATEBNÍ KARTY PPF banky a.s. PPF banka a.s., Evropská 2690/17, P.O. Box 177, 160 41 Praha 6 1/14 Obsah: 1. Všeobecné informace...3 2. Placení prostřednictvím Karty na internetu...3 3. 3D Secure...4 3.1.

Více

IceWarp Outlook Sync Rychlá příručka

IceWarp Outlook Sync Rychlá příručka IceWarp Mail server 10 IceWarp Outlook Sync Rychlá příručka Verze 10.4 Printed on 20 September, 2011 Instalace Prostudujte si před instalací Na cílové pracovní stanici musí být nainstalovaný program Microsoft

Více

STRUČNÝ NÁVOD K POUŽITÍ

STRUČNÝ NÁVOD K POUŽITÍ STRUČNÝ NÁVOD K POUŽITÍ REPOTEC RP-IP0613 Úvod Bandwidth manager REPOTEC (dále jen BM) je levný a jednoduchý omezovač rychlosti pro jakékoliv sítě založené na protokolu TCP/IP. Velice snadno se ovládá

Více

MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ

MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ M. Sysel, I. Pomykacz Univerzita Tomáše Bati ve Zlíně, Fakulta aplikované informatiky Nad Stráněmi 4511, 760 05 Zlín, Česká republika

Více

1. DATOVÉ SCHRÁNKY OBECNÝ PŘÍSTUP K DATOVÉ SCHRÁNCE DATOVÉ ZPRÁVY... 3

1. DATOVÉ SCHRÁNKY OBECNÝ PŘÍSTUP K DATOVÉ SCHRÁNCE DATOVÉ ZPRÁVY... 3 ESO9 international a.s. Zpracoval: Skyva Petr U Mlýna 2305/22, 141 Praha 4 Záběhlice Dne: 15.1.20187 tel.: +420 585 203 370-2 e-mail: info@eso9.cz Revize: Skyva Petr www.eso9.cz Dne: 15.1.20187 Obsah 1.

Více

wplatba SOAP api Technická dokumentáce

wplatba SOAP api Technická dokumentáce wplatba SOAP api Technická dokumentáce 1 OBSAH ÚČEL DOKUMENTU... 3 TECHNICKÝ KONTAKT... 3 LEGENDA... 3 PLATEBNÍ METODY... 4 KOMUNIKACE... 4 TESTOVÁNÍ... 4 JAK POSTUPOVAT V PŘÍPADĚ PROBLÉMŮ... 4 CARDPAY...

Více

Uživatelský manuál. Obsah

Uživatelský manuál. Obsah Uživatelský manuál Obsah Úvodní stránka a horní menu Registrace uživatele Registrace studenta Registrace pedagoga Registrace firmy Přihlášeni do systému Obnovení zapomenutého hesla Nastavení uživatelského

Více

Uživatelská příručka

Uživatelská příručka Uživatelská příručka k registraci a nahlížení na stav svých pohledávek v prostředí aplikace Komunikace s občany (RAP) Obsah: 1. Úvod... 1 2. Registrace do aplikace Komunikace s občany... 2 3. Přihlášení

Více

Artikul system s.r.o. www.dsarchiv.cz UŽIVATELSKÁ PŘÍRUČKA tel. +420 727 827 422 dsarchiv@artikulsystem.cz

Artikul system s.r.o. www.dsarchiv.cz UŽIVATELSKÁ PŘÍRUČKA tel. +420 727 827 422 dsarchiv@artikulsystem.cz Obsah DS Archiv... 2 Nastavení připojení k internetu... 2 Nastavení aplikace... 3 Nastavení databáze... 4 Nastavení datové schránky... 4 Příjem zpráv z datové schránky... 6 Odeslání zprávy... 7 Ověření

Více

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ SPOLEČNOST DECADIC PROJEKT FRAMETRIX

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ SPOLEČNOST DECADIC PROJEKT FRAMETRIX FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ MANAGEMENT PROJEKTŮ SPOLEČNOST DECADIC PROJEKT FRAMETRIX SPECIFIKACE POŽADAVKŮ AUTOR DOKUMENTU JIŘÍ JANDA BRNO 15. března 2012 Obsah 1 Úvod........................................

Více

Konfigurace pracovní stanice pro ISOP-Centrum verze 1.21.32

Konfigurace pracovní stanice pro ISOP-Centrum verze 1.21.32 Informační systém ISOP 7-13 Vypracováno pro CzechInvest Konfigurace pracovní stanice pro ISOP-Centrum verze 1.21.32 vypracovala společnost ASD Software, s.r.o. Dokument ze dne 20.2.2015, verze 1.00 Konfigurace

Více

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

Příručka pro uživatele CEB s čipovou kartou Příručka pro uživatele CEB s čipovou kartou Člen skupiny KBC Obsah 1 Úvod podmínky pro úspěšné přihlášení do služby... 3 2 Instalace SecureStore a registrace certifikátů do OS... 3 3 První přihlášení do

Více

Aktuální trendy a inovace v on-line platbách. Václav Keřka 29. května 2014

Aktuální trendy a inovace v on-line platbách. Václav Keřka 29. května 2014 Aktuální trendy a inovace v on-line platbách Václav Keřka 29. května 2014 1 Aktuální trendy v on-line platbách Kde se nakupuje na internetu v Česku? Odhad počtu českých e-shopů Platba kartou 30 000 Tržby

Více

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

Provozní dokumentace. Seznam orgánů veřejné moci. Příručka pro běžného uživatele Provozní dokumentace Seznam orgánů veřejné moci Příručka pro běžného uživatele Vytvořeno dne: 7. 7. 2011 Aktualizováno: 11. 2. 2015 Verze: 2.2 2015 MVČR Obsah Příručka pro běžného uživatele 1 Úvod...3

Více

Návod na používání webmailu

Návod na používání webmailu Návod na používání webmailu Každý student a zaměstnanec UTB má svoji vlastní školní e-mailovou schránku. K té se lze připojit buď pomocí webového klienta http://webmail.utb.cz, nebo libovolného e-mailového

Více

BRICSCAD V15. Licencování

BRICSCAD V15. Licencování BRICSCAD V15 Licencování Protea spol. s r.o. Makovského 1339/16 236 00 Praha 6 - Řepy tel.: 235 316 232, 235 316 237 fax: 235 316 038 e-mail: obchod@protea.cz web: www.protea.cz Copyright Protea spol.

Více

Návod k používání služeb na portálu SMSbrána.cz. www.smsbrana.cz

Návod k používání služeb na portálu SMSbrána.cz. www.smsbrana.cz Návod k používání služeb na portálu SMSbrána.cz www.smsbrana.cz Obsah 1 registrace a příhlášení... 3 2 co dělat po přihlášení uživatelské rozhraní... 4 3 Dobití kreditu... 5 4 Naplnění kontaktního adresáře...

Více

Uživatelský manuál Citfin, spořitelní družstvo Potřebujete poradit? Volejte infolinku nebo pište na

Uživatelský manuál Citfin, spořitelní družstvo Potřebujete poradit? Volejte infolinku nebo pište na Uživatelský manuál Citfin, spořitelní družstvo Potřebujete poradit? Volejte infolinku +420 234 092 333 nebo pište na info@citfin.cz! OBSAH Vstup do internetového bankovnictví... 3 Přihlášení do internetového

Více

Nastavení telefonu Windows Phone 8S by HTC

Nastavení telefonu Windows Phone 8S by HTC Nastavení telefonu Windows Phone 8S by HTC Telefon Windows Phone 8S by HTC, zakoupený v prodejní síti společnosti T-Mobile Czech Republic a.s., má potřebné parametry pro použití T-Mobile služeb již přednastaveny.

Více

Návod k obsluze IP kamery Zoneway. IP kamery jsou určené pro odbornou montáž.

Návod k obsluze IP kamery Zoneway. IP kamery jsou určené pro odbornou montáž. Návod k obsluze IP kamery Zoneway. IP kamery jsou určené pro odbornou montáž. Obsah 1 Úvod... 1 2 Návod pro připojení do webového rozhraní... 1 2.1 Připojení kamery k WiFi síti... 4 2.2 Postup nastavení

Více

WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK

WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK Systém WorkWatch je určen pro malé a střední firmy, které se zabývají službami nebo zakázkovou výrobou. Zajistí dokonalý přehled o všech zakázkách a jejich rozpracovanosti.

Více

OTEVŘENÉ BANKOVNICTVÍ INFORMACE K NOVÝM SLUŽBÁM

OTEVŘENÉ BANKOVNICTVÍ INFORMACE K NOVÝM SLUŽBÁM OTEVŘENÉ BANKOVNICTVÍ INFORMACE K NOVÝM SLUŽBÁM Co je otevřené bankovnictví Ve světě otevřeného bankovnictví si snadno propojíte své účty s aplikacemi třetích stran, a usnadníte si tak jejich ovládání

Více

Po prvním spuštění Chrome Vás prohlížeč vyzve, aby jste zadali své přihlašovací údaje do účtu Google. Proč to udělat? Máte několik výhod:

Po prvním spuštění Chrome Vás prohlížeč vyzve, aby jste zadali své přihlašovací údaje do účtu Google. Proč to udělat? Máte několik výhod: Internetový prohlížeč CHROME Pro správné fungování veškerých funkcionalit, které nám nástroje společnosti Google nabízí, je dobré používat prohlížeč Chrome. Jeho instalaci je možné provést z webové adresy:

Více

1 Uživatelská dokumentace

1 Uživatelská dokumentace 1 Uživatelská dokumentace Systém pro závodění aut řízených umělou inteligencí je zaměřen na závodění aut v prostředí internetu. Kromě toho umožňuje testovat jednotlivé řidiče bez nutnosti vytvářet závod

Více

Bezpečnost internetového bankovnictví, bankomaty

Bezpečnost internetového bankovnictví, bankomaty , bankomaty Filip Marada, filipmarada@gmail.com KM FJFI 15. května 2014 15. května 2014 1 / 18 Obsah prezentace 1 Bezpečnost internetového bankovnictví Možná rizika 2 Bankomaty Výběr z bankomatu Možná

Více

Analýza Systém Správce

Analýza Systém Správce Analýza Systém Správce Toto je analýza aplikace Systém Správce, která slouží k alokaci zaměstnanců vedených v databázi do týmů. Jedná se o pomůcku projektových manažerů. Rozbor požadavků Funkční požadavky

Více

www.dpd.cz/dobirky Uživatelský manuál

www.dpd.cz/dobirky Uživatelský manuál www.dpd.cz/dobirky Uživatelský manuál DPD CZ Obsah 1. Úvod... 3 2. Přihlášení... 3 Přihlášení... 3 Nový uživatel, zapomenuté heslo... 5 3. Nastavení... 6 Nastavení uživatele... 6 Nastavení bankovních účtů...

Více

Aplikace AWEG3 Profil SMS. Uživatelská příručka. Aktualizace:

Aplikace AWEG3 Profil SMS. Uživatelská příručka. Aktualizace: Aplikace AWEG3 Profil SMS Uživatelská příručka Aktualizace: 4. 5. 2012-1 - Obsah 1. O aplikaci AWEG3 Profil SMS... 3 2. Základní předpoklady pro používání BSMS... 3 3. Spuštění aplikace AWEG3 Profil SMS...

Více

Manuál pro studenty. Obsah

Manuál pro studenty. Obsah Manuál pro studenty Studovat můžete v čase, který Vám vyhovuje a z jakéhokoliv prostředí. Náklady na cestovné a ubytování tímto ušetříte! Kurz Vás nebude nic stát! Počet kurzů bude záviset jen na Vás.

Více

Jakub Šesták. http://www.cesnet.cz/services/data-storage/?lang=en ESEJ DO PŘEDMĚTU DIGITÁLNÍ KNIHOVNY

Jakub Šesták. http://www.cesnet.cz/services/data-storage/?lang=en ESEJ DO PŘEDMĚTU DIGITÁLNÍ KNIHOVNY MASARYKOVA UNIVERZITA FAKULTA INFORMATIKY Datové služby sdružení CESNET http://www.cesnet.cz/services/data-storage/?lang=en ESEJ DO PŘEDMĚTU DIGITÁLNÍ KNIHOVNY Jakub Šesták 5. 12. 2014 1. ročník navazujícího

Více

Úvod do email systému

Úvod do email systému Úvod do email systému Základní informace Toto emailové prostředí je rozloženo do tří hlavních částí - rámců. Levý rámec zobrazuje aktuálně přihlášené složky. V pravé části strany se realizuje veškerá činnost

Více

Zálohování v MS Windows 10

Zálohování v MS Windows 10 Zálohování v MS Windows 10 Historie souborů Způsob zálohování jako v MS Windows 8.1 Nastavení Aktualizace a zabezpečení Zálohování nebo Ovládací panely Systém a zabezpečení - Historie souborů Přidat jednotku

Více

OSOBA JEDNAJÍCÍ ZA SPRÁVCE ČÍSELNÍKU NÁVOD K OBSLUZE INFORMAČNÍHO SYSTÉMU O DATOVÝCH PRVCÍCH (ISDP)

OSOBA JEDNAJÍCÍ ZA SPRÁVCE ČÍSELNÍKU NÁVOD K OBSLUZE INFORMAČNÍHO SYSTÉMU O DATOVÝCH PRVCÍCH (ISDP) OSOBA JEDNAJÍCÍ ZA SPRÁVCE ČÍSELNÍKU NÁVOD K OBSLUZE INFORMAČNÍHO SYSTÉMU O DATOVÝCH PRVCÍCH (ISDP) Obsah Úvod...2 Co je ISDP...2 Jaké jsou funkce ISDP...2 Slovník pojmů...2 Dílčí DP...2 DS...2 ISDP...2

Více

Návod na internetové bankovnictví

Návod na internetové bankovnictví Návod na internetové bankovnictví Obsah 1. První přihlášení a obnova hesla.... 2 2. Obsluha internetového bankovnictví..... 3 2.1 Úvodní obrazovka 3 2.2 Zadání jednorázové platby 4 2.3 Zadání hromadné

Více

Fides Software Storage Administrator

Fides Software Storage Administrator Trade FIDES, a.s. Fides Software Storage Administrator 1.0.2.0 (aktualizace - 7/2014) Popis programu Manuál správce systému 2 Fides Software Storage Administrator manuál správce Obsah 1 Úvod... 3 1.1 Popis

Více

Constructo. Uživatelská příručka

Constructo. Uživatelská příručka Constructo Uživatelská příručka Constructo 1 Úvod 3 Filosofie systému 4 Registrace do systému 5 Přihlášení do systému 8 Popis rozhraní 9 O projektech 10 Nastavení rolí v projektu 11 Moduly 13 Stavební

Více

Internet Information Services (IIS) 6.0

Internet Information Services (IIS) 6.0 Internet Information Services (IIS) 6.0 V operačním systému Windows Server 2003 je obsažena i služba IIS v 6.0. Služba IIS poskytuje jak www server tak i některé další služby (FTP, NNTP,...). Jedná se

Více

Návod pro práci s aplikací

Návod pro práci s aplikací Návod pro práci s aplikací NASTAVENÍ FAKTURACÍ...1 NASTAVENÍ FAKTURAČNÍCH ÚDA JŮ...1 Texty - doklady...1 Fakturační řady Ostatní volby...1 Logo Razítko dokladu...2 NASTAVENÍ DALŠÍCH ÚDA JŮ (SEZNAMŮ HODNOT)...2

Více

Connection Manager - Uživatelská příručka

Connection Manager - Uživatelská příručka Connection Manager - Uživatelská příručka 1.0. vydání 2 Obsah Aplikace Správce připojení 3 Začínáme 3 Spuštění Správce připojení 3 Zobrazení stavu aktuálního připojení 3 Připojení k internetu 3 Připojení

Více

Nápověda pro aplikaci Manuscriptorium Kandidátů (M-Can) http:://candidates.manuscriptorium.com

Nápověda pro aplikaci Manuscriptorium Kandidátů (M-Can) http:://candidates.manuscriptorium.com Nápověda pro aplikaci Manuscriptorium Kandidátů (M-Can) http:://candidates.manuscriptorium.com Hlavní funkce aplikace Uživatelům autorům Otázky a odpovědi Jaké dokumenty lze do Manuscriptoria nabízet pomocí

Více

Provozní dokumentace. Seznam orgánů veřejné moci. Příručka pro administrátora zřizované organizace

Provozní dokumentace. Seznam orgánů veřejné moci. Příručka pro administrátora zřizované organizace Provozní dokumentace Seznam orgánů veřejné moci Příručka pro administrátora zřizované organizace Vytvořeno dne: 30. 6. 2011 Aktualizováno: 17. 10. 2014 Verze: 2.1 2014 MVČR Obsah Příručka pro administrátora

Více

I.CA RemoteSeal. Ing. Filip Michl První certifikační autorita, a.s

I.CA RemoteSeal. Ing. Filip Michl První certifikační autorita, a.s Technické řešení služby I.CA RemoteSeal Ing. Filip Michl První certifikační autorita, a.s. 5. 4. 2018 Agenda Úvod ARX CoSign vs. DocuSign Signature Appliance Architektura Zřízení služby Aktivace služby

Více

Práce s e-mailovými schránkami v síti Selfnet

Práce s e-mailovými schránkami v síti Selfnet Práce s e-mailovými schránkami v síti Selfnet Obsah návodu Základní informace k nastavení schránky selfnet.cz...2 Doporučené parametry nastavení e-mailového klienta...2 Základní informace k nastavení e-mailové

Více

Software pro vzdálenou laboratoř

Software pro vzdálenou laboratoř Software pro vzdálenou laboratoř Autor: Vladimír Hamada, Petr Sadovský Typ: Software Rok: 2012 Samostatnou část vzdálených laboratoří tvoří programové vybavené, které je oživuje HW část vzdáleného experimentu

Více

REGISTRACE A SPRÁVA UŽIVATELSKÉHO ÚČTU

REGISTRACE A SPRÁVA UŽIVATELSKÉHO ÚČTU REGISTRACE A SPRÁVA UŽIVATELSKÉHO ÚČTU Obsah 1 Registrace nového uživatele... 3 1.1 Právnická osoba... 3 1.2 Fyzická osoba... 4 1.3 Fyzická osoba podnikající... 5 1.4 Dokončení registrace prostřednictvím

Více

Uživatelská příručka MWA Modul Podpora vzdálených kalibrací dle ILAC

Uživatelská příručka MWA Modul Podpora vzdálených kalibrací dle ILAC Uživatelská příručka MWA Modul Podpora vzdálených kalibrací dle ILAC Český metrologický institut sídlem Okružní 31, 638 00 Brno IČ: 00177016 Verze dokumentu: 1.0 Jazyk dokumentu: český Status: testovací

Více

Síťová instalace a registrace pro progecad

Síťová instalace a registrace pro progecad Síťová instalace a registrace pro 1 Obsah 1 Obsah... 1 2 Úvod... 1 3 Jak začít... 2 3.1 Instalace NLM Serveru pro... 2 3.2 Registrace NLM Serveru pro... 2 3.3 Přidávání a aktivace licencí... 2 3.4 Instalace

Více

TAOS321. Administrace. příručka správce systému. informační terminál systému JSVV

TAOS321. Administrace. příručka správce systému. informační terminál systému JSVV TAOS321 informační terminál systému JSVV Administrace příručka správce systému Text odpovídá verzi firmware: TAOS321 1.0 2014, Technologie 2000 spol. s r.o. Jablonec nad Nisou TAOS321 informační terminál

Více

Kompletní manuál programu HiddenSMS Lite

Kompletní manuál programu HiddenSMS Lite v1.1001 Kompletní manuál programu HiddenSMS Lite Poslední aktualizace: 27. 8. 2009 HiddenSMS Lite software pro mobilní telefony s operačním systémem Windows Mobile, určený pro skrytí Vašich soukromých

Více

ISPOP 2019 MANUÁL PRO PRÁCI V REGISTRU ODBORNĚ ZPŮSOBILÝCH OSOB

ISPOP 2019 MANUÁL PRO PRÁCI V REGISTRU ODBORNĚ ZPŮSOBILÝCH OSOB ISPOP 2019 MANUÁL PRO PRÁCI V REGISTRU ODBORNĚ ZPŮSOBILÝCH OSOB Odborně způsobilá osoba verze 1.0 1 z 19 Obsah 1. Seznam zkratek...3 2. Přehled změn manuálu...3 3. Úvod...4 4. Popis Registru OZO...5 4.1.

Více

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

Šifrování Autentizace Bezpečnostní slabiny. Bezpečnost. Lenka Kosková Třísková, NTI TUL. 22. března 2013 Šifrování Autentizace ní slabiny 22. března 2013 Šifrování Autentizace ní slabiny Technologie Symetrické vs. asymetrické šifry (dnes kombinace) HTTPS Funguje nad HTTP Šifrování s pomocí SSL nebo TLS Šifrování

Více