CPSC 4363 Cybersecurity: Systems is the one of the twin courses that students typically take in the fall (this one) and spring (COSC 4345) semesters of their senior year. It is a required course for students majoring in Cybersecurity.
This course covers the principles of computer systems security. The topics we shall cover include: malware, privacy, network attacks and defenses, operating system security, application security (web, email, databases, etc.), cryptography, and the security issues on some hot topics, such as quantum encryption, Blockchain, and Internet of Things. Two course-projects focus on understanding the nature of new threats and building reliable code, respectively.
The course adopts the "learning by doing" principle. Students are supposed to learn the attacks by performing them in a restricted environment or a simulated environment. They will also play with a number of security tools to understand how they work and what security guarantee they provide. The experiments will be conducted in the virtual machine environments and/or in Minix environments.
Student Learning Outcomes
Upon completion of this course students should be able to:
Course Prerequisites: We assume that the student in CPSC 4363 is familiar with an object-oriented programming language such as C++, Java, or Python. The course does not assume but suggest that the students have had individual courses in databases, operating systems, networking, web programming, or data mining. COSC 2336 with a grade of C is the prerequisite.