Skip to content

A 20-week course on blockchain fundamentals including decentralization, cryptography, mining, smart contracts and consensus.

License

Notifications You must be signed in to change notification settings

BoskeDAO/Web3MOOC-BlockchainFundamentals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

Web3 Blockchain Fundamentals

A 20-week course on blockchain fundamentals including decentralization, cryptography, mining, smart contracts and consensus.

Related Course with pdf lectures:

https://github.com/laboon/CS1699_Fall2018/blob/master/course-info.md

Web3 MOOC video lectures:

Introduction

The Web3 Foundation “Blockchain for Beginners” MOOC teaches blockchain from the very basics all the way up to building your own blockchain. The course is led by Bill Laboon, Web3 Foundation’s technical education lead.

Beginning with the fundamentals - What is a blockchain? How is it stored? What are the different algorithms and protocols that are used in a blockchain? What’s the history of blockchain technology? It goes from absolute zero knowledge of blockchain or cryptography all the way to showing how to produce actual products on blockchain.

Lecture 1: History of Blockchain Technology

History of Blockchain Technology

  • History of digital currency and blockchains
  • Problems with previous implementations
  • Chaum’s ecash, Adam Back’s hashcash, Szabo’s bitgold, etc.

Lecture 2: Public-key Cryptography

  • How does it work?
  • Public and private keys
  • One-way functions

Lecture 3: Introduction to Hashing

  • What is hashing?
  • Cryptographic hashing algorithms
    • Collision-resistance
    • Hiding
    • Puzzle-friendliness

Lecture 4: Hashing In-Depth

  • Merkle-Damgard transforms
  • Digital signatures
  • Public identities

Lecture 5: Blockchain-Related Data Structures and Concepts

  • Hash pointers
  • Hash chains
  • Merkle trees

Lecture 6: Decentralization

  • Distributed Consensus
  • Attacks on distributed consensus: False spending - block creation/modification, Denial of service, Double-spend attack, 51% attacks.

Lecture 7: Proof of Work and Mining

  • What are miners doing?
  • Bernoulli trials and Poisson process outcome
  • Transaction fees and block rewards

Lecture 8: Mining In-Depth

  • Mining difficulty
  • Hardware (CPU vs GPU vs FPGAs vs ASICs)
  • Mining pools
  • Problems with Reliance on Mining

Lecture 9: Mechanics of Cryptocurrency

  • What makes up a transaction?
  • Ledger vs account models
  • Anatomy of a Block (transactions and metadata)

Lecture 10: Network Concepts

  • Block propagation
  • Lightweight (SPV) vs full nodes
  • Hard and soft forks
  • Limitations of Bitcoin and other blockchains

Lecture 11: Achieving Consensus

  • On-chain consensus mechanisms
  • Other kinds of consensus: rules, history, value
  • BIPs (Bitcoin Improvement Proposals), EIPs, etc

Lecture 12: Using Cryptocurrency

  • What does it really mean to “own”/“have”
  • Cryptocurrency?
  • Key management
  • Hot and cold storage
  • Sharing and splitting keys (multi-sig, threshold)

Lecture 13: Cryptocurrency and Anonymity

  • Anonymity vs Pseudonymity
  • Deanonymization
  • Anonymity Sets
  • Taint analysis
  • Mixing
  • Stealth addresses
  • Coinjoin

Lecture 14: Non-SHA256 Proof-of-Work

  • Progress-freeness
  • ASIC-resistant (not ASIC-proof) puzzles
  • Memory-hard puzzles (e.g. Scrypt)
  • Proof-of-useful-work
  • Non-outsourceable Puzzles

Lecture 15: Proof-of-Stake

  • Proof-of-stake vs Proof-of-work
  • “Nothing at stake” issue and slashing
  • Benefits and Drawbacks of Proof-of-stake

Lecture 16: Blockchain as a Platform

  • Secure timestamping
  • Burning bitcoin (unspendable transactions)
  • Overlay currencies
  • “Smart property” (colored coins)
  • Blockchains as a source of randomness

Lecture 17: Blockchain Applications

  • Smart contracts
  • Bitcoin lotteries (e.g. SatoshiDice)
  • Decentralized prediction markets
  • Contract settlement

Lecture 18: Sidechains and Cross-chain Communication

  • Cross-chain swap protocol
  • Sidechains
  • SPV proofs
  • Transfer contesting

Lecture 19: Smart Contracts, Part 1

  • Difference between a smart contract and a runtime
  • What to consider when writing a smart contract
  • What belongs in a smart contract

Lecture 20: Smart Contracts, Part 2

  • Writing a Smart Contract

About

A 20-week course on blockchain fundamentals including decentralization, cryptography, mining, smart contracts and consensus.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published