Developing 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 help participants grasp the role and application of these cryptographic primitives, this course first establishes a solid foundation regarding the core requirements of secure communication—namely, secure acknowledgment, integrity, confidentiality, remote identification, and anonymity. It also addresses common threats that compromise these requirements, alongside practical real-world solutions.
Given that cryptography is a critical component of network security, the course covers essential algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than focusing on complex mathematical theories, these topics are examined from a developer’s perspective, highlighting typical use cases and practical considerations, such as the implementation of public key infrastructures. The course also introduces security protocols across various domains of secure communication, with detailed discussions on widely used protocol families like IPsec and SSL/TLS.
Typical cryptographic vulnerabilities associated with specific algorithms and protocols are explored, including BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE, and RSA timing attacks. For each issue, the practical implications and potential consequences are outlined, avoiding deep mathematical derivations.
Finally, since XML technology is central to data exchange in networked applications, the security aspects of XML are thoroughly described. This includes the use of XML in web services and SOAP messages, along with protective measures like XML Signature and XML Encryption. The course also covers weaknesses in these protection mechanisms and XML-specific security issues, such as 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
- Have 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...