EE374: Blockchain Foundations (Winter 2023)

Birds

EE374: Blockchain Foundations

 

Logistics and Details

Administrativia

Extended course information is available here.

Meeting Times

Tuesday, Thursday 1:30-2:50 PM
Gates B12

Course Description

Blockchains are a new field of computer science which combines cryptography, distributed systems, and security. In this course, we dive deep into the fundamentals: what are blockchains, how do they work, and why are they secure?
You will learn both the theory behind blockchains and how to implement them in practice. The lectures, as well as the midterm and final, will dive deep into the robust construction of proof-of-work and proof-of-stake blockchains. The problem sets will focus on the implementation of a blockchain node from scratch.
While in the EE department, this course also counts as a CS elective.

Prerequisites

Strong programming experience
CS103, or CS103B or related course on discrete math
CS109, MATH151, STATS116, or EE178 or related course on probability

Grading

The grade for the course will be determined according to the following breakdown:

  • Programming Exercises: 40%
  • Theory Exercises (meant to help with exam studying): 5%
  • Midterm: 20%
  • Final: 35%

Course Textbook

The course textbook containing lecture notes is available here. It will be updated throughout the quarter.

Questions or Concerns?

If you have any questions or concerns and are enrolled in the course, please reach out on Ed at https://edstem.org/us/courses/31092/discussion.

Otherwise, please reach out to dionyziz@stanford.edu.

 

Syllabus

Week 1

Week 2

Week 3

Week 4

Week 5

Week 6

Week 7

Week 8

Week 9

Week 10

Finals Week

 

Teaching Team

Dionysis Zindros

Dr. Dionysis Zindros

Instructor

dionyziz@stanford.edu

Office Hours: 

Tue 3:00pm - 4:00pm
Wed 10:00am - 11:00am

Location: Packard 202

David Tse

Prof. David Tse

Instructor

dntse@stanford.edu

Office Hours: 

Upon email request

Scott Hickmann

Scott Hickmann

Teaching Assistant

hickmann@stanford.edu

Office Hours: 

Wed 4:30pm - 5:30pm

Location: Packard 202

Dionysis Zindros

Kenan Hasanaliyev

Teaching Assistant

kenanhas@stanford.edu

Office Hours: 

Mon 5:30pm - 6:30pm

Location: Packard 202