Kontakt

Dokumenty

Výuka

Veda

Kontakt a konzultačné hodiny

adresa: Katedra informatiky, FMFI UK, Mlynská dolina, 842 48 Bratislava
miestnosť: M-214
e-mail: stanek@dcs.fmph.uniba.sk
telefón: (+421 2) 60295 101

Konzultačné hodiny: dohodou

Dokumenty

Dokumenty o kryptológii určené viac-menej laikom (vopred ďakujem za ľubovoľné pripomienky k obsahu alebo forme):

  1. Kryptológia (23 strán): pdf, verzia 2b, 2020
  2. Kryptológia II (30 strán): pdf, verzia 2b, 2020

Výuka ZS 2023/24

Diplomový seminár (3) (Str 11:30-13:00 M-IV)

Kryptológia 1 (Str 16:30-18:00 M-V, Štv 16:30-18:00 M-IV)

Slidy zo ZS 2022/23: archív

Lectures:

  1. Introduction - about, intro
  2. Cryptanalysis of simple ciphers - slides, examples: substitution cipher, Vigenere cipher
  3. Block ciphers: slides 1; modes: slides 2
  4. Stream ciphers - slides
  5. Public-key cryptograpfy - introduction - slides
  6. RSA scheme (correctness and implementation) - slides
  7. Security of the RSA - slides
  8. Discrete logarithm and related schemes - slides
  9. Exercise 1 - EN, SK
  10. Hash functions - slides
  11. Massage authentication codes - slides
  12. Passwords - slides
  13. HOTP and TOTP - slides
  14. Digital signature schemes - slides
  15. Hash-based signatures - slides
  16. Introduction to LWE - slides
  17. Code-based encryption schemes - slides
  18. Exercise 2 - EN, SK
  19. Cryptographic protocols - introduction - slides
  20. Noise protocol framework - slides
  21. Password authenticated key exchange - slides
  22. TLS - slides
  23. Weaknesses in real-world protocols - slides
  24. Secret sharing schemes - slides
  25. Exercise 3 - EN, SK

Homework assignments (students):

  1. Ciphertext ctXX.txt was obtained by encrypting an utf-8 encoded text file using AES-256 cipher in the ECB mode:
    openssl enc -e -aes-256-ecb -K key -in ptXX.txt -out ctXX.txt
    where key is hexadecimal representation of a string, padded with zeroes if necessary, e.g. for string Cryptology (1) the value of the key is 43727970746f6c6f677920283129000000000000000000000000000000000000. Luckily, we know that the key belongs to the set of frequently used passwords (see xato-net-10-million-passwords.txt file from SecLists). Send your solution by e-mail with subject "Cryptology (1) - HW 1" containing: (a) brief description of your solution, (b) source code, (c) password, (d) plaintext file. Data files are in this archive.
    Deadline: 18.10.2023 (midnight), after the deadline: -2 points for each started day
  2. RSA scheme. The messages m1 and m2 differ in the least significant bit (i.e. the 1st least significant bit), the 100th least significant bit and the 1000th least significant bit. Data files in the archive contain public key and corresponding ciphertexts c1 and c2. Compute m1. Send your solution by e-mail with subject "Cryptology (1) - HW 2" containing: (a) brief description of your solution, (b) source code, (c) m1.
    Deadline: 2.11.2023 (midnight), after the deadline: -2 points for each started day
  3. The hash functions f1, f2, f3, f4 for 2-block messages are based on these compression functions (E is AES-128, the initialization vector h_0 is your homework number, source code is available here):
    1. f1: h_i = E_{h_{i-1}}(m_i) xor h_{i-1}
    2. f2: h_i = E_{m_i}(h_{i-1}) xor m_i
    3. f3: h_i = E_{i}(h_{i-1}) xor m_i
    4. f4: h_i = E_{m_i}(h_{i-1}) xor h_{i-1}
    Take your homework number, compute a remainder mod 4 (let us denote it r), and find a colliding pair (m1,m2) such that f1(m1) = f2(m2) if r=0, f2(m1) = f3(m2) if r=1, f1(m1) = f4(m2) if r=2, or f3(m1) = f4(m2) if r=3. Send your solution by e-mail with subject "Cryptology (1) - HW 3" containing: (a) brief description of your solution, (b) source code, (c) m1 and m2, both must be 32-byte hexadecimal strings.
    Note: Use byteorder 'big' (default since Python 3.11)
    Deadline: 25.11.2023 (midnight), after the deadline: -2 points for each started day
  4. Find secret vector s in an LWE instance where matrix A has an additional internal structure. Every second row is computed from the previous row by multiplying scalars with c_mult constant and adding c_add constant. All computations are in GF(307). Error vector is selected uniformly from the set {-3,...,3}^m. File pkXX.txt contains A, c_mult, c_add, and vector b. The code that generates an instance of this problem is here, and the instances for you to solve are in this archive. Send your solution by e-mail with subject "Cryptology (1) - HW 4" containing: (a) brief description of your solution, (b) source code, (c) s.
    Deadline: 13.12.2023 (midnight), after the deadline: -2 points for each started day

Veda

Témy: kryptológia, informačná bezpečnosť
Publikácie (UK): Evipub
Iné zdroje: DBLP