Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałZygmunt Szwajkowski Został zmieniony 11 lat temu
1
Techniczne aspekty realizacji podpisu cyfrowego z zastosowaniem algorytmu RSA
mgr inż. Wojciech Psik Zespół Szkół Elektronicznych i Ogólnokształcących w Przemyślu
2
Klasyfikacja systemów kryptograficznych
rodzaj operacji stosowanych do przekształcania informacji; większość algorytmów szyfrujących stosuje technikę podstawiania (odwzorowania jednego elementu tekstu na inny), technikę transpozycji, czyli przestawienia kolejności elementów tekstu jawnego albo złożenie obu metod (szyfry kaskadowe); zaawansowane algorytmy szyfrowania używają również przekształceń wykładniczych, logarytmicznych czy funkcji plecakowej; liczbę używanych kluczy szyfrowych. Jeżeli nadawca i odbiorca używają tego samego klucza szyfrowego, to system nazywamy szyfrowaniem symetrycznym, szyfrowaniem z jednym kluczem, szyfrowaniem z kluczem tajnym lub szyfrowaniem konwencjonalnym. Jeżeli nadawca i odbiorca używają różnych kluczy szyfrowych, to system nazywamy szyfrowaniem asymetrycznym, szyfrowaniem z dwoma kluczami, lub szyfrowaniem z kluczem jawnym; sposób przetwarzania tekstu jawnego: szyfr blokowy generuje jeden blok tekstu wyjściowego dla każdego bloku tekstu wejściowego, zaś szyfr strumieniowy przetwarza elementy wejściowe w sposób ciągły i produkuje jednocześnie dane wyjściowe.
3
Szyfrowanie symetryczne i asymetryczne
Szyfrowanie asymetryczne Szyfrowanie symetryczne
4
Metody szyfrowania symetrycznego i asymetrycznego
Metody symetryczne Szyfry podstawieniowe jednoalfabetowe (np. szyfr przesunięty, przesunięty szyfr przerzedzony)) homofoniczne Wieloliterowe (szyfr Playfair) wieloalfabetowe (szyfr Vigenere’a, Vernama) Szyfry transpozycyjne szyfr płotowy transpozycyjny szyfr stałego okresu maszyny rotorowe Algorytm DES Algorytm IDEA Metody asymetryczne RSA ElGamal System LUC Inne Algorytm Diffie-Hellmana Algorytmy krzywych eliptycznych System DSA
5
Schemat szyfrowania DES
6
Ochrona poufności i uwierzytelnianie
7
Szyfrowanie RSA Zznajdujemy dwie liczby pierwsze p i q: p=7 oraz q=17
Oobliczamy moduł obliczeń n: n=pq=7*17=119 Oobliczamy funkcję Ф(n): Ф(n)=(p-1)*(q-1) = 6*16=96 Zznajdujemy liczbę e taką, że e i Ф(n) są względnie pierwsze i taką, że e< Ф(n): Powyższe warunki spełnia liczba e=5 Wwyznaczamy odwrotność e w arytmetyce mod Ф(n) d=77 ponieważ zachodzi: d*e mod Ф(n)=1, czyli 5*77 mod 96 = 385 mod 96 = 1 Ppara liczb {e, Ф(n)} czyli {5, 119}stanowi klucz publiczny, który jest opublikowany, zaś para liczb {d, Ф(n)}, czyli (77,119} jest kluczem prywatnym, który musi być chroniony.
8
Podpis cyfrowy Elektroniczne podpisanie dokumentu polega na wygenerowaniu skrótu oryginalnej wiadomości. Zwykle wykorzystuje się do tego celu jednokierunkowe funkcje haszujące, generujące na podstawie oryginalnej wiadomości jej wyciąg (skrót). Następnie skrót ten poddaje się szyfrowaniu z użyciem technik najczęściej asymetrycznych i powstaje już cyfrowy podpis dokumentu. Zastosowane rozwiązania typowe Funkcje podpisu cyfrowego Ochrona poufności Uwierzytelnianie Integralność danych Niezaprzeczalność Funkcje skrótu MD5 Snerfu SHA RSA
9
Skrót wiadomości a uwierzytelnianie
komunikat i jego skrót są szyfrowane metodą klasyczną (spełniona jest też poufność), wynik haszowania szyfruje się symetrycznie, otrzymując tzw. kryptograficzną sumę kontrolną, skrót wiadomości podlega szyfrowaniu kluczem prywatnym nadawcy (metoda ta zapewnia uwierzytelnianie oraz podpis cyfrowy, bo tylko nadawca mógł wykonać zaszyfrowania skrótu komunikatu), komunikat szyfrujemy konwencjonalnie, zaś jego skrót – metodą klucza jawnego (uzyskujemy w ten sposób ochronę poufności oraz podpis cyfrowy), zarówno komunikat, jak i jego skrót szyfrujemy kluczem tajnym, klucz tajny szyfrujemy metodą asymetryczną i przesyłamy do odbiorcy, zakładając, że dwie komunikujące się strony znają pewną wartość S, nadawca oblicza wartość funkcji haszującej dla M+S; ponieważ odbiorca zna S, może sam obliczyć wynik. Metoda zapewnia uwierzytelnianie, bo intruz nie może zmodyfikować przechwyconej wiadomości i wygenerować fałszywego komunikatu, gdyż wartość S nie jest przesyłana. Szyfrując dodatkowo cały komunikat i wynik haszowania, można zapewnić poufność.
10
Techniczne aspekty stosowania RSA w podpisie cyfrowym
Szyfrowanie i deszyfrowanie upraszczanie obliczeń potęgowania i dzielenia modulo dobór szyfrowanego bloku Generowanie kluczy problem wyboru dużych liczb pierwszych znajdowanie odwrotności modulo Wydajność systemu komputerowego
11
Wyniki badań algorytmu RSA
1 Czas szyfrowania i deszyfrowania w funkcji wielkości bloku Rozmiar pliku wynikowego w funkcji wielkości bloku Pojedyncza operacja szyfrowania i deszyfrowania w funkcji wielkości bloku 2 3
12
Wnioski z badań Wielkość bloku podlegającego szyfrowaniu ma decydujące znaczenie zarówno na czas, jak i rozmiar szyfrogramu. Im większa długość bloku, tym mniejsza liczba szyfrowań i krótszy czas zaszyfrowania (a potem odszyfrowania) całego komunikatu. Również mniejszy jest wtedy plik wynikowy. Czas pojedynczej operacji szyfrowania i deszyfrowania nie zależy od wielkości bloku. Jest to związane z tym, że system zawsze w taki sam sposób dokonuje szyfrowania i deszyfrowania: wykonuje potęgowanie modulo dla ustalonego wykładnika i modułu obliczeń. Czas deszyfrowania jest około dwa razy większy, niż czas szyfrowania. Może mieć to związek z tym, że klucz do deszyfrowania jest liczbą o prawie dwukrotnie większej liczbie cyfr, niż klucz szyfrujący. Sprzęt komputerowy, na którym dokonywane są takie operacje, musi posiadać odpowiednią moc obliczeniową oraz zasoby pamięciowe. Wyniki testów przeprowadzonych roboczo na stacji trzykrotnie szybszej i o zdecydowanie większej pojemności pamięci RAM (Duron 800 MHz, 128MB RAM) pokazały, że czasy szyfrowań i deszyfrowań są ok. 3-krotnie mniejsze. Nie występuje również deficyt zasobów pamięciowych.
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.