MPCS 56511 Introduction to Computer Security (Autumn 2022)

Section 1
Instructor(s) Rossell, Shelley (shelley)
Location Online
Meeting Times Wednesday 5:15pm - 7:30pm
Fulfills Core Systems Elective



This course introduces security principles and practices across a range of fundamental Security domains.  It will emphasize both offense (attacker mindset) and defense (technical and non-technical controls).


  • Threat Landscape
  • Encryption
  • Authentication and access control
  • Endpoint security
  • Network security
  • Web and application security
  • Risk management
  • Additional security-related topics, such as monitoring


  • Homework assignments, including group discussion and required readings from free online resources
  • Hands-on labs
  • Quizzes
  • Final project

Learning objectives

Upon successful completion of this course, students should: 

  • Understand common threats and protections for endpoints, networks, and web applications
  • Demonstrate knowledge of encryption, authentication and access controls, policies, security frameworks, risk, and monitoring
  • Have hands-on exposure to tools that both attackers and defenders use
  • Understand basic threats, protections, and tradeoffs for addressing risk
  • Learn how to have a security mindset

Course Prerequisites

Core Programming (completed or concurrently enrolled)

Other Prerequisites

Familiarity with Linux command line. The Unix boot camp would be helpful for the labs.
Familiarity with TCP/IP and network routing recommended
NOTE: You will set up your lab environment using virtualization software, such as Virtual Box and a lab virtual machine, on your own device. Microsoft Azure for Students is an option for students whose devices don't support that setup, such as those with Apple M1 devices. Instructions will be provided on Week 1.

This course requires competency in Unix and Linux. Please plan to attend the MPCS Unix Bootcamp ( or review the UChicago CS Student Resource Guide here:

Overlapping Classes

This class is scheduled at a time that conflicts with these other classes:

  • MPCS 53020-1 -- Foundations of Database Systems
  • MPCS 55001-2 -- Algorithms
  • MPCS 52553-1 -- Web Development
  • MPCS 53112-1 -- Advanced Data Analytics

Eligible Programs

Masters Program in Computer Science MS in Computational Analysis in Public Policy (Year 2) MS in Molecular Engineering MA in Computational Social Science (Year 1) MA in Computational Social Science (Year 2) Bx/MS in Computer Science (Option 1: Research-Oriented) Bx/MS in Computer Science (Option 2: Professionally-oriented - CS Majors) Bx/MS in Computer Science (Option 3: Profesionally-oriented - Non-CS Majors) Masters Program in Computer Science (new students)