Revision · Hands-On
This part turned concepts into commands. The whole ethos is don’t trust, verify — and here you actually did the verifying, on safe test networks, by running a node and tracing real data yourself.
What this part covered
Section titled “What this part covered”- Running your own node — installing and configuring Bitcoin Core (RPC server,
txindex, dbcache, the pruning option) makes you a sovereign verifier who checks every rule instead of trusting someone else’s answer. - Talking to your node with bitcoin-cli — the JSON-RPC interface lets you walk from height to block hash to block, decode raw transactions, query the UTXO set with
gettxout, and peek at the mempool. - Build & decode a raw transaction —
createrawtransaction,signrawtransactionwithwallet,decoderawtransaction, andsendrawtransactionmap every field back to the transaction anatomy, and the fee is just the gap you deliberately leave between inputs and outputs. - Verify a Merkle proof yourself — produce a proof with
gettxoutproof, then recompute the root by hand with double-SHA-256 to confirm a transaction is in a block the way SPV clients do. - Test networks — regtest is your private universe (mine blocks on demand), signet is a calm realistic public chain, and testnet is the messy public rehearsal; always learn here before mainnet, where mistakes are irreversible.
- Reading the live chain — inspect real blocks and transactions, spot the coinbase as the first txid, check whether an output is still spendable, and catch a block explorer lying by verifying its claims against your own node’s merkleroot.
The takeaway
Section titled “The takeaway”Running a node is the concrete answer to the book’s recurring question: because each participant can independently check every rule, nobody has to trust anyone — they each hold the whole truth and reject anything that breaks it. Having verified Bitcoin from the outside, the next part builds a working blockchain from the inside, in Rust.