Skip to main content

Real-World Cryptography

Overview

  • Credit value: 30 credits at Level 6
  • Convenor and tutor: Prof Maura Paterson
  • Assessment: a mini-project (50%) and two-hour open-book examination (50%)

Module description

In this module we explore the tools of cryptography and its real-world use. Cryptographic primitives, including symmetric encryption, message authentication codes, hash functions, public-key encryption and digital signatures, are the underlying technology for providing a range of security services. You will develop an understanding of how they are used in the protocols that underpin real-world applications, including SSL, secure messaging apps and blockchain. You will explore the many factors that are crucial for secure use of these tools, such as implementation issues and appropriate key management, as well as the social and political considerations that affect our use of, and access to, these technologies.

Indicative syllabus

  • Introduction to cryptography
  • Symmetric encryption
  • Hash functions
  • Message authentication codes (MACs)
  • Public-key cryptography
  • Digital signatures
  • Cryptographic protocols
  • Implementation issues and cryptographic standards
  • Key management
  • Social and political considerations
  • Further real-world cryptography

Learning objectives

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

  • understand cryptographic primitives, including symmetric encryption, hash functions, message authentication codes, public-key encryption and digital signatures, and their applications in securing digital communications
  • evaluate the effectiveness of different cryptographic protocols such as SSL/TLS, secure messaging apps and blockchain, and critically assess their implementation in real-world scenarios
  • appreciate the challenges inherent in designing and implementing secure systems, addressing practical issues such as key management and common pitfalls in cryptographic implementations
  • analyse the social and political implications of cryptography, including privacy concerns, legal and ethical issues, and the impact of cryptographic technologies on society
  • synthesise knowledge from different areas of cryptography to solve complex security problems, and integrate theoretical understanding with practical application
  • demonstrate practical skills relevant for cryptographic implementation through hands-on exercises and case studies, enhancing IT and numeracy skills relevant to cybersecurity.