


Bitcoin. Wszystko, co musisz wiedzieć o .. wyd.lll









Bitcoin. Wszystko, co musisz wiedzieć o .. wyd.lll - Najlepsze oferty
Bitcoin. Wszystko, co musisz wiedzieć o .. wyd.lll - Opis
W świecie finansów nic nie wywołało takiego poruszenia jak pojawienie się bitcoina. Wprowadzony w 2009 roku, stał się pierwszą zdecentralizowaną cyfrową walutą, co położyło podwaliny pod rynek wart miliardy dolarów. Dodatkowo ujawnił potencjał technologii blockchain, która stanowi fundament kryptowalut. Ogrom możliwości, jakie oferuje bitcoin, sprawia, że znajduje on zastosowanie w licznych branżach. Aby móc w pełni korzystać z jego zalet, należy dokładnie zrozumieć zasady, na których się opiera.To podstawowe źródło technicznej wiedzy o bitcoinie. Żadna inna pozycja nie jest tak wyczerpująca ani aktualna!
Olaoluwa Osuntokun, Lightning Labs
To trzecie, uzupełnione i zaktualizowane wydanie cenionego przewodnika dla każdego, kto chce dołączyć do świata bitcoina, zwanego "internetem pieniędzy". Znajdziesz tu wszelkie kluczowe informacje, podane w jasny, zrozumiały sposób i poparte rzeczywistymi przykładami. Dołączone fragmenty kodu świetnie ilustrują kluczowe koncepcje. To wydanie zawiera mnóstwo najnowszych informacji, w tym opis struktury transakcji, MAST, P2C, wielopodpisów bezskryptowych, a także mechanizmów Taproot i Tapscript. Dzięki lekturze zrozumiesz też tematykę bloków kompaktowych, łańcucha bloków signet, BIP8 i szybkich rozpraw.
W książce:
solidne podstawy bitcoina i łańcucha bloków
techniczne aspekty bitcoina i waluty kryptograficznej
sieć bitcoina, architektura P2P, cykl życia transakcji i kwestie bezpieczeństwa
najnowsze rozwiązania, w tym Taproot, Tapscript, podpisy Schnorra
opis nowych, (...) więcej zaawansowanych zastosowań bitcoina
Zrozum, co się dzieje "pod maską" bitcoina i jak współdziałają poszczególne elementy tej technologii!
Mark "Murch" Erhardt, Chaincode Labs
Spis treści: Przedmowa
1. Wprowadzenie
Historia bitcoina
Pierwsze kroki
Wybór portfela bitcoina
Szybkie wprowadzenie
Kody odzyskiwania
Adresy bitcoin
Otrzymywanie bitcoinów
Pozyskiwanie pierwszego bitcoina
Określanie aktualnej ceny bitcoinów
Przesyłanie i otrzymywanie bitcoinów
Potwierdzenia
2. Jak działają bitcoiny?
Omówienie bitcoinów
Zakup w sklepie internetowym
Transakcje w bitcoinach
Wejścia i wyjścia w transakcjach
Łańcuchy transakcji
Wydawanie reszty
Wybór monet
Typowe formy transakcji
Tworzenie transakcji
Wybór odpowiednich wejść
Generowanie wyjść
Dodawanie transakcji do łańcucha bloków
Kopanie bitcoinów
Wydawanie środków z transakcji
3. Bitcoin Core - implementacja wzorcowa
Od bitcoina do Bitcoin Core
Środowisko programistyczne związane z bitcoinami
Budowanie implementacji Bitcoin Core z użyciem kodu źródłowego
Wybór wersji implementacji Bitcoin Core
Konfigurowanie budowania implementacji Bitcoin Core
Budowanie plików wykonywalnych implementacji Bitcoin Core
Uruchamianie węzła z implementacją Bitcoin Core
Konfigurowanie węzła z implementacją Bitcoin Core
Interfejs API oprogramowania Bitcoin Core
Pobieranie informacji na temat stanu Bitcoin Core
Sprawdzanie i dekodowanie transakcji
Badanie bloków
Używanie programowego interfejsu oprogramowania Bitcoin Core
Inne klienty, biblioteki i pakiety narzędzi
C i C++
JavaScript
Java
Python
Go
Rust
Scala
C#
4. Klucze i adresy
Kryptografia z użyciem klucza publicznego
Klucze prywatne
Objaśnienie kryptografii z użyciem krzywej eliptycznej
Klucze publiczne
Skrypty wyjściowe i wejściowe
Adresy IP: pierwotne adresy bitcoin (P2PK)
Tradycyjne adresy na użytek P2PKH
Kodowanie Base58Check
Skompresowane klucze publiczne
Tradycyjne adresy P2SH
Adresy Bech32
Problemy z adresami bech32
Bech32m
Formaty kluczy prywatnych
Skompresowane klucze prywatne
Zaawansowane postacie kluczy i adresów
Adresy vanity
Portfele papierowe
5. Odzyskiwanie portfela
Niezależne generowanie kluczy
Deterministyczne generowanie kluczy
Generowanie publicznego klucza podrzędnego
Hierarchiczne detereministyczne (HD) generowanie kluczy (BIP32)
Ziarna i kody odzyskiwania
Kopie zapasowe danych innych niż klucze
Kopie zapasowe ścieżek generowania kluczy
Technologie obsługi portfeli
Kody odzyskiwania BIP39
Tworzenie portfela HD na podstawie ziarna
Używanie rozszerzonego klucza publicznego w sklepie internetowym
6. Transakcje
Zserializowana transakcja bitcoina
Wersja
Rozszerzony znacznik i flaga
Wejścia
Długość listy wejść transakcji
Punkt wyjścia
Skrypt wejściowy
Sekwencja
Wyjścia
Liczba wyjść
Kwota
Skrypty wyjściowe
Struktura poświadczeń
Okrężne zależności
Plastyczność transakcji powodowana przez strony trzecie
Plastyczność transakcji powodowana przez stronę drugą
Segregated Witness
Serializacja struktury poświadczenia
Czas blokady
Transakcje coinbase
Waga i jednostka vbyte
Serializacja tradycyjna
7. Autoryzacja i uwierzytelnianie
Skrypty transakcji i język Script
Niekompletność w sensie Turinga
Weryfikacja bezstanowa
Tworzenie skryptów
Skrypt P2PKH
Wielopodpisy skryptowe
Transakcje P2SH
Adresy P2SH
Zalety stosowania P2SH
Skrypt wypłaty i sprawdzanie poprawności
Wyjścia rejestrujące dane (z operatorem OP_RETURN)
Ograniczenia czasu blokady transakcji
Weryfikacja blokady czasowej (OP_CLTV)
Względne blokady czasowe
Względne blokady czasowe z operatorem OP_CLV
Skrypty z przepływem sterowania (klauzule warunkowe)
Klauzule warunkowe z kodami operacji VERIFY
Przepływ sterowania w skryptach
Przykładowy złożony skrypt
Przykładowe wyjścia i transakcje Segregated Witness
Przejście na Segregated Witness
MAST (Merklized Alternative Script Tree)
Transakcje P2C (pay to contract)
Wielopodpisy bezskryptowe i podpisy progowe
Taproot
Tapscript
8. Podpisy cyfrowe
Jak działają podpisy cyfrowe?
Tworzenie podpisu cyfrowego
Sprawdzanie poprawności podpisu
Typy skrótów podpisów (SIGHASH)
Podpisy Schnorra
Serializowanie podpisów Schnorra
Wielopodpisy bezskryptowe oparte na algorytmie Schnorra
Bezskryptowe podpisy progowe oparte na algorytmie Schnorra
Podpisy ECDSA
Algorytm ECDSA
Serializowanie podpisów ECDSA (do formatu DER)
Znaczenie losowości w podpisach
Nowy algorytm podpisywania w Segregated Witness
9. Opłaty transakcyjne
Kto uiszcza opłaty transakcyjne?
Opłaty i stawki opłat
Szacowanie odpowiednich stawek opłat
Podwyższanie opłat metodą RBF (Replace By Fee)
Podwyższanie opłat metodą CPFP (Child Pays for Parent)
Sztafeta pakietów
Przygniatanie transakcji
Wykrawanie CPFP i wyjścia kotwiczne
Dodawanie opłat do transakcji
Blokada czasowa jako obrona przed celowaniem w opłaty
10. Sieć bitcoina
Typy i role węzłów
Sieć
Przekazywanie bloków kompaktowych
Prywatne sieci przekazywania bloków
Wykrywanie sieci
Kompletne węzły
Przesyłanie "zawartości magazynu"
Klienty lekkie
Filtry Blooma
Jak działają filtry Blooma?
W jaki sposób klienty lekkie używają filtrów Blooma?
Kompaktowe filtry bloków
Kodowane zbiory Golomba-Rice'a (GCS)
Jakie dane dołącza się do filtra bloków?
Pobieranie filtrów bloków od wielu węzłów
Ograniczanie zużycia pasma przez kodowanie stratne
Używanie kompaktowych filtrów bloków
Klienty lekkie a prywatność
Połączenia szyfrowane i uwierzytelniane
Pule pamięciowe i pule transakcji osieroconych
11. Łańcuch bloków
Struktura bloku
Nagłówek bloku
Identyfikatory bloku - skrót nagłówka bloku i wysokość bloku
Blok początkowy
Łączenie bloków w łańcuchu
Drzewa skrótów
Drzewa skrótów i klienty lekkie
Testowe łańcuchy bloków bitcoina
Testnet - poligon doświadczalny bitcoina
Signet - testnet z dowodem autorytetu
Regtest - lokalny łańcuch bloków
Używanie testowych łańcuchów bloków w trakcie prac programistycznych
12. Kopanie i konsensus
Ekonomia i podaż pieniądza w systemie bitcoina
Zdecentralizowane osiąganie konsensusu
Niezależne sprawdzanie poprawności transakcji
Węzły służące do kopania
Transakcja coinbase
Nagrody i opłaty w transakcji coinbase
Struktura transakcji coinbase
Dane coinbase
Tworzenie nagłówka bloku
Wykopywanie bloku
Algorytm Proof-of-Work
Reprezentacja celu
Dostosowywanie trudności przez zmianę celu
Mediana przeszłego czasu (MTP)
Udane wykopanie bloku
Sprawdzanie poprawności nowego bloku
Łączenie bloków i wybieranie łańcuchów
Kopanie i loteria haszowania
Rozwiązanie z użyciem dodatkowej wartości nonce
Kopalnie
Ataki związane z tempem haszowania
Zmienianie reguł osiągania konsensusu
Twarde rozgałęzienia
Miękkie rozgałęzienia
Krytyka miękkich rozgałęzień
Rozwój oprogramowania zgodnie z konsensusem
13. Bezpieczeństwo bitcoina
Zasady bezpieczeństwa
Bezpieczny rozwój systemów bitcoina
Źródło zaufania
Dobre praktyki z obszaru zabezpieczeń dla użytkowników
Fizyczne przechowywanie bitcoinów
Urządzenia podpisujące
Gwarantowanie dostępu
Dywersyfikacja ryzyka
Wielopodpis i zarządzanie
Zachowanie dostępu
14. Rozwiązania warstwy drugiej
Cegiełki (podstawowe mechanizmy)
Rozwiązania oparte na cegiełkach
Colored coins
Pieczęcie jednokrotnego użytku
Płatności na kontrakt (P2C)
Sprawdzanie poprawności po stronie klienta
RGB
Taproot Assets
Kanały płatności i kanały stanowe
Kanały stanowe - podstawowe zagadnienia i terminologia
Prosty przykładowy kanał płatności
Tworzenie kanałów niewymagających zaufania
Asymetryczne odwoływalne zobowiązania
Kontrakty HTLC
Kanały płatności z trasowaniem (Lightning Network)
Prosty przykład działania sieci Lightning Network
Przesył i trasowanie w sieci Lightning Network
Korzyści ze stosowania sieci Lightning Network
A. Artykuł Satoshiego Nakamoto na temat bitcoina
B. Errata do artykułu na temat bitcoina
C. Dokumenty BIP mniej
Bitcoin. Wszystko, co musisz wiedzieć o .. wyd.lll - Opinie i recenzje
Na liście znajdują się opinie, które zostały zweryfikowane (potwierdzone zakupem) i oznaczone są one zielonym znakiem Zaufanych Opinii. Opinie niezweryfikowane nie posiadają wskazanego oznaczenia.