Kopanie Bitcoin

Na czym polega wydobywanie Bitcoina?

Wydobywanie Bitcoina, zwane też kopaniem, jak również miningiem (w niniejszym artykule terminy te będą używane zamiennie), jest procesem, w wyniku którego tworzone są bloki. To właśnie w ramach poszczególnych bloków zapisane są transakcje. Stosuje się tu nomenklaturę górniczą, głównie ze względu na podobieństwo tego procesu z wydobywaniem złota (Bitcoin jest często określany mianem cyfrowego złota), w związku z tym osoby lub firmy parające się wydobywaniem bitcoina (a także innych kryptowalut) zwane są per analogia górnikami lub kopaczami. Ci zaś za wykonaną pracę otrzymują wynagrodzenie w postaci coinów – a w związku z tym mamy do czynienia z drugą, nie mniej ważną funkcją kopania – wprowadzaniem nowych monet do obiegu. Mechanizm ten zwany jest dowodem pracy – Proof of Work (PoW).Dodatkowym elementem motywujących kopaczy do wydobywania Bitcoina jest uzyskiwanie prowizji od zatwierdzonych transakcji. Otrzymują oni zatem podwójną zapłatę – w ramach nagrody za wydobycie oraz za walidację transakcji.

Wydobywanie Bitcoina przypomina, w uproszczeniu, proces pozyskiwania fizycznego złota, a także, choć w mniejszym stopniu, drukowanie pieniędzy przez rządy państw. Zasadniczą różnicą jest z góry ograniczona liczba bitcoinów – docelowo zaledwie 21 mln, oraz zdecentralizowany charakter tej waluty – zasady wydobywania oparte są na zaprogramowanych wcześniej algorytmach, bez centralnej instytucji posiadającej całą pulę i rozdającej monety według nieokreślonych kryteriów – co  ma miejsce w przypadku niejednego państwowego emitenta fizycznego pieniądza.

Dość trafnym jest również porównanie kopania do udziału w loterii – zdobywanie BTC polega na zgadywaniu, lub bardziej precyzyjnie, rozwiązywaniu bardzo skomplikowanych zagadek matematycznych, przy czym nie jest to zgadywanie w ciemno lecz bardzo złożony i energochłonny proces.

Kopanie Bitcoina dawniej

CPU, źródło: www.pixabay.com

Kopanie przy wykorzystaniu CPU – procesorów komputerowych. Przy tym rodzaju pozyskiwania Bitcoina górnik mógł znajdować się w każdym miejscu na świecie. Udostępniał on moc obliczeniową swojego komputera niezbędną do utrzymania sieci, a w nagrodę otrzymywał określoną z góry liczbę monet. Kiedy w styczniu 2009 uruchomiono pierwszy bitcoinowy blok, tzw. bitcoin genesis block, Satoshi Nakamoto mógł wydobyć ponad 200 BTC przy pomocy jednego CPU w ciągu dnia. Przez pierwszych kilka lat możliwe było kopanie Bitcoina za pomocą laptopa lub komputera typu PC. Dlaczego nie można już wydobywać BTC w ten sposób? Gdyż CPU został zaprojektowany jako jednostka wykonawcza ogólnego przeznaczenia zwana ALU (ang. Arithmetic Logic Units). Karty graficzne – czyli GPU, to zespoły zawierające bardzo dużo tego typu jednostek, które przetwarzają podobne zestawy informacji jednocześnie. W CPU jest ich kilka, w GPU kilka tysięcy. Należy pamiętać, iż hashing wymagany w modelu PoW polega na wykonywaniu miliardów powtarzalnych obliczeń matematycznych jednocześnie. CPU nie były w stanie temu podołać i odeszły do lamusa.

GPU, źródło: www.pixabay

Kopanie przy wykorzystaniu GPU – czyli  kart graficznych stosowanych tradycyjnie do gier komputerowych, renderingu materiałów wideo a nawet łamania kodów. Jako ciekawostkę wspomnimy, iż za pomocą GPU można wydobywać większość kryptowalut opartych o PoW, gdyż mogą one obsługiwać wiele algorytmów, czego nie umożliwiają wysoce wyspecjalizowane koparki bazujące na technologii ASIC. Możliwy jest także upgrading poprzez wymianę czipów i innych elementów. GPU nie są natomiast niezależnymi jednostkami, potrzebna jest płyta główna, pamięć RAM oraz system połączeń za pomocą kabli.  O sposobie wydobywania decyduje rodzaj algorytmu. Wszystko brzmi ładnie i pięknie, jednakże obecnie mining Bitcoina na kartach graficznych jest nieopłacalny ze względu na znacznie większą wydajność i mniejsze zużycie elektryczności przez wyspecjalizowane jednostki ASIC, o których będzie mowa poniżej. GPU nie mają ściśle określonego zastosowania, i pomimo tego, że można je programować, w informatyce im dany układ jest bardziej uniwersalny, tym wolniejszy od układu przystosowanego do danych typów operacji.

Główna metoda wydobywania obecnie – ASIC

Układ scalony ASIC, źródło: www.wikipedia.com

ASIC – (skrót od Application Specific Integrator Circuit Chips) – co znaczy układ scalony przystosowany do danego zastosowania, wyspecjalizowane do wydobywania Bitcoinów. W języku potocznym nazywają się one koparkami i w rzeczywistości jest to nazwa zbiorcza układów elektronicznych, stworzonych na potrzeby wykonywania danej operacji matematycznej, ściśle się w niej specjalizujących i niemożliwych do przeprogramowania na poziomie softwarowym. ASIC dla Bitcoina pozwalają realizować tylko jeden algorytm – poszukiwanie funkcji skrótu (tzw. hashu) SHA-256. Są to niezależne jednostki, które wystarczy podłączyć do prądu oraz do tzw. mining pool (będzie o tym mowa w w osobnej sekcji). Dzięki koparkom wydobywanie stało się jeszcze szybsze i, co istotne, znacznie zmniejszono zużycie prądu. W miarę jak wzrasta popularność BTC, do sieci dołącza coraz więcej górników. Wadą koparek jest to, że są zdolne do wykonywania jednego konkretnego zadania i nie można wykorzystać ich w innych zastosowaniach. Gdy tylko wypuszczone zostaną nowe modele, stare stają się przestarzale, przestają być opłacalne ze względu na zużycie elektryczności. Dają wyższy zwrot w przeliczeniu na dolary niż GPU, ale szybko tracą wartość w przypadku chęci odsprzedaży. Do niedawna czynnikiem, który sprawiał, że wydobywanie Bitcoina w ten sposób było bardzo uciążliwe, wręcz nieznośne w warunkach domowych, był hałas emitowanym przez wiatraki będące częścią systemu chłodzenia. Dla najnowszych modeli koparek znaleziono już rozwiązanie tego problemu i chodzą one na tyle cicho, że przy włączonym sprzęcie można oglądać telewizję. Układy scalone ASIC są w stanie obliczać hashe setki tysięcy razy szybciej, niż nawet najlepszy procesor (CPU). Opłacalność kopania BTC za pomocą ASIC można obliczyć za pomocą specjalnego kalkulatora.

Wybrane modele najpopularniejszych koparek

Antminer S9, źródło: www.amazon.com

Parametry: hash rate – 14TH/s, zużycie prądu – 1300W

Bitcoin Miner Avalon 741, źródło: www.asicminermarket.com

Parametry: hash rate – 7,3 TH/s, zużycie prądu – 1150W

GMO miner B2, źródło: www. gmominer.z.com

Parametry: hash rate – 24TH/s, zużycie prądu – 1950W

