CPSC 666 01: Secure Decentralized Systems (2023 Spring)

Course Description

Recently popularized by blockchains, decentralization is a means to achieving strong security, privacy, and resiliency by removing centralized trust. This course will focus on the techniques underpinning real-world decentralized systems. In particular, topics such as blockchain security and scalability, trusted computing (such as Trusted Execution Environments), and anonymous communication (such as secure messaging protocols) will be covered. Students will be asked to read and present research papers from top-tier computer security and applied cryptography venues. Furthermore, students will have to undertake a semester-long research project on emerging security problems in real-world decentralized systems.

A list of tentative topics include:

  • Decentralized systems foundation
    • Byzantine Agreement, classic consensus, longest-chain consensus, Bitcoin, Ethereum and smart contracts, TEEs
  • Scaling decentralized systems
    • Payment channels
    • Optimistic and zk-rollups
  • Privacy in decentralized systems
    • Payment: Zcash & tornado cash
    • Privacy-preserving smart contracts (Zapper)
    • Network layer anonymity: DC net, mixnet, E2EE messaging
  • Decentralized Finance Security
    • DeFi primitives & attacks
    • Oracles
    • Decentralized Identity
    • MEV & mitigation
  • Decentralized storage
  • Cross-chain communication

Course Format

This course will consist of lectures and student presentations on advanced topics and/or recent papers. Students will also undertake a semester-long research project. There will be four assignments.