ENLIGHT Courses

  • Registration status: Open

Applied Cryptography

Applied cryptography is a hands-on course for IT engineers. The course introduces cryptographic concepts and their use in real-world applications without delving into formal definitions and math. In this course we will use various cryptographic primitives to implement security protocols in Python 3. Basic programming skills are a critical prerequisite.

About the course

Content

The use of cryptographic libraries for encrypting files and communication, authentication methods, integrity protection, public key infrastructures, composition of secure protocols, secure methods for obtaining random bits, smartcards, digital signatures.

Learning outcomes

Students will learn how to use popular programming tools to implement various cryptographic constructions. They get practical experiences how to employ cryptographic protocols and public key infrastructure for enforcing practical security goals.

Teaching format

100% self-learning with non-mandatory practice sessions
The course consists of pre-recorded online lectures and intensive homework tasks. Cryptography concepts will be explained as we proceed.

E-learning environment: UTARTU Moodle

Programme

Topics to be covered:
1. Randomness, PRNG, One-Time Pad, Stream Cipher
2. Abstract Syntax Notation One (ASN.1)
3. Hash functions
4. Block ciphers (AES)
5. Public Key Cryptography (RSA)
6. Elliptic Curve Cryptography (ECC)
7. Public key certificates (X.509)
8. Revocation checking (CRL/OCSP)
9. Digital signatures (XAdES)
10. Smart cards (EstEID)
11. Smart cards (JavaCard)
12. Transport Layer Security (TLS)
13. Transport Layer Security (TLS)
14. The Onion Router (Tor)
15. Bitcoin

Assessment

Differentiated (A, B, C, D, E, F, not present)
Final grade consists of homework (70%) and test (30%).
Home exercises will be given each week, requiring implementation of some cryptographic functionality discussed at that week's lecture. The solutions usually must be submitted within a week.
The test consists of 70 open-ended questions that have to be answered in a concise manner.

Lecturers

Arnis Paršovs
Denizalp Kapisiz

Course dates

The course dates for the Applied Cryptography course can be set from September 1 to December 16 (the test date). In principle, students can start later. Take into account that the deadline for the first homework is on 6th of September. ENLIGHT students will be able to take the test remotely via Internet on December 16, 10:00-12:00 (Estonian time UTC+2h).
This is 100% self-learning course". Info on course schedule will be available as of May 2, 2025. To check info after May 2, please see HERE and click on the tab “Events”.

  • Entry requirements: basic programming skills
  • Type: virtual course
  • Level: Bachelor, Master, PhD
  • Host: University of Tartu
  • Study Field: Science and Technology
  • Apply by: 18 August 2025
  • ECTS: 6
  • Number of places available: unlimited