Crypto

Czy Skala Bitcoinów? Lub Jak Nauczyłem Się Przestać Się Martwić I Kochać Twardy Dysk

Crypto Czy Skala Bitcoinów? Lub Jak Nauczyłem Się Przestać Się Martwić I Kochać Twardy Dysk

The Choice is Ours (2016) Official Full Version (Listopad 2018).

Anonim

Zmiany w protokole Bitcoin są z natury sprzeczne. Gdy aktualizujesz normalne oprogramowanie, po prostu mówisz sprzętowi, co ma robić, a sprzęt to robi. W przypadku Bitcoina sprzęt może się z tobą spierać. Bitcoin jest wdrażany w rozproszonej grupie niesfornych socjopatów (górników), w ciągłym meksykańskim dystansie, który musi być słodko przemawiający do każdej zmiany.

Z powodu zdecentralizowanej natury Bitcoin, fundamentalne zmiany (tak zwane "twarde widły") do działania protokołu mogą być dokonywane jedynie za pomocą zgody większości, a jeśli zgoda nie jest zbliżona do jednomyślności, wynik jest podzielona baza użytkowników i trwałe uszkodzenie integralności waluty. Niestety, te twarde widły są również ważne, jeśli waluta ma się rozwijać, zmieniać i skalować.

Niedawno donieśliśmy, że Gavin Andresen, jeden z najważniejszych programistów rdzenia Bitcoin, zaproponował twardy widelec, aby zwiększyć możliwy rozmiar bloku z 1 megabajta do co najmniej 20 (plus protokół, aby umożliwić wzrost liczby w czasie ). Doprowadziło to do pewnych problemów w społeczności, więc dzisiaj zamierzamy usiąść i przyjrzeć się, bardziej szczegółowo, co robi widelec, jakie mogą mieć negatywne konsekwencje i jakie przyszłe zmiany będą potrzebne, gdy skaluje Bitcoin.

Status Quo

Po pierwsze spójrzmy, co się stanie, jeśli nie wprowadzimy żadnych zmian: Bitcoin prawdopodobnie nadal rośnie w użyciu, a liczba transakcji naturalnie rośnie. W pewnym momencie zostanie osiągnięty limit transakcji wynoszący 1 MB (gdy stawka transakcji wynosi około 5555 transakcji na blok). Nagle górnicy będą mieli problem: jeśli uwzględnią wszystkie transakcje, które otrzymają, ich bloki zostaną odrzucone przez sieć za zbyt duże. Prawdopodobnie zaczną więc odliczać wszystkie transakcje o najniższych opłatach, aż osiągną limit 1 MB. Oznacza to, że jeśli Twoje transakcje nie znajdują się w górnej części 5555 opłat transakcyjnych, zostaną one zignorowane, prawdopodobnie na zawsze. Bitcoin nigdy nie będzie w stanie utrzymać stóp transakcji powyżej 5555 na piętnastominutowy interwał bloku (nieco poniżej 7 na sekundę). Jeśli istnieje popyt powyżej tego poziomu, opłaty będą rosnąć, aby zmniejszyć go.

Jeśli Bitcoin rozwinie się poza ten punkt, będzie to miało postać transakcji poza łańcuchem, a Bitcoin stanie się po prostu infrastrukturą bazową dla całej nowej generacji banków bankowych (prawdopodobnie regulowanych), które używają tradycyjnych scentralizowanych sieci do przemieszczania się. pieniądze między użytkownikami. Opłaty za "normalne" przelewy Bitcoin będą zbyt wysokie dla zwykłych użytkowników. Dla mnie jest to koszmarny scenariusz i warto go unikać.

Proponowana zmiana

Zmiana nie jest pozbawiona wad. Największą obawą związaną z samą zmianą jest to, że w miarę jak sieć się skaluje, jeśli wzrost sieci przewyższy wzrost pamięci dyskowej na jednego dolara, całkowite zapotrzebowanie na pamięć w sieci może wzrosnąć.Już pobieranie kilku gigabajtów historii sieci jest znaczącą przeszkodą w uruchomieniu pełnego węzła Bitcoin. Jeśli wolumen transakcji nadal będzie rósł bez ograniczeń, liczba ta może wzrosnąć do terabajtów, co zwiększy motywację do wydobywania zasobów i zwiększy ryzyko 51% ataków.

Istnieje wiele innych obiekcji związanych z bezpieczeństwem, ale wydaje się, że to przede wszystkim praca małej społeczności ludzi o dość zwariowanych ludziach, którzy nazywają siebie "Władcą Bitcoinów". "Zasadniczo ich skarga polega na tym, że zwiększanie rozmiarów bloków oznacza, że ​​klienci pracujący w kopalni będą musieli wydatkować więcej mocy procesora, budując drzewa Merkle dla poszczególnych bloków. Zgodnie z moją najlepszą wiedzą nie jest to szczególnie poważny zarzut: budowanie drzewek Merkle jest niezwykle kosztowne obliczeniowo, a procesory są coraz szybsze i szybsze niż inne potencjalne wąskie gardła, takie jak przepustowość sieci. Ogólnie rzecz biorąc, myślę, że można całkowicie wyłączyć tę obawę.

Zwiększony ślad dysku twardego jest poważnym problemem, ale można go rozwiązać za pomocą "oczyszczonych" protokołów blokowania łańcucha bloków, które umożliwiają większości węzłów przechowywanie tylko tylnych bloków łańcucha bloków w bezpiecznym miejscu. moda, ograniczając maksymalny zasięg pamięci poszczególnych węzłów wydobywczych i zwalczając tendencję do centralizacji. Ta zmiana protokołu już trwa.

Być może najbardziej namacalnym zarzutem wobec zmiany jest po prostu to, że twarde widły są przerażające i kosztowne dla całej sieci. Istnieją jednak dobre sposoby na zminimalizowanie tych kosztów: Bitcoin wprowadził już przełomowe zmiany, które nastąpiły w znacznej mierze niezauważone, ponieważ zostały wbudowane w klientów na kilka miesięcy lub lat przed ich faktycznym wdrożeniem, zapewniając, że czas, w którym aktualizacja faktycznie wchodzi w życie, większość górników korzysta z najnowszego klienta (po aktualizacji), ponieważ niezaktualizowani klienci od miesięcy nie są dostępni od żadnego renomowanego dostawcy oprogramowania do pobierania. Sprzęt górniczy przestaje działać szybko i często trzeba pobierać nową kopię klienta wyszukiwania podczas wymiany sprzętu, szczególnie, że wydajność często poprawia się z wersji na wersję. Twarde widły, opóźnione w ten sposób, mogą być względnie bezkrwawe.

Oznacza to oczywiście, że sieć zgadza się na zmianę. Jeśli istnieje powszechne bunt górnik, widelec może zawieść. Lub, co gorsza, sieć może uzyskać relatywnie równomiernie (i trwale) podział między alternatywnymi wersjami łańcucha blokowego ideologicznie - co byłoby wyjątkowo złe i ogromne szkody dla integralności Bitcoina i jego wiarygodności w oczach opinii publicznej. Dobrą wiadomością jest to, że widelec wygląda na stosunkowo niekontrowersyjny: większość górników chce, by ich bitcoiny były warte więcej, a to się nie stanie, jeśli Bitcoin pozostanie na obecnym poziomie. Ta zmiana musi nastąpić, aby Bitcoin stał się globalny. Społeczność górnicza w dużej mierze nie jest na tyle szalona, ​​by sądzić, że Bitcoin może trwać bez zmian na zawsze i pozostanie nawet nieznacznie istotnym na arenie światowej.Jeśli Bitcoin nigdy się nie zmieni, zostanie zastąpiony przez altcoin, który może.

Przyszłe zmiany

Ten blokowy problem to tylko pierwsza i najbardziej trywialna zmiana, która jest konieczna, aby umożliwić skalowanie Bitcoin. Poruszaliśmy inne zmiany (przycinanie łańcucha bloków), ale w rzeczywistości to dopiero początek. Bitcoin za pięć lat będzie wyglądał bardzo, bardzo różni się od Bitcoina. Bitcoin wciąż znajduje się w żywym stadium rozwoju i konieczne są liczne zmiany, jeśli będzie działał w skali PayPal lub Visa.

Wyobraź sobie możliwą przyszłość, w której ustalono zarówno limity wielkości bloku, jak i limity przechowywania łańcucha bloków dla górników. Nie jesteśmy jeszcze poza lasem! Kolejna wielka sprawa, na którą natrafiają górnicy, ma związek z wyścigami blokowymi: kiedy dwóch górników kopie bloki mniej więcej w tym samym czasie, co zdarza się okresowo, następuje wyścig, aby zobaczyć, który z nich może najpierw przekazać swój blok do całej sieci. Ponieważ mniejsze bloki można rozłożyć szybciej, stwarza to zachętę dla górników do wyrzucania transakcji o niskich opłatach - co jest złe.

Rozwiązanie, które wciąż jest badane, nazywa się "odwracalnymi filtrami kwitnącymi". "Algorytm tutaj jest niesamowicie sprytny, ale wykracza poza zakres tego artykułu. Oto, co mogą zrobić:

