Czym jest Selfish Mining
HomeArticles

Czym jest Selfish Mining

Zaawansowany
4d ago
4m

Zawartość


Zrozumienie czynników zachęcających do obsługi sieci Bitcoin

Bitcoin jest delikatnie zbalansowaną grą zachęt. W zdecentralizowanym ekosystemie spełnianie potrzeb wszystkich uczestników jest kluczowe, by sieć mogła być użytkowa w długim okresie. Zachęty, które nakłaniają  węzły do zabezpieczenia sieci, są głównie finansowe – jeżeli działają w dobrej intencji, zostają nagrodzone. Jeżeli spróbują jednak oszukiwać, omija je potencjalny zarobek.

Jest to oczywiste w miningu. Uczestnicy inwestują dużą część swojego kapitału na prąd i wyspecjalizowane komponenty w nadziei na zwrot finansowy ich inwestycji oraz profit za dodawanie bloków do blockchainu. Minerzy chcą zmaksymalizować swój zysk i najłatwiejszym sposobem na to jest granie zgodnie z zasadami.

Gdy miner doda  blok do łańcucha, otrzyma on wszystkie zapłacone opłaty z transakcji wykonanych na tym właśnie bloku, a także część z nowo wykopanych coinów. Nazywamy to nagrodą blokową, a ilość otrzymanych coinów przez minera zmniejsza się dwukrotnie co 210 000 bloków (średnio co cztery lata). W momencie tworzenia tego wpisu nagrodą jest 12.5 BTC, jednak zostanie ona zmniejszona do 6.25 już za  parę miesięcy 

Nakłanianie do miningu za pomocą zachęt finansowych zmieniło to zajęcia na bardzo konkurencyjne, co finalnie zwiększa bezpieczeństwo oraz decentralizację sieci. Niektórzy spekulują, że da się grać wokół tych zachęt. W tym artykule postaramy się przybliżyć wam założenie  selfish miningu

Jeżeli chciałbyś przeczytać więcej na temat zachęt stojących za Bitcoin, sprawdź Wprowadzenie dla Początkujących do Kryptoekonomi.


Jak działa selfish mining?

Najbardziej dogłębną analizę selfish miningu można znaleźć w dokumencie z 2013 roku Większość nie wystarcza: Bitcoin Mining jest zagrożony stworzonym przez badaczny Ittay Eyal oraz Emin Gun Sirer. Teza tego dokumentu stanowi, iż w przeciwieństwie do tego, co może nam się wydawać, zachęty dla minerów Bitcoin mają duże wady i mogą finalnie doprowadzić do centralizacji sieci.

Selfish mining można dobrze wyjaśnić za pomocą przykładu. Załóżmy, że cały hash rate jest równo rozłożony pomiędzy 4 minerów: Alice, Bob, Carol i Dan (każdy posiada 25%). Alice, Bob i Carol grają zgodnie z zasadami, ale Dan ma zamiar wykorzystać system dla własnego zysku.

Przy normalnych warunkach moglibyśmy zakładać, że miner, który znajdzie nowy blok, doda go odrazu do łańcucha. Tak też właśnie czynią Alice, Bob i Carol, jako że starają się być uczciwymi uczestnikami. Jednak Dan, gdy znajdzie blok, przetrzymuje go (jest to dobre rozwiązanie, ale nie zostało jeszcze wprowadzone). Może mu się poszczęścić i znajdzie dwa bloki z rzędu przed innymi.

Załóżmy, że wykopanych zostało 100 000 bloków. Alice, Bob i Carol próbują zaproponować 100 001 blok. Znajduję go jednak Dan i zatrzymuję to informacje dla siebie. Istnieją teraz dwa łańcuchy, ten publiczny oraz ten sekretny (i dłuższy) należący do Dana. Kiedy wszyscy inni próbują znaleźć blok 100 001, on znajduję już 100 002.

Łańcuch Dana jest w tym momencie o dwa bloki do przodu. Jeżeli szczęście będzie się go trzymać i jeżeli dalej będzie mógł utrzymywać ten dystans przed publicznym blokiem, może on kontynuować swoje działania. Jeżeli jednak reszta go nadgoni i będą tylko jeden blok za nim, odkrywa on swój łańcuch.

Publiczny łańcuch Dana jest w tym momencie dłuższy, niż ten, nad którym pracowali pozostali uczestnicy. Zgodnie z zasada  najdłuższego łańcucha , “właściwym” łańcuchem jest ten, który zebrał największy Proof-of-Work (miarę zwaną także chainwork). Więc jeżeli węzeł wykryje łańcuch, który skumulował więcej pracy, przełączy się on na niego i będzie dedykował moc miningu właśnie niemu.

Teraz Alice, Bob oraz Carol widzą łańcuch Dana; rozpoznają go od teraz jako łańcuch, na którym będą pracować. Nagrody, nad którymi pracowali na wcześniejszym chainie przepadły, a z racji, że Dan wykopał wszystkie poprzednie bloki na tym chainie, zatrzymuję nagrodę dla siebie.


Czy selfish mining stanowi zagrożenie dla Bitcoina?

Prawdą jest, że byłoby taniej dla wszystkich uczestników, gdyby wszyscy zachowywali się tak, jak zakłada system. Selfish mining przyczynia się do marnowania czyjejś pracy, jednak warto zaznaczyć, że ci zaangażowani w tę praktykę muszą utrzymywać strategiczną przewagę nad innymi uczestnikami sieci. W wyniku tego, do atakujących prawdopodobnie dołączą minerzy, którzy tylko pogorszą całą sytuację.

W tym dokumencie Eyal oraz Sirer podkreślają ważne ryzyko: z biegiem czasu selfish mining może doprowadzić do rosnących zbiorowisk miningowych w hash rate, gdyż uczestnicy będą łączyć się w grupy z jednostkami praktykującymi selfish mining, by zmaksymalizować swoje zyski. Kiedy dane zbiorowisko osiągnie większość mocy, będzie mogło ono spróbować przeprowadzić atak 51%.

Inni jednak nie uważają tego za zagrożenie, powołując się na wybory ideologiczne dokonywane przez minerów, a także zachęcając do operowania sieci w sposób zdecentralizowany. Pozwalający ekosystemowi na bycie skorumpowanym odbierze możliwość minerom odzyskania swoich inwestycji w prąd oraz maszyny, a tym bardziej nie pozwoli na zdobycie profitu.


Przemyślenia końcowe

Jeżeli selfish mining może zostać sukcesywnie przeprowadzony przez konsorcjum minerów, faktycznie może być to atrakcyjna taktyka dla tych, którzy chcą zwiększyć swoje przychody. W najgorszym wypadku zachęty zmuszą poprawnie działających minerów do dołączenia do tych łamiących zasady gry, co negatywnie wpłynie na decentralizację Bitcoin.

Jednakże patrząc na sprawę szerzej, nie ma to większego sensu, by uczestnicy układali się w takie ugrupowania. Koniec końców, pogarszanie bezpieczeństwa sieci może spowodować spadek ceny Bitcoin, co przyczyni się bezpośrednio do spadku przychodów z miningu.