Najbardziej znani producenci koparek

  • Halong Mining – firma powstała niedawno; produkuje jeden z najlepszych sprzętów do wydobywania Bitcoina i innych kryptowalut; na dzień dzisiejszy nie on dostępny w ogólnej sprzedaży, lecz niebawem ma być wyposzczona nowa partia.
  • Bitmain – firma chińska produkująca bardzo popularne koparki z linii Antminer, w tym popularny Antminer S9. Kontroluje także jedną z najwięszych kopalni (mining pool).
  • BitFury – to jeden z największych na świecei producentów sprzętu oraz chipów do wydobywania Bitcoina. Na ten moment sprzęt tej firmy nie jest dostępny w ogólnej sprzedaży
  • Canaan Creative, (zwany też w skrócie Canaan), producent sprzętu komputerowego z siedzibą w Pekinie, pionier w dziedzinie produkcji pierwszych procesorów do wydobywania Bitcoina, wytwórca popularnej koparki ASIC AvalonMiner 741.

Niniejszy link zawiera zestawienie najpopularniejszych koparek według stanu na czerwiec 2018.

Proces wydobywania a stopień trudności

Sieć BTC automatycznie zmienia stopień trudności zadań, w zależności od tempa ich rozwiązywania. Zasady systemu mówią, że z czasem wielkość nagrody zmniejsza się. Obecnie jest to 12,5 bitcoinów za jeden blok – następnie wartość zmaleje (średnio co cztery lata, dokładnie co 210000 bloków) do 6 BTC, konsekwentnie schodząc coraz niżej aż do momentu wydobycia ostatnich monet.

Te odgórne warunki ustanowione zostały przez twórców Bitcoina zanim wydobyto pierwszy blok i służą temu, by automatycznie regulować ilość emitowanych monet. Zatem, im więcej osób chce brać udział w procesie potwierdzania transakcji, tym bardziej zwiększa się trudność „zagadki matematycznej”, którą w przypadku Bitcoina jest otrzymanie wyniku funkcji skrótu (ang. hash)o określonych parametrach. Dostosowywanie stopnia trudności daje stabilizację tempa emisji waluty na pożądanym poziomie.

Rozwiązanie zagadki nie jest oparte na logice, lecz na zgadywaniu na ogromną skalę. To tak, jakby każdy z górników dostał kłódkę z kodem do rozszyfrowania. Dopiero po jego odgadnięciu ma on satysfakcję w postaci dołączenia naszego bloku do systemu oraz  wynagrodzenia. Najważniejsza jest łączna moc obliczeniowa, którą dany górnik lub ich grupa dysponuje (tzw. hash rate) – im jest ona większa, tym szybciej odgadnięta zostaje kombinacja. Deweloperzy tak zaprogramowali algorytmy, żeby czas potrzebny na wydobycie wyniósł około 10 minut. Gdy zwiększa się grono górników, odpowiednio zwiększany jest stopień trudności. Warto dodać, że nawet sam proces “zgadywania” wiąże się ze zużyciem znacznych ilości energii, a i tak większość podejść kończy się niepowodzeniem.

SHA 256 – czyli algorytm do wydobywania Bitcoina

Algorytm SHA-256 pojawił się tuż po powstaniu Bitcoina. Jest on zintegrowany z wydobywaniem tej kryptowaluty. SHA jest skrótem od angielskiej nazwy Secure Hash Algorithm i jest częścią rodziny algorytmów haszowania, opracowanym przez NASA (National Aeronautics and Space Administration – amerykańską  Narodową Agencję Aeronautyki i Przestrzeni Kosmicznej)

Schemat funkcji haszowania, źródło: www.wikipedia.com

SHA 256 oznacza 256 bitową kryptograficzną funkcję skrótu (zwaną również funkcją mieszającą lub funkcja haszującą), wykorzystywaną jako dowód pracy (Proof of Work) w systemie Bitcoina. Jest to jednokierunkowa funkcja haszująca, przyporządkowująca dowolnie dużej liczbie krótką, zawsze posiadającą stały rozmiar, quasi-losową wartość.

Moc opisujemy w skali “Hash na sekundę:

1MH = 1000H
1 GH = 1000MH
1 TH = 1000GH

Jednakże przy obecnym stopniu trudności, hash rate mierzona jest w terrashashah (TH), a nawet w petahashah (PT).

Mining pools – czyli “kopalnie”

Zestawienie Mining pools, źródło: (www.buybitcoinworldwide.com)

Mining pool oznacza miejsce, gdzie swoje siły (moc obliczeniową) łączą górnicy w celu wspólnego wydobycia bloków, dzieląc nagrodę proporcjonalnie do włożonego wkładu. W obecnych czasach samotne poszukiwanie bloków może zająć nawet setki lat i dlatego najlepszym sposobem wydobycia jest łączenie się w grupy wspólnie pracujące nad wydobyciem bloku. Powstanie „kopalni” było odpowiedzią na trudności z uzyskaniem wynagrodzenia przez indywidualnych górnikow. Powyższy diagram obejmuje zestawienie “kopalni” pod względem łącznej mocy obliczeniowej, którą dysponuje dany mining pool.

Niniejszy link prowadzi strony w języku angielskim zawierającej kompleksowe zestawienie “kopalni” wraz z adresami stron internetowych.

Czym jest bitcoinowa farma?

Farma bitcoinowa Genesis Mining, źródło: www.youtube.com

Jest to wyspecjalizowany kompleks skupiający olbrzymie moce obliczeniowe w postaci polączonych ze sobą jednostek ASIC oraz (lub) GPU. Typowa farma Bitcoinów bazuje na prostym założeniu – im więcej mocy obliczeniowej wygeneruje, tym więcej BTC zdobędzie. Właśnie dlatego w różnych miejscach na świecie tworzone są ogromne hale (na pierwszy rzut oka przypominające serwerownie) służące tylko i wyłącznie do miningu. Najwieksze ich skupisko przypada na Chiny, a takze Rosję, Stany Zjednoczone oraz kraje skandynawskie i Islandię.

Prędkość obliczeniowa największych farm liczona jest w petahash’ach na sekundę. Pobór mocy takich molochów wynosić może nawet 21 megawatów! Oczywiście istnieją zdecydowanie mniejsze farmy.

Wydobycie BTC z podzialem na rejony, źródło: Global Cryptocurrency Benchmarking Study, University of Cambridge

Baza wiedzy w języku polskim

www.bitcoin.pl

www.bitcoin.edu.pl

www.pl.wikibooks.org – sekcja poświęcona wydobywaniu

www.pl.khanacademy.org  – sekcja poświęcona Bitcoinowi znajduje sie pod tym linkiem

www.thardware.plporadnik wydobywania kryptowalut w 4 częściach

Baza wiedzy w języku angielskim

www.en.bitcoin.it/wiki/Block_hashing_algorithm – opis techniczny tworzenia bloków

www.bitcoinmining.com – zwięzłe kompendium wiedzy na temat wydobywania Bitcoina

www.medium.freecodecamp.org/how-bitcoin-mining-really-works-38563ec38c87 – szczegółowy opis procesu wydobywania Bitcoina

www.bitcoinchain.com/pools – porównanie mining pools

www.cryptomining-blog.com – popularny blog dla milosnikow kopania Bitcoina i innych kryptowalut

www.blog.genesis-mining.com – blog z nowinkami dla milosnikow kopania od gornikow z Genesis Mining

www.en.bitcoin.it/wiki/Mining_hardware_comparison– porównanie sprzętu do wydobywania bitcoina

www.cointelegraph.com – popularny serwis poświęcony kryptowalutom – tutaj opisuje różne sposoby wydobywania Bitcoina

www.coindesk.com – kolejny kryptowalutowy serwis – tutaj opisany jest proces wydobywania Bitcoina

www.blog.feedspot.com/crypto_mining_blogs/ – zestawienie 15 blogow poświęconych kopaniu