Back to all courses

Cryptographic systems and their weaknesses

Individual course

The course teaches the basic concepts of cryptography from an applied engineering perspective and shows how the implementations of these cryptographic concepts have failed over the years.

Course contents

Basic concepts of cryptography, definitions and concepts of cryptographic security and testing these through programming. Showing different cryptographic weaknesses and demonstrating different implementations of these through programming. Basics of quantum computing and post-quantum cryptography.

Learning outcomes

After the course you know and understand the basics, know the key terminology and can write fluently and with supporting arguments related to the main topics of the course, which are:

  • basic concepts of modern cryptography and the differences between these
  • basic principles upon which the security of the cryptographic methods is based upon
  • how different cryptographic systems break
  • the basics of quantum computing and explain how this affects cryptography
  • the main principles of post-quantum cryptography and explain what are the challenges in practical implementations

In addition to the above, you have demonstrated adequate programming and/or problem solving skills related to the main topics of the course. Furthermore, you have demonstrated strong programming skills and analytical skills in solving technical and research problems related to the main topics of the course.

Course material

Lectures and lecture slides, Moodle workspace, exercise material in Github. Course book is “Serious Cryptography” by JP Aumasson.

Teaching schedule

Lectures will be recorded. The exercise sessions will be only at the lab, but all tasks are available online and course will have a dedicated Slack channel for online assistance in these.

Completion methods

You can complete the course fully online, but note that exercise sessions are on campus (not mandatory).

  • Weekly multiple choice quizzes online.
  • Weekly exercises online.

The course utilises continuous assessment.

More information in the University of Oulu study guide.

You can get a digital badge after completing this course.

kyberturvallisuus kryptografia kryptografiset järjestelmät PQC kvanttitietokone

Responsible teacher

University of Oulu
Kimmo Halunen, Professor

Further information about the course

University of Oulu
FITech contact person Oulu

Contact person for applications

FITech Network University
Fanny Qvickström, Student services specialist
Start here
Start here
ICT studies
Computer engineering,
Information security
Course code:
Study credits:
0 €
Course level:
Teaching period:
Application start date:
Application deadline:
Host university:
University of Oulu
Who can apply:
Adult learner,
Degree student
Teaching method:
Place of contact learning:
Teaching language:
General prerequisites:
Basic programming skills, engineering mathematics and algorithms and data structures.
Course suitable for:
People working in cybersecurity and related areas that require knowledge of cryptography.
Interested in this course? Subscribe and get updates about the course directly to your email. You can cancel subscription any time you want.