Skip to main content

Before choosing course

Advanced course in computer science giving an introduction to modern cryptography.

Choose semester and course offering

Choose semester and course offering to see information from the correct course syllabus and course offering.

* Retrieved from Course syllabus DD2448 (Autumn 2020–)

Content and learning outcomes

Course contents

Classical encryption methods. What is meant by secure encryption? Background in information theory, entropy. Symmetric encryption algorithms, for example the Advanced Encryption Standard (AES). Public-key cryptosystems for encryption and digital signatures, e.g., RSA, ElGamal, and Schnorr signatures. Cryptographically secure hash functions in theory and practice (SHA). Properties and examples of pseudo random number generators. Connections between complexity theory and cryptography.

Intended learning outcomes

After a completed course, the student should be able to

  • discuss the following basic concepts in cryptography:
    symmetric and asymmetric encryption, digital signatures, cryptographic hash functions and strong pseudorandom generators and to give examples of instantiations of each concept
  • conduct simple analyses of cryptographic constructions such as cryptosystems and cryptographic protocols
  • read analyses performed by others of cryptographic constructions such as cryptosystems and cryptographic protocols and decide if the given analysis can be trusted
  • read and understand technical articles in cryptography.

Course Disposition

No information inserted

Literature and preparations

Specific prerequisites

Single course students:

SF1604 Linear algebra, SF1625 Calculus in one variable, SF1626 Calculus in several variables, SF1901 Probability theory and statistics, DD1337 Programming, DD1338 Algorithms and Data Structures, DD1352 Algorithms, Data Structures and Complexity, SF1630 Discrete Mathematics or corresponding courses

Recommended prerequisites

Knowledge equivalent to either one of the courses DD1352 Algorithms, Data Structures and Complexity or DD2354 Algorithms and Complexity and knowledge of probability theory, mathematics and algorithm theory acquired in the mandatory courses of the D or F program.


No information inserted


No information inserted

Examination and completion

If the course is discontinued, students may request to be examined during the following two academic years.

Grading scale

A, B, C, D, E, FX, F


  • ÖVN1 - Exercise, 7,5 hp, betygsskala: A, B, C, D, E, FX, F

Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.

The examiner may apply another examination format when re-examining individual students.

Other requirements for final grade

Written exercises (OVN1; 7,5 university credits).

Opportunity to complete the requirements via supplementary examination

No information inserted

Opportunity to raise an approved grade via renewed examination

In this course there is no opportunity to raise an already approved grade.


Profile picture Douglas Wikström

Profile picture Johan Håstad

Ethical approach

  • All members of a group are responsible for the group's work.
  • In any assessment, every student shall honestly disclose any help received and sources used.
  • In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.

Further information

Course web

Further information about the course can be found on the Course web at the link below. Information on the Course web will later be moved to this site.

Course web DD2448

Offered by

EECS/Computer Science

Main field of study

Computer Science and Engineering

Education cycle

Second cycle

Add-on studies

Please discuss with the instructor.


Douglas Wikström, tel: 790 8138, e-post:

Supplementary information

The course is held in English if the students wish so.

You cannot count both DD2448 and DD2449 in your exam, since DD2448 has replaced DD2449.

In this course, the EECS code of honor applies, see: