Language-Based Security

COMPSCI 587

This course explores methods for using programming languages and language semantics to enforce security. We will cover the techniques (e.g., security type systems, runtime monitoring, machine-checked proof and Hoare logic) as well as their applications to enforcing security (e.g., information flow security, program verification, machine-code verification, hardware security, quantitative security measures, differential privacy). We will read papers for each topic in this course.

Prerequisites

Prerequisite: COMPSCI 201 and either COMPSCI 230 or 232, or graduate standing

Curriculum Codes
  • QC
  • QS
Typically Offered
Fall Only