Warunki zaliczenia
Końcowa ocena składa się z testu i zadań wykonywanych podczas zajęć. Zadania należy wysyłać na adres mailowy osoby prowadzącej z tytułem wiadomości w następującym formacie:
Bezpieczeństwo informatyczne <nr indeksu> zadanie <nr zadania>, <nr zadania 2>, ...
Każdy zbiór zadań posiada określony termin. Zadania zwrócone po terminie mają połowę oryginalnych punktów.
Test odbędzie się dnia 2025-12-06 i stanowi 30% końcowej sumy punktów.
Zadania (termin 2025-12-06)
Zadanie 1 (1pkt)
Opisz paradoks dni urodzin i jego zastosowanie do łamania funkcji skrótu.
Zadanie 2 (2pkt)
Wykorzystaj algorytm Floyda do znalezienia kolizji dla wybranej funkcji skrótu.
Zadanie 3 (2pkt)
Wykorzystaj program Hashcat do złamania prostego hasła. Opisz i uzasadnij wykorzystaną konfigurację.
Zadanie 4 (2pkt)
Stwórz konfigurację serwera nginx pozwalającą na szyfrowanie ruchu prostego serwera HTTP (takiego jak python -m http.server).
Stwórz wymagane klucze samodzielnie (nie wykorzystujemy Let’s Encrypt czy innych serwisów generujących certyfikaty!)
Zadanie 5 (2pkt)
Stwórz bazę haseł z wykorzystaniem KeePassXC. Skonfiguruj hasło oraz mechanizm uwierzytelniania dwuskładnikowego dla wybranego serwisu (można założyć konto na adres email uniwersytetu lub wydziałowy).
Zadanie 6 (3pkt)
Skonfiguruj szyfrowanie end-to-end w ramach poczty email z użyciem PGP / GPG. Następnie wyślij do innej osoby następujące wiadomości:
-
wiadomość podpisana
-
wiadomość zaszyfrowana
-
wiadomość zaszyfrowana z załącznikami
Porównaj źródła pomiędzy różnymi typami wiadomości oraz opisz wnioski.
Zadanie 7 (1pkt)
Stwórz listę 3 rekomendacji dot. dobrych haseł.
Zadanie 8 (2pkt)
Osoba prowadząca prześle treść zadania mailem.
Zagadnienia na test 2025-12-06
-
Definicje: kryptologia, kryptografia, kryptoanaliza, CIA
-
Kodowanie little endian, big endian, network order, UTF-8
-
Rekomendowane szyfry blokowe, rekomendowane szyfry strumieniowe
-
Przykładowe metody steganografii
-
Cechy dobrego generatora liczb losowych
-
Cechy bezpiecznego kryptograficznie generatora liczb losowych
-
Definicja funkcji jednokierunkowej, przykłady
-
Cechy funkcji skrótu
-
Cechy bezpiecznej kryptograficznie funkcji skrótu
-
Zastosowania kryptograficznie bezpiecznych funkcji skrótu
-
Rekomendacje dot. silnych haseł
Funkcje jednokierunkowe
Funkcja jednokierunkowa jest to funkcja, której wartość można obliczyć w czasie wielomianowym; natomiast jej odwrotność jest trudna obliczeniowa (brak skutecznych algorytmów o czasie wielomianowym).
Kryptograficznie bezpieczna funkcje skrótu
-
Funkcja jednokierunkowa - Odporność na łatwe znajdowanie przykładowego wejścia dla wyniku
-
Słaba odporność na kolizje - posiadając dane wejście, trudno znaleźć inne, które da ten sam wynik
-
Silna odporność na kolizje - trudno znaleźć parę tekstów dających ten sam wynik
Ataki na funkcje skrótu
Redukcja trudności ataków i kompromisy między złożonością pamięciową a czasową.
Zastosowania funkcji skrótu
-
Generatory liczb pseudolosowych
-
Schemat zobowiązania bitowego
-
Kryptografia asymetryczna
-
Podpis cyfrowy
-
Weryfikacja spójności wiadomości
Wizualizacje danych binarnych
Tablice tęczowe
Tablica zawierająca przykładowe teksty produkujące wyniki funkcji skrótu przechowywana w sposób efektywny. Pozwala to na łamanie słabych schematów przechowywania haseł (bez użycia soli).
Bibliografia: