IMT4124 - Cryptology


Examination arrangement

Examination arrangement: School exam
Grade: Letter grades

Evaluation Weighting Duration Grade deviation Examination aids
School exam 100/100 5 hours D

Course content

Introduction - classical cryptography (Shift/Caesar cipher, Vigenere, Beaufort, Enigma, Vernam), basic information theory and unicity distance, security of classical ciphers.

Symmetric ciphers 1 (stream ciphers) - randomness and pseudorandomness, one-time pad versus a keystream generator, period and linear complexity, pseudorandom sequence generators (congruence generators, linear and non-linear feedback shift registers, non-linear filters, non-linear combiners, non-uniform decimation of sequences, examples of stream cipher designs, statistical testing of pseudorandom sequences, cryptanalysis of stream ciphers (the Berlekamp-Massey algorithm, algebraic attacks/immunity, correlation attacks/immunity).

Symmetric ciphers 2 (block ciphers) - definition, permutations of sets of 2^N elements, confusion/diffusion, Feistel ciphers and Substitution-permutation networks, S-boxes and non-linearity (differentially k-uniform mappings), examples of Feistel and SPN designs, cryptanalysis of block ciphers (algebraic attacks, known plaintext attacks (differential and linear cryptanalysis)).

Asymmetric ciphers - definition, intractability and NP-completeness, the Diffie-Helman cryptosystem, the RSA system, primality testing (Legendre and Jacobi symbols, Solovay-Strassen, Miller-Rabin), provable primes and Pocklington Theorem, factorization (Pollard rho), discrete logarithm (the baby step/giant step algorithm, the ElGamal cryptosystem), elliptic curves.

Hash functions and digital signatures - definition of hash functions, basic security properties (one-wayness, second pre-image, collision), basic construction (Davies-Meyer, Merkle-Damgård, sponge construction), applications (integrity check, HMAC), examples of hash function designs, digital signature definition, digital signature with RSA, signing and hashing.

Learning outcome

Knowledge: -Possesses advanced knowledge in generating primitive feedback polynomials for application in stream ciphers based on linear feedback shift registers, design of pseudorandom sequence generators based on non-linear combiners and non-uniform decimation of sequences, algebraic and correlation attacks on stream ciphers, constructing highly non-linear S-boxes for application in block ciphers based on differential k-uniform mappings, linear and differential cryptanalysis of block ciphers, primality testing, factoring large integers, discrete logarithm, and elliptic curves, hash function construction methods and security analysis, and various digital signature schemes (RSA, ElGamal, etc.) -Possesses thorough knowledge about theory and scientific methods relevant for cryptology. -Is capable of applying his/her knowledge in new fields of cryptology.

Skills: -Is capable of analyzing existing theories, methods and interpretations in the field of cryptology and working independently on solving theoretical and practical problems. -Can use relevant scientific methods in independent research and development in cryptology -Is capable of performing critical analysis of various literature sources and applying them in structuring and formulating scientific reasoning in cryptology. -Is capable of carrying out an independent limited research or development project in cryptology under supervision, following the applicable ethical rules.

General competence: -Is capable of analyzing relevant professional and research ethical problems in cryptology. -Is capable of applying his/her cryptographic knowledge and skills in new fields, in order to accomplish advanced tasks and projects. -Can work independently and is familiar with cryptographic terminology. -Is capable of discussing professional problems in the field of cryptology, both with specialists and with general audience. -Is capable of contributing to innovation and innovation processes.

Sustainable Development Goals (SDG) addressed by this course

Goal 7, target 7.3, also related to the goal 12, target 2 - double the global rate of improvement in energy efficiency / achieve the sustainable management and efficient use of natural resources - by designing fast and efficient cryptographic algorithms, we reduce the energy consumption ensuring at the same time a sufficient level of communication security.

Goal 8, target 8.2 - Achieve higher levels of economic productivity through diversification, technological upgrading and innovation - fast and secure cryptographic solutions that are studied in our crypto courses ensure increased productivity in various economic sectors such as banking, electronic commerce, automation of industrial processes and so on.

Goal 9, target 9.5 - Enhance scientific research, upgrade the technological capabilities of industrial sectors in all countries - studying cryptology as an interdisciplinary science, the students improve their skills and competence in many research fields, such as computer science, mathematics, statistics, etc. This contributes to taking the quality of research and development in their countries of origin to a higher level.

Learning methods and activities

Lectures, Laboratory/Numerical exercises.

The course will be made accessible to both campus and remote students. Every student is free to choose the pedagogic arrangement form that is best fitted for her/his own requirements. The lectures in the course will be given on campus Gjøvik and are open for both categories of students. All the lectures will also be available on Internet through the Blackboard learning management system and Omnom.

Further on evaluation

The written 5-hours' exam counts 100% of the final mark.

Ordinary re-sit examination in August.

Specific conditions

Admission to a programme of study is required:
Information Security (MIS)
Information Security (MISD)
Information Security (MISEB)

Required previous knowledge


Course materials


1. Cryptography - Theory and Practice, 4. edition, Stinson D., Paterson M., CRC Press, 2018, ISBN: 978-1-138-19701-5.

2. Handbook of Applied Cryptography, Menezes A.,

Credit reductions

Course code Reduction From To
IMT4532 2.5 AUTUMN 2017
IMT3771 2.5 AUTUMN 2017
IMT4552 5.0 AUTUMN 2017
More on the course

Version: 1
Credits:  7.5 SP
Study level: Second degree level


Term no.: 1
Teaching semester:  SPRING 2025

Language of instruction: English

Location: Gjøvik , Trondheim

Subject area(s)
  • Computer and Information Science
  • Information Security
Contact information
Course coordinator:

Department with academic responsibility
Department of Information Security and Communication Technology


Examination arrangement: School exam

Term Status code Evaluation Weighting Examination aids Date Time Examination system Room *
Spring ORD School exam 100/100 D INSPERA
Room Building Number of candidates
Summer UTS School exam 100/100 D INSPERA
Room Building Number of candidates
  • * The location (room) for a written examination is published 3 days before examination date. If more than one room is listed, you will find your room at Studentweb.

For more information regarding registration for examination and examination procedures, see "Innsida - Exams"

More on examinations at NTNU