V práci se zabývám optimalizací těžebního procesu kryptoměn. Rozebírám zde možná rizika, kterými jsou výpadky spojení a nízká efektivita probíhající těžby. Jejich negativní dopad se snažím minimalizovat zařazením proxy serveru umístěným mezi těžebního klienta a cílový pool server. Cílem proxy serveru je monitorovat a analyzovat probíhající těžbu.
V případě výpadku spojení nebo zjištění neefektivní těžby proxy server přepojí těžebního klienta na jiný pool server. Kromě těchto vlastností systém uživateli umožňuje definovat několik měn, které bude jeho těžební klient těžit. U každé měny může uživatel nastavit určitý příděl výkonu.
Systém tak přináší vyšší efektivitu těžby a umožňuje jednomu klientovi těžit více měn. Tím dojde k maximalizaci šance na získání odměny za ověřené bloky.
Anotace v angličtině
This thesis focuses on the optimization of the cryptocurrency mining process. I discuss all possible threats in this process, which can be a network connection errors or a low effectivity of the mining process. I try to minimalize the impact of these events by using a proxy server placed between a mining worker and a target pool server. The aim of the proxy server is to analyze all events in the mining process.
If the proxy server detects any network fail, or an ineffective mining process is detected, the proxy server will reconnect the mining worker to a different pool server immediately. Except of these features user can also define a several currencies which wants to mine. User can define an amount of performance for each of these currencies.
The system boosts the effectivity of the cryptocurrency mining process and allows the possibility to mine more currencies by one worker. These features will maximalize the chance to earn the block reward.
Klíčová slova
kryptoměny, těžení kryptoměn, Bitcoin, Getwork, Getblocktemplate, Stratum, pooled mining
V práci se zabývám optimalizací těžebního procesu kryptoměn. Rozebírám zde možná rizika, kterými jsou výpadky spojení a nízká efektivita probíhající těžby. Jejich negativní dopad se snažím minimalizovat zařazením proxy serveru umístěným mezi těžebního klienta a cílový pool server. Cílem proxy serveru je monitorovat a analyzovat probíhající těžbu.
V případě výpadku spojení nebo zjištění neefektivní těžby proxy server přepojí těžebního klienta na jiný pool server. Kromě těchto vlastností systém uživateli umožňuje definovat několik měn, které bude jeho těžební klient těžit. U každé měny může uživatel nastavit určitý příděl výkonu.
Systém tak přináší vyšší efektivitu těžby a umožňuje jednomu klientovi těžit více měn. Tím dojde k maximalizaci šance na získání odměny za ověřené bloky.
Anotace v angličtině
This thesis focuses on the optimization of the cryptocurrency mining process. I discuss all possible threats in this process, which can be a network connection errors or a low effectivity of the mining process. I try to minimalize the impact of these events by using a proxy server placed between a mining worker and a target pool server. The aim of the proxy server is to analyze all events in the mining process.
If the proxy server detects any network fail, or an ineffective mining process is detected, the proxy server will reconnect the mining worker to a different pool server immediately. Except of these features user can also define a several currencies which wants to mine. User can define an amount of performance for each of these currencies.
The system boosts the effectivity of the cryptocurrency mining process and allows the possibility to mine more currencies by one worker. These features will maximalize the chance to earn the block reward.
Klíčová slova
kryptoměny, těžení kryptoměn, Bitcoin, Getwork, Getblocktemplate, Stratum, pooled mining
1. Seznamte se s problematikou kryptoměn
2. Navrhněte aplikaci pro optimalizaci těžby kryptoměn (možné postupy, kritéria optimalizace)
3. Realizujte vlastní aplikaci vhodnými vývojovými nástroji. Postupujte následovně:
a) Vytvořte proxy server pro sledování statistických ukazatelů při těžbě kryptoměn
b) Získané ukazatele z průběhu těžby ukládejte do vhodné databáze
c) Na proxy serveru implementujte algoritmus pro přepojování těžebního stroje mezi více pool servery podle uživatelem definované konfigurace (procentuální rozdělení výkonu).
d) Na základě analýzy statistických ukazatelů zajistěte přepojení těžebního stroje na jiný pool server v případě neefektivní těžby nebo výpadku spojení.
4. Ověřte funkčnost systému. Zhodnoťte změnu efektivity těžby bez optimalizace a s optimalizací
Zásady pro vypracování
1. Seznamte se s problematikou kryptoměn
2. Navrhněte aplikaci pro optimalizaci těžby kryptoměn (možné postupy, kritéria optimalizace)
3. Realizujte vlastní aplikaci vhodnými vývojovými nástroji. Postupujte následovně:
a) Vytvořte proxy server pro sledování statistických ukazatelů při těžbě kryptoměn
b) Získané ukazatele z průběhu těžby ukládejte do vhodné databáze
c) Na proxy serveru implementujte algoritmus pro přepojování těžebního stroje mezi více pool servery podle uživatelem definované konfigurace (procentuální rozdělení výkonu).
d) Na základě analýzy statistických ukazatelů zajistěte přepojení těžebního stroje na jiný pool server v případě neefektivní těžby nebo výpadku spojení.
4. Ověřte funkčnost systému. Zhodnoťte změnu efektivity těžby bez optimalizace a s optimalizací
Seznam doporučené literatury
[1] PLÍVA, Zdeněk; DRÁBKOVÁ, Jindra. Metodika zpracování diplomových, bakalářských a vědeckých prací na FM TUL. Vyd. 1. Liberec : Technická univerzita, 2007. 40 s. Dostupné z WWW: . ISBN 978-80-7372-189-3.
[2] NAKAMOTO, Satoshi. Bitcoin: A Peer-to-Peer Electronic Cash System
[3] DECKER, C.; WATTENHOFER, R. Information propagation in the bitcoin network, IEEE International Conference on Peer-to-Peer Computing (P2P), Trento, Italy, September 2013.
Seznam doporučené literatury
[1] PLÍVA, Zdeněk; DRÁBKOVÁ, Jindra. Metodika zpracování diplomových, bakalářských a vědeckých prací na FM TUL. Vyd. 1. Liberec : Technická univerzita, 2007. 40 s. Dostupné z WWW: . ISBN 978-80-7372-189-3.
[2] NAKAMOTO, Satoshi. Bitcoin: A Peer-to-Peer Electronic Cash System
[3] DECKER, C.; WATTENHOFER, R. Information propagation in the bitcoin network, IEEE International Conference on Peer-to-Peer Computing (P2P), Trento, Italy, September 2013.
Přílohy volně vložené
1 DVD
Přílohy vázané v práci
ilustrace, schémata
Převzato z knihovny
Ano
Plný text práce
Přílohy
Posudek(y) oponenta
Hodnocení vedoucího
Záznam průběhu obhajoby
Průběh obhajoby je zveřejněn pouze přihlášenému uživateli.