EECE 571C

EECE 571C Electrical Engineering Seminar and Special Problems – BLOC & DSTR LEDG

Version: 0.7

Course Level:

Graduate course

Background Assumption

Students are expected to have very basic knowledges in computer science and mathematics, including the Turing machine, the principle of computer networks, the list and tree data structures, the fundamentals of discrete mathematics, and the principle of statistics and probabilities.

Textbook

No textbook required, lecture notes will be provided

Course Outline:

  1. Introduction (Week 1)
    1. Introduction of Blockchain — The Basic Concept
    2. Introduction to the 3-Layer Model — The Social, Data, and Technical Layers
    3. Introduction to Blockchain Use Cases
    4. Introduction to the Course
  • Peer-to-Peer System (Week 2)
    • Peer-to-Peer Networks
      • Review of Computer Networks
      • Graph Theory Basics
    • Gossip Protocols
    • Byzantine Generals Problem
  • Consensus Mechanism (Weeks 3, 4, 5, and 6)
    • Learning by Games
    • Double-spending Problem of Cryptocurrency
      • Centralized Solution
      • Decentralizes Solution
    • Game Theory Fundamentals
      • Prisoner Dilemma
      • Repeated Game and Collational Game
      • Mechanism Design
    • Consensus Mechanisms
      • FLP (Fischer, Lynch & Patterson) Impossibility
      • Proof-of-Work — History and Disadvantages
      • Proof-of-Stake (PoS) and Delegated PoS — Motivation and Problems 
    • Attack Models
      • Introduction to Attack Models
      • 51% Attack
      • Sybil Attack
  • Data & Records (Weeks 7 and 8)
    • Blockchain as a Record Keeping System
      • Pros and Cons of Blockchain Comparing with Database
      • Difference between Record and Data
    • Storage and Data Structure
      • On Chain & Off Chain
      • Hash Function, Merkle Tree, and Merkle Proof
      • Distributed Hash Table
    • Basis of Trusting Records
      • Data Privacy
      • Data Transparency
      • Data Tamper-resistance and Non-repudiation
      • Data/Records Ownership and Control
      • Data/Records Accuracy, Reliability, and Authenticity
  • Modern Cryptography (Weeks 9 and 10)
    • Review of Cryptographic Basics
      • Symmetric and Asymmetric Encryption
      • The Principle of RSA
    • Elliptic Curve Cryptography (ECC)
      • Elliptic Curve
      • ECC versus RSA
    • ECC Digital Signature
      • ECC Signature
      • ECC Signature Verification
  • Code and Virtual Machines (Weeks 11 and 12)
    • Turing Completeness
    • Operation Code in Bitcoin
    • Smart Contract in Ethereum
    • Ethereum Virtual Machine and Remote Procedure Call
  • Case Study (Week 13)
    • Bitcoin in a nutshell
    • Ethereum in a nutshell
  • Final Exam (Week 14)

Course Deliverables:

TaskTime to ReleaseTime to DueWeight
Assignment 1Week 3Week 45%
Quiz 1Week 5Week 55%
Assignment 2Week 6Week 710%
MidtermWeek 8Week 820%
Assignment 3Week 9Week 1010%
Quiz 2Week 12Week 1210%
FinalWeek 14Week 1440%