Hide menu

TSIT03 Cryptology

Course contents

After taking the course the student should be able to analyse and construct simple cryptographic systems and to evaluate and choose algorithms and more complex systems

The course covers

- the reasons for using cryptography in computer systems

- what basic classes of algorithms there are, how they differ and how they should be used in different situations

- the basic criteria for each algorithm class

- how to find the characteristics of given pseudorandom number generators and how to construct generators with given characteristics

- the limitations of stream ciphers and modern directions in the efforts to overcome these

- the principles behind block ciphers and their inherent weaknesses

- feedback modes for block ciphers

- the principles behind DES, its structure, Feistel networks

- alternative structures, especially AES

- principles and basic characteristics of public key technology

- the necessary basic mathematics behind public keys

- the Diffie-Hellman key distribution algorithm

- principles and details for the RSA algorithm

- principles and basic mathematics for elliptic curves

- the principles of authentication, message authentication codes and digital signatures

- the difference between message authentication with symmetric algorithms and with digital signatures

- requirements for cryptographic hash functions

- secret sharing principles

- zero knowledge

- quantum cryptography

- how to choose cryptographic protection that fits given requirements

Reading instructions for the course literature

The book:

The book is intended for courses treating both cryptography and coding theory. This course treats only cryptography, and knowledge of all common algorithms is not required. Thus chapters 10, 11, 13 17 and 18 are not included in the course, and only the part about the one-time pad and perfect secrecy is included from chapter 15. Detailed knowledge of algorithms is required only for D-H, RSA, DES, AES and the use of elliptic curves (and then not tables, matrices, or details of key schedules in DES and AES or the formula for adding points on an elliptic curve). Knowledge of principles, properties and basic kinds of calculations are required for the remaining parts.

Course notes:

The first two chapters treat some background questions that are also described in a slightly different manner in chapter 1, 2 and 15 in the book. Chapter 3 is a fuller description of pseudo-random stream generators, and it is the basis for the course part about stream ciphers.


Page responsible: Jan-Åke Larsson
Last updated: 2016-05-26