Implementing a secure networked application can be challenging, even for developers who have prior experience with cryptographic building blocks such as encryption and digital signatures. To ensure participants grasp the role and usage of these cryptographic primitives, the course first establishes a solid foundation on the core requirements of secure communication—including secure acknowledgment, integrity, confidentiality, remote identification, and anonymity. It also highlights typical threats that can compromise these requirements, alongside real-world solutions.
Given that cryptography is a critical aspect of network security, the course discusses essential cryptographic algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than focusing on in-depth mathematical theory, these concepts are presented from a developer's perspective, featuring typical use-case examples and practical considerations such as public key infrastructures. Security protocols relevant to various areas of secure communication are introduced, with a detailed exploration of widely used protocol families like IPSEC and SSL/TLS.
The course also addresses common cryptographic vulnerabilities associated with specific algorithms and protocols, including BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding Oracle, Lucky Thirteen, POODLE, and RSA timing attacks. For each issue, practical implications and potential consequences are described, without delving into complex mathematical details.
Finally, as XML technology plays a central role in data exchange for networked applications, the course covers the security aspects of XML. This includes the use of XML within web services and SOAP messages, along with protection mechanisms such as XML Signature and XML Encryption. It also examines weaknesses in these protection measures and XML-specific security issues like XML injection, XML External Entity (XXE) attacks, XML bombs, and XPath injection.
Participants attending this course will
- Understand basic concepts of security, IT security, and secure coding
- Understand the requirements of secure communication
- Learn about network attacks and defenses at different OSI layers
- Gain a practical understanding of cryptography
- Understand essential security protocols
- Understand some recent attacks against cryptosystems
- Get information about some recent related vulnerabilities
- Understand security concepts of Web services
- Get sources and further readings on secure coding practices
Audience
Developers, Professionals
Read more...