Заштита података/К1 2023 — разлика између измена
м (→3. zadatak: Разл решења трећег) |
м (→4. zadatak: Nije Branko nego Kolja ja mislim) |
||
(Није приказано 17 међуизмена 4 корисника) | |||
Ред 1: | Ред 1: | ||
{{tocright}} | {{tocright}} | ||
'''Prvi kolokvijum 2023. godine''' održan je 31. marta. | '''Prvi kolokvijum 2023. godine''' održan je 31. marta i trajao je sat vremena. | ||
== 1. grupa == | == 1. grupa == | ||
=== 1. zadatak === | === 1. zadatak === | ||
Na koji način bi mogao da se izvrši ''known plaintext'' napad na ''One-time pad'' algoritam, odnosno koji ''plaintext'' bi trebalo izabrati? Da li ovaj napad ima smisla? | |||
Odgovor: <span class="spoiler" data-solution=" | '''Odgovor:''' <span class="spoiler" data-solution="plain">Kao ''plaintext'' je najbolje izabrati "AAAAA..." (pod uslovom da slovo A označava prvi karakter alfabeta koji se šifruje) jer će se kao šifrovani tekst dobiti sam ključ. Ovaj napad, ipak, nema nikakvog smisla, jer se ključ koristi samo za jednu poruku (odatle ''one-time'' u naziv algoritma) i ova informacija biće neprimenljiva na ostale poruke.</span> | ||
=== 2. zadatak === | === 2. zadatak === | ||
Hill | : ''Ovaj zadatak nije potpun. Ukoliko se sećate tačnih brojeva, možete ga upotpuniti.'' | ||
Ana i Branko razmenjuju poruke šifrovane ''Hill''-ovim algoritmom. Branko na početku šalje Ani šestocifreni broj u formatu ''abcdef'' šifrovan Aninim javnim ključem, a njegova vrednost je ???. Anin privatni ključ jeste <math>d = ???, n = ???</math>. Ovaj šestocifreni broj se koristi za formiranje ''Hill''-ove enkripcione matrice sledećeg formata: <math>K = \begin{bmatrix} | |||
ab & c \\ | |||
d & ef | |||
\end{bmatrix}</math> | |||
Ana je primila šifrovani tekst TGHEYY. | |||
<div class="abc-list"> | |||
# Napisati sadržaj šestocifrenog broja ''abcdef'': <span class="spoiler" data-solution="text">nerešeno</span> | |||
# Napisati sadržaj dekripcione matrice, čitajući je po redovima, kao jedan broj bez razmaka: <span class="spoiler" data-solution="text">nerešeno</span> | |||
# Dekriptovana poruka je: <span class="spoiler" data-solution="text">nerešeno</span> | |||
</div> | |||
=== 3. zadatak === | === 3. zadatak === | ||
Primenjuje se Miler-Rabinov algoritam za utvrđivanje da li je dat broj <math>n = 91</math> prost. Dati rezultat algoritma za dati slučajno određen broj <math>a</math>. | Primenjuje se Miler-Rabinov algoritam za utvrđivanje da li je dat broj <math>n = 91</math> prost. Dati rezultat algoritma za dati slučajno određen broj <math>a</math>. | ||
<div class="abc-list" | <div class="abc-list" data-solution="select" data-options="Možda prost,Nije prost,Ne znam"> | ||
# <math>a = 9</math>. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): <span class="spoiler">Možda prost</span> | |||
# <math>a = 11</math>. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): <span class="spoiler">Nije prost</span> | |||
<math>a = 9</math>. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): | |||
</ | |||
<math>a = 11</math>. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): | |||
</ | |||
</div> | </div> | ||
=== 4. zadatak === | === 4. zadatak === | ||
Konstantin šalje broj svoje kreditne kartice, ali da bi ga zaštitio odlučio je da ga šifruje, prvo dekripcijom preko ''rail fence'' algoritma u 4 reda, potom enkripcijom monoalfabetskom šifrom sa ključem 1597302846, i na kraju enkripcijom sa ''rail fence'' algoritmom u 4 reda. Originalni broj kartice je '''4812 2391 0028 5722'''. | |||
4812 2391 0028 5722. | Dobijeni broj kartice (bez razmaka) je: <span class="spoiler" data-solution="text">3459976511940899</span> | ||
Dobijeni broj kartice je: <span class="spoiler" data-solution="text"> | |||
=== 5. zadatak === | === 5. zadatak === | ||
: ''Ovaj zadatak nije potpun. Ukoliko se sećate tačnih brojeva, možete ga upotpuniti.'' | |||
Isto kao [[#5. zadatak 2|5. zadatak iz druge grupe]] sa drugačijim brojevima. | |||
== 2. grupa == | == 2. grupa == | ||
=== 1. zadatak === | === 1. zadatak === | ||
Objasniti šta je poznato pri ''known plaintext'' metodi kriptoanalize. Da li je ''Hill''-ov algoritam otporan na known plaintext napade? | Objasniti šta je poznato pri ''known plaintext'' metodi kriptoanalize. Da li je ''Hill''-ov algoritam otporan na known plaintext napade? | ||
'''Odgovor:''' <span class="spoiler" data-solution="plain">Pri ''known plaintext'' napadu poznat je originalni ''plaintext'' šifrovane poruke. | |||
''Hill''-ov algoritam nije otporan na ovakvu vrstu napada zato što nam je za dobijanje ključa potreban ''plaintext'' dužine <math>n^2</math>, gde je <math>n</math> dimenzija ''Hill''-ove matrice korišćene za enkripciju. | |||
Dalji postupak se svodi na rešavanje sistema linearnih jednačina stepena <math>n^2</math>, odakle direktno dobijamo nepoznate koeficijente matrice ključa.</span> | |||
=== 2. zadatak === | === 2. zadatak === | ||
Ред 54: | Ред 55: | ||
<div class="abc-list"> | <div class="abc-list"> | ||
<ol> | <ol> | ||
<li>Ključ za ''Vigenère'' je : <span class="spoiler" data-solution="text">HFCAEI</span></li> | <li>Ključ za ''Vigenère'' je: <span class="spoiler" data-solution="text">HFCAEI</span></li> | ||
<li>Poruka koju je Ana poslala je : <span class="spoiler" data-solution="text">DIFFIEANDHELLMAN</span></li> | <li>Poruka koju je Ana poslala je: <span class="spoiler" data-solution="text">DIFFIEANDHELLMAN</span></li> | ||
<li data-solution="single"> | <li data-solution="single"> | ||
''Vigenère'' algoritam sa ''autokey'' poboljšanjem menja učestalost pojavljivanja slova u šifrovanoj poruci. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): | ''Vigenère'' algoritam sa ''autokey'' poboljšanjem menja učestalost pojavljivanja slova u šifrovanoj poruci. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): | ||
Ред 67: | Ред 68: | ||
=== 3. zadatak === | === 3. zadatak === | ||
Primenjuje se Miler-Rabinov algoritam za utvrđivanje da li je dat broj <math>n = 247</math> prost. Dati rezultat algoritma za dati slučajno određen broj <math>a</math>. | Primenjuje se Miler-Rabinov algoritam za utvrđivanje da li je dat broj <math>n = 247</math> prost. Dati rezultat algoritma za dati slučajno određen broj <math>a</math>. | ||
<div class="abc-list" | <div class="abc-list" data-solution="select" data-options="Možda prost,Nije prost,Ne znam"> | ||
# <math>a = 12</math>. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): <span class="spoiler">Možda prost</span> | |||
# <math>a = 15</math>. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): <span class="spoiler">Nije prost</span> | |||
<math>a = 12</math>. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): | |||
<math>a = 15</math>. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): | |||
</div> | </div> | ||
=== 4. zadatak === | === 4. zadatak === | ||
Složeni algoritam šifrovanja se koristi za šifrovanje nečijeg broja kreditne kartice. Broj kreditne kartice koji treba šifrovati je: '''4812 2391 0028 5722'''. | Složeni algoritam šifrovanja se koristi za šifrovanje nečijeg broja kreditne kartice. Broj kreditne kartice koji treba šifrovati je: '''4812 2391 0028 5722'''. | ||
Složeni algoritam se sastoji od: | Složeni algoritam se sastoji od: | ||
Ред 92: | Ред 80: | ||
# ''Row Transposition'' algoritma za šifrovanje sa ključem (4,3,2,1) | # ''Row Transposition'' algoritma za šifrovanje sa ključem (4,3,2,1) | ||
Šifrovan broj kreditne kartice glasi: <span class="spoiler" data-solution="text"> | Šifrovan broj kreditne kartice glasi: <span class="spoiler" data-solution="text">7145562433518055</span> | ||
=== 5. zadatak === | === 5. zadatak === | ||
SAES algoritam se koristi za šifrovanje bloka '''2468h''' sa ključem '''5B9Fh'''. Parametri algoritma su: '''<math>RCON(1) = \mathtt{80h}, RCON(2) = \mathtt{30h} </math>'''. Nesvodljivi polinom '''0011b'''. | SAES algoritam se koristi za šifrovanje bloka '''2468h''' sa ključem '''5B9Fh'''. Parametri algoritma su: '''<math>RCON(1) = \mathtt{80h}, RCON(2) = \mathtt{30h} </math>'''. Nesvodljivi polinom '''0011b'''. | ||
{| class="wikitable" | {| class="wikitable" | ||
Ред 122: | Ред 109: | ||
<div class="abc-list"> | <div class="abc-list"> | ||
# Ključ za prvu rundu <math>K_1</math> glasi: <span class="spoiler" data-solution="text">A936</span> | |||
# Stanje pred MixColumns korak: <span class="spoiler" data-solution="text">5577</span> | |||
# Stanje na kraju prve runde: <span class="spoiler" data-solution="text">8BBE</span></div> | |||
</div> | |||
[[Категорија:Рокови]] | [[Категорија:Рокови]] | ||
[[Категорија:Заштита података]] | [[Категорија:Заштита података]] |
Тренутна верзија на датум 9. април 2023. у 14:20
Prvi kolokvijum 2023. godine održan je 31. marta i trajao je sat vremena.
1. grupa
1. zadatak
Na koji način bi mogao da se izvrši known plaintext napad na One-time pad algoritam, odnosno koji plaintext bi trebalo izabrati? Da li ovaj napad ima smisla?
Odgovor: Kao plaintext je najbolje izabrati "AAAAA..." (pod uslovom da slovo A označava prvi karakter alfabeta koji se šifruje) jer će se kao šifrovani tekst dobiti sam ključ. Ovaj napad, ipak, nema nikakvog smisla, jer se ključ koristi samo za jednu poruku (odatle one-time u naziv algoritma) i ova informacija biće neprimenljiva na ostale poruke.
2. zadatak
- Ovaj zadatak nije potpun. Ukoliko se sećate tačnih brojeva, možete ga upotpuniti.
Ana i Branko razmenjuju poruke šifrovane Hill-ovim algoritmom. Branko na početku šalje Ani šestocifreni broj u formatu abcdef šifrovan Aninim javnim ključem, a njegova vrednost je ???. Anin privatni ključ jeste . Ovaj šestocifreni broj se koristi za formiranje Hill-ove enkripcione matrice sledećeg formata:
Ana je primila šifrovani tekst TGHEYY.
- Napisati sadržaj šestocifrenog broja abcdef: nerešeno
- Napisati sadržaj dekripcione matrice, čitajući je po redovima, kao jedan broj bez razmaka: nerešeno
- Dekriptovana poruka je: nerešeno
3. zadatak
Primenjuje se Miler-Rabinov algoritam za utvrđivanje da li je dat broj prost. Dati rezultat algoritma za dati slučajno određen broj .
- . (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): Možda prost
- . (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): Nije prost
4. zadatak
Konstantin šalje broj svoje kreditne kartice, ali da bi ga zaštitio odlučio je da ga šifruje, prvo dekripcijom preko rail fence algoritma u 4 reda, potom enkripcijom monoalfabetskom šifrom sa ključem 1597302846, i na kraju enkripcijom sa rail fence algoritmom u 4 reda. Originalni broj kartice je 4812 2391 0028 5722.
Dobijeni broj kartice (bez razmaka) je: 3459976511940899
5. zadatak
- Ovaj zadatak nije potpun. Ukoliko se sećate tačnih brojeva, možete ga upotpuniti.
Isto kao 5. zadatak iz druge grupe sa drugačijim brojevima.
2. grupa
1. zadatak
Objasniti šta je poznato pri known plaintext metodi kriptoanalize. Da li je Hill-ov algoritam otporan na known plaintext napade?
Odgovor: Pri known plaintext napadu poznat je originalni plaintext šifrovane poruke. Hill-ov algoritam nije otporan na ovakvu vrstu napada zato što nam je za dobijanje ključa potreban plaintext dužine , gde je dimenzija Hill-ove matrice korišćene za enkripciju. Dalji postupak se svodi na rešavanje sistema linearnih jednačina stepena , odakle direktno dobijamo nepoznate koeficijente matrice ključa.
2. zadatak
Ana želi da pošalje Marku poruku koristeći Vigenère šifru sa autokey poboljšanjem. Ana je pomoću RSA algoritma poslala Marku šifrovan ključ za Vigenère algoritam koji glasi . Svaka cifra iz šifre se mapira u slovo pod tim rednim brojem (npr. 123=ABC). Izabrali su , dok je Anin privatni ključ . Marko je primio poruku KNHFMMDVIMMPLZDU.
- Ključ za Vigenère je: HFCAEI
- Poruka koju je Ana poslala je: DIFFIEANDHELLMAN
-
Vigenère algoritam sa autokey poboljšanjem menja učestalost pojavljivanja slova u šifrovanoj poruci. (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena):
- Ne
- Da
- Ne znam
3. zadatak
Primenjuje se Miler-Rabinov algoritam za utvrđivanje da li je dat broj prost. Dati rezultat algoritma za dati slučajno određen broj .
- . (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): Možda prost
- . (netačan odgovor na ovo pitanje nosi -1 poen, odgovor "Ne znam" donosi 0 poena): Nije prost
4. zadatak
Složeni algoritam šifrovanja se koristi za šifrovanje nečijeg broja kreditne kartice. Broj kreditne kartice koji treba šifrovati je: 4812 2391 0028 5722. Složeni algoritam se sastoji od:
- Row Transposition algoritma za dešifrovanje sa ključem (4,3,2,1)
- Cezarovom šifrom sa pomerajem 3
- Row Transposition algoritma za šifrovanje sa ključem (4,3,2,1)
Šifrovan broj kreditne kartice glasi: 7145562433518055
5. zadatak
SAES algoritam se koristi za šifrovanje bloka 2468h sa ključem 5B9Fh. Parametri algoritma su: . Nesvodljivi polinom 0011b.
00b | 01b | 10b | 11b | |
---|---|---|---|---|
00b | 9h | 4h | Ah | Bh |
01b | Dh | 1h | 8h | 5h |
10b | 6h | 2h | 0h | 3h |
11b | Ch | Eh | Fh | 7h |
1 | 4 |
4 | 1 |
- Ključ za prvu rundu glasi: A936
- Stanje pred MixColumns korak: 5577
- Stanje na kraju prve runde: 8BBE