Since all applications today heavily rely on communications and networks, there is no application security without network security.
This course focuses on network security with a software security viewpoint, and discusses common network attacks and defenses on different OSI layers, with an emphasis on application layer issues, tackling topics like session management or denial of service.
As cryptography is a critical aspect of network security, the most important cryptographic algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement are also discussed. Instead of presenting an in-depth mathematical and theoretical background, these elements are discussed from a merely practical, engineering perspective, showing typical use-case examples and practical considerations related to the use of crypto, such as public key infrastructures.
There are no prerequisites for this course.
Network engineers and developers.
Understand basic concepts of security, IT security and secure coding
Learn about network attacks and defenses at different OSI layers
Have a practical understanding of cryptography
Understand essential security protocols
Understand some recent attacks against cryptosystems
Get information about some recent related vulnerabilities
Get sources and further readings on secure coding practices