Information and Network Security module (CS31002)

Learn to assess and address security threats in software development

On this page


Module code


Many modern information systems handle sensitive or personal data. It is the responsibility of the developers to ensure that this data is protected against malicious actors.

Just as technology itself, the security threats against information systems are always evolving. By studying the fundamental principles of cryptography and communication security, you can learn how to identify these threats and how to mitigate them. 

What you will learn

In this module, you will:

  • study fundamental security principles, such as confidentiality, integrity, and availability
  • learn about basic cryptography and communication security
  • explore secure application development principles, such as security requirement analysis, threat modelling, and risk analysis
  • investigate common security vulnerabilities in information systems
  • discuss human factors in information and network security
  • learn about the specification and implementation of security protocols

By the end of this module, you will be able to:

  • demonstrate a solid understanding of cryptography and communication security
  • conduct risk analysis and threat modelling to develop secure applications
  • identify and address security vulnerabilities in information systems
  • show awareness of legal, ethical, and technical issues regarding cybersecurity
  • explore and interpret protocol specifications
  • implement, troubleshoot, and validate a protocol in a secure client-server architecture

Together, these skills will allow you to develop secure applications and networks. They will also help you become a more versatile developer, as you learn to work in accordance to specifications.

Assignments / assessment

  • applied cryptography coursework (25%)
  • ethical hacking coursework (25%)
  • weekly class tests (20%)
  • written exam (30%)

Teaching methods / timetable

You will learn by taking a hands-on approach. This will involve taking part in tutorials, discussions, and practical lab sessions.

Learning material is provided through videos, review notes, examples, and tutorial questions. There will also be demonstrations of security vulnerabilities and their exploits.


This module is available on following courses: