Tech

Blockchain & Money: Session 4: Blockchain Basics & Consensus by M.I.T. Sloan School of Management with Professor Gary Gensler

Blockchain and Money–Class/Session 4–Prof. Gary Gensler MIT Sloan School of Management

Session 4: Blockchain Basics and Consensus

  • Session 4 Study Questions:
    • What is the Byzantine General’s problem? How does proof-of-work and mining in Bitcoin address it? More generally, how does blockchain technology address it?
    • What other consensus protocols are there? What are some of the tradeoffs of alternative consensus algorithms–proof-of-work, proof-of-stake, etc.?
    • How do economic incentives work within blockchain technology to maintain decentralized ledgers and avoid double spending?
    • What are the incentives of consensus protocols & mining?
  • Session 4 Readings:
    • ‘Geneva Report’ Chapter 1 (pages 1-7); Casey, Crane, Gensler, Johnson & Narula.
    • ‘Blockchain Technology Review’ NIST (pages 23-32, section 3 & 4).
    • ‘The Byzantine Generals Problem’; Lamport, Shostak & Pease (382-387).
    • ‘A Short Guide to Consensus Protocols’; Coindesk.

Overview: Review of Blockchain Design; Consensus through Proof-of-Work; Bitcoin Mining; Native Currency; Network; Other consensus protocols; Conclusion.

Blockchain/Bitcoin Technical Features:

  • Cryptography & Timestamped Logs
    • Cryptographic Hash Functions
    • Timestamped Append-only Logs (blocks)
    • Block Headers & Merkle Trees
    • Asymmetric Cryptography & Digital Signatures
    • Addresses
  • Decentralized Network Consensus
    • Proof of work
    • Native Currency
    • Network
  • Transaction Script & UTXO–Transaction Code & Ledgers
    • Transaction Inputs & Outputs
    • Unspent Transaction Output (UTXO) set or account-based
    • Scripting Language–Script, Solidity, or other programming languages.

  • Hashcash–Proof of Work (Adam Back, 1997)
    • Proposed to address Email, Spam, & Denial of Service attacks
  • Requires computational work to find a hash within predeterminded range.
  • Difficultly defined by Hash output’s # of leading zeros.
  • Blockchain–Proof of Work
    • Innovation–Chained Proof-of-Work for Distribute Network Consensus & Timestamping.
  • Bitcoin–Proof of Work Difficulty
    • Targets 10 minute average block generation time.
    • Defined by the # of leading zeros Hash output requires to solve proof of work
    • Adjusts every 2016 blocks–about every 2 weeks
    • Currently, greater-than or equal to 18 leading zeros (out of 64 hexadecimal characters)
    • Block 541974 (09/18/18)–18 leading zeros.
  • Genesis Block (01/03/09)–10 leading zeros, though only required 8
    • ex: 000000000019d6689c085ae165831e934ff763ae46c2a6c172b…

Bitcoin Mining Evolution

  • Native Currency
    • Economic Incentive System
    • ‘Monetary Policies’ vary widely
  • Bitcoin–BTC
    • Created through Coinbase Transaction in each block
    • ‘Monetary Policy’ preset in Bitcoin Core
    • Creation originally 50 Bitcoin per block
    • Reward halves (1/2s) every 210,000 blocks
    • Currently, 12.5 BTC’s created per block–thus ‘inflation’ 4.1%
    • Currently, 17.3 million BTC; capping at 21 million BTC in 2040.
    • Market based transaction fee mechanism also provided for in Bitcoin Core
  • Ethereum
    • Currently, 3 ETH per block–thus ‘inflation’ 7.4%
    • Recent proposal to decline to 2 ETH per block in 11/18
    • Fees paid in ‘Gas’ (109 Gas per ETH) for computation are credited to miners.
    • ‘Gas’ is a small unit of Ethereum, like how ‘satoshi’ is a small unit of Bitcoin.)
  • Network
    • Full Nodes–Store full blockchain & able to validate all transactions
    • Pruning Nodes–Prune transactions after validation & aging.
    • Lightweight Nodes–Simplified Payment Verification (SPV) nodes–Store Blockchain Headers only
    • Miners–Performs Proof of Work & Create new Blocks–Do Not need to be a full node.
    • Mining Pool Operators
    • Wallets–Store, View, Send & Receive Transactions & Create Key Pairs.
    • Mempool–Pool of unconfirmed (yet validated) Transactions.
  • Alternative Consensus Protocols
    • Generally Randomized or Delegated Selection of Nodes to Validate next Block
      • May have added mechanism to confirm Block Validators Work
    • Randomized Selection May be Based Upon:
      • Proof of Stake–Stake in Native Currency
      • Proof of Activity–Hybrid of POW & POS
      • Proof of Burn–Validation comes with Burning of Coins.
      • Proof of Capacity (storage or space)–Based upon Hardware Space
    • Delegated Selection May Be Based Upon Tiered System of Nodes
    • Major Permissionless Blockchain Applications still use Proof of Work though:
      • DASH is a hybrid of POW with a tiered system of ‘Masternodes’
      • NEO uses a Delegated protocol of ‘Professional Nodes’.
  • Conclusions
    • Reviewed Bitcoin Design Features
      • Timestamped Append-only Logs (Blocks)
      • Secured through Cryptographic Hash Functions & Digital Signatures
    • Decentralized Network Consensus
      • Consensus through Proof of Work
      • Native Currency
      • Network
    • Transactions Ledgers
      • Transaction Inputs & Outputs
      • Unspent Transaction Output (UTXO) set
      • Scripting language

Biblio: