Blockchain 101 (Part 2)
Bitcoin & Proof-of-Work (How Energy Becomes Finality)
Today we make the machinery visible and strip Bitcoin to its engine block to show exactly how Proof-of-Work (PoW) turns electricity and hardware into settlement assurance. As Bitcoin was the first use of blockchain technology, it is a great starting point for grasping the topics newer blockchains utilize. If you can grasp this (blocks, headers, difficulty, timestamps, chainwork, and why confirmations exist) you’ll see through 95% of the noise in crypto.
TL;DR
PoW is an economic firewall. Miners spend real energy to discover valid blocks. Nodes accept the history with the most cumulative work (chainwork). Rewriting deep history requires out-working the honest world (ruinously expensive)
Finality is probabilistic. Every block added on top of yours slashes reorg odds. The conservative norm for big payments is ~6 confirmations. Tune this by risk.
The clock is constrained. Bitcoin bounds timestamps and retargets difficulty every 2016 blocks with a 4x cap. These keep time honest and cadence near ~10 minutes
Before We Go Deep: the Cast of Characters
Lets frontload some new information and give some review from the last 101 article.
Ledger (the book):
Bitcoin is a public, append-only ledger. Everyone can verify it, no one can quietly edit past pages.
Transaction (the row):
A signed message that moves value from specific previous coins to new owners.
UTXO (Unspent Transaction Output):
Bitcoin tracks value as discrete “coins” (UTXOs), not one big balance. Spending = consume some UTXOs, create new ones.
Keys & Addresses (identity without usernames):
Private key: your secret. It creates digital signatures
Public key / address: derived from the private key. Anyone can verify your signature or sent to your address
Wallet: software/hardware that stores keys and builds/sends transactions. Coins live on the ledger, not “in” the wallet.
Fees (your place in line):
You attach a fee to a transaction. Miners prioritize higher fee-rate transactions. Congestion = pay more or wait
Nodes (the librarians):
Software that downloads blocks, checks every rule, and relays valid data. A full node verifies independently (no trust).
Mempool (the waiting room):
Where valid, unconfirmed transactions sit until a miner includes them in a block. Each node has its own mempool view.
Blocks (the pages):
Batches of transactions plus a block header. Each block points to the previous block’s hash, forming a chain.
Block header (the 80-byte resume):
version | prev_block_hash | merkle_root | time | bits | nonce
prev_block_hash: links history.
merkle_root: one hash that commits to every transaction in the block.
time: the block’s timestamp (bounded, not exact).
bits: encodes the current difficulty target.
nonce: a number miners vary to try to find a valid hash.
Merkle tree / root (compact receipts):
Hashes of transactions are paired and hashed up into one merkle root. Lets you prove “tx X is in block Y” without downloading everything.
Miners (the page printers):
They assemble candidate blocks and burn compute to find a header hash below the target (the Proof-of-Work puzzle). First valid block wins the round and gets the reward.
Mining pools (team play):
Miners often combine hashpower and split rewards to smooth income. Pools don’t set rules; nodes do.
Proof-of-Work (the gate):
The puzzle is hard to find but easy to verify. That asymmetry is the security trick: liars must spend real energy to even try.
Target & difficulty (how hard the puzzle is):
Lower target = harder puzzle. The network retargets difficulty every 2016 blocks (~2 weeks) to keep block time ≈ 10 minutes.
Nonce / extra-nonce (spinning the dial):
Miners vary these fields (and parts of the coinbase tx) to try new header hashes billions of times per second.
Coinbase transaction (new coins):
The first transaction in a block that pays the block subsidy + fees to the miner. Subsidy halves every ~4 years (the halving).
Chainwork (who wins a fork):
Nodes follow the branch with the most cumulative work, not just the one with the most blocks. That’s the fork-choice rule.
Confirmations (how buried your tx is):
A transaction in the latest block has 1 confirmation. Each new block on top adds one more and makes reversal exponentially harder.
Orphans/stale blocks & reorgs (don’t panic):
Two miners can find valid blocks at once. One chain gets ahead; the other tip becomes stale. That tip-level swap is a reorg. It’s normal near the frontier.
Timestamps & MTP (keeping time honest):
Timestamps are bounded (must be > median of last 11 blocks and < network time + 2h). Prevents wild clock games and keeps timelocks sane.
Explorers vs. truth (window vs. house)
Block explorers are windows into the ledger, not the authority. Your node is the house; it decides what’s valid.
Threats & incentives (why this holds):
To reverse deep history you must out-work the honest world (very expensive).
If you try to cheat at the tip, merchants can wait for more confirmations.
Honest miners still earn by following rules. Attackers burn money trying to lie.
Mental Model: the Public Ledger with Unforgeable Page Numbers
A Bitcoin block is a page of transactions with a fingerprint (a hash). Each new page commits to the prior page’s fingerprint which forms a chain. Miners can’t choose the fingerprint. They must find one below a moving target by trying nonces at high speed. Everyone else can verify a proposed page instantly. Miners had to burn work to make it and the chain with the most total work wins.
Using Bitcoin (From the Driver’s Seat)
You: “I want to pay someone.”
You open your wallet, paste a public address (or scan a QR), type an amount, and pick a fee. Remember, that fee is your place in line. A higher fee gives your transaction a higher chance to be included in a block sooner.
What your wallet really builds:
A small, signed data packet called a transaction. It spends some of your previous UTXOs (think specific coins tied to past receipts) and creates new ones for the recipient (and usually “change” back to you). Your wallet uses your private key to make a digital signature so that the network can verify that this transaction really came from you without revealing your private key.
Your wallet hits “send.”
Your wallet broadcasts the signed transaction to nearby nodes (the network’s independent librarians). Each node checks the basics: Are the signatures valid? Are the funds unspent? Is the fee sensible? If it passes, the transaction goes into that node’s mempool. Remember, the mempool is a waiting room of valid, unconfirmed transactions. Other nodes gossip it around.
At this point, most people’s role as a sender is done. You wait for your transaction to be picked up by a miner and put into a block. With each passing block, your transaction gets more confirmations and becomes theoretically harder to change (even with one confirmation, it is unfeasible to change it).
Using Bitcoin (Under the Hood)
Miners: the block makers start working for you.
Miners gather transactions from the mempool and try to assemble the next block (a page of transactions). To publish that page, they must win a race: find a block header whose double-SHA256 hash is below a network target. They do this by tweaking numbers in the header billions of times per second.
A block header is made up of many parts in 80-bytes:
version | prev_block_hash | merkle_root | time | bits | nonce
prev_block_hash: links the new page to the last page (that’s the “chain”).
merkle_root: a single fingerprint that commits to every transaction in this block. If any transaction is changed, the merkle_root would change which would cause the header hash to change
time: the block’s timestamp (bounded, not exact).
bits: encodes the difficulty target (how hard the puzzle is).
nonce: a counter miners spin while searching for a valid hash.
This design makes tampering obvious because the header commits to the merkle root and the merkle root commits to every transaction. If any transaction is edited after the fact, the fingerprints (hashes) will no longer fit. The page number (header hash) stops matching the rules. Full nodes catch that instantly.
One miner wins; everyone else checks.
When a miner finds a header that hashes below the target, they broadcast the block. Full nodes verify in milliseconds: does the header prove work? Does prev_block_hash match our tip? Do the transactions and merkle root line up? Are the signatures valid? Are there any double-spends? If the block passes, nodes add it to the ledger and evict included transactions from their mempools. The miner that correctly solved the PoW puzzle gets a reward of new BTC (as of 2025 it is 3.125 BTC per block). Every four years this mining reward gets cut in half in a process called Bitcoin halving. The next BTC halving should be in 2028.
As the sender or receiver, you would see the transaction jump from “pending” to 1 confirmation. Each new block on top adds another confirmation.
The Network’s Heartbeat (Difficulty & Time Rules)
Bitcoin aims for ~10 minutes between blocks on average. To stay on tempo while hashpower (amount of work miners do) rises/falls, the network retargets difficulty every 2016 blocks (~2 weeks). That adjustment is bounded so difficulty can’t jump more than 4x up or down in one step. This helps stop wild swings and games with timestamps.
Time itself is constrained from two sides:
Median Time Past (MTP): a block’s timestamp must be greater than the median of the previous 11 blocks. This forces time to march forward monotonically on-chain (which also makes time-locks reliable).
Upper bound: a block’s timestamp must be less than network-adjusted time +2 hours so miners can’t jump too far into the future to cheat.
These bounds make retargeting sane and blunt “time-warp” tricks.
Why Bitcoin Stays Honest (and What Can Still Happen)
Occasionally, two miners find valid tip blocks around the same time. For a moment, the network is split. Some nodes see one tip, others see the other. The rule that resolves this is chainwork (nodes follow the branch with the most cumulative work, not just the taller one). Work per block depends on the target; chainwork is the sum. So one very “hard” block can outweigh several “easier” ones. As soon as one branch gets ahead in total work, everyone converges. The losing tip becomes a stale block. If your transaction was only in that block, it re-enters mempools and will be mined again.
Bitcoin finality isn’t a light switch; it’s a risk curve. Near the tip, small reorgs (one branch replacing another) are normal. The deeper your transaction is buried, the more astronomically expensive it becomes for anyone to rewrite it. That’s why the conservative norm for large settlements is ~6 confirmations (about an hour).
Attacks & Incentives (What You Should Actually Know)
Majority hash (often called “51%”). With sustained majority hashpower, an attacker can privately mine a longer-work fork to reverse their own payments or censor. It’s theoretically possible, but expensive. Reversing many confirmations becomes ruinous.
Selfish mining. A colluding minority can try to withhold blocks to orphan others more often and steal a revenue edge. Countermeasures such as better relays, incentives, and pool diversity raise the bar and reduce the payoff.
Timestamp games. The MTP and +2h bounds, plus the 4x retarget cap, limit how much anyone can skew the clock for advantage.
The main point is that PoW makes dishonesty costly and obvious. Honest miners make money following the rules; attackers light money on fire trying to lie.
What You’ll Actually See, End-to-End
You sign a transaction and hit send.
Nodes verify it and add it to mempools.
Miners pick it up, build a candidate block, and grind the header until it fits the target.
A block lands; your transaction gets 1 confirmation.
New blocks stack; confirmations climb and your reorg risk collapses.
You clear funds after N confirmations based on your policy. That’s Bitcoin settlement.
“Energy Waste” or Security?
Proof-of-Work anchors truth in physics. To undo history, an attacker must re-spend the energy that created it, faster than everyone else combined. That’s the design: the network accepts the chain with the greatest proof-of-work. If someone objects to the power bill, the fair comparison isn’t to a free alternative (there isn’t one); it’s to trust-based systems and the very real costs when centralized trust fails.
Mini-Glossary
UTXO: the discrete “coins” the ledger tracks.
Mempool: each node’s waiting room for valid, unconfirmed txs.
Merkle root: one hash that commits to all txs in a block.
Bits/Target: the encoded difficulty; lower target = harder puzzle.
Chainwork: total accumulated work of a branch; fork-choice follows the max.
Confirmation: each new block on top of yours; more confs = less reorg risk.
Reorg: when a competing branch with more work replaces the tip.
Future Topics
Part 2b: How Other Chains Agree (Consensus & Finality, Beyond Bitcoin)
Part 3: Why It’s Secure (Incentives & Threat Model)
Part 4: Why Money Needs a Blockchain
Part 5: Beyond Money (Verifiable Ledgers)
Final Words
You don’t need mysticism to use Bitcoin, you need mechanics and discipline. Proof-of-Work buys truth with energy and bills liars for every attempt to rewrite it. Now you know the cast (keys, UTXOs, nodes, miners), the engine (headers, difficulty, MTP), and the rule that keeps everyone honest (most work wins).
This series isn’t a tour; it’s a toolkit. Next up: How Other Chains Agree.
Enter as a reader; leave as an operator. Subscribe, custody, protect the signal.
-WD
Sources & Further Reading
Satoshi, Bitcoin: A Peer-to-Peer Electronic Cash System (whitepaper). Bitcoin
Bitcoin Core dev ref, Block headers & chain rules. Bitcoin Developer Portal
BIP-113, Median-Time-Past (lock-time semantics). bips.dev
Block timestamp rules, MTP and +2h bound (consensus behavior). Bitcoin Wiki
Difficulty adjustment, 2016-block retarget with 4× cap. Onramp Bitcoin
Confirmations & risk, operational guidance. Bitcoin
Selfish mining, Eyal & Sirer (2013/2014). arXiv





