Fot.Pixabay

Prawdopodobnie jednym z największych problemów każdego dewelopera kryptowalut jest tak zwany double spend, czyli podwójny wydatek kryptowaluty. Podwójne wydatki nazywamy sytuacją, w której posiadaczowi bitcoina udaje się spieniężyć ten sam token dwa razy. W ten sposób w blockhainie powstaje rozbieżność między wydatkami za kryptopwaluty oraz ilością samych tokenów. Takie sytuacje są bardzo niebezpieczne dla dystrybucji systemu finansowego, którym jest bitcoin. Kwestia podwójnego wydawania to problem, którego nigdy wcześniej nie doświadczyliśmy podczas operowania gotówką. Jeżeli wydamy 10 złotych na obiad, przekazujemy pewien nominał dla sprzedawcy. Nie istnieje sposób na to, abyśmy mogli ponownie zapłacić za pośrednictwem tego samego banknotu. Mimo wszystko blockchain operuje na plikach komputerowych. Kiedy operujemy cyfrowymi pieniędzmi, powstaje ryzyko związane ze skopiowaniem danych transakcji. Poprawne powielenie danych mogłoby doprowadzić do sytuacji, w której jedna osoba wydaje ten sam token wielokrotnie. Czy problem, z którym się mierzymy, jest jednak poważny? Sprawdźmy, czy mamy się czego obawiać.

Zrozumienie systemu blockchain

Blockchain, na którym opieramy waluty cyfrowe i między innymi bitcoina, nie jest w stanie samodzielnie zapobiec podwójnemu wydatkowaniu swojej waluty. Powstał jednak skuteczny sposób na zabezpieczenie bloków. Wszystkie transakcje w blockchainie dotyczące wydanej kryptowaluty są wysyłane do łańcucha bloków. W tym łańcuchu weryfikujemy na bieżąco i chronimy kryptografią transakcje na czas dokładnego sprawdzenia danych. W przypadku walut, takich jak bitconi lub ethereum transakcje po potwierdzeniu zostają nieodwracalnie publikowane. Bitcoin to pierwsza waluta cyfrowa, którą poznaliśmy. Również jako pierwszy rozwiązał problem związany z double spendem w sieci blockchain. Wszystko za sprawą uniwersalnego systemu księgowania i bieżącego potwierdzania transakcji przez górników w blockchainie. Łańcuch bloków bitcoina zapisuje wszystkie transakcje, które miały miejsca aż od 2009 roku. Dzięki temu mamy całkowitą pewność co do tego, że w systemie tej kryptowaluty nie doświadczymy podwójnego wydatkowania. Zapisy te są przez blockchain przechowywane wraz z dokładnymi kwotami i zapisami czasowymi. Są oryginalne i niepodrabiane.

Fot.Pixabay

Efektywne radzenie sobie z podwójnym wydatkowaniem tokenów

Cały system jest naszym zdaniem skonstruowany w bardzo prosty sposób, który ułatwia rozumowanie dla osób niezaznajomionych z kryptografią. Wystarczy, że wyobrazimy sobie kogoś, kto ma jednego bitcoina. Jeśli osoba ta podjęłaby się próby sprzedania tego bitcoina dwukrotnie w dwóch oddzielnych transakcjach, co się stanie? Teoretycznie możliwe byłoby wysłanie tego samego bitcoina na dwa różne adresy. Obie transakcje z tym samym bitcoinem trafiają wówczas do puli niepotwierdzonych przelewów. Pierwsza z transakcji, którą potwierdziliby górnicy, trafia do kolejnego bloku. Drugą w kolejności transakcję zatrzymujemy w systemie. Uznamy ją za nieważną z uwagi na to, że przypisaliśmy już tego samego bitcoina do bloku danych. Transakcję z największą liczbą potwierdzeń wysyłamy, z kolei drugą unieważniamy na bieżąco. Rozwiązanie to chroni nas skutecznie przed double spendem. Mimo wszystko nie pozbawiliśmy systemu wad. Chociaż jako sprzedawcy zakładamy, że transakcje są bezpieczne, zazwyczaj zajmują one bardzo dużo czasu.

W jaki sposób wytłumaczymy dowód pracy w blockchainie bitcoina?

Wytłumaczenie dowodu pracy w bitcoinie wymaga od nas zasięgnięcia po nieco bardziej techniczny żargon. Wykrywamy manipulacje dotyczące podwójnego wydatkowania tego samego tokenu za pomocą długiego ciągu liczbowego. W praktyce skracamy je, aby mogły posłużyć nam jako dowody pracy w systemie kryptowaluty. Podany w transakcji zestaw danych wygeneruje przypisywany do niego hash. Mimo wszystko nawet niewielka zmiana danych wpłynie na jego strukturę. Gdy wygenerujemy hash, musimy pamiętać o tym, że jest on funkcją jednokierunkową. Może zostać zapisany i zatwierdzony tylko jeden raz. W ten sposób mamy pewność co do tego, że wygenerowane dane, które przypisujemy do bloku, zawsze będą unikalne.

Fot.Pixabay

 

 

5 KOMENTARZE

ZOSTAW ODPOWIEDŹ

Please enter your comment!
Please enter your name here