Mastering Bitcoin to książka techniczna wydawnictwa O’Reilly. Pierwsze wydanie napisał Andreas M. Antonopoulos; przy trzecim współpracował David A. Harding. Ten opis dotyczy trzeciego wydania z 2023 roku: wyjaśnia, czego w nim szukać i od czego zacząć.
Wyobraź sobie, że wysyłasz komuś bitcoin. Aplikacja pokazuje adres odbiorcy, kwotę i przycisk Wyślij. Portfel musi jednak utworzyć transakcję i dodać wymagany podpis, czyli dowód uprawnienia do wydania środków. Następnie przekazuje ją do sieci. Pojawienie się płatności przychodzącej nie oznacza jeszcze potwierdzenia w bloku. Właśnie takie znane sytuacje służą we wstępie jako punkt wyjścia do poznawania działania systemu. [4]
Pierwsze wydanie Antonopoulosa ukazało się w 2014 roku. Trzecie nosi nazwiska Andreas M. Antonopoulos i David A. Harding oraz aktualizuje wyjaśnienia techniczne. O’Reilly podaje listopad 2023 roku, a repozytorium autorów wiąże pierwszy druk z grudniem 2023 roku. To różne dane wydawnicze. Dlatego przed szukaniem rozdziału lub przykładu warto sprawdzić, które wydanie czytasz. [1] [2]
Nie, żeby zacząć. Przedmowa kieruje książkę przede wszystkim do programistów, ale pierwsze rozdziały przedstawia również jako pogłębione wprowadzenie dla innych czytelników. Możesz najpierw zrozumieć płatności i portfele, a potem zagłębić się w dane i kod. Umiejętność programowania staje się ważniejsza w dalszej części; nie musisz rozumieć każdego technicznego przykładu już przy pierwszej lekturze. [3]
Na czym działa, skąd czerpie informacje i kto kontroluje klucze? Wstęp rozdziela te cechy. Aplikacja mobilna może pozostawiać klucze pod twoją kontrolą, a jednocześnie pytać cudzy serwer o historię transakcji. Full Node, czyli węzeł samodzielnie sprawdzający reguły Bitcoina, rozwiązuje inny problem niż przechowywanie kluczy. Sprzętowe urządzenie podpisujące też nie zastępuje wszystkich funkcji współpracującej z nim aplikacji. Same etykiety „mobilny” i „sprzętowy” nie wystarczają. [4]
Dane odzyskiwania mogą odtworzyć klucze i umożliwić odnalezienie transakcji w publicznej historii. Niekoniecznie przywrócą jednak twoje notatki, na przykład komu i za co płaciłeś. Przy płatnościach poza blockchainem publiczna historia również nie zawiera wszystkich potrzebnych danych. Nie należy więc zakładać, że ta sama lista słów odtworzy wszystko w każdej aplikacji. Trzeba znać procedurę odzyskiwania i wymagania dotyczące pełnej kopii zapasowej danego portfela. [4]
Bitcoin się rozwija, a wraz z nim wiedza potrzebna programistom. Autorska lista zmian trzeciego wydania opisuje osobne rozdziały o budowie transakcji, uprawnieniu do wydawania środków, podpisach i opłatach. Dodaje Taproot, jego reguły skryptowe Tapscript oraz Schnorr Signatures, czyli kolejny sposób podpisywania cyfrowego. Rozszerza też opis komunikacji między węzłami. Starsze wydanie może zatem nie wyjaśniać tego samego zestawu możliwości. [5]
Książka wykorzystuje rzeczywiste dane, które można badać. Nie czyni to jednak jej adresów odpowiednimi odbiorcami twoich płatności. Przedmowa wyraźnie ostrzega, że powiązane klucze mogą być publiczne albo bezużyteczne: inny czytelnik mógłby wydać przesłane środki lub pozostałyby one niedostępne. Przykład jest pomocą w nauce, a nie gotowym bezpiecznym portfelem. To rozróżnienie ma znaczenie także przy wykorzystywaniu przykładowego kodu. [3]
Oficjalne repozytorium udostępnia tekst podzielony na rozdziały; tag third_edition_print1 wskazuje konkretny druk trzeciego wydania. Część odsyłaczy między rozdziałami na GitHubie działa dopiero w połączonej książce. Na potrzeby tego opisu przeczytaliśmy przedmowę, wstępny rozdział i listę zmian autorów oraz sprawdziliśmy dane wydawnicze. Nie ocenialiśmy całej książki ani nie uruchamialiśmy wszystkich programów. Zacznij od wstępu, a potem podążaj za pytaniem, które chcesz zrozumieć. [2] [3] [4] [5]
Pełniejszy obraz uzyskasz, czytając to hasło razem z Transakcja, Bitcoin Script, Portfel, Full Node. Do tego hasła prowadzą również odsyłacze z The Internet of Money — Volume 1.
01Czy książka przyda mi się, jeśli nie umiem programować?+
Tak. Według przedmowy pierwsze rozdziały służą również osobom nieprogramującym, które szukają pogłębionego wyjaśnienia. Dalsze części obejmują kod i szczegóły techniczne. Możesz zacząć od wstępu i stopniowo wracać do trudniejszych tematów.
02Czy mogę przetestować płatność, wysyłając bitcoin na adres z książki?+
Nie. Przedmowa wyraźnie przed tym ostrzega: inni czytelnicy mogą znać klucze do przykładowych adresów albo może nie istnieć działający sposób dostępu. Ktoś mógłby zabrać środki lub pozostałyby one niedostępne. Przykładowy adres nie jest twoim portfelem.