TMA4160 Cryptography - Fall 2019

Lecturer: Kristian Gjøsteen
Assistant: Shuang Wu
Schedule Room
Lectures: Monday 12-14 see the schedule
Tuesday 12-14 El4
Exercises: Friday 10-11 F2
Visiting hours: Tuesday 1415-1500 848 in SBII
Exam: 2019-12-17


16/1: The exam and partial solutions.

16/1: The grading is done. A: 14, B: 12, C: 7, D: 9, E: 10 and F: too many.

Some comments:

  • 2a. Many people have difficulty finding inverses of points!
  • 2b. Several people take 396 mod 173, which is very wrong.
  • 3a. Most of you forget that for functions on finite sets, it is sufficient to prove either injective or surjective, you don't need both. Not wrong, but tsk, tsk.
  • 4a. A lot of people forget to explain how to recover the ballots. The answer is that we can solve the d.log.problem, since the number of ballots will be small.

What you should know before taking the course

You should be familiar with basic abstract algebra such as groups, rings and fields.

It is helpful, but not required, to know something about computational complexity and the analysis of algorithms. Using a computer algebra system (or equivalent) is required for some of the exercises. Previous experience with computer algebra systems is helpful, but not required.

Reference group

NameE-mailStudy programme
Sturla Frydenlundsturla.frydenlund (at) gmail.comBMAT
Oskar Holmstedtuoholmst (at) stud.ntnu.noExchange student
Anna Bakkebøanna.bakkeboe (at) gmail.comLUR

Course material

Lecture notes:

  • These notes follow the lectures fairly closely, but will be updated throughout the course.

Main book:

  • Cryptography, Theory and Practice, 4th edition, by Douglas R. Stinson. 3rd edition will also work.


You should be able to get by with just the lecture notes (and possibly the supplements), but many of you will find Stinson useful. Note that Stinson does not cover the entire curriculum.

The curriculum is defined to be the material covered by the lecture notes, the lectures and the exercises.

2019-10-28, Kristian Gjøsteen