Specializations in Cybersecurity

Specialization in Cybersecurity in the Computer Science Program

CS students looking to pursue the cybersecurity specialization are required to complete the lower level courses (MATH140, MATH141, CMSC131, CMSC132, CMSC216, CMSC250), the additional required courses (CMSC330, CMSC351, MATHXXX and STAT4xx beyond MATH141), and the upper level concentration requirements [12 credits of 300-400 level courses from one discipline outside of CMSC. No course in or cross-listed with CMSC can be counted. An overall 2.0 average must be earned in these courses. Each course must be a minimum of 3 credits. Only 1 special topics or independent study course may be used] The difference in the specialization is the upper level computer science courses.

Students with this specialization are required to take:

  • CMSC412: Operating Systems
  • CMSC414: Computer and Network Security
  • CMSC417: Computer Networking
  • CMSC433: Programming Language Technologies and Paradigms
  • CMSC456: Cryptology

Students must choose:

  • CMSC41: Computer Architecture OR CMSC430:  Introduction to Compilers (may not take both to complete requirements)
    AND
  • CMSC420: Data Structures OR CMSC451: Design and Analysis of Computer Algorithms (may not take both to complete requirements)

Specialization in Cybersecurity in the Computer Engineering program (Coming Soon)

CE students can satisfy the proposed area of specialization in cybersecurity by completing 5 courses chosen from a pre-approved list. Courses are organized into 4 categories:

  1. Security
  2. Networks
  3. Hands-on experience
  4. Computer systems

For more information about the Computer Science Undergraduate Program, visit:

For more information about the Computer Engineering Undergraduate Program, visit:


Clark School        UMIACS   CMNS