Blockchain Technologies


San José State University
CS266: Topics in Information Security
Autumn 2019
Class Days/Time: M/W 7:30-8:45AM
Classroom: MH 422
Office Hours: M/W 7:15-7:30AM in MH 422; also from 8:45AM (let the lecturer know at the end of class)
Tentative Schedule
Syllabus
Blockchains have emerged as exciting means of achieving decentralized consensus, notably in the realm of cryptocurrencies and electronic payments. The space has seen rapid methodological advances and melds cryptography, algorithms, distributed systems, game theory, and more. In this course, we will start with a review of sufficient cryptography to understand the workings of Bitcoin, including Proof of Work. We will then cover Byzantine fault-tolerant consensus protocols, various algorithms to prevent Sybil attacks, Merkle trees and other primitives, “smart contracts,” privacy-preserving techniques, homomorphic encryption, network layer technologies, Lightning transfers and related methods, zero-knowledge proofs, and application case studies. We will also cover reasons for global and industrial enthusiasm about the technology, potential for misuse, examples of vulnerabilities, and governance. Lectures will be supplemented with primary sources and student presentations.

Lecture Notes

Errata

Homework

Speaking Schedule