| STUDENTS
> Introduction to Cryptography
|
Introduction to Cryptography
Note:
Whilst every effort is made to keep the syllabus and assessment records correct
for this course, the precise details must be checked with the lecturer(s).
Code: | GA03 |
Year: | MSc |
Prerequisites: | Maths refresher |
Term: | 1 |
Taught By: | Jens Groth (100%)
|
Aims: | For many centuries the goal of cryptography was the protection of privacy of communications. Computers, digital communication and in particular the internet have brought an abundance of new security goals. Examples are: anonymity, authenticity, non-repudiation, authorized wiretapping (called law enforcement), and traceability. To each need corresponds security mechanisms to achieve it. The goal of the course is to make students familiar with such techniques and some of the foundations of these methods. In particular students will be confronted with the wide range of security objectives, the different levels of security that can be achieved and some available tools. Students will learn about different types of cryptosystems, such as conventional cryptography, symmetric and asymmetric cryptography, and public key.
|
Learning Outcomes: | Students start learning how to think from an adversarial viewpoint. The goal is to become familiar with basic techniques to protect data in computer and communication environments against several different varieties of fraud.
|
Content:
Classical cyphers | Classical cyphers Cryptanalysis of classical ciphers Perfect security Shannon entropy |
Block cyphers | DES AES Block cipher modes of operation |
Private-key encryption | Formal modes of security Chosen plaintext attacks Randomised encryption Pseudorandomness Chosen cyphertext attacks |
Message authentication codes | Private-key authentication CBC-MAC Pseudorandom functions CCA-secure private-key encryption |
Hash functions | Integrity Pre-image resistance 2nd pre-image resistance Collision freeness SHA-256 NMAC/HMAC |
Key distribution | Key distribution centres Diffie-Hellman key exchange Discrete logarithms |
Public-key Distribution | EIGamal encryption Cramer-Shoup encryption RSA encyption RSA-OAEP Hybrid encryption Factorization algorithms |
Digital Signatures | RSA signatures RSA-FDH and RSA-PSS signatures DSA signatures Generating random primes |
Entity authentication Zero-knowledge proofs | Identification Passwords Zero-knowledge proofs of knowledge Zero-knowledge proofs for NP |
Secret Sharing Threshold Encryption | Secret sharing Threshold encryption Wrap-up |
Method of Instruction:
Tutor-led class sessions, problem-solving sessions and private study
Assessment:
The course has the following assessment components:
- Coursework Section (1 piece, 25%)
- Written Examination (2.5 hours hours, 75%)
To pass this course, students must:
- Obtain an average of at least 50% when the coursework and exam components of a course are weighted together
The examination rubric is:
Resources:
Fundamentals of Computer Security by Josef Pieprzyk, Thomas Hardjono, Jennifer Seberry.
A Computational Introduction to Number Theory and Algebra by Victor Shoup
|