As the demand for skilled information-security professionals continues to grow, computer and network professionals now can turn to this online, in-demand Master’s to emerge as sophisticated practitioners in cyber security, the science of protecting vital computer networks and electronic infrastructures from attack. Acquire a solid foundation in key technologies — computer and network security, digital forensics, cryptography, and biometrics. Study with internationally recognized faculty from Information Systems and Internet Security (ISIS) Laboratory. With industry continuing to place top priority on safeguarding its data and information systems, you become well-prepared for careers in developing security products, as security-application programmers, security analysts, penetration testers, vulnerability analysts and security architects.
Are you an employer? Download our Cyber Security Partner Brochure.
Sloan-C Names the School of Engineering's Cyber Security Virtual Master's Program as the Nation's "Outstanding Online Program"
NYU Tandon School of Engineering is one of nine graduate schools in the country to have the designation of National Centers of Academic Excellence (CAE) in Cyber Operations.
The admissions requirements for this program are parallel to the on-campus requirements. View the Cybersecurity, MS admissions requirements.
Students who have superior academic credentials but lack sufficient computer science background will be evaluated on a case by case basis. Find out more about our new Bridge Program for students lacking a background in computer science.
Computer Science Core Courses
- Introduction to Operating Systems CS-GY 6233
- This course introduces basic issues in operating systems. Topics: Threads, processes, concurrency, memory management, I/O Control and case studies.
Prerequisite: Graduate standing.
- Computer Networking CS-GY 6843
- This course takes a top-down approach to computer networking. After an overview of computer networks and the Internet, the course covers the application layer, transport layer, network layer and link layers. Topics at the application layer include client-server architectures, P2P architectures, DNS and HTTP and Web applications. Topics at the transport layer include multiplexing, connectionless transport and UDP, principles or reliable data transfer, connection-oriented transport and TCP and TCP congestion control. Topics at the network layer include forwarding, router architecture, the IP protocol and routing protocols including OSPF and BGP. Topics at the link layer include multiple-access protocols, ALOHA, CSMA/CD, Ethernet, CSMA/CA, wireless 802.11 networks and linklayer switches. The course includes simple quantitative delay and throughput modeling, socket programming and network application development and Ethereal labs.
Prerequisite: Graduate standing and CS-UY 2134.
- Design and Analysis of Algorithms I CS-GY 6033
- This course reviews basic data structures and mathematical tools. Topics: Data structures, priority queues, binary search trees, balanced search trees. Btrees. Algorithm design and analysis techniques illustrated in searching and sorting: heapsort, quicksort, sorting in linear time, medians and order statistics. Design and analysis techniques: dynamic programming, greedy algorithms. Graph algorithms: elementary graph algorithms (breadth first search, depth first search, topological sort, connected components, strongly connected components), minimum spanning tree, shortest path. String algorithms. Geometric algorithms. Linear programming. Brief introduction to NP completeness.
Prerequisites: Graduate Standing, CS-GY 5403 and CS-GY 6003.
Any of the courses above may be replaced if you have taken a similar class.
Security Core Courses
- Information, Security and Privacy CS-GY 6813
- This course introduces Information Systems Security and covers cryptography, capability and access control mechanisms, authentication models, security models, operating systems security, malicious code, security-policy formation and enforcement, vulnerability analysis, evaluating secure systems.
Prerequisite: Competency in Application Development in UNIX and Windows Environments, Graduate status. *Online version available.
- Network Security CS-GY 6823
- This course begins by covering attacks and threats in computer networks, including network mapping, port scanning, sniffing, DoS, DDoS, reflection attacks, attacks on DNS and leveraging P2P deployments for attacks. The course continues with cryptography topics most relevant to secure networking protocols. Topics covered are block ciphers, stream ciphers, public key cryptography, RSA, Diffie Hellman, certification authorities, digital signatures and message integrity. After surveying basic cryptographic techniques, the course examines several secure networking protocols, including PGP, SSL, IPsec and wireless security protocols. The course examines operational security, including firewalls and intrusion-detection systems. Students read recent research papers on network security and participate in an important lab component that includes packet sniffing, network mapping, firewalls, SSL and IPsec.
Prerequisite: Graduate standing and EL-GY 5363:* Online version available.
- Applied Cryptography CS-GY 6903
- This course examines Modern Cryptography from a both theoretical and applied perspective, with emphasis on “provable security” and “application case studies”. The course looks particularly at cryptographic primitives that are building blocks of various cryptographic applications. The course studies notions of security for a given cryptographic primitive, its various constructions and respective security analysis based on the security notion. The cryptographic primitives covered include pseudorandom functions, symmetric encryption (block ciphers), hash functions and random oracles, message authentication codes, asymmetric encryption, digital signatures and authenticated key exchange. The course covers how to build provably secure cryptographic protocols (e.g., secure message transmission, identification schemes, secure function evaluation, etc.), and various number-theoretic assumptions upon which cryptography is based. Also covered: implementation issues (e.g., key lengths, key management, standards, etc.) and, as application case studies, a number of real-life scenarios currently using solutions from modern cryptography.
Prerequisite: Graduate standing.
- Application Security CS-GY 9163
- This course addresses the design and implementation of secure applications. Concentration is on writing software programs that make it difficult for intruders to exploit security holes. The course emphasizes writing secure distributed programs in Java. The security ramifications of class, field and method visibility are emphasized.
Prerequisite: Gradute standing
Most of the required security core courses above have a project component.
Select Any 3 Electives
You may choose security-related courses from the School of Engineering or from New York University, including courses in psychology, law, and sociology departments. Selected courses must be approved by the Program Committee. All the following courses have been preapproved; others must be approved by the Program Committee.
- Design and Analysis of Algorithms II CS-GY 6043
- This course covers techniques in advanced design and analysis. Topics: Amortized analysis of algorithms. Advanced data structures: binomial heaps, Fibonacci heaps, data structures for disjoint sets, analysis of union by rank with path compression. Graph algorithms: elementary graph algorithms, maximum flow, matching algorithms. Randomized algorithms. Theory of NPcompleteness and approach to finding (approximate) solutions to NPcomplete problems. Selected additional topics that may vary.
Prerequisite: Graduate standing and CS-GY 6033.
- Computer Architecture I CS-GY 6133
- This course provides students with an understanding of computer-hardware subsystems, digital design strategies and fundamental computer-performance and capacity-improvement techniques. Combinational and sequential circuits are developed for the essential building blocks of computers. Binary number systems are presented in both human and computer algorithms. A uniprocessor computer is built from the blocks developed. An assembly language and an instruction set are presented. Processor implementation with a data path and hardwired and microprogrammed control is introduced. Performance evaluation of computers is studied. Basic pipelining is introduced to improve system performance. Memory-hierarchy alternatives are introduced to improve the capacity of the computing system.
Prerequisite: Graduate standing. *Online version available.
- Operating Systems II CS-GY 6243
- This course surveys recent important commercial and research trends in operating systems. Topics may include virtualization, network server design and characterization, scheduling and resource optimization, file systems, memory management, advanced debugging techniques, data-center design and energy utilization.
Prerequisite: Graduate standing and CS-GY 6233.
- Penetration Testing and Vulnerability Analysis CS-GY 6573
- This advanced course in computer and network security focuses on penetration testing and vulnerability analysis. It introduces methodologies, techniques and tools to analyze and identify vulnerabilities in stand-alone and networked applications.
Prerequisites: Graduate standing and CS-GY 6823
- Information Systems Security Engineering and Management CS-GY 6803
- This course presents a system and management view of information security: what it is, what drives the requirements for information security, how to integrate it into the systems-design process and life-cycle security management of information systems. A second goal is to cover basic federal policies on government information security and methodologies. Topics include information-security risk management, security policies, security in the systems-engineering process, laws related to information security and management of operational systems.
Prerequisite: Graduate standing and CS-UY 392 or equivalent: *Online version available.
- Digital Forensics CS-GY 6963
- This course introduces information-technology professionals to the application of forensic science principles and practices for collecting, preserving, examining, analyzing and presenting digital evidence. The course includes selected topics from the legal, forensic and information-technology domains and uses lecture, laboratory and written projects to illustrate these topics.
Prerequisite: Graduate standing. *Online version available.
- Biometrics CS-GY 9093
- The course concentrates on the unique advantages that biometrics brings to computer security. The course also addresses such challenging issues as security strength, recognition rates and privacy, as well as alternatives of passwords and smart cards. Students gain knowledge in the building blocks of this field: image and signal processing, pattern recognition, security and privacy and secure system design. By the end of the course students are able to evaluate and design security systems that include biometrics.
Prerequisite: Graduate standing. *Online version available.
- Advanced Project in Computer Science CS-GY 9963
- This course permits the student to perform research in computer science with a narrower scope than a master’s thesis. Acceptance of a student by a faculty adviser is required before registration. A project report and an oral examination on it are required.
Prerequisite: Graduate status.
- MS Thesis in Computer Science CS-GY 997X
- Exceptional students may elect to write a master’s thesis for which no more than 6 credits may be earned toward the degree. Such research should demonstrate adequately the student’s proficiency in the subject material. Also required: oral thesis defense before at least three professors, plus a formal, bound thesis volume. Thesis registration must be continuous.
Prerequisites: Graduate status and satisfactory grades in prescribed courses.
Research Project (Optional)
One goal of the MS program in Cybersecurity is to introduce students to the exciting research in the area of cybersecurity, in which you can use as a stepping stone to pursue a PhD degree. To this end, we offer a semester-long advanced project (CS 9963) in the area of cybersecurity as an elective. If you choose this option you will work under the guidance of a research professor and gain invaluable research experience.
We offer 3 preparatory bridge courses for students who do not have a working knowledge of a high level, general-purpose programming language or a background in sets, functions, relations, asymptotic notation, proof techniques, induction, combinatorics, discrete probability, recurrences, graphs, trees, mathematical models of computation and undecidability.
- Introduction to Programming and Problem Solving CS-GY 5303
- This course introduces discrete mathematics, computers and programming; Running C/C++ programs under Unix; algorithmic language; pseudo code; problem solving and program structure. Topics include constants, variable, data types, assignments, arithmetic expressions, input and output; object-oriented and top-down design and procedures, selection and loops; functions; enumerated; arrays, structs and searching and sorting.
Prerequisite: Graduate status: *Online version available.
- Data Structures and Algorithms CS-GY 5403
- This course introduces data structures. Topics include program specifications and design; abstract data types; stacks, queues; dynamic storage allocation; sequential and linked implementation of stacks and queues; searching methods, sequential and binary; binary trees and general trees; hashing; computational complexity; sorting algorithms: selection sort, heap sort, mergesort and quicksort; comparison of sorting techniques and analysis.
Prerequisite: Graduate Standing, CS-GY 5303 *Online version available.
- Foundations of Computer Science CS-GY 6003
- This course covers logic, sets, functions, relations, asymptotic notation, proof techniques, induction, combinatorics, discrete probability, recurrences, graphs, trees, mathematical models of computation and undecidability.
Corequisite: Graduate Standing.
Master's Thesis (Optional)
In addition to the above semester-long research experience, the program also offers research-oriented MS students to take up the master's thesis option. If you select this option, you will need to take 6 credits of CS 9973 working with a faculty advisor on some research problem in cybersecurity in lieu of 2 out of the 3 required electives.
The research need not be original, but should adequately demonstrate your proficiency in the subject material. An oral defense of the master's thesis with at least 3 professors in attendance is required. The 6 credits of master's thesis must span over a period of exactly 2 consecutive semesters. Whenever relevant, 3.00 credits of CS 9963 may be used as 3.00 credits of CS 9973, subject to the approval of your faculty adviser(s).
Degree Requirements: 30 Credits
NOTE: Please refer to the Course Catalog to view course descriptions by course number if information is not listed above.