Obalmy mit: 10-minutowy czas potwierdzenia sprawia, że Bitcoin nie nadaje się jako metoda płatności.

2 84
Avatar for Telesfor
4 years ago

Dostępny również w wersji: English, Español, Deutsch

Zwolennicy Bitcoin Core (BTC) twierdzą, że Bitcoin nie jest przeznaczony do zakupu kawy. Twierdzą oni, że Bitcoin jest środkiem oszczędności, cyfrowym złotem, a nie walutą.

Zwolennicy Bitcoin Cash (BCH), uważają jednak, że Bitcoin jest przeznaczony i do stosowania jako środek wymiany, a także jako środek oszczędności. Zwolennicy BCH chcą, aby ich waluta była używana do opłacania kawy, posiłków, przejażdżek taksówką i wszystkiego innego, co można sobie wyobrazić.

Skąd ta różnica?

Aby odpowiedzieć na to pytanie prawidłowo, musimy wyjaśnić pewne techniczne różnice pomiędzy BTC i BCH. 1 sierpnia 2017 roku doszło do podziału sieci Bitcoina na Bitcoin BTC i Bitcoin BCH. Oznacza to, że zarówno BTC jak i BCH mają taką samą historię transakcji od bloku odzyskiwania do wysokości bloku 478557, ale wszystkie transakcje dokonane po tej dacie nie są dzielone między obie sieci. Poniższy wykres jest dobrym przeglądem głównych forków, które miały miejsce na przestrzeni lat:

Oprócz różnych zapisów transakcji po sierpniu 2017 r., główna różnica między BTC i BCH polega na tym, że BTC utrzymała limit wielkości bloku wynoszący 1 MB, a BCH zwiększyła go z 1 MB najpierw do 8 MB, a następnie do obecnych 32 MB.

Dlaczego rozmiar bloku jest taki ważny? Sposób działania Bitcoina polega na tym, że gdy transakcje są po raz pierwszy przesyłane do sieci, pozostają one "niepotwierdzone" i siedzą w czymś w rodzaju "poczekalni" zwanej mempool, aż zostaną włączone do potwierdzonego bloku. Dopiero po włączeniu do bloku są one "rozpoznawane" i w ten sposób opuszczają mempool. Bloki są potwierdzane co ok. 10 minut i połączone ze sobą w łańcuchu blockchain. Im więcej bloków zostało potwierdzonych po bloku w którym znajduje się transakcja, tym mniejsze jest prawdopodobieństwo, że transakcja może zostać odwrócona. Z tego powodu giełdy wymagają zazwyczaj kilku "potwierdzeń" zanim uznają transakcję za ważną.

Ponieważ BTC ma mniejsze bloki i wiele transakcji, w następnym bloku może nie być miejsca na wszystkie transakcje oczekujące na potwierdzenie. Oznacza to, że wszystkie pozostałe transakcje muszą czekać na blok, w którym jest dla nich miejsce. Ponieważ BTC ma mniejsze bloki, a w tej chwili jest ich więcej, w następnym bloku może nie być miejsca na wszystkie transakcje oczekujące na potwierdzenie. Oznacza to, że wszystkie pozostałe transakcje muszą czekać na blok, w którym jest dla nich miejsce. Aby tę sytuację jakoś uregulować, deweloperzy Bitcoin Core stworzyli "rynek opłat", na którym transakcje z najwyższymi opłatami mają pierwszeństwo przed transakcjami z niższymi opłatami. Wdrożyli oni nowe oprogramowanie znane jako Replace By Fee (RBF). W ten sposób, jeśli dokonujesz transakcji BTC w okresie dużego ruchu w sieci, i transakcja nie jzostała potwierdzona, możesz wysłać te same monety w innej transakcji, ale z wyższą opłatą, w nadziei, że szybciej dostanie się do bloku.

Niestety, RBF odbija się fatalnym błędem, który zasadniczo uniemożliwia użycie BTC jako gotówki. Wynika to z faktu, że RBF ułatwia ludziom dokonywanie tzw. podwójnych wydatków na sieci BTC. Powiedzmy, że jesteś w kawiarni, zamawiasz kawę. Dokonujesz transakcji, która jest rozpoznawana przez system aje jest dopiero w poczekani (w mempool) i od razu otrzymujesz swój napój. Jak tylko wychodzisz ze sklepu, wysyłasz nową transakcję z tymi samymi monetami, ale z wyższą opłatą, nie do portfela kawiarni, ale na adres, który sam kontrolujesz. Ze względu na RBF, transakcja z wyższą opłatą zostanie przeniesiona na następny blok, a pierwotna transakcja z niższą opłatą zostanie całkowicie anulowana. Kawiarnia nigdy nie otrzyma pieniędzy, a ty możesz zatrzymać swoją kawę. To jest to, co jest znane jako podwójne wydawanie (double spending). Obejrzyj poniższy film, aby zobaczyć, jak łatwo można to wykorzystać w BTC:

Jak widzicie, z powodu aktywacji RBF, BTC nie nadaje się już jako metoda płatności gotówkowej. Złodziej mógłby nakraść się w sklepie do woli. Jeśli jesteś przedsiębiorcą, który akceptuje BTC, wskazane jest, aby poczekać na co najmniej jedno potwierdzenie, aby upewnić się, że transakcja na pewno yostała dokonana. Oczywiście nikt nie jest skłonny siedzieć w sklepie przez dziesięć minut (lub więcej) i po prostu czekać na potwierdzenie transakcji i wydanie towaru.

