Cryptoeconomics.Study

Cryptoeconomics.Study

  • Course
  • Community
  • Contribute
  • Languages iconEnglish
    • 中文

›3.1 Decentralized Consensus and Blockchains

Getting Started

  • Welcome
  • Development Setup
  • Course Overview

Ch1: Payment Processor

    1.0 Chapter Overview

    • Lecture

    1.1 Hashes and Signatures

    • Lecture
    • Code Challenge

    1.2 Payment Processor

    • Lecture
    • Code Challenge

    1.3 Replay Protection

    • Lecture
    • Code Challenge

    1.4 Account Model vs UTXOs

    • Lecture
    • Code Challenge

    1.5 Centralized Systems

    • Lecture
    • Code Challenge

Ch2: Network Models

    2.0 Chapter Overview

    • Lecture

    2.1 Networks and Synchrony

    • Lecture

    2.2 Double Spends

    • Lecture
    • Code Challenge

    2.3 Latency-Based Consensus

    • Lecture
    • Code Challenge

    2.4 Proof of Authority

    • Lecture
    • Code Challenge

Ch3 Proof of Work

    3.0 Chapter Overview

    • Lecture

    3.1 Decentralized Consensus and Blockchains

    • Lecture

    3.2 Bitcoin and Nakamoto Consensus

    • Lecture
    • Code Challenge

    3.3 Merkle Trees

    • Lecture
    • Code Challenge

    3.4 Game Thoery in Bitcoin

    • Lecture
    • Code Challenge

    3.5 Selfish Mining

    • Lecture
    • Code Challenge

More

  • Resources
  • Glossary
Edit

Lecture


Decentralized Consensus and Blockchains

  • Learn the fundamentals of decentralized consensus and the blockchain data structure





Slides

Google Sheets

  • Part 1
  • Part 2
  • Part 3


Ch3.1 Overview

Block

  • A bunch of data that is hashed and propagated to the network (often the data is transactions that change the state).

Blockchain

  • Adding a pointer from each block to the block before it, creating a chain of blocks. This way if something changes in a past block it would change the hashes for all future blocks too. The dependency of each block on the block that came before it ties them together in a "chain".

Fork Choice Rule

  • The rules that determine how nodes on a network choose forks. In Bitcoin this is to always choose the longest valid fork.

Confirmations

  • When a block is added on top of another block, signalling that everything in that original block is valid

Consensus

  • Making sure that all nodes on a network agree on the same state.


Recommended Resources

Wikipedia: blockchain

But how does a blockchain work? - Awesome video by 3Blue1Brown explaining how blockchains work.

Anders Brownworth's blockchain demo - Put data in a block, "mine" (hash) it, then add data to the next block, "mine" (hash) it, etc... The "mine" button perfoms the state transition function and you can see the history (blockchain) being created right in front of you.

Ethereum Stack Exchange: Fork Choice Rule - Fork choice rule explained.

Truffle Ethereum Overview - Truffle is one of the most popular frameworks for building, testing, and deploying applications on Ethereum.

Solidty Docs: intro to blocks - Solidity is the language for Ethereum contracts, but their docs also have great explanations of blockchain basics like blocks.


Last updated on 9/18/2019 by Kevin Ho
← LectureNext →
  • Decentralized Consensus and Blockchains
Course
Getting Started
Community
ForumContributors
More
BlogNewsletterGitHub
Copyright © 2019 Cryptoeconomics.Study