University of Southern California
Home  |  Calendar  |  Search

MS in Computer Science with Specialization in Computer Security


Curriculum:
You must take one of the following courses:

  • CSCI 545 - Robotics
    3 Units.
  • CSCI 561 - Foundations to Artificial Intelligence
    3 Units.
    or
    CSCI 573 - Advanced Artificial Intelligence
    3 Units.
  • CSCI 564 - Brain Theory and AI
    3 Units.
  • CSCI 574 - Computer Vision
    3 Units.
  • CSCI 580 - 3-D Graphics and Rendering
    3 Units.
  • CSCI 582 - Geometric Modeling
    3 Units.

You must take the following courses:

  • CSCI 530 - Security Systems
    4 Units.
  • CSCI 551 - Computer Communications
    3 Units.
  • CSCI 555 - Advanced Operating Systems
    3 Units.
  • CSCI 577a - Software Engineering
    4 Units.
    or
    CSCI 578 - Software Architecture
    3 Units.
  • CSCI 570 - Analysis of Algorithms
    3 Units.
  • CSCI 531 - Applied Cryptography
    3 Units.

You must take two of the following courses:

  • CSCI 556 - Introduction to Cryptography
    3 Units.
  • CSCI 558 - Internetworking and Distributed Systems Laboratory
    3 Units.
  • CSCI 571 - Web Technologies
    3 Units.
  • CSCI 585 - Database Systems
    3 Units.
  • CSCI 599 - Special Topics
    2 to 4 Units.
  • CSCI 694a - Topics in Computer Networks
    3 Units.
    or
    CSCI 694b - Topics in Computer Networks
    3 Units.

Thesis:
This specialization includes the possibility of a Thesis Option. For more information click here.


  • 28 units are required for the degree and there is no examination required for the degree.
  • Similar to the CS (general) degree, only 9 units of your courses can be from 400 level courses and EE courses not listed above have to be approved EE courses.
  • Prerequisites must be taken prior to an advanced course. Even if a prerequisite is waived, you may not take the prerequisite course AFTER taking the advanced course.
  • Availability of courses per semester may occasionally change.