|Select the Course Number to get further detail on the course. Select the desired Schedule Type to find available classes for the course. The Schedule Type links will be available only when the schedule of classes is available for the selected term.|
|CS 50011 - Introduction To Systems For Information Security|
Credit Hours: 3.00. The course covers computer systems principles relevant to information security and it serves as a prerequisite for the later courses in the MS in IS program. The material includes features in the C/C++ programming languages for understanding security-critical software vulnerabilities, basic knowledge in computer architecture and assembly languages, knowledge of the compiling process, operating systems, networking, databases, and web applications relevant to information security. This course is restricted to CS graduate students. This course is required for students in the Master of Science in Computer Science Concentration in Information Security for Professionals Program. The course may not be used on the Plan of Study for any CS graduate students other than those in the Concentration in Information Security for Processionals program. Programming experience and computer science knowledge equivalent to that of a minor in CS. Incoming students are expected to have programming skills in at least one procedural programming languages, e.g., C,C++,Java, or Python. Typically offered Summer.
0.000 OR 3.000 Credit hours
Levels: Graduate, Professional, Undergraduate
Schedule Types: Distance Learning, Laboratory, Lecture
Offered By: College of Science
Department: Computer Science
May be offered at any of the following campuses:
Learning Outcomes: 1. Understand C/C++ code with security-relevant features such as pointers, string operations, function pointers, dynamic memory allocation, etc., laying the foundations for understanding software vulnerabilities in C/C++. 2. Explain common programming errors in C/C++ programs. 3. Explain how C/C++ programs are compiled into assembly and how call stack works in function calls, laying the foundation for understanding stack based buffer overflow. 4. Explain basic concepts in computer architecture, such as instruction set, assembly code, CPU modes, registers, MMU, paging. 5. Explain basic concepts in operating systems, such as processes, system calls, virtual memory, file system structure. 6. Explain basic concepts in networking, databases, and web applications.