Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wykonał: mgr inż. Maksymilian Szczygielski

Podobne prezentacje


Prezentacja na temat: "Wykonał: mgr inż. Maksymilian Szczygielski"— Zapis prezentacji:

1 Wykonał: mgr inż. Maksymilian Szczygielski
Kryptograficzne aspekty kodowania asymetrycznego. Podpis cyfrowy jako przykład zastosowania. Wykonał: mgr inż. Maksymilian Szczygielski

2 Kryptografia jest nauką zajmującą się problematyką szyfrowania i deszyfrowania.
Do dziedzin matematyki, które odgrywają ważną rolę we współczesnej kryptografii, należą: teoria liczb, teoria grup, logika kombinatoryczna, teoria złożoności i teoria informacji. Samą kryptografię można także postrzegać jako gałąź matematyki stosowanej i informatyki. Faktycznie w zastosowaniach informatycznych kryptografia nabiera praktycznego znaczenia w połączeniu z zagadnieniami dostępu do systemów operacyjnych, protokołów, sieci komputerowych i przesyłania danych.

3 Szyfrowanie symetryczne
Klucz uzgodniony przez dwie strony wpływa w kryptosystemach symetrycznych zarówno na krok szyfrowania, jak i deszyfrowania. Wpływ ten jest symetryczny w tym sensie, że oba procesy są równie pracochłonne. Ponadto zazwyczaj obie strony występują zamiennie w rolach nadawcy i odbiorcy. Jeżeli kroki szyfrowania i deszyfrowania komutują, każdej ze stron wystarczy tylko jeden własny klucz prywatny. Do tej klasy należy metoda DES. Ma ona jeden klucz, a szyfrowanie i deszyfrowanie różnią się tylko kolejnością przebiegów generowanych na podstawie klucza.

4 Szyfrowanie asymetryczne
Rezygnując z symetrii kryptosystemu, musimy oczywiście chronić klucz deszyfrujący. Jednak asymetria może być posunięta tak daleko, że klucz szyfrujący nie tylko nie będzie chroniony, ale nawet będzie powszechnie dostępny (klucz publiczny). Koncepcja kryptografii z kluczem publicznym pochodzi od Diffie i Hellmana z roku Pierwsza realizacja asymetrycznych kryptosystemów należy do Rivesta, Shamira i Adelmana w roku 1977 (RSA).

5 Porównanie algorytmów symetrycznych i asymetrycznych
Usługa Symetryczne Asymetryczne Poufność Duże szybkości szyfrowania i deszyfrowania Małe szybkości szyfrowania, deszyfrowania Integralność i wierzytelność Osiągane przy użyciu tego samego przekształcenia co poufność Osiągane przy użyciu innego przekształcenia co poufność Niezaprzeczalność Trudność generacji podpisu cyfrowego Łatwość generacji podpisu cyfrowego Dystrybucja kluczy Trudna w realizacji Łatwa w realizacji

6 Kryptosystem klucza publicznego
Pojęcie systemu z kluczem publicznym wyraża fakt, że klucze deszyfrujące pozostają tajne. Każdy uczestnik wymiany informacji wytwarza 2 klucze: Klucz szyfrujący (jawny), który udostępnia publicznie wszystkim pozostałym uczestnikom; Klucz deszyfrujący (tajny), który utrzymuje w ścisłej tajemnicy. Każdy może wysłać wiadomość, ale tylko odbiorca może ją odebrać.

7 Szyfrowanie z kluczem publicznym

8 Bezpieczeństwo klucza publicznego
Bezpieczeństwo kryptosystemów klucza publicznego oparte jest na aktualnej wiedzy teoretycznej i możliwościach technologicznych dotyczących rozwiązania danego problemu obliczeniowego. Rodzaje ataków na systemy kryptograficzne: Atak bierny Atak czynny

9 Atak bierny Przeciwnik nie będący stroną w protokole podsłuchuje wiadomości przekazywane w czasie realizacji protokołu i na tej podstawie próbuje wydobyć informacje jawne. Odpowiada to łamaniu szyfru ze znanym tylko szyfrogramem. Bierni oszuści realizują protokół, ale jednocześnie próbują wydobyć z niego więcej wiadomości niż potrzebują do swego działania.

10 Atak czynny Przeciwnik w celu uzyskania korzyści stara się wprowadzić do protokołu nowe komunikaty, usunąć istniejące komunikaty, podstawić nowe komunikaty w miejsce istniejących, zniszczyć kanał łączności lub zmienić informacje przechowywane na komputerze. Łamanie czynne jest bardziej groźne, szczególnie w protokołach, w których odmienne strony niekoniecznie sobie ufają. Napastnik może być legalnym użytkownikiem systemu, może być nawet jedną ze stron uczestniczących w protokole.

11 Ogólna charakterystyka algorytmu RSA
Kryptosystem RSA jest najpowszechniej stosowanym systemem klucza publicznego, stosowany jest między innymi w protokołach kryptograficznych wymiany kluczy i podpisach cyfrowych. Do tej pory skutecznie opiera się atakom kryptoanalityków. Bezpieczeństwo algorytmu RSA opiera się na trudności faktoryzacji dużych liczb.

12 Algorytm wykorzystuje parę kluczy:
publiczny - jest to para liczb (e, n), dostępna dla każdego użytkownika kryptosystemu, służąca do szyfrowania informacji przeznaczonych dla posiadacza klucza prywatnego oraz do sprawdzenia autentyczności dokumentów, które ten posiadacz wytworzył i rozpowszechnił jako własne, prywatny - liczba d (utajniona) znana tylko właścicielowi, służąca do odszyfrowania przeznaczonych dla niego dokumentów i opatrywania ich pieczęcią autentyczności.

13 Generowanie kluczy w RSA
Klucze publiczne i prywatne są funkcjami pary dużych liczb pierwszych. Generowanie kluczy odbywa się według poniższego schematu: Wybór dwóch dużych liczb pierwszych p i q (p i q powinny być jednakowej długości). Obliczenie iloczynu tych liczb. Losowanie klucza szyfrującego e takiego, że e i (p - 1)(q - 1) są względnie pierwsze. Obliczenie klucza szyfrującego d z algorytmu Euklidesa: e d = 1 mod (p-1)(q-1) Liczby e i n oznaczają klucz publiczny, a liczba d oznacza klucz tajny.

14 Opis działania algorytmu
Algorytm RSA można krótko zapisać w postaci: Klucz publiczny: n - iloczyn dwóch liczb pierwszych p i q (p i q pozostają utajnione) e - liczba względnie pierwsza z (p - 1)(q - 1) Klucz prywatny: d = e-1(mod(p-1)(q-1)) Szyfrowanie: c = me(mod n) Deszyfrowanie: m = cd(mod n)

15 Właściwości algorytmu
Ataki na algorytm RSA Ataki skierowane nie na algorytm lecz na protokół, czasami okazują się skuteczne. Są to przeważnie ataki za pomocą wybranych szyfrogramów. Aby się przed nimi zabezpieczyć, należy przed podpisaniem przypadkowego dokumentu - użyć jednokierunkowej funkcji skrótu. Standard RSA RSA jest standardem uznawanym w większości krajów na świecie. RSA jest nieoficjalnym standardem podpisu cyfrowego. Jest mimo to opatentowany jedynie w USA.

16 Kryptosystem RSA jest znacznie wolniejszy od systemów symetrycznych
Kryptosystem RSA jest znacznie wolniejszy od systemów symetrycznych. Współczesne realizacje sprzętowe RSA osiągają szybkość szyfrowania rzędu 600 Kbitów na sekundę, przy 512 bitowym module n, natomiast realizacje sprzętowe DES-a osiagają szybkość rzędu 1 Gbit/sec czyli RSA jest około 1500 razy wolniejszy od DES-a. Często RSA wykorzystywany jest w protokołach wymiany kluczy kryptograficznych, natomiast systemy blokowe DES, IDEA służą do przesyłania dużej ilości danych.

17 Algorytm DSA DSA (Digital Signature Algorithm) - jeden z najciekawszych algorytmów wykorzystywanych w standardzie podpisu cyfrowego (Digital Signature Standard DSS). Kryptosystem ten został opracowany przez NSA (National Security Agency) i został zatwierdzony jako standard podpisu cyfrowego w USA w 1999r.

18 Wprowadzenie do DSA Zasada działania algorytmu DSA opiera się na następujących parametrach: p - liczba pierwsza o długości L - bitów, przy czym L może przyjmować wartości od 512 do 1024 i jest wielokrotnością 64; parametr jawny. q - czynnik pierwszy liczby p-1 o długości 160 bitów; parametr jawny. g = h(p~1/q) mod p gdzie h jest dowolną liczbą mniejszą niż p-l, taką że h(p~1/q) mod p jest liczbą większą niż 1; parametr jawny. x - liczba mniejsza niż q; x jest kluczem prywatnym. y = gx mod p. Jest to klucz publiczny.

19 Szyfrowanie danych w DSA
Algorytm DSA można zapisać w postaci: Klucz publiczny: p - liczba pierwsza o długości 512 do 1024 bitów q - czynnik pierwszy liczby p-1 o długości 160 bitów g = h(p-1)/qmod p y = gx mod p Klucz prywatny: x q Podpisywanie: k - liczba wybierana losowo, mniejsza od q w = s-1 mod q u1 = (H(m)*w) mod q r - (podpis) = (gk mod p) mod q s - (podpis) = (k-1 (H(m) + xr)) mod q

20 Szyfrowanie danych w DSA
Weryfikacja: u1 = (rw) mod q v = (( gu1 * yu2 ) mod p) mod q Jeśli v = r, to podpis jest poprawny Każdy podpis cyfrowy wymaga nowej liczby k. Jej wartość wybierana jest losowo. Dobry generator liczb losowych ma największe znaczenie dla bezpieczeństwa algorytmu DSA.

21 Inne algorytmy klucza publicznego
Algorytm Diffiego-Hellmana Algorytm Plecakowy Algorytm Rabina Algorytm Williamsa Algorytm Elgamala Probablistyczny Algorytm Bluma-Goldwassera

