Building Bitcoin in Rust to podręcznik projektowy wydany przez Braiins. Uczy podstaw Bitcoin i języka Rust na uproszczonej implementacji; nie jest instrukcją bezpiecznego przechowywania prawdziwych bitcoinów.
Wysyłając płatność z portfela, nie trzeba wiedzieć, jak programy komunikują się ze sobą. Jeśli jednak chcesz zajrzeć do środka, Lukáš Hozda proponuje wyjść poza definicje i samodzielnie zbudować części systemu. Braiins wydało książkę w 2024 roku, wymieniając Danielę Brozzoni i Luukasa Pörtforsa jako współpracowników. Główni odbiorcy to studenci i osoby z branży IT, które chcą poznawać Bitcoin podczas pisania kodu. [1]
Wydawca opisuje drogę od Whitepaperu, pierwotnego wyjaśnienia projektu Bitcoin, przez podstawy Rust do biblioteki, minera, węzła i portfela obsługiwanego poleceniami tekstowymi. Biblioteka dostarcza wspólnych elementów, miner szuka odpowiedniego bloku, a węzeł uczestniczy w sprawdzaniu i przekazywaniu danych. Portfel zajmuje się kluczami i przygotowaniem płatności. Miner CPU wykorzystuje procesor komputera: służy tu nauce, a nie obietnicy dochodu z wydobycia. [3]
Repozytorium towarzyszące książce, czyli publiczny zbiór kodu źródłowego, określa projekt jako uproszczoną implementację edukacyjną. Model pozwala śledzić zależności, które łatwo zgubić w rozbudowanym programie. Tytuł książki nie oznacza jednak, że wynik zastępuje Bitcoin Core. Możliwość przesyłania własnych transakcji w modelu nie dowodzi zgodności z prawdziwą siecią Bitcoin ani bezpieczeństwa przechowywania pieniędzy. [4]
Program potrzebuje pamięci na dane. Sięganie po nie po zwolnieniu tej pamięci może wywołać błędy. Rust pomaga im zapobiegać dzięki regułom ownership: określają one, która część programu jest właścicielem wartości i kiedy można jej używać. Kompilator, który zamienia kod źródłowy w wykonywalny program, sprawdza te reguły przed uruchomieniem. Nie wie jednak sam z siebie, czy poprawnie zapisano zasady płatności. Udana kompilacja nie jest więc dowodem poprawności całego systemu. [5]
Wyobraź sobie własne ćwiczenie: przygotowujesz płatność, podpisujesz ją, a następnie zmieniasz podpisaną kwotę. Podpis cyfrowy powinien wiązać zgodę z konkretnymi danymi; sprawdzenie pierwotnego podpisu dla tak zmienionych danych powinno zakończyć się niepowodzeniem. Samo wyświetlenie płatności nie wystarczy. Trzeba też sprawdzić, czy program odrzuca nieprawidłowe dane wejściowe. To nasz przykład myślenia o testach, nie opis zweryfikowanego działania kodu książki. [4] [5] [6]
Repozytorium rozdziela bibliotekę, minera, węzeł i portfel. Wprowadzający plik README pokazuje sposób budowania i uruchamiania programów, co pomaga prześledzić ich odmienne role. Kod udostępniono na licencji ISC, pozwalającej na użycie i modyfikacje po spełnieniu jej warunków. Ten sam plik wyraźnie wyłącza z niej tekst książki. Publiczny kod nie oznacza więc automatycznie swobody powielania całej publikacji. [4]
Jeśli nigdy nie programowałeś, zacznij od wyjaśnień transakcji, klucza, węzła i wydobycia, równolegle ucząc się podstaw programowania. Potem pracuj małymi krokami: co dany krok ma zrobić, jak realizuje go kod i po czym rozpoznasz błąd? To nasz proponowany sposób nauki. Wartość książki polega na łączeniu pomysłu z eksperymentem, a nie na szybkim zdobyciu gotowego portfela. Nie używaj w ćwiczeniach prawdziwych oszczędności ani kluczy do nich. [1] [3]
Katalog Braiins podaje 432 strony, a sklep 429. Nie porównaliśmy fizycznego egzemplarza, dlatego nie udajemy, że wyjaśniliśmy rozbieżność. Omówienie opiera się na danych wydawcy, prezentacji projektu, README repozytorium i dokumentacji Rust dotyczącej ownership. Nie jest recenzją całej książki ani audytem bezpieczeństwa kodu; nie sprawdzaliśmy budowania i działania przykładów. Źródła potwierdzają zakres i ograniczenia projektu, a nie gwarantują jego działania. [1] [2] [3] [4] [5] [6]
Pełniejszy obraz uzyskasz, czytając to hasło razem z Bitcoin Core, Wydobywanie, Bitcoin, Braiins.
01Czy muszę już umieć programować?+
Książka jest skierowana głównie do studentów i osób z IT, a także wprowadza w Rust. Zupełnym początkującym radzimy najpierw poznać podstawy programowania i znaczenie transakcji, klucza oraz węzła, aby nie opierać nauki na niezrozumiałych pojęciach.
02Czy mogę używać zbudowanego portfela do swoich bitcoinów?+
To omówienie nie daje ku temu podstaw. Repozytorium opisuje model edukacyjny, nie sprawdzone narzędzie do prawdziwych środków. Nie używaj w nim kluczy do oszczędności; nie testowaliśmy zgodności z siecią ani bezpieczeństwa.