Sprawozdanie z ćwiczenia laboratoryjnego z przedmiotu Podstawy bezpieczeństwa informacyjnego |
---|
Grupa: E1G1N1 |
Imię i nazwisko: 1.Konieczny Michał 2.Siergiej Radosław |
S P R A W O Z D A N I E |
Temat: Własności funkcji skrótu i podpisu cyfrowego z zastosowaniem RSA |
1.Cel ćwiczenia
Celem ćwiczenia było zapoznanie z zasadą działania, właściwościami i praktycznym wykorzystaniem szyfru z kluczem publicznym na przykładzie krypto systemu RSA.
2. Zadania wykonywane podczas zajęć.
1. Generowanie pary kluczy (prywatny i publiczny) dla wszystkich użytkowników systemu.
Figure 1. Generowanie kluczy krok 1
Pierwszy krok polegał na podaniu dwóch liczby pierwszych, które posłużą do obliczenia funkcji
Eulera. Dużą zaletą tego programu jest to, iż użytkownik nie musi nawet (choć powinien), wiedzieć
czym jest liczba pierwsza, gdyż za pomocą przycisku N.L.P. program sam znajdzie najbliższą liczbę
pierwszą względem wcześniej, dowolnie, wybranej przez użytkownika liczby.
Figure 2 Generowanie Kluczy krok 2
W drugim kroku pogram oblicza nam iloczyn liczb pierwszych oraz funkcję Eulera.
Figure 3 Generowanie kluczy krok 3
Następnym krokiem było losowe znalezienie liczby „e” (stanowiącej część klucza jawnego),
spełniającej warunki 1 i 2.
Figure 4 Generowanie kluczy krok 4.
W kroku 4 program generuję nam liczbę „d”.
Figure 5 Generowanie kluczy krok 5.
W kroku piątym program generuje nam klucz jawny oraz prywatny.
2.Szyfrowanie informacji
W tym podpunkcie został zaprezentowany zrzut z wygenerowanymi kluczami.
Figure 6 Wszyscy użytkownicy
Szyfrowanie kolejnych użytkowników.
Figure 7 Deszyfrowanie szyfrogramu – użytkownik 1 posiada właściwy klucz
Figure 8 Deszyfrowanie szyfrogramu – użytkownik 2 posiada właściwy klucz
Figure 9 Deszyfrowanie szyfrogramu – użytkownik 3 posiada właściwy klucz
Figure 10 Deszyfrowanie szyfrogramu – użytkownik 4 posiada właściwy klucz
3. Dysponując kluczem publicznym podanym przez prowadzącego próbowaliśmy dokonać
próby odtworzenia klucza prywatnego przy pomocy programu RSA.
Figure 11 Udana próba odtworzenia klucza.
Figure 12 Właściwości systemu operacyjnego
Figure 13 Wyznaczenie odwrotności modularnej liczby e modulo Φ(n)
Klucz który otrzymaliśmy na laboratoriach
Klucz:
468074492892621077047076412402403673116308744607 ,
31639325173430591784108053650239622268399790784485116044444009
Wnioski:
Program używany podczas laboratorium pozwalał wygenerować klucz prywatny i publiczny. W kilku krokach generator kluczy szybko generował klucze. W pierwszej kolejności należało podać dwie liczby pierwsze które zostaną wykorzystane do obliczenia funkcji Eulera. Następnie znalezienie liczby „e” (części klucza jawnego) program znacznie ułatwiał dzięki możliwości sprawdzenia (przycisk „sprawdź”). Po wygenerowaniu klucza publicznego i prywatnego dla czterech użytkowników należało zrealizować szyfrowanie deszyfrowanie. Po deszyfrowaniu widać, że tylko dla użytkownika którego klucz został wcześniej wykorzystany udało się uzyskać pierwotną wiadomość. Następnym zadaniem była próba odtworzenia klucza prywatnego RSA dysponując kluczem publicznym. Niezbędny był kalkulator do faktoryzacji w celu uzyskania p i q i obliczenia d. Kolejnym zadaniem było porównać czas faktoryzacji w funkcji długości klucza. Widać wyraźnie, że wraz z długością klucza rośnie również czas faktoryzacji. Ostatnim zadaniem było zbadanie szybkości szyfrowania informacji. W tym wypadku widać, że wraz ze zwiększaniem się długości maleje szybkość szyfrowania.