Specijalni kurs - prvi deo - Kriptografija - kurs na 4. godini smera Informatika


Asistenti: Milan Kocic, Mihajlo Srbakoski

Termin: utorak 17h predavanja, cetvrtak 16h vezbe

 

Obavestenja:

  • Organizacija zavrsnog ispita u junu1, petak 26.06.26:
    • 17h kriptografija
    • 18h blockchain
    • 19h zero knowledge
  • Uvid u radove iz kriptografije - jun1 - odmah posle ispita u kabinetu 716 u 20h.
  • Uvid u radove iz kriptografije - II kolokvijum - petak 19.06.26 u 14h u kabinetu 716
  • Rezultati kolokvijuma i sumarni rezultati se nalaze u tabeli: rezultati. Napomena: poeni su skalirani na maksimalnih 35 poena. Racunato je kao da je 5 (od 6) zadataka dovoljno za maksimum.
  • Nacin polaganja kursa - preko 3 kolokvijuma u toku semestra ili u terminima u toku ispitnih rokova
    • I kolokvijum - kriptografija - petak 08.05. u 8h u salama 706 i 821. Vreme trajanja 45 minuta.
    • I kolokvijum - kriptografija - nadoknada - petak 12.06. u 12h u salama 706 i 704.
    • II kolokvijum - Zero knowledge proofs - petak 29.05. u 8h (ista organizacija)
    • III kolokvijum - Blockchain - u terminima ispitnih rokova

Sadrzaj kursa

  • I deo kursa: Kriptografija, predavanja na ovom sajtu, vezbe na sajtu asistenta: Milan Kocic
  • II deo kursa: Zero knowledge, predavanja i vezbe na sajtu asistenta: Mihajlo Srbakoski
  • III deo kursa: Blockchain, vezbe na sajtu asistenta: Milan Kocic,

Teme sa predavanja

  • Tekst u nastavku se moze naci u sadrzaju skripte profesora Zivkovica i na slajdovima profesora Djokica.
  • Obratite paznju da NE TREBA SPREMITI SVE MATERIJALE IZ SKRIPTE I SA SLAJDOVA
  • Slajdovi - I deo
    • Vrste sifara (protocna, blokovska)
    • Vrste sistema (simetricni, asimetricni)
    • Jednostavne sifre (Cezarova, afina, one time pad)
    • Blokovske sifre (digrami, bigrami, trigrami, AES)
  • Slajdovi - I deo , Slajdovi - II deo, Slajdovi - III deo
    • Osnove brojeva (racunanje po modulu prostog broja, inverz, racunanje po modulu 2, operacija XOR)
    • Polinomi sa koeficijentima po modulu 2, inverz polinoma po modulu, mnozenje polinoma po modulu (sa koeficijentima po modulu 2)
    • Stepenovanje kvadriranjem, slozenost
    • Generator slucajnih brojeva
    • Asimetricna kriptografija, Problem diskretnog logaritma u konacnom polju, Difi Helman razmena kljuca
    • Protocna sifra, linearni povratni sift registar
    • Blokovske sifre
    • AES, S tabela, prosirenje kljuca, SAES, desifrovanje (ukratko), kompletan AES
  • Slajdovi - III deo, Slajdovi - VI deo, Slajdovi - V deo, Slajdovi - XI deo
    • RC4
    • Hes funkcije, integritet poruke, inicijalizacioni vektor
    • MAC - message authentication code
    • MD5
    • Digitalni potpis
    • Sistemi sa javnim kljucem, RSA
  • Slajdovi - VI deo, Slajdovi - VII deo, Slajdovi - IX deo, Slajdovi - XI deo
    • ElGamal algoritam za sifrovanje
    • Elipticke krive, opsti oblik, specijalni oblik
    • Definisanje operacija sabiranja i mnozenja, beskonacno daleke tacke
    • Elipticke krive nad konacnim poljima
    • Problem diskretnog logaritma sa eliptickim krivama
    • Sistem analogan PUKDH
    • Sistem analogan ElGamal razmeni poruka, kodiranje tacaka pomocu eliptickih krivih

Materijali za kurs:

Podela poena na ispitu:

  • Ispit ce biti podeljen u tri celine (kriptografija, zero knowledge, blockchain). Jednom polozen deo ispita vazi u svim narednim rokovima.
  • Sve celine nose isti broj poena, po 35 poena. Ukupno mozete osvojiti 105 poena.
  • Prag za pojedinacnu celinu je 40%.