Powiedzmy, że dwóch górników chce udostępnić blok, który jest propagowany w sieci. Kiedy górnik przenosi go do górnika dwa, większość przepustowości jest marnowana, ponieważ górnik dwa ma już kopię większości danych obecnych w bloku. Widzieli już prawie wszystkie transakcje obecne w bloku niezależnie, na własnej próbie wydobycia bloku.

Odwracalne filtry kwitnienia pozwalają uzyskać większość tej straconej przepustowości. Zamiast przesyłać cały blok, filtry odwracalnego zakwitu pozwalają ci przyjąć oczekiwaną różnicę między zestawami danych i przekazują niewielką porcję skompresowanych danych, równoważną wielkości oczekiwanej różnicy oraz niewielkiemu obciążeniu, a następnie rozpakowują ten fragment danych. w dowolne fragmenty danych, których brakuje, niezależnie od tego, które fragmenty są.

Pomyśl o odwracalnym filtrze kwitnącym jako o obrazie, który możesz oglądać pod różnymi kątami i widzieć różne rzeczy. Możesz użyć danych, które posiadasz, aby rozróżnić ich strukturę i odkryć dane, których nie masz. Jest on stratny i zawiera błędy, ale w zastosowaniach praktycznych błędy te mogą być arbitralnie niskie. Głównym skutkiem jest to, że pozwala ustalić czas propagacji bloku, niezależnie od liczby transakcji - ilość danych, które należy przesłać, zależy tylko od tego, jak podobny jest twój zestaw transakcji do twoich sąsiadów, a nie od tego, ile transakcji wykonałeś w całości. Jako miły efekt uboczny, tworzy to również zachętę do transmisji transakcji do sąsiadów w miarę ich otrzymywania (aby przyszłe transmisje blokowe mogły się odbywać szybciej), zamiast gromadzić transakcje dla siebie, co narzucają obecne zachęty. To skutecznie naprawia perwersyjną zachętę mniejszego górnika, która została wbudowana w Bitcoin od samego początku.

Po zaimplementowaniu tego protokołu, ostatnim poważnym problemem, który napotkasz, jest potrzeba, aby poszczególni górnicy nadążali za wszystkimi transakcjami dokonanymi w sieci. Nie jest jasne, jak poważny będzie to problem (możliwe, że dostępna przepustowość będzie nadal rosła przed wykorzystaniem Bitcoinów). Jeśli stanie się to problemem, należy wdrożyć jakąś bardziej egzotyczną strukturę łańcucha blokowego, jak łańcuchy boczne lub łańcuchy drzewa, aby struktura sieci była łatwiejsza w zarządzaniu.

Po zainstalowaniu całej tej infrastruktury droga ostatecznie staje się jasna, aby Bitcoin mógł naprawdę się skalować. Oto fragment blogu Andresena:

"Istnieje wyraźna ścieżka do rozbudowy sieci do obsługi kilku tysięcy transakcji na sekundę (" Skala wizowa "). […] Zgodnie z moimi szorstkimi kalkulacjami na temat koperty, moje ponadprzeciętne domowe połączenie z Internetem i ponadprzeciętny komputer domowy mogą z łatwością obsługiwać dzisiaj 5 000 transakcji na sekundę. To daje 400 milionów transakcji dziennie. Całkiem dobre; każda osoba w Stanach Zjednoczonych mogła dokonać jednej transakcji Bitcoin dziennie, a ja wciąż byłbym w stanie nadążyć.

Po 12 latach zwiększania przepustowości, która wynosi 56 miliardów transakcji dziennie w moim połączeniu z siecią domową - wystarczy, aby każda osoba na świecie wykonała pięć lub sześć transakcji bitcoin każdego dnia. Trudno sobie wyobrazić, że nie wystarczy; według Rezerwy Federalnej w Bostonie przeciętny konsument w USA zarabia nieco ponad dwie płatności dziennie.

Więc nawet jeśli wszyscy na świecie przestawili się całkowicie z gotówki na Bitcoin za dwadzieścia lat, transmisja każdej transakcji do każdego w pełni walidującego węzła nie będzie problemem. "

Pozostało jeszcze wiele dyskusji przed wprowadzeniem wszystkich tych zmian. Nawet prosty wzrost rozmiaru bloku jest uważany za zbyt agresywny przez niektórych głównych twórców. Nic w Bitcoin nie dzieje się z dnia na dzień, a minie wiele lat zanim niektóre z tych zmian zostaną wprowadzone. Tak czy inaczej, to ekscytujący czas, aby zainteresować się Bitcoinem i istnieje dobry powód, by wierzyć, że Bitcoin ostatecznie będzie w stanie osiągnąć zasięg i wpływ, jaki wszyscy chcemy.

Popularne Wiadomości