History#

A blockchain combines several answers to different questions. Who can authorize a message? Has a record changed? Can one item be checked without downloading everything? Which of two valid histories should peers follow? Confusing these questions is a common source of confusion about blockchains. A signature does not prevent double spending; a hash does not make a history immutable; gossip does not create agreement.

This chapter follows the ideas in historical order. Each milestone gives the problem, the mathematical mechanism, a link into the actual implementation, and an experiment. The examples deliberately use smaller models than real protocols. Their assumptions are part of the lesson, not details to hide. Publication years below distinguish conference presentations from later proceedings where useful. This is a selected, executable history, not a claim that one inventor or one paper supplied every ingredient.

First reading: start with the “In plain language” and “Reading the experiment” paragraphs in each milestone. The equations provide a second, more detailed route; you can skip them initially. See Start here: a blockchain without the jargon for the overall picture and Glossary for unfamiliar terms.

Cryptography

blockchainkit.crypto

Hashing and commitments, Diffie-Hellman and RSA, blind signatures, secret sharing, elliptic curves, and Schnorr proofs and signatures.

Breakthroughs in Cryptography

Ledgers

blockchainkit.structures

Merkle trees and proofs, signed transfers, blocks, ledger state, and cumulative-work fork selection.

Breakthroughs in Authenticated Data Structures

Agreement

blockchainkit.consensus

Proof-of-work search and its expected cost, catch-up probabilities, and stake-weighted proposer selection.

Breakthroughs in Consensus
blockchainkit.network

Peer graphs, logical clocks, gossip and reliable broadcast, Kademlia and its attacks, block relay, forks, and transaction privacy.

Breakthroughs in Peer-to-Peer Networking

Execution

blockchainkit.vm

A deterministic 256-bit stack machine with gas and atomic failure, Turing machines, Bitcoin Script, and smart contracts and their attacks.

Breakthroughs in Replicated Execution

From breakthroughs to a working system#

A compact historical map#

Period

New capability

Question still requiring another ingredient

1976–1978

Public-key exchange and RSA

Who is really at the other end of the exchange?

1979–1983

Threshold sharing, Merkle authentication, blind signatures

Are shares honest, roots trusted, and tokens spent only once?

1985–1991

Curve groups, proof protocols, signatures, gossip, linked records

Which of two conflicting histories should participants accept?

1997–2009

Computational work, standardized hashing, Bitcoin’s combination

Under which assumptions can a confirmation be reversed?

2012–2014

Stake-based participation and programmable state

What voting and execution rules make the whole system agree?

The detailed entries below distinguish original ideas from this package’s teaching adaptations. The A guided course: from fingerprints to shared history follows prerequisites rather than dates:

hashes ----> Merkle proofs ----------------------+
   |                                            |
   +-------> proof of work ----+                  v
keys ------> signatures ------+------> payment lifecycle
peer links -> gossip ---------+                  |
                                                 v
                                   forks, queues, and reorganization

Python lists -> stack execution (a separate component)

Run One payment from signature to reorganization and reinclusion to see how these ideas interact. Use Exercises to check your reasoning after each experiment.

What the sequence teaches#

Each ingredient changes what can be verified, under particular assumptions. The most useful next experiment is often to remove one assumption: reuse a nonce, reveal a commitment salt, forge a share, partition a link, replay a transfer, or exhaust an execution budget. The tests and gallery show which properties survive, which fail, and which the simplified model never promised.

See Exact conventions and model boundaries for exact encodings and Reproducible experiments and research scope for the scope of research experiments. Each breakthrough page cites its primary sources.