All lecture and teaching material is developed by Patrick McCorry. All material is open-source and it is free to access, use modify or share.
The field of cryptocurrency is trust engineering. It applies cryptography, distributed systems and mechanism design as the foundation for a global and self-sustaining peer-to-peer network.
This course is taught in the style of an MSc module. We'll study how something like Bitcoin can work, the implications and beauty of self-enforcing smart contracts, and focus on bringing all students up to date with state-of-the-art research in this emerging area. There is a special focus for off-chain protocols. This includes the history of payment channels (the lightning network) and validating bridges (rollups).
Our goal is to provide educational material (and the correct mental model) to allow bystanders to join the cryptocurrency community. Anyone with a slight technical background can benefit from this course. No programming experience required, but it will be helpful for some of the exercises.
|Time & Date||Title||Lecture Video||Slide Deck||Blog posts||Homework||Reading material|
|7pm (UK) 22-03-2022||Introduction to cryptocurrency||Online recording||Lecture 1||Why cryptocurrencies are interesting?
How does everything tie together?
Coding Exercise 1
The Latecomer's Guide to Crypto
Stone Ridge shareholder letter
Two Generals Problem
Why 2/3 majority?
|7pm (UK) 29-03-2022||Structure of the blockchain and how cryptography plays a role||Online recording||Lecture 2||
The "crypto" in cryptocurrency
Basics of hash function and their usage in cryptocurrencies
Basics of digital signatures
Bitcoin's UTXO model
Ethereum's account model
Coding Exercise 2
RNG bug in Android (2013)
Heuristics for tracking transfers in UTXO model
Bitcoin SPV clients
Handle ECDSA with care
State expiry history
SoK light clients
|7pm (UK) 31-03-2022||Live coding of solidity||Online recording|
|7pm (UK) 05-04-2022||Building and breaking smart contracts||Online recording||Lecture 3||What is a smart contract?||
Coding Exercise 3
Solidity by Example.
EVM codes (visual)
Solidity gas golfing
Foundry Ethereum development toolbox
Programming Satan's Computer
Bad gas management in EVM
|The group project is released!
You have until the 3rd May 2022 to complete the assignment. It can be completed solo or as part of a team.
The task is to build and promote a rock, paper and scissors smart contract :)
|3:30pm (UK) 07-04-2022||Smart contract security with Mudit Gupta and Taylor Monahan||Online recording|
|7pm (UK) 12-04-2022||Peer to peer network and the fee market||Online recording||Lecture 4||Who are the block producers?||
Check coursework for coding exercise
Initial block download.
Ethereum Blockspace - Who Gets What and Why
Economic Analysis of EIP-1559
TxProbe: Topology of Bitcoin Network
Snap sync announcement
Hostle blockchain takeovers
Analysis of EIP-1559
|2pm (UK) 20-04-2022||Fee market sustainability with Hasu and Tim Roughgarden||Online recording||Foundation of blockchain class (Tim Roughgarden)|
|7pm (UK) 26-04-2022||Can a monolithic blockchain design solve the scalability problem?||Online recording||Lecture 5||
A Theory of Ethereum State Size Management
On scaling decentralized blockchains
EIP103: State rent
Bitcoin's FIBRE network
Graphene: Efficient Interactive Set Reconciliation Applied to Blockchain Propagation
Proof of publication
|5pm (UK) 03-05-2022||Interoperability, repayment protocols, and the lightning network.||Online recording||Lecture 6||
Duplex Micropayment Channels
Towards payment channel networks
Sprites and State Channels
You sank my battleship!
Perun and Virtual Payment Hubs
Revive: Rebalancing Off-Blockchain Payment Networks
eltoo: simple channels for bitcoin
|5pm (UK) 05-05-2022
||Implementing the lightning network with Olaoluwa Osuntokun and Christian Decker||Online recording|
|7pm (UK) 10-05-2022||Scaling with bridges in a multi-chain world||Online recording||Lecture 7||Mental models for L1 and L2||
SoK: Validating Bridges as a Scaling Solution for Blockchains
Plasma: Scalable Autonomous Smart Contracts
Minimal Viable Plasma
The Life and Death of Plasma
(Almost) Everything you need to know about Optimistic Rollups
An Incomplete Guide to Rollups
|5pm (UK) 12-05-2022||Plasma to Rollups with Georgios Konstantopoulos and Kelvin Fichter||Online recording|
|7pm (UK) 24-05-2022||Past, present and future of blockchain networks.||Online recording||Lecture 8||
Bitcoin and Me (Hal)
The roads not taken.
Visions of Bitcoin
The Complete Satoshi
Poker code in Old Bitcoin Core
Bitcoin's Academic Pedigree
We plan to conduct one lecture a week and eight lectures in total. All classes are streamed over Crowdcast (immediate replay available) and a chatroom is available is ask questions on the fly.
While the prepared content should benefit the audience, the lecture-style supports the audience to ask questions and diverge from the content to aid the learning experience. Typically, 1 hour of lecture material is planned for a 2 hour session.
There is no explicit or graded assessment. We encourage participants to build a portfolio of work and experiment with different aspects of cryptocurrency.
Unlike other events, it is ideal for sponsors to approach us after the class has concluded. Assuming it is successful, we want sponsors to focus on how we can make it sustainable in the future.
There will be no additional lectures or workshops from external companies during the 8 week course. This is to avoid over-exhausting the participants or presenting content in a way that confuses the participants. We may include some interactive panel sessions with industry experts to discuss some of the material presented.
There is no fee to participate. Our goal is to help bystanders join the cryptocurrency community and provide a level playing field for all. It is very possible this venture makes no money, but who cares when we are all having fun.
Patrick McCorry is an intern engineer at Infura after Infura acquired his startup, any.sender. Previously, he was an Assistant Professor at King’s College London and an accomplished researcher at University College London, University of Illinois at Urbana-Champaign and Newcastle University. His expertise is cryptocurrencies, smart contracts, applied cryptography and decentralised systems. Patrick is the United Kingdom’s first PhD graduate in cryptocurrencies. His work has appeared at Devcon, Scaling Bitcoin, Breaking Bitcoin, CESC, BPASE and SBC alongside numerous academic events.
We hope our material helps kick-start your crypto career. To the moon.