Learn how to verify software for security, and take a deeper dive into the basics of applying threat models and cryptography.
Geared towards software developers, DevOps professionals, software engineers, web application developers, and others interested in learning how to develop secure software, this course focuses on practical steps that can be taken, even with limited resources, to improve information security.
This course will enable software developers to create and maintain systems that are much harder to successfully attack, reduce the damage when attacks are successful, and speed the response so that any latent vulnerabilities can be rapidly repaired.
What you’ll learn:
This course discusses how to verify software for security. In particular, it discusses the various static and dynamic analyses approaches, as well as how to apply them (e.g., in a continuous integration pipeline). It also discusses more specialized topics, such as the basics of how to develop a threat model and how to apply various cryptographic capabilities.
- Chapter 1. Verification
- Chapter 2. Threat Modeling
- Chapter 3. Cryptography
- Chapter 4. Other Topics
- Final Exam (Verified Track only)
Length: 7 weeks
Effort: 1-2 hours per week