SWE 314: Software Security Engineering
This course covers cybersecurity and software security. The course is divided into two main parts. The first part introduces the fundamentals of cybersecurity, including crosscutting concepts such as the C.I.A. triad (Confidentiality, Integrity, and Availability) and different knowledge areas, including data security, cryptography, network security, etc. A special focus will be put on cryptography and encryption/decryption techniques and algorithms. The second part of the course will emphasize software security and will include the integration of security concerns in the different phases (requirements, design, implementation, testing) of the software development life cycle (SDLC). The human, organizational, and societal aspects of security will also be covered, including cybersecurity laws and regulations and cybersecurity auditing.