MEng Software Engineering

Year of entry: 2020

Course unit details:
Cryptography & Network Security

Unit code COMP38411
Credit rating 10
Unit level Level 3
Teaching period(s) Semester 1
Offered by Department of Computer Science
Available as a free choice unit? No


The spectacular growth of the Internet has spawned an increased awareness in security issues. This course unit covers security threats and vulnerabilities, principles of cryptography, and practical security solutions for networked and Internet environments. It aims to teach students principles and practices of cryptography and network security.


Students who are not from the School of Computer Science must have permission from both Computer Science and their home School to enrol.


This course unit introduces students to the principles and practice of cryptography and network security, exploring popular cryptographic methods and security protocols and their applications for countering network-based security threats and attacks.

The course is designed for students who have some understanding of computer networks and protocols, but no background in security.

Learning outcomes

  • Identify and classify security vulnerabilities and threats in a networked and distributed system context.

  • Describe some of the classical cryptographic techniques and their weaknesses.

  • Describe the principles and algorithms of the most widely used cryptographic schemes.

  • Apply appropriate cryptographic schemes to design security protocols or methods to achieve a given security goal, or to solve a given security problem, in a practical (efficient, usable and scalable) manner.

  • Describe the principles of the most widely used Internet security solutions.


Introduction to Security

basic notions of security, security properties (confidentiality, integrity and availability), security vulnerabilities, threats and attacks, the use of attack trees in evaluating and classifying security vulnerabilities and threats, security models, policies and mechanisms

Cryptographic methods (or primitives)

classical encryption techniques, Feistel encryption and decryption, symmetrical (or conventional) ciphers, block cipher and stream cipher principles and operations, introduction to number theory, asymmetrical (or public-key) ciphers

cryptographic hash functions, Message Authentication Code (MACs), digital signatures

Establishing trust, cryptographic (or security) protocols

Diffie-Hellman key exchange, symmetric key distributions, digital certificates and Public Key Infrastructures (PKIs), user identification and authentication, single sign on, cryptographic protocol analysis and design

Network and Internet Security

IP security, web security, email security, Wireless Local Area Network (WLAN) security, e-commerce security, Cloud computing security


Employability skills

Analytical skills
Problem solving

Assessment methods

Method Weight
Written exam 100%

Feedback methods

Via question/answer sessions.

Recommended reading

COMP38411 reading list can be found on the School of Computer Science website for current students.

Study hours

Scheduled activity hours
Lectures 22
Practical classes & workshops 16
Independent study hours
Independent study 62

Teaching staff

Staff member Role
Ning Zhang Unit coordinator

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.

Return to course details