Bitcoin - skalda.org by

Transkript

Bitcoin - skalda.org by
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í systém
●
plná decentralizovanost
●
deterministická inflace
●
asymetrické šifrování
●
anonymita používání
●
open-source (MIT licence)
4 / 26
stručná historie
●
1998 – koncept „crypto-currency“
[Wei Dai @ cypherpunks mailing list]
●
2007 – paper popisující měnu Bitcoin
[Satoshi Nakamoto @ metzdowd.com]
●
2008 – první implementace Bitcoin
[Satoshi Nakamoto, Windows, MSVC]
●
Satoshi Nakamoto – identita – ?
5 / 26
platební systém
●
●
historie všech transakcí je uložena v
blockchainu (účetní kniha, „ledger“)
blockchain je spojový seznam bloků
–
●
●
blok 0 (první blok) je „vytesán do skály“
blok je zakódovaná množina transakcí
transakce je dvojice množin vstupů a
výstupů z/do Bitcoin adres
6 / 26
decentralizovanost
●
uzly systému jsou propojeny p2p sítí
●
každý uzel v síti může
●
–
generovat / anoncovat transakce
–
stahovat / ověřovat staré bloky
–
generovat nové bloky
(potvrzovat anoncované transakce)
Bitcoin blockchain browser
–
http://blockexplorer.com
7 / 26
inflace
●
●
●
inflace = zvyšování objemu peněz
generování bloků kromě potvrzování
transakcí vytváří i nové BTC („mining“)
odměna za mining
–
motivuje uzly k potvrzování transakcí
–
exponenciálně klesá (po 210 kblocks ~ 4 yr)
–
nominálně 50 BTC, 25 BTC (nyní), 12.5 BTC…
8 / 26
vsuvka - hash
●
●
●
hash je zobrazení z množiny dat obecné
délky do množiny hodnot omezené délky
kryptografická hashovací funkce:
–
uniformní (obecně žádoucí vlastnost)
–
nelinearní (malá ∆ vstupu = velká ∆ výstupu)
–
asymetrická výpočetní složitost
Bitcoin používá hash algoritmus SHA-256
9 / 26
generování bloků (1)
●
blok je validní jen pokud má nízký hash
(sekvence počátečních nul dlouhá dle aktuální difficulty)
●
●
difficulty se mění každých 2016 bloků
–
hodnota > 1 zajišťuje „proof of work“
–
zpětnovazebně stabilizuje průměrnou
rychlost generování na 1 blok za 10 min
řízená rychlost generování způsobuje
deterministickou inflaci měny
–
max. 21 milionů BTC (1 BTC = 108 satoshi)
10 / 26
deterministická inflace
11 / 26
generování bloků (2)
●
součástí dat bloku je pole „nonce“
–
●
●
32-bit počítadlo (sůl, na které nezáleží)
hledá se takové nonce, pro které platí
podmínka nízkého hashe
–
hash ≤ target … validní blok (úspěšná těžba)
–
hash > target … inkrementace nonce a retry
úspěšný miner získává kromě odměny za
blok ještě dobrovolné transakční poplatky
12 / 26
rozdvojení blockchainu
●
Při miningu může nastat situace, kdy více
různých uzlů najde aktuálně těžený blok
(druhý miner v pořadí se nestačil dozvědět o prvním)
●
Řešením je použití vždy nejdelšího řetězu
–
generování plynule pokračuje nad vrcholem
–
po vygenerování dalších bloků budou všechny
odbočky kromě jedné kratší než nejdelší
–
generující uzly jsou k výběru dobrého vrcholu
motivovány rizikem zapomenutí jejich výtěže
(transakce z nepoužitých bloků jsou vráceny k novému potvrzování)
13 / 26
potvrzení transakce
●
riziko vypadnutí hotové transakce vlivem
rozdvojení blockchainu se s počtem jejích
potvrzení (hloubkou) rapidně snižuje
–
●
různí obchodníci požadují různou hloubku
–
●
bylo by nutné přegenerovat celý kus historie
pro hloubku 6 je riziko vypadnutí vlivem
útoku při držení 10 % hashrate sítě ~ 0.1 %
pro vytěžené BTC se žádá hloubka 100
(není návratu do fronty k potvrzení jako u transakcí)
14 / 26
vytvoření transakce
●
●
●
Bitcoinová peněženka je množina klíčů
pro asymetrické šifrování (ECDSA)
vytěžené BTC jsou přiděleny veřejným
klíčům (Bitcoinovým adresám) minera
jakožto výstupy „generující“ transakce
„obyčejná“ transakce má navíc vstupy –
odkazy na výstupy předchozích transakcí
–
vstupy – výstupy = transakční poplatek ≥ 0
transakce – příklad
(včetně rozměnění)
15 / 26
ověření transakce
16 / 26
(zjednodušeně)
●
odesílatel transakce prokazuje vlastnictví
dosud nepoužitého vstupu (držení klíčů)
–
●
odesílatel určuje příjemce výstupu
–
●
podepsáním něčeho pomocí soukromého klíče
podepsáním adresy příjemce (to „něco“ výše)
ostatní uznají transakci ověřením podpisů
–
veřejné klíče odesílatele znají z adres vstupů
ověření transakce
17 / 26
(skutečnost)
●
adresa je pouze otisk veřejného klíče
–
●
výstup se autorizuje i pomocí veřejného klíče
odesílatel podepisuje celou transakci
(ve zjednodušeném tvaru – bez vlastního podpisu)
●
k ověřování se používá skriptovací jazyk
–
vyhodnocuje ho zásobníkový automat nad
kombinací „zámku“ (skript pro odemknutí
výstupu) a „klíče“ (autorizační data vstupu)
–
velmi obecné, umožňuje komplexní podmínky
18 / 26
anonymita
●
kompletní historie všech transakcí je
decentralizovaně uložená všude, ale...
(pro každou adresu je znám okamžitý zůstatek)
●
Bitcoinové adresy nejsou (nemusí být)
nijak spojeny s fyzickou identitou
(zkompromitování je věcí zodpovědnosti uživatele)
●
Bitcoinové adresy nemusí být recyklovány
(pro každou další transakci může být použita nová)
●
další možnosti: mixing services, Tor
19 / 26
důsledky vlastností
●
neexistuje možnost „vrácení peněz“
(vlastnictví BTC je totální – nelze je ani násilně zabavit)
●
transakční poplatky jsou nejmenší možné
(dokonalá konkurence miningu odpovídá ceně energie)
●
od určitého okamžiku lehce deflační
(ztráty privátních klíčů – havárie HW, úmrtí majitele… )
●
čas do potvrzení > ~ 10 min * hloubka
–
prostor pro odvozené systémy mikroplateb
dodatek A:
aplikace (1) – seznam
●
existující Bitcoin „peněženky“:
–
Bitcoin-Qt (Win/Linux/Mac) [bitcoin.org]
–
MultiBit (Win/Linux/Mac)
–
Armory (Win/Linux)
–
Electrum (Win/Linux/Mac, Android)
–
Bitcoin Wallet (Android, Blackberry)
–
...
20 / 26
dodatek A:
aplikace (2) – Bitcoin-Qt
21 / 26
dodatek B:
mining, pools
22 / 26
●
2008–2010 – těžba na CPU
●
2010–2011 – těžba na GPU (VLIW)
●
2011–2012 – těžba na FPGA
●
2012–2013 – těžba na ASIC
●
2011+ – distribuce těžby do mining poolů
–
pool rozdává práci na těžbě více klientům
–
jejich odměna je proporciální k počtu hashů
dodatek C:
útoky
●
Race attack
–
●
při akceptování hloubky 0
Brute force attack
–
●
23 / 26
předpříprava delší větve rětězu s opakovanou
útratou týchž BTC (od minulého checkpointu)
>50 % attack
–
varianta předchozího pro případ, že útočník
disponuje větší výpočetní silou než zbylá síť
(Bitcoin pooly však disponují větší výpočetní silou než superpočítače)
dodatek D:
výpočetní síla v čase
24 / 26
dodatek E:
další implementace
●
25 / 26
Existují odvozené sítě na technologii BTC:
●
Litecoin (rychlejší transakce, ko-těžba s BTC)
●
PPCoin („proof of stake“, minimalizace spotřeby)
●
Namecoin (eviduje názvy, např. DNS pro síť Tor)
●
Primecoin (proof of work založený na prvočíslech)
●
Novacoin
●
Terracoin
●
Bytecoin
●
… (*coin)
26 / 26
zdroje, odkazy
obecné informace
trhy
●
http://bitcoin.org
●
http://bitcoinity.org/markets/
●
http://bitcoin.org/bitcoin.pdf
●
http://www.bitcoincharts.com
●
http://bitcointalk.org/
●
http://www.bitcoinwatch.com
●
http://en.bitcoin.it/wiki/
●
http://www.cryptocurrency.org
on-line monitory
●
http://www.blockexplorer.com
●
http://www.blockchain.info
●
http://www.bitcoinmonitor.com
●
http://bitcoinstats.org
●
●
http://bitcoinstatus.rowit.co.uk
http://bitcoin.sipa.be
burzy
●
http://mtgox.com
●
http://btc-e.com
●
http://www.bitstamp.net
mining
●
http://mining.bitcoin.cz
●
http://www.bitcash.cz
●
http://deepbit.net

Podobné dokumenty

BTC

BTC měn? (BTC není zatím všude brána jako oficiální měna) • Existují prostředky jak pojistit své BTC, včetně pojištění odpovědnosti? Případně jak finančně pokrýt rizika? (vytunelovaní BTC investoři své

Více

Stáhnout pdf

Stáhnout pdf Sítě Ministerstva zahraničních věcí ČR a pěti členských států Evropské unie – napadeny hackery Čínští hackeři odposlouchávali počítačové sítě ministerstev zahraničních věcí pěti evropských zemí ČR,...

Více

Den vědy 2016 - Moravská vysoká škola Olomouc

Den vědy 2016 - Moravská vysoká škola Olomouc je rozdělena na určitý počet homogenních skupin (shluků). Každý shluk je považován za třídu, kde se technikou výběru vlastností odhalují důležité znaky (slova, víceslovné výrazy) a výstupy se hodno...

Více

PDF verzi - JedenBod

PDF verzi - JedenBod Diffie a Martin Hellman

Více

diel 2 - Univerzita Pavla Jozefa Šafárika v Košiciach

diel 2 - Univerzita Pavla Jozefa Šafárika v Košiciach możliwości postępowania w tym obszarze: działania legalne i działania nielegalne w zakresie unikania opodatkowania.1 Trudno jednak te pierwsze traktować jako działania naruszające obowiązujące prze...

Více

Tiskovy monitor 5. 11. 2015

Tiskovy monitor 5. 11. 2015 (VoWiFi) zákazník uskutečňuje hovory či posílá zprávy prostřednictvím svého telefonního čísla úplně stejně jako v mobilní síti. Wi-fi volání nalezne uplatnění především v místě, kde mohou být probl...

Více

Existence 1/2014 - Anarchistická federace

Existence 1/2014 - Anarchistická federace lednem 2010, ani jsme p%íliš nedoufali, že se nám poda%í tento projekt udržet v dob internetového on-line zpravodajství tak dlouho p%i život a ješt k tomu bez jakýchkoliv prodlev S%i tvrtletní peri...

Více