Aims:
This module provides an introduction to computer security concepts and techniques. It covers core security principles to engineer systems that provide properties like confidentiality, integrity, or availability, despite the efforts of malicious entities to subvert them.Learning outcomes:

On successful completion of the module, a student will be able to:

Recognise security properties of systems, as well as formulate security policies, and model the threats they may face.
	Select appropriate controls to guarantee that the security policies are implemented robustly and may resist efforts to subvert them, through exposure to a number of established industry and government security mechanisms and design patterns.
	Analyse computer systems and develop strategies to bypass security controls.
Content:

The module provides strong foundations in security engineering, and enables students to more easily follow other modules in Information Security and in Applied Cryptography.

The first half of the module covers topics which underpin security of systems:

Basic principles.
	Security policies.
	Access control (theory and practice).
	Hardware,
	OS security fundamentals.
We will then dive into the details of various technical protection mechanisms and computer attacks including hardware, operating system, and side channel attacks. We will also learn about defensive technology in high-integrity systems both from a theoretical and a practical level. We will study user authentication and identification. The module provides strong foundations in security engineering, and enables students to more easily follow other modules in Information Security and in Applied Cryptography.

Requisites:

To be eligible to select this module as optional or elective, a student must: (1) be registered on a programme and year of study for which it is a formally available; and (2) have taken the equivalent of the core modules of a UK-equivalent honours degree (or higher) in the field of computer science (in particular, operating systems, networking, computer architecture.)

Some mathematics are useful to know: discrete mathematics, probability, logic, partial orders, entropy.