Ale są też dobre wieści. Bitcoin Cash może być używany jako gotówka, ponieważ BCH nie ma RBF. Zamiast tego, sieć działa zgodnie z zasadą "kto pierwszy ten lepszy". Górnicy akceptują pierwszą widzianą transakcję, w przeciwieństwie do transakcji z najwyższą opłatą. Oznacza to, że w sieci Bitcoin Cash znacznie trudniej jest podjąć zakończoną sukcesem próbę podwójnego wydania tych samych pieniędzy. Przedsiębiorcy mogą przyjmować transakcje, które nie zostały jeszcze potwierdzone w bloku, ze względną pewnością, ponieważ nie muszą martwić się o to, że klienci opuszczą sklep i dokonają tymi samymi monetami nowej transakcji, aby zastąpić tę, którą właśnie dokonali. Transakcje, które nie zostały jeszcze potwierdzone, nazywane są transakcjami z zerowym potwierdzeniem (0-conf). Gdy opcja 0-conf jest włączona, użytkownicy mogą wysyłać i odbierać BCH natychmiast, bez konieczności czekania na potwierdzenie transakcji w bloku.

Ale poczekaj, a co ze statystykami o podwójnym wydawaniu pieniędzy na doublespend.cash? Dobre pytanie.

Technicznie nadal możliwe jest dokonanie podwójnego wydanie BCH. Tylko, że jest to po prostu o wiele trudniejsze. Musiałbyś wysłać dwie transakcje praktycznie w tym samym czasie i mieć nadzieję, że oszukańcza transakcja jest tą, która ostatecznie zostanie potwierdzona. Ale jeśli próba podwójnej transakcji zostanie wysłana nawet kilka sekund po oryginale, szanse na to, że zostanie ona zawarta w bloku drastycznie się zmniejszają, ponieważ pierwsza transakcja prawdopodobnie została już rozprowadzona w całej sieci. Jest to więc w sumie możliwość jedynie teoretyczna.

Oto tweet twórcy doublespend.cash mówiący, że jeśli próba podwójnego wydatku nie zostanie wysłana w tym samym czasie, szanse na sukces były tylko 1 do 3992.

W związku z tym system POS sprzedawcy musi jedynie odczekać kilka sekund, aby sprawdzić sieć i upewnić się, że nie została następnie przesłana kolejna transakcja z użyciem tych samych monet. Jeśli dojdzie do kolejnej transakcji, mogą po prostu odrzucić sprzedaż. Jeśli sprzedasz 5 filiżanek kawy za 5 dolarów, czy jesteś gotów zaryzykować, że złodziej ma szansę 1 do 4000 (.025%) aby cię oszukać? Zakładając, że większość twoich klientów to normalni ludzie, którzy nie próbują cię oszukiwać za pomocą zaawansowanego technologicznie oprogramowania, możliwość zostania oszukanym będzie o rząd wielkości mniejsza niż 0,025%.

Może to nie jest to, co chciałeś usłyszeć. Może chciałeś usłyszeć, że 0-conf na BCH jest absolutnie bezpieczne, ale w rzeczywistości nigdy nie możesz być w 100% pewien, że transakcja jest bezpieczna. Nawet przy potwierdzonych transakcjach, teoretycznie możliwe jest cofnięcie sieci do wcześniej potwierdzonych bloków. Prawdziwe pytanie brzmi więc tylko, jak duże ryzyko jesteś skłonny zaakceptować w swoim biznesie. Jeśli próbujesz sprzedać dom za milion dolarów, to prawdopodobnie dobrym pomysłem jest poczekać na serię potwierdzeń przed zakończeniem sprzedaży. Ale jeśli mówimy o sprzedaży filiżanek kawy, transakcje natychmiastowe, bez potwierdzenia (0-conf) nie powinny stwarzać ryzyka.

Niemniej jednak, twórcy protokołu Bitcoin Cas nadal pracują nad sposobami poprawy bezpieczeństwa 0-conf, tak aby w przyszłości ryzyko przyjęcia niepotwierdzonych płatności było jeszcze mniejsze.

Podsumowując, o ile 10-minutowy czas potwierdzenia może spowodować, że BTC nie nadaje się jako metoda płatności gotówkowej, to te same zasady nie dotyczą BCH, który został stworzony do wykorzystania jako gotówka do płatności codziennych, jako środek oszczędności i w przyszłości jako jednostka rozliczeniowa.

Dziękuję za lekturę.

Bardzo dziękuję ludziom z Coinspice Telegram Channel, którzy pomogli mi odpowiedzieć na niektóre z moich pytań o 0-conf i Double Spending, i słynnemu Jonald'owi Fyookball'owi, który był na tyle dobry, że zaoferowa mi przeczytanie mojego wpisu, aby upewnić się, że nie było w nim rażących błędów.

Tekst oryginalny napisany przez Cain

6
$ 1.20
$ 1.00 from @Read.Cash
$ 0.10 from @Messier87
$ 0.10 from @bregecko
Avatar for Telesfor
4 years ago

Comments

+50 MYTHBUSTER

txid: 3ba97f159d178c1af999cbe1ef6e3d7deac55ac65fe5670bd398ce723bb527f7

$ 0.00
User's avatar btcfork
This user is who they claim to be.
We have manually verified this user via some other channel.
4 years ago

Thank you!

$ 0.00
4 years ago