Course Description
This course provides an in-depth introduction to computer systems security, covering fundamental principles,
cryptography, hardware and software trust, side-channel attacks, wireless security, malware, and modern
techniques for secure computation and attestation.
Learning Outcomes
- Understand core principles of computer and system security
- Explain how trust is established in computing systems (hardware, OS, TPM)
- Differentiate between symmetric and asymmetric cryptographic systems
- Analyze common attack vectors including physical, side-channel, and wireless attacks
- Evaluate malware behavior and memory safety vulnerabilities
- Apply techniques such as control-flow integrity and isolation for secure systems
- Understand and explain remote attestation and trusted execution environments
- Assess modern security challenges in cyber-physical and distributed systems
Course Schedule
This is a tentative plan. Depending on the progress and demand, we might spend more/less time on each topic.
Week 1: Introduction to Security
- Basic principles
- Overview of computer system security topics
- Establishing trust: hardware, OS, secure boot, TPM
Week 2: Introduction to Cryptography
- Symmetric and asymmetric cryptosystems
- Stream vs. block ciphers
- Hash functions, MACs, digital signatures
- Advanced topic: blockchains
Week 3: Cyber-Physical Systems and Sensor Security
- System design and threat models
- Physical attacks
- Transduction attacks
Week 4: Physical Side-Channel and Fault Attacks
- Side-channel leakage
- Fault injection attacks
- Defense mechanisms
Week 5: RF and Wireless Security
- Wireless security fundamentals
- Device fingerprinting
- Privacy and distance bounding
Weeks 6–7: Malware and Memory Safety
- Memory safety vulnerabilities
- Types of malware
- Software Fault Isolation (SFI) and sandboxing
- Binary analysis techniques
Weeks 8–9: Remote Computation and Attestation
- Control-flow integrity (software and hardware)
- Isolation and trusted execution environments
- Remote attestation
Week 10: Review and Other Topics
- Course review
- Additional advanced topics
- Final presentations
Assessment (absolute grading)
- Computer Assignments: 30%
- Final Project: 20%
- Exams: 30%
- Class Presentation: 20%
Final Grade: A+: top 5% of the class, [100,93): A, [93, 90): A-, [90, 60): B, <60: F