6 minute read
Cyber Engineering
SENIOR Fall 3 Tech Elective 1 3 Global Citizenship 3 Physics III/Phys 214 3 Senior Design I/ECE 357 3 Math/Science Elective 2 15 Spring 3 Technical Selective 3 Secured Embedded Syst/CYENG 350 3 Senior Design II/ECE 358 3 Math/Science Elective 3
12
Total Credits: 124
Technical selective courses are core specialized courses intended to allow students to focus the breadth or depth of their degree program. Student must choose one of the following to fulfill the curriculum requirements: • CYENG 352 IoT Security and Implementations • ECE 311 Embedded Kernel and RTOS • ECE 355 Wireless Networks and Protocols for IoT Technical electives are additional specialized courses intended to allow students to focus the breadth or depth of their degree program. Students should plan for these courses well in advance (at least a year) to ensure that the course(s) they are interested in will be offered in the sequence in which they can enroll. Students should plan their course sequence in order to have the appropriate prerequisites. In all cases, students should select these courses in consultation with their academic advisor.
Eligible technical electives are
• ECE3xx, ECE4xx, CIS3xx, CIS4xx, CYSEC2xx, or CYSEC3xx, CYENG3xx with advisor approval. • CRJS2xx (approved list)
Cyber Engineering Minor
The Minor in Cyber Engineering program will supplement students with sufficient technical knowledge that enables them to work confidently on emerging security technologies with applications or products using industrial servers, embedded systems, and IoT devices. These are used in products for automation, internal medical support (for instance, heart and insulin), external medical support (for instance, defibrillators), physical and occupational therapy, robotics, smart home IoT, transportation systems, military systems, smart cities, educational toys, etc.
The Cyber Engineering minor requires 19 credits to complete. Depending on students’ interests and the field of their future careers, they can choose from three tracks which are based on a core set of Cyber Engineering courses – Track A focused on IoT devices, Track B focused on microcontroller implementation, and Track C focused on securing embedded systems. On any track, a minimum of 9 credit hours of CyENG curriculum courses must be unique beyond the curriculum of student’s major.
Cyber Engineering Minor Core Courses: (13 crs.)
(Numerals in front of courses indicate credits) 3 ECE 111 Introduction to C and C++ 3 CIS 290 Introduction to Networks 1 CYSEC 101 Network Security Lab 3 ECE 245 Microcontroller Applications with IoT 3 CYENG 220 Embedded OS Application Programming
Track A (6 crs.): IoT devices-focused
(Numerals in front of courses indicate credits) 3 CYENG 237 Introduction to Cyber-Physical Systems 3 CYENG 352 IoT Security and Implementation
Track B (6 crs.): Microcontroller implementation-focused
3 CYENG 225 Microcontroller Essentials for Cyber Applications 3 ECE 311 Embedded Kernel and RTOS
Track C (6 crs.): Securing embedded systems-focused
3 CYENG 312 Trusted OS 3 CYENG 351 Embedded Secure Networking
CYENG COURSE DESCRIPTIONS
CYENG 220: Embedded OS Application Programming
This course teaches the student how to architect an embedded Linux environment for a distributed co-operating multi-application environment. The course explores how to leverage the Linux programming, inter-process communication, and shell programming. Topics also include bootup, scheduling of applications, and load balancing across multiple cores. Prerequisites: ECE 245 or ECE 217 3 credits
CYENG 225: Microcontroller Essentials for Cyber Applications
This course is to provide a deeper understanding of secured IoT end-point architecture of microcontrollers (uC) by exploring various microprocessor (uP) and uC hardware cyber architectures, their relationship to software architectures, various IoT cyber forensics techniques and challenges, and understanding the performance metrics of uP and uC IoT devices. The various techniques used for debugging these devices during development support this exploration. This becomes the knowledge base for students to evaluate which uC to use for IoT applications. Prerequisite: ECE 245 3 credits
CYENG 237: Introduction to Cyber-Physical Systems
Cyber-physical systems (CPS) comprise of cyber systems and physical systems that are interfaced via wire/wireless communication media. Prime CPS examples are robots, autonomous vehicles, and drones. CPS have been rapidly evolved according to the dynamic changes for interacting between people, physical systems, and information. CPS continue to be capable of swiftly synthesizing available technologies so that people can smartly transform their daily activities to be better quality and quantity with security. This course introduces the dynamic changes to create CPS from cyber and physical systems developed via high-level modeling and virtual/real prototyping. The Matlab/Simulink modeling provides a means to swiftly compose and analyze physical process. Finite state machines and logic simulations introduce design and analysis of physical models. Real prototyping of an autonomous driving
robot (ADR) offers advanced implementation and verification of a preliminary CPS. A hybrid virtual and real prototyping of a safety-enabled ADR as a CPS is introduced to observe the safety of ADR operations. Different-levels of system modeling, analysis, simulation, and prototyping platforms and tools will be used throughout the course. Prerequisites: ECE245 3 credits
CYENG 312: Trusted OS
This course covers basic understanding and configuration for hardening and securing an embedded Linux operating system. Topics include boot-time configurations and forensics, user and directory hardening, application vulnerability minimization, and minimizing memory attacks. The course will focus on a common Linux distribution architecture, security modules, cryptography tools, and how the system works. The student will experience securing the system, applying tools and secured applications as a user and administrator. Prerequisites: CYENG 220 3 credits
CYENG 350: Secure Embedded Systems
This course provides a hands-on approach of understanding cyber-attacks using only the processing power and memory of resource-constrained embedded devices, architecting and implementing a root of trust (RoT) embedded system from power-up, firmware launching, boot-loading, and applications following the various industry-trusted system paradigms. We will explore and compare various industry leveraged secure boot using processor-based RoT and trusted certificates. Investigating best practices for mechanical and electrical security design techniques will be introduced. Prerequisites: ECE 228 and ECE 245 3 credits
CYENG 351: Embedded Secure Networking
This course is a hands-on approach to implement various embedded systems communication techniques. The student will have a hands-on approach of understanding basic communication used by embedded systems supported by limited real-time operating systems. Discussions and applications on limitations, constraints, and how to secure applied network strategies. Prerequisite: CYENG 312 3 credits
CYENG 352: IoT Security and Implementation
This course provides an integrated experience of implementing IoT devices in a network with its corresponding web application. Topics focus on design, construction, and implementation of embedded controlled devices along with knowhow in secure network configuration for the IoT devices. Single-board-computer/embedded hardware platform, relevant router technology will be used to study network configuration, potential vulnerabilities/security issues associated with device authentication and connection, for example. Prerequisite: ECE 228 and CIS 290 3 credits
CYENG 358: Python/MicroPython for Embedded Software
This course transitions a student with programming experience to a basic understanding and construct of the Python scripting language syntax on a microcontroller (uC) specific platform using MicroPython(uPy). This course will look at some of the positive aspects of this scripting language and the limitations of uPy on a uC. Lectures will investigate performance metrics, real-time concepts, and specific crypto-accelerator interfacing for IoT devices using uPy. Prerequisite: ECE245 and junior standing 3 credits
CYENG 490-499: Advanced Topics in Cyber Engineering
Advanced courses developed from student interest in all areas of cyber engineering. Brief description of current content to be announced in schedule of classes. Prerequisite: Permission of the chair. 1-3 credits
SEECS (101, 102, 201, 202, 301, 302, 401, 402): Professional and Personal Enrichment Seminar
Course description is listed in Computer and Information Science section of the catalog. 0 credit, Fall and Spring