MTAT.07.017 Applied Cryptography
Course info
Lecturer: Arnis Paršovs (arnis@ UT)
Teaching assistant: Ivo Kubjas (ivo.kubjas@ UT)
Teaching assistant: Bruno Produit (produit@ UT)
Credits: 6 ECTS
Language: English
Lectures: Thursdays 10:15-12:00, Liivi 2-122
Practice: Thursdays 18:15-20:00, Liivi 2-405 (not compulsory)
Practice: Mondays 18:00-19:30, Liivi 2-405 (not compulsory)
Course repository: https://bitbucket.org/appcrypto/2019/src
General Information
In this course we will use various cryptographic primitives to implement security protocols in Python. The course consists of lectures and extensive homeworks. Cryptography concepts will be explained as we go. Basic programming skills are critical prerequisite.
Grading
Final grade structure:
Homeworks: 70%
Final exam: 30%
Current results
Schedule
February 14: Introduction, Randomness, PRNG, One-Time Pad, Stream Ciphers
February 21: Abstract Syntax Notation One (ASN.1)
February 28: Hash funcions and HMAC
March 7: Block ciphers (AES)
March 14: Public Key Cryptography (RSA)
March 21: Public key certificates (X.509)
March 28: Revocation checking (CRL/OCSP)
April 4: Digital signatures (XAdES)
April 11: Smart cards (EstEID)
April 18: Smart cards (JavaCard)
April 25: Transport Layer Security (TLS)
May 2: Transport Layer Security (TLS)
May 9: The Onion Router (Tor)
May 16: Bitcoin
May 23: Exam