# SYMMETRIC CRYPTOGRAPHY - 2022/3

Module code: COMM044

## Module Overview

The module introduces general cryptographic concepts, challenges and goals and then focuses on foundational cryptographic primitives and algorithms in the field of symmetric (a.k.a. private-key) cryptography. The module will explain security and functionality of symmetric cryptographic algorithms that can be used to provide authenticity, confidentiality and integrity of digital data. The theoretical part of the module will focus on the functionality and the security properties of corresponding algorithms. In labs students will learn how to implement and use existing algorithms from symmetric cryptography.

### Module provider

Computer Science and Electronic Eng

GARDHAM Daniel (CS & EE)

### Module cap (Maximum number of students): N/A

Independent Learning Hours: 125

Laboratory Hours: 10

Captured Content: 15

Semester 1

None

## Module content

• Introduction and historical ciphers (incl. transposition/substitution ciphers, methods for breaking ciphers (e.g. frequency analysis, period estimation), Kerckhoffs‘ principle, Cryptool)

• Perfect secrecy and its limitations (incl. One Time Pad, Shannon’s theorem, statistical secrecy, computational secrecy and probabilistic polynomial-time Turing machines)

• One-way functions and pseudorandomness (incl. pseudorandom generators, one-way functions/permutations, hard-core predicates, pseudorandomness expansion)

• Private-key / symmetric encryption (incl. pseudorandom permutation, block ciphers, Feistel networks, operation modes for block ciphers, confusion/diffusion paradigm, substitution/permutation networks, constructions of DES incl. attacks, 3DES, AES, provable security of private-key encryption schemes (e.g. IND-CPA security))

• Collision-resistant hash functions (incl. weaker notions of security for hash functions, birthday paradox, Merkle-Damgard transformation, constructions from block ciphers, compression functions, SHA family of hash functions, random oracle methodology)

• Message authentication codes (incl. CBC-MAC, constructions of NMAC/HMAC, provable security of MACs (e.g. EUF-CMA security), application to IND-CCA security and authenticated encryption, MACs in multi-party setting, information-theoretic MACs)

## Assessment pattern

Assessment type Unit of assessment Weighting
Examination 3-HOUR OPEN-BOOK INVIGILATED EXAM 100

N/A

## Assessment Strategy

The assessment strategy is designed to provide students with the opportunity to demonstrate that they have achieved the module learning outcomes.

The summative assessment for this module consists of an individual open-book 3-hour invigilated exam with a set of questions that students are required to answer. This addresses LO1 and LO2.

For formative assessment and feedback, each two-hour lab will start with a short quiz which tests understanding of that week's material, with solutions explained. A set of exercises - including implementation tasks - and solutions will be available prior to the lab to further develop and test understanding, and there will be additional unseen tutorial-style exercises and solutions to improve understanding of and facility with the concepts, techniques, and their applications. This addresses LO1, LO2 and LO3.

## Module aims

• The aim of this module is to equip students with background knowledge and practical experience of modern symmetric cryptographic algorithms and techniques. The module will explain the underlying theory and show practical application of symmetric cryptographic algorithms.

## Learning outcomes

 Attributes Developed 001 Understand cryptographic principles, challenges and goals that are relevant for the protection of digital data in the real world KC 002 Understand the functionality and security of widely used symmetric cryptographic algorithms, including their advantages and disadvantages KCT 003 Experience practical application of symmetric cryptographic algorithms KPT

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

## Methods of Teaching / Learning

The learning and teaching strategy is designed to:

• Help students understand the nature of cryptography, including main principles, challenges and goals

• Explain most significant concepts and algorithms in symmetric cryptography

• Explain security requirements and functionality of symmetric cryptographic algorithms

• Enable students to apply existing symmetric cryptographic algorithms in practice

The learning and teaching methods include:

• Lectures (15 hours) in the form of detailed lecture slides and topic-based captured content videos.

• Labs (10 hours) consisting of a one-hour flipped learning class with a quiz and answers, highlighting important parts of the lecture and taking questions, and one hour on additional exercises delivered in the manner of a tutorial to improve understanding of and facility with the concepts, techniques, and their applications.

• Independent study (125 hours), with students expected to expend the remaining workload on studying the lectures, reading the textbook chapters and watching the further topic videos, preparing for the labs, working through the additional lab exercises and solutions, and preparing for the exam.

Indicated Lecture Hours (which may also include seminars, tutorials, workshops and other contact time) are approximate and may include in-class tests where one or more of these are an assessment on the module. In-class tests are scheduled/organised separately to taught content and will be published on to student personal timetables, where they apply to taken modules, as soon as they are finalised by central administration. This will usually be after the initial publication of the teaching timetable for the relevant semester.