CSCI 1951L: Blockchains and Cryptocurrencies
Jump to main contentWelcome to CSCI1951L!
Introduction to modern blockchain-based systems. This timely course covers relevant topics such as consensus and distributed computing, example cryptocurrencies, programming smart contracts, privacy and secrecy, transfer networks, atomic swaps and transactions, non-currency applications of blockchains, and legal and social implications. Students will complete four programming projects, four homework assignments, one written assignment, and two labs.
Course Info
Assignments
Every project, homework, and lab should be turned in via Gradescope. Every assignment will be available by 11:59 pm ET on the day listed, and will be due at 11:59 pm ET on the due date listed. Written assignments should be submitted as PDFs. All assignment release and due dates are also available through the course calendar. The assignment dates currently listed are tentative and may change. If any dates are shifted, an EdStem announcement will be made informing you of the change.
Assignment | Out | In |
---|---|---|
Homework 0: Course Setup | 1/26 | ASAP |
Lab 1: Introduction to Go | 1/30 | 2/12 |
Homework 1: Blockchains | 1/30 | 2/05 |
Project 1: Chain | 2/06 | 2/26 |
Homework 2: Bitcoin | 2/13 | 2/23 |
Project 2: Coin | 3/06 | 3/24 |
Homework 3: Ethereum & Solidity | 3/13 | 3/19 |
Project 3: Lightning | 4/11 | 4/26 |
Lab 2: Introduction to Solidity | 4/14 | 4/28 |
Project 4: Swap | 4/27 | 5/06 |
Homework 4: Cross-Chain, Wallets, Byzantine, & Privacy | 5/01 | 5/08 |
Written: White Paper | 5/06 | 5/18 |
Lectures
Lectures will take place Tuesdays and Thursdays from 2:30pm-3:50pm ET in 85 Waterman Street 130. Recordings will be available soon after lecture ends.
Zoom Meeting ID (for remote synchronous viewing): 996 8671 6687
Lecture NotesTopic | Date | Slides | Recording |
---|---|---|---|
Course Introduction | 1/26 | Slides | Recording |
Bitcoin Introduction | 1/31 | Slides | Recording |
Bitcoin Mining | 2/2 | Slides | Recording |
Bitcoin Data Structures | 2/7 | Slides | Recording |
EVM | 2/9 | Slides | Recording |
Solidity | 2/14 | Slides | Recording |
Ethereum Data Structures | 2/16 | Slides | Recording |
Gas | 2/23 | Slides | Recording |
Solidity Pitfalls 1 | 2/28 | Slides | Recording |
Solidity Pitfalls 2 | 3/2 | Slides | Recording |
Solidity Pitfalls 3 | 3/7 | Slides | Recording |
Solidity Pitfalls 4 | 3/9 | Slides | Recording |
PoS in Algorand and Ethereum | 3/14 | Slides | Recording |
Making Ethereum Scalable | 3/16 | Slides | Recording |
Off-Chain Payment Channels | 3/21 | Slides | Recording |
Concurrency | 3/23 | Slides | Recording |
Privacy and Anonymity | 4/4 | Slides | Recording |
Privacy Coins | 4/6 | Slides | Recording |
Crosschain 1 | 4/11 | Slides | Recording |
Crosschain 2 | 4/13 | Slides | Recording |
Wallets and Light Clients | 4/18 | Slides | Recording |
Decentralized Finance | 4/20 | Slides | Recording |
Regulation and DeFi | 4/24 | Slides | Recording |
Season Finale (Remote) | 4/27 | Slides | Recording |
Course Staff
I like figuring out how to make things sync.
Hi, I'm a junior studying CS. I love listening to and performing music (Brown U Orchestra 4 lyfe), art, gaming, philosophy, and starting projects that I will never finish.
Hi! I'm a senior studying Computer Science and love traveling, watching (and making) films, learning about the past and thinking about what the future holds.
Hi! I'm a senior from Bristol, RI studying computer science. Outside of school, I like to ski and take long walks!
I am a CS Master's student and I love watching football, gaming, and great food.
Hey, my name is Pavani and I'm from India. I'm a first year CS Master's student, while not taking deep dives into papers and code , I enjoy cooking, finding new music and planning my next trip.