22 Kanał podprogowy Kanały podprogowy w schematach podpisów cyfrowych został odkryty przez G.J. Simmonsa. Jest to kanał umożliwiający umieszczenie tajnej wiadomości w swoim podpisie cyfrowym, która może być odczytana tylko przez osobę znającą dodatkowy klucz. Nikt nie wie, czy twórcy nawet o nim wiedzieli. Może się on okazać niebezpiecznym narzędziem w ręku twórcy implementacji szyfru. Jest on w stanie wyprowadzić część klucza prywatnego wraz z każdym podpisem. Dodatkowo sytuacja taka nie jest wykrywalna dla właściciela i osób postronnych.

23 Funkcje skrótu Jednokierunkowe funkcje skrótu wykorzystywane do zapewniania integralności przesyłanych danych, pozwalają stwierdzić, czy informacja przesyłana od nadawcy do odbiorcy nie została poddana modyfikacji. Założeniami działania takiej funkcji skrótu są: uzyskiwany wynik jest stałej długości (niezależnie od długości tekstu, który poddawany jest operacji), funkcja działa jednokierunkowo – tzn. nie ma możliwości uzyskania tekstu źródłowego z posiadanego wyniku operacji.

24 Własności protokołów kryptograficznych
Każdy użytkownik protokołu musi go znać i kolejno wykonywać wszystkie kroki Każdy użytkownik musi zgodzić się na jego stosowanie Protokół nie może być mylący – każdy krok powinien być dobrze zdefiniowany i nie może wystąpić szansa na jakiekolwiek nieporozumienie Protokół powinien być kompletny – dla każdej możliwej sytuacji musi być podany odpowiedni sposób postępowania.

25 Cele stosowania protokołów kryptograficznych
Strony uczestniczące w protokole: Dzielą się częścią swoich tajemnic Wspólnie generują liczbę losową (klucz kryptograficzny) Przekonują się wzajemnie do swojej tożsamości Podpisują jednocześnie umowę Stosowanie protokołów kryptograficznych umożliwia współpracę całkowicie nie ufających sobie stron w obrębie sieci komputerowej.

26 Podpis cyfrowy Technicznie podpis cyfrowy jest ciągiem bitów (krótszym od przesyłanej informacji) będącym funkcją podpisywanej informacji oraz klucza prywatnego nadawcy. W odróżnieniu od podpisu ręcznego zależy od zawartości dokumentu, a dokładniej - od skompensowanej próbki dokumentu. Odwzorowanie informacji z dokumentu na jej skompensowaną próbkę dokonuje się za pomocą jednokierunkowej funkcji szyfrującej, tzw. funkcji skrótu, inaczej haszującej (hash).

27 Algorytm generowania i weryfikacji podpisu cyfrowego
1. Nadawca oblicza skrót wiadomości za pomocą funkcji skrótu. 2. Szyfruje kluczem prywatnym nadawcy skrót wiadomości i dołącza do wiadomości jako jej podpis cyfrowy. 3. Odbiorca deszyfruje kluczem publicznym nadawcy jego podpis cyfrowy oraz wylicza z niego skrót przesłanej wiadomości. 4. Porównuje ze skrótem uzyskanym po zaszyfrowaniu funkcją skrótu otrzymanej wiadomości. 5. Zgodność oznacza, że podpis cyfrowy dotyczy przesyłanej wiadomości oraz świadczy o nienaruszalności informacji.

28 Wykonywanie podpisu cyfrowego

29 Wykonywanie podpisu cyfrowego

30 Cechy podpisu elektronicznego
Podpis elektroniczny ma wszystkie istotne cechy podpisu odręcznego: potwierdza jednoznacznie tożsamość osoby podpisującej, uniemożliwia zaprzeczenie faktu podpisania i dokonania transakcji, jest też powiązany z treścią, która została podpisana. Dodatkową zaletą stosowania podpisu elektronicznego jest możliwość stwierdzenia na podstawie samego podpisu, czy dokument nie był zmieniany już po podpisaniu. Dzięki temu może być wykorzystywany do jednoznacznej autoryzacji wszelkich dokumentów i transakcji elektronicznych.

31 Certyfikacja podpisu cyfrowego
Łatwo wyobrazić sobie scenariusz, w którym intruz podmienia klucz publiczny określonego użytkownika, a następnie przechwytuje i swobodnie deszyfruje wiadomości kierowane do tego użytkownika. Skutecznym i efektywnym rozwiązaniem tego problemu są tzw. urzędy certyfikacji (ang. certificate authority) odpowiadające za dystrybucję kluczy publicznych użytkowników. Użytkownik, aplikacja lub urządzenie, które zamierzają prowadzić szyfrowanie w systemie klucza publicznego najpierw powinni zarejestrować się w urzędzie certyfikacji oraz dostarczyć swoje klucze publiczne wraz z danymi identyfikacyjnymi.

32 Elementy certyfikatu cyfrowego


Pobierz ppt "Wykonał: mgr inż. Maksymilian Szczygielski"

Podobne prezentacje


Reklamy Google