- proving things
trust, but verify (trustlessness)
social -> institutional -> programmable
- medium of exchange
- unit of account
- store of value
a prefix-immutable append-log of non-conflicting authenticated events in a decentralized peer-to-peer network
- prove ownership of balance when you try to spend it
- no transactions that result in you spending more than you have
- unit of value can only be spent once
fixed, full history
- everyone has a copy.
incentives for mining.
Asymmetric Cryptography §
Signature = Sign(M, k)
Verify(M, Signature, K)
Hash functions: one-way functions. uniq.
“difficult to solve, easy to verify”
Proof of work
every block includes the hash of the previous block
nakamoto consensus. longest chain wins
honest majority assumption
General, as opposed to bitcoin
- mining loop
- ledger loop
ethereum virtual machine
decentralized applications. contracts.
Stable coins §
currencies that are meant to hold stable values.
e.g. 1 Tether is pegged to 1 USD
Abstracting blockchains §
- networking — p2p
- leader election
- chain selection
- ledger — how to store data
- application — construct and apply state transitions
Privacy coins §
Blockchain issues §
- regulatory & legal
Block size, TPS (Transactions per second), and security are interlinked. At smaller block generation times, many blocks will be created and conflict resolution will take longer.
off-chain layer: payment channels, dispute resolution