Princip Bitcoinové sítě (teorie I.)
Bitcoinová síť je decentralizovaná, funguje jako peer to peer (P2P) síť. Není zde tedy jeden centrální počítač, který může vypadnout nebo být odpojen či být napaden hackery. Celá síť je tvořena mnoha počítači (či jinými zařízeními) se specializovaným softwarem, který daného účastníka propojuje s dalšími účastníky sítě, tedy dalšími uzly BTC sítě.
V sítě můžeme rozlišit dva typy účastníků, přičemž každý z nich má v síti určitou roli:
- koncoví uživatelé
- mineři (těžaři)
Koncoví uživatelé
Jsou účastníci, kteří v rámci sítě posílají bitcoinové platby. Každý z nich může „vlastnit“ libovolný počet tzv. Bitcoinových adres (analogie k bankovnímu účtu nebo emailové adrese), ze kterých může posílat BTC jiným účastníkům sítě, na jiné BTC adresy (účty).
Aby bylo možno toto provést (uživatel musí mít ke své BTC adrese přístup, pak může zadat transakci), je nutné použít specifický software, tzv. klienta nebo peněženku (wallet). Uživatelé, kteří používají základního (plnohodnotného) klienta („tlustý klient“, neboť je to již skutečně Otesánek, viz Klienti), udržují onen BLOCKCHAIN – účetní knihu celé sítě.
Pokud se klient připojí do sítě, dojde k synchronizaci klienta, tedy ke stáhnutí celé distribuované databáze všech transakcí v síti od dalších důvěryhodných uzlů v síti. V podstatě tak neustále dochází k vytváření kopií blockchainu a jeho ověřování. Každý plnohodnotný klient má tak k dispozici kompletní historii transakcí, otisk celé účetní knihy od prvního bloku. Klient (uzel sítě) tedy ví, ke které adrese daná mince nebo její část patří.
Pokud chce koncový uživatel poslat platbu, vezme ze své adresy (kterou ovládá) Bitcoiny a pošle je na jinou adresu. V tomto okamžiku vytvoří tzv. transakci, kterou podepíše soukromým klíčem, jenž je mj. součástí každé peněženky, klienta. Přes klienta se informace o pokynu k platbě skrz další uzly dostane do sítě a během několika vteřin i ke konečnému příjemci platby.
Názorněji a zároveň složitěji si to můžeme předvést takto:
Představte si, že jste (Owner1) a chcete poslat Bitcoiny kamarádovi (Owner2). Celá síť ví, že máte právo použít svých XY Bitcoinů (ví, že je „vlastníte“ na základě informace v Blockchainu, který říká, že na Vaší adrese XXX je možno utratit XY Bitcoinů).
Zadáte příkaz a BTC adresu kamaráda (která je zašifrována do veřejného klíče*), zašifrujete, podepíšete soukromým klíčem a pošlete do sítě – a ta ví, že jste to skutečně poslal Vy (soukromý klíč) a nová práva na tyto mince mají vzniknout kamarádovi (veřejný klíč).
Vznikají tu ale současně dva problémy – takto by bylo možno převádět pouze celý objem BTC na adrese a současně Vám někdo musí „Vaše poslané Bitcoiny z účtu odečíst a kamarádovi je přičíst, jen podpis na to stačit nebude“.
Interní generování adres při transakcích (půlení)
Některé transakce obsahují více veřejných klíčů a podpisů a k nim přiřazené vstupy a výstupy, neboť klient nedokáže utratit jen část Vašich peněz (zase umí platbu poskládat z více adres). Pokud by tedy po odeslání transakce mělo na Vaší BTC adrese něco zůstat, musí vzít všechny prostředky této adresy, první část poslat konečnému příjemci a onen zbytek Vám vrátit – jenže to neumí na původní adresu a tak si pomůže a vytvoří adresu novou, pokud nemá žádnou jinou k dispozici. Tyto interní transakce ale nejsou v klientovi vidět.
A stejně jako v bance musí tuto platbu někdo ověřit / schválit – od toho jsou zde mineři.
Mineři (těžaři)
Nepotvrzené transakce se skládají a šifrují do bloku transakcí, který se následně snaží mineři připojit k řetězci předcházejících potvrzených bloků (ano, to je blockchain). Připojení tohoto bloku je ovšem velmi náročné na výpočetní výkon (a je čím dále tím náročnější), neboť se, jednoduše řečeno, musí tento blok zašifrovat pomocí kryptografického klíče s určitou složitostí, která je dána výpočetní silou sítě. Předtím, než se blok definitivně a jednou provždy vytvoří, dochází mj. k úplnému ověřování, že na všech adresách, odkud Bitcoiny přicházejí, je jich opravdu postačující množství.
Mineři jsou motivováni použít svůj výpočetní výkon a to tím, že za každý nově nalezený (připojený) blok obdrží předem známou odměnu – nyní je to 12,55 BTC – a dále tzv. transakční poplatky. Ve své podstatě je to ale jen vedlejší produkt potvrzování transakcí v síti
Nalezení nového bloku je jediný způsob emitování (vydání) nových Bitcoinů !
Těžaři mají v síti dvě základní úlohy:
- potvrzují bitcoinové transakce v síti
- a současně uvolňují nové Bitcoiny do sítě (těžba Bitcoinů, bitcoin mining; podobně jako když banka vytiskne peníze – nicméně zde jsou předem jasná pravidla, kdy a kolik BTC bude uvolněno)
Těžba kryptoměn probíhá pomocí specializovaných programů, tzv. mining software, minerů (horníků).
* Bitcoinové adresy ne vždy odpovídají veřejným klíčům – lze proto mince tzv. spálit, neboť lze vytvořit takové transakce, které odešlou mince na adresy, které nelze nikdy vybrat. Ale to je skutečně vyšší dívčí.
Pokračovat na:
Princip těžení Bitcoinu (teorie II.)
Sumář: Princip Bitcoinové sítě – BTC teorie | Principy bitcoinové sítě, návody pro začátečníky. Popis fungování BTC sítě, transakce a jejich ověřování, BTC adresy, blockchain, mineři, bitcoinové platby.
Poznámka autora: Tento příspěvek je převzat z vlastní e-knihy „Velká kniha kryptoměn“ vydané v listopadu 2014. Žádné záruky jakéhokoliv typu nejsou poskytovány. Autor neručí za správnost a aktuálnost údajů. Autor nenese žádnou odpovědnost za webové stránky, na které vedou odkazy, návštěva těchto serverů je na vlastní nebezpečí. Příručka vyjadřuje pouze osobní zkušenost autora. Jakákoliv účast na těžbě, směně nebo nákupu kryptoměn je na vlastní riziko. Texty, obrázky apod. požívají ochrany autorského práva, obchodní značky nebo podobné. Každá, i dílčí, reprodukce, zpracování či použití vyžaduje předběžný výslovný písemný souhlas autora. Veškeré obchodní značky a ochranné známky jmenované v této publikaci, které jsou případně chráněny pro třetí strany, podléhají v neomezeném rozsahu ustanovením aktuálně platného práva upravujícího identifikační označení a vlastnickým právům aktuálně registrovaných vlastníků.
1 odpověď
[…] Bitcoinová adresa je ve své podstatě „číslo účtu“, na který můžete přijímat BTC (RECEIVE) nebo na ni BTC posílat (SEND). Bitcoinové adresy jsou v podstatě vyvinuty na jedno použití, ale lze je samozřejmě používat i opakovaně, jakmile si ji jednou vytvoříte, je stále Vaše (po celou dobu kdy k nám máte přístup prostřednictvím nějakého klienta nebo peněženky). Adresy vznikají i samostatně, při částečných transakcích (viz teorie sítě). […]