At the end of this course the students will:
- Develop an understanding of security requirements of modern computer and communication systems.
- Gain familiarity with well-known attacks against networks, computer software, operating systems and distributed systems, as well as the appropriate defense mechanisms.
- Develop a basic understanding of cryptography and state-of-the-art encryption algorithms, and apply them for real-world data security problems.
- Identify security problems peculiar to contemporary system architectures and apply appropriate security tools and techniques as solutions.