ELE 437 / CSC 417: Introduction to Computer Networks
Computer networks have penetrated into every aspect of our lives. The goal of this course is to provide a foundational view of computer networks: the principles upon which the Internet and other computer networks are built; how those principles translate into deployed protocols; and hands-on experience solving challenging problems with network protocols. This course will introduce the key concepts underlying computer networking. The layered architecture of the network protocol stack will be the focus of discussion. A variety of case studies will be drawn from the Internet, combined with some programming exercises.

ELE 420/520: Cyber Physical System Security
We use cyber-physical systems in almost every aspect of our daily lives. Their resiliency against malicious attacks plays a vital role in people’s well-being. Unlike general-purpose and traditional computer applications, cyber-physical systems have continuous and discrete components, requiring new methodologies to integrate analog systems with traditional digital designs.
This course focuses on discussing and understanding the fundamental constructions and emerging challenges unique to today’s cyber-physical systems. On top of this understanding, we will explore the possible solutions from systems specification, system modeling, network programming, and formal verification perspectives. The course will use power systems as a target cyber-physical system and examine different attack and threat models, which target their confidentiality, integrity, and availability. Furthermore, we will explore protection and remedy mechanisms proposed in different disciplines, e.g., network monitoring, intrusion detection, moving target defense, and power system designs.


Courses taught before joining URI

Cyber-Physical System Security (Spring 2018, Spring 2019, Spring 2020 at the University of Nevada at Reno) (I created this course)
The focus of this course is to discuss and understand the fundamental constructions and the emerging challenges unique to today’s cyber-physical systems. On top of these understandings, we will explore the possible solutions from the perspectives of systems specification, system modeling, network programming, and formal verification.

Reliability and Security of Computing Systems (Fall 2018, Fall 2019 at the University of Nevada at Reno) (I redesigned this course).
Security in computing systems has gained paramount significance as an increasing amount of sensitive and private data is being stored in computers (embedded or desktop or server). Furthermore, many computing systems need to operate reliably and dependably to meet application requirements. The course elaborates essential reliability and security primitives in computing systems and motivates students for considering security and reliability in the design of computing systems.