687 / 736BK71

Building Bitcoin in Rust

Lukáš Hozda: zrozumieć Bitcoin, budując własny model

Co dzieje się między poleceniem w portfelu a przyjęciem płatności? Lukáš Hozda przybliża Bitcoin przez programowanie w Rust. Czytelnik buduje system edukacyjny i stopniowo poznaje zadania jego części.

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.

DOC · 001Braiins — book recordŹródło pierwotne DOC · 002Braiins Store — paperbackŹródło pierwotne DOC · 003Braiins — learning projectŹródło pierwotne DOC · 004Braiins — companion repositoryŹródło pierwotne DOC · 005Rust — ownershipŹródło pierwotne DOC · 006Satoshi Nakamoto — Whitepaper: signatures and verificationŹródło pierwotne
Zaktualizowano: Najpierw źródła · To nie jest porada inwestycyjna