DD2448 Foundations of Cryptography 7.5 credits

Kryptografins grunder

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

Show course information based on the chosen semester and course offering:

Offering and execution

No offering selected

Select the semester and course offering above to get information from the correct course syllabus and course offering.

Course information

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


Stinson, Cryptography; theory and practice, Chapman & Hall.

Examination and completion

Grading scale *

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

Examination *

  • ÖVN1 - Exercise, 7.5 credits, Grading scale: 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.

In this course all the regulations of the code of honor at the School of Computer science and Communication apply, see: http://www.kth.se/csc/student/hederskodex/1.17237?l=en_UK.

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

No information inserted


Douglas Wikström

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: dog@csc.kth.se

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.

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: