This course provides a graduate-level introduction to parallel and distributed systems and introduces fundamentals of shared and distributed memory programming to provide hands-on experience of parallel computing. The course will explore algorithms and techniques for programming shared-memory (e.g., multicores) and distributed-memory (e.g., clusters) computer systems. The course will include both theoretical and programming components. Includes the study of parallel computer architecture, memory, and I/O. Also, parallel computer algorithms to include shared and distributed memory, parallel computation models, graph algorithms, and numerical algorithms.
Textbook: Course materials will be distributed and available online.
This course introduces the formal models of computer science, the fundamental limits of computation, and the limits of efficient computation. Topics include automata and Turing machines, decidability and undesirability, reductions between computational problems, and the theory of NP-completeness.
Textbook: Introduction to the Theory of Computation, 3/E, Michael Sipser, ISBN-10: 113318779X, ISBN-13: 978-1133187790, Publisher: Cengage Learning, 480 pp, Published: June 27, 2012.
This course provides an in depth discussion of theoretical and applied topics in mobile and network security. The cybersecurity issues discussed in the class include, but are not limited, fundamental security principles, intrusion detection, one-way hash chain, Merkle hash tree, secure group communication, routing security, telephone infrastructure, VOIP/SIP security, etc. Prerequisite(s): INFA 723
Textbook: Course materials will be distributed and available online.
This course covers both the principles and practice of cryptography and network security. In the first part of the class, the basic issues of cryptography will be explored. Fundamentals of cryptography and its applications, classical and contemporary ciphers, encryption and decryption will be addressed. In the second part of the class, we will focus on network security and provide a holistic view of security issues in communication networks, including key management protocols, secure routing, secure data aggregation, intrusion detection, secure group communication, and wireless network security issues. Along the way, cryptography applications, protocols, libraries, and automated tools are also examined.
Textbook: Cryptography and Network Security: Principles and Practice, 7/E. William Stallings, ISBN-10: 0134444280, ISBN-13: 978-0134444284, Publisher: Prentice Hall, Copyright: 2016. Paperback: 768 pp, Published: 03/05/2016.
This course covers a wide range of technical issues in wireless network security, including wireless communication fundamentals, wireless network configuration, wireless vulnerabilities, attacks and countermeasures, security standards, etc. We will look into security issues in WLAN networks, wireless ad hoc networks, wireless sensor networks, Bluetooth networks, and cellular networks. Technical perspectives on maintaining confidentiality, integrity, and availability (CIA) of wireless networks are discussed in details. Along the way, labs, tools, and applications will be introduced to test and analysis wireless security.
Textbook: Course materials will be distributed and available online.