CPSC 444/544: Real-World Cryptography

2025 Spring

Course Description

Growing privacy and security concerns motivate the development of trustworthy systems—computer systems whose security, privacy, and availability are based on well-defined assumptions rather than trust in their operators. This course will study the design principles in real-world trustworthy systems, focusing on their cryptographic techniques. Topics include secure networking and messaging, attested execution, credentials and authentication, and payments. We will also cover decentralization, a powerful emerging paradigm of trustworthy systems.

Prerequisites

This course is aimed at PhD and MS students and advanced undergraduates. It is highly recommended for students to be familiar with concepts of computer security (e.g., from CPSC 413 and/or CPSC 467).

Grading

Coursework includes homework and written responses to reading assignments. Graduate students will present at the end of the semester.

Schedule

Go to this Google doc.

We will study the following key techniques used to design trustworthy systems.

There are many other topics of interest that we don’t have time to cover (secure voting, for instance), which would make good topics for the presentations at the end of the semester.