Blocks, mining, difficulty, and validation
Terms used in this lesson
- Coinbase transaction
- The special first transaction in a Bitcoin block, which claims permitted subsidy and fees and has no ordinary prior-output input.
- Proof-of-work target
- The maximum header-hash value accepted for a block; lowering it makes valid hashes harder to find.
- SHA-256
- A cryptographic hash function used throughout Bitcoin to produce fixed-size 256-bit digests.
- Witness
- Signatures, scripts, or other data supplied to satisfy a Bitcoin output’s spending condition.
See how a candidate block is assembled, how proof of work is found, how difficulty is encoded, and why full nodes still decide whether the block is valid.
Loading lesson visuals...
Learn the idea
Mining packages valid transactions into candidate blocks and searches for proof of work. The target states how small the block-header hash must be. Difficulty is a comparison scale derived from that target. Finding proof of work lets a miner propose a block, but every full node independently recomputes the header, transactions, issuance, scripts, and state transition before accepting it.
Assemble a candidate
A miner chooses transactions from its local mempool, respects parent before child order, begins with exactly one coinbase transaction, and commits the ordered transaction identifiers into a Merkle root.
Inspect every idea above to open it.
Full nodes reject an invalid block even when its header hash satisfies proof of work. Work orders valid history; it does not replace validity rules.
The questions unlock after every required learning activity
Inspect every guided idea, open the worked example, rebuild its mechanism, and complete the deterministic lesson tool. Your progress is saved automatically.