Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Dystrybucja kluczy. Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty.

Podobne prezentacje


Prezentacja na temat: "Dystrybucja kluczy. Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty."— Zapis prezentacji:

1 Dystrybucja kluczy

2 Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty cyfrowe Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Algorytm Diffiego Hellmana Podsumowanie

3 Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty cyfrowe Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Algorytm Diffiego Hellmana Podsumowanie

4 Motywacja Wzrost zapotrzebowania na bezpieczne usługi informatyczne realizowane z wykorzystaniem kryptografii spowodował potrzebę opracowanie metod dystrybucji kluczy Podstawowym kryterium projektowania systemu dystrybucji kluczy powinno być bezpieczeństwo Z usług teleinformatycznych korzystają miliony użytkowników, więc system dystrybucji kluczy musi być skalowalny i działać online Dotychczas stosowane metody nie zapewniają odpowiedniego bezpieczeństwa, skalowalności i szybkości działania

5 Jak bezpiecznie przesłać tajną informację (klucz) Poczta, usługi kurierski (ale jak sprawdzić czy ktoś nie otworzył przesyłki?) Telefon (możliwy podsłuch) Steganografia (trzeba ustalić wcześniej sposób kodowania) Przesyłanie wielu kluczy „na zapas” (dla wykorzystania na przyszłość) Wykorzystać istniejący szyfrowany kanał (ale jak zestawić taki kanał po raz pierwszy?)

6 Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty cyfrowe Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Algorytm Diffiego Hellmana Podsumowanie

7 Dystrybucja kluczy dla szyfrowania konwencjonalnego Dla szyfrowania konwencjonalnego, obie strony wymieniające informacje muszą posiadać ten sam, tajny klucz Dla komunikujących się stron A i B dystrybucja klucza może być realizowana na wiele sposobów: –Klucz jest tworzony przez A i fizycznie dostarczany do B –Strona trzecia tworzy klucz i fizycznie dostarcza do A i B –Jedna ze stron przekazuje drugiej klucz zaszyfrowany za pomocą poprzednio używanego klucza –Trzecia strona C, posiadające zaszyfrowane łącze z A i B, przekazuje zaszyfrowany klucz

8 Liczba kluczy Problem dystrybucji klucza powiązany jest z liczbą stron, która chce komunikować się bezpiecznie Dla N stron, liczba kluczy wynosi ((N(N-1))/2 Na przykład, dla (10 6 ) stron liczba kluczy wynosi (10 11 ) Liczba kluczy rośnie, jeśli strony komunikują się na poziomie programów Korzystanie z centrum dystrybucji kluczy KDC (ang. Key Distribution Center) opiera się na stosowaniu hierarchii kluczy

9 Hierarchiczne zarządzanie kluczami Transmisja między użytkownikami końcowymi jest szyfrowana za pomocą klucza tymczasowego, nazywanego kluczem sesji Klucze sesji, otrzymywane z centrum dystrybucji kluczy, są przesyłane za pomocą klucza głównego, wspólnego dla centrali dystrybucji kluczy i użytkownika Dla bardzo dużych sieci można stworzyć hierarchię KDC Dla lokalnych podsieci lokalne KDC są odpowiedzialne za dystrybucję kluczy Jeśli dwaj użytkownicy, należący do różnych podsieci, potrzebują klucza sesji, to lokalne KDC łączą się z ogólnym KDC

10 Scentralizowana dystrybucja kluczy B A Żądanie||N 1 E KA [Ks||Żądanie||N 1 ||E KB (KS,ID A )] E KB [KS,ID A ] E KS [N 2 ] E KS [f(N 2 )] KS Każdy użytkownik ma klucz główny wspólny z centralą dystrybucji kluczy KDC Użytkownik A chce uzyskać klucz sesji dla połączenia z użytkownikiem B KDC

11 Scentralizowana dystrybucja kluczy 1.A rozpoczyna od wysłania żądania Z i identyfikatora jednorazowego N 1 2.KDC wysyła dane zaszyfrowane kluczem KA zawierające: klucz sesji KS, żądanie N 1, zaszyfrowane kluczem KB klucz sesji KS oraz identyfikator ID A 3.Następnie A przechowuje klucz sesji Ks i wysyła do B zaszyfrowany za pomocą KB klucz sesji KS oraz identyfikator ID A 4.Na końcu B wysyła do A identyfikator jednorazowy N 2 5.Wtedy A odpowiada przesłaniem f(N 2 ) (funkcji przekształcającej N 2 )

12 Zdecentralizowane zarządzanie kluczami B A Żądanie||N 1 E KM [Ks||Żądanie||N 1 ||ID B ||f(N 1 )] E KS [f(N 2 )] KS

13 Zdecentralizowane zarządzanie kluczami 1.A rozpoczyna od wysłania żądania Z i identyfikatora jednorazowego N1 2.B odpowiada wysyłaniem danych (zaszyfrowanych kluczem głównym KM) zawierających: klucz sesji Ks wybrany przez B, żądanie Z, identyfikator B, wartość f(N 1 ) oraz identyfikator jednorazowy N 1 3.A odpowiada przesłaniem f(N 2 ) (funkcji przekształcającej N 2 ) zaszyfrowane nowym kluczem sesji

14 Inne aspekty Czas używania klucza sesji – zbyt długie trwanie klucza sesji może obniżać bezpieczeństwo, zbyt krótkie trwanie klucza sesji może być niewygodne dla użytkownika Przeźroczysty system zarządzania kluczami – tak aby użytkownicy korzystając z bezpiecznej transmisji nie musieli zajmować się dystrybucją kluczy Zarządzanie stosowaniem kluczy – powinno ułatwiać i usprawniać bezpieczną dystrybucję kluczy

15 Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty cyfrowe Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Algorytm Diffiego Hellmana Podsumowanie

16 Zarządzanie kluczami dla szyfrowania asymetrycznego Dla szyfrowania asymetrycznego nie ma potrzeby dystrybucji kluczy prywatnych, które pozostają w posiadaniu i pod ochroną ich właściciela Należy jednak zapewnić dystrybucję kluczy jawnych Metody używane do dystrybucji kluczy jawnych można podzielić na następujące kategorie: –Publiczne ogłoszenie –Ogólnie dostępny katalog –Organ zarządzający kluczami jawnymi –Certyfikaty kluczy jawnych

17 Publiczne ogłaszanie kluczy jawnych Każdy użytkownik wysyła swój klucz jawny innym użytkownikom, którzy potrzebują tego klucza Zaletą tej metody jest prostota Główna wada to fakt, że ktoś może się podszyć pod użytkownika A, i podając się za niego rozpowszechnić sobie znany klucz jawny, wtedy może odczytywać zaszyfrowane dane przeznaczone dla A

18 Ogólnie dostępny katalog Za pomocą ogólnie dostępnego dynamicznego katalogu kluczy jawnych można zagwarantować większe bezpieczeństwo niż poprzez ogłaszanie kluczy jawnych Zarządzanie i dystrybucja kluczami można zlecić zaufanej jednostce lub organizacji Główna wada to możliwość kradzieży klucza prywatnego zarządzającego, co umożliwia publikowanie fałszywych kluczy jawnych

19 Ogólnie dostępny katalog Organ zarządzający utrzymuje katalog, w którym znajdują się pozycje {nazwa, klucz jawny} dla każdego uczestnika Każdy uczestnik rejestruje klucza jawny u zarządzającego katalogiem osobiście lub w formie uwierzytelnionego przekazu Uczestnik może w każdej chwili zmienić klucz na nowy Okresowo zarządzający publikuje (książka, czasopismo) cały katalog lub uaktualnia go Uczestnicy mają dostęp do katalogu także drogą elektroniczną za pomocą bezpiecznej, uwierzytelnionej komunikacji

20 Organ zarządzający kluczami jawnymi B A Żądanie||Czas 1 E KPC [KJB||Żądanie||Czas 1 ] E KJB [ID A,N 1 ] E KJA [N 1 ||N 2 ] E KJB [N 2 ] KJB KJA Organ zarządzający kluczami jawnymi może okazać się wąskim gardłem całego systemu C Żądanie||Czas 2 E KPC [KJA||Żądanie||Czas 2 ]

21 Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty cyfrowe Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Algorytm Diffiego Hellmana Podsumowanie

22 Certyfikaty kluczy jawnych B A KJA C A =E KPC [KJA||ID A ||Czas 1 ] CBCB CACA KJB KJA Certyfikaty są uzyskiwane na pewien okres czasu (np. 1 rok) więc obciążenie centrum certyfikatów jest niewielkie, gdyż użytkownicy wymieniają certyfikaty między sobą C KJB C B =E KPC [KJB||ID B ||Czas 2 ]

23 Standard X.509 X.509 to jedno z zaleceń CCITT definiujące usługę katalogowania RFC 3280 opisuje stosowanie certyfikatów X.509 w Internecie Katalog to serwer lub rozproszony zbiór serwerów, który prowadzi bazę danych o użytkownikach zawierającą nazwy użytkowników, ich adresy sieciowe oraz inne atrybuty X.509 definiuje ramy usług uwierzytelniania świadczonych użytkownikom przez katalog X.500 Katalog może służyć jako magazyn certyfikatów kluczy jawnych dla algorytmów asymetrycznych

24 Certyfikat klucza jawnego X.509 Certyfikat tworzy zaufana instytucja certyfikacyjna CA (ang. certification authority) Są one umieszczane w katalogu przez użytkownika lub przez CA Serwer katalogu nie odpowiada za tworzenie kluczy jawnych i ich certyfikację Zapewnia jedynie łatwo dostępne miejsce, z którego użytkownicy mogą pobrać certyfikaty Ceryfikaty X.509 są stosowane m.in. na potrzeby TLS (SSL), podpisu cyfrowego, systemu szyfrowania poczty PEM

25 Certyfikat TLS (SSL) TLS (ang. Transport Layer Security) poprzednio znany jako SSL ang. (Secure Sockets Layer) służy do realizacji bezpiecznych transmisji w Internecie TLS do dystrybucji kluczy stosuje ceryfikaty X.509 System jest oparty o grupę instytucji certyfikujących CA (ang. Certyfing Authorities), które opatrują swoim podpisem certyfikaty poszczególnych serwerów CA z założenia są godni zaufania, a uzyskanie podpisu wymaga przedstawienia szeregu dowodów tożsamości W ten sposób wchodząc na serwer legitymujący się certyfikatem jednego ze znanych CA mamy pewność, że serwer rzeczywiście jest tym za który się podaje

26 Składniki certyfikatu

27 Rodzaje certyfikatów Certyfikat CA. Zbiór informacji reprezentujących tożsamość danej instytucji certyfikującej. Obecność podpisu danego CA na certyfikacie serwera oznacza, że CA zaakceptował dowody przedstawione przez firmę występującą o podpis i swoim certyfikatem poświadcza autentyczność serwera Certyfikat serwera. Zbiór informacji reprezentujących tożsamość danego serwera. Certyfikat serwera musi być opatrzony podpisem CA Certyfikat osobisty. Znacznie mniej rozpowszechnione są certyfikaty klienta - firmy promujące używanie tego certyfikatu nazywają go "cyfrowym paszportem". Wraz z podpisem odpowiedniego CA pozwala potwierdzić Twoją tożsamość jako klienta

28 Rejestracja certyfikatu Certyfikat SSL rejestruje się zawsze na określoną nazwę domeny (np. Zawiera on informacje o właścicielu certyfikatu, jego adresie itp Danych tych nie można zmienić bez powtórnej rejestracji nowego certyfikatu Dzięki skrupulatnej procedurze uwierzytelnienia przyszłego właściciela certyfikatu podczas jego zakupu, przyszły klient wchodzący przez SSL na stronę sklepu ma pewność, że jego właścicielem jest firma ABC oraz że podany na stronie adres i dane kontaktowe są prawdziwe

29 Ścieżka cerytfikacji Certyfikaty najbardziej znanych CA są wbudowane w większość przeglądarek (np. VeriSign), kolejne certyfikaty w hierarchii są podpisywane przez nadrzędne certyfikaty co gwarantuje ich poprawność

30 Własny CA Istnieje możliwość wystawienia certyfikatu samemu sobie, z pominięciem CA, jednak certyfikat taki będący nie podpisany przez CA, będzie niegodny zaufania Stosuje się jednak tę możliwość w sytuacji, gdy chcemy posiadać certyfikaty dla kilku obiektów w naszym systemie Instalowany jest własny urząd certyfikujący, którego zadaniem będzie poświadczanie lokalnych certyfikatów Sam urząd zaś będzie legitymował się certyfikatem wystawionym przez CA W ten sposób tworzony jest łańcuch, na szczycie którego stoi zaufana instytucja Więc chociaż lokalne certyfikaty będą wystawione przez nas samych to dajemy użytkownikowi możliwość ich zweryfikowania

31 Weryfikacja certyfikatu Czy certyfikat jest ważny (czy dzisiejszy dzień jest w okresie ważności certyfikatu)? Czy CA wydające dany certyfikat jest zaufane? Czy klucz publiczny wydającego CA pasuje do podpisu cyfrowego certyfikatu? Czy adres domenowy podany w certyfikacie zgadza się z adresem w przeglądarce?

32 Ważność certyfikatu Ważność certyfikatu może wygasnąć w dwóch przypadkach: W momencie upływu jego terminu ważności Gdy certyfikat zostanie unieważniony z innych powodów przed datą wygaśnięcia ważności. Istnieje czasami konieczność anulowania certyfikatu ze względów bezpieczeństwa (np. w przypadku zmian personalnych w przedsiębiorstwie). W tym celu wykorzystuje się tak zwane listy unieważnień (ang. certificate revocation lists), które są przechowywane na serwerach wszystkich CA

33 Dane i dokumenty potrzebne do otrzymania certyfikatu Dane osoby kontaktowej na stanowisku decyzyjnym Dane osoby kontaktowej na stanowisku technicznym Pełny adres firmy, dla której jest kupowany certyfikat Dokumenty stwierdzające fakt rejestracji firmy pod podaną nazwą (wyciąg z ewidencji gospodarczej, REGON, NIP) Dowód rejestracji określonej domeny przez daną firmę Dane do certyfikatu - nazwę kraju, w którym jest zarejestrowana firma, nazwę województwa, nazwę firmy oraz nazwę domeny

34 Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty cyfrowe Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Algorytm Diffiego Hellmana Podsumowanie

35 Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Ponieważ szyfrowanie z kluczem jawnym (np. RSA) działa wolno, rzadko stosuje się tą metodę do szyfrowania całego przesyłanego tekstu jawnego Jednak szyfrowanie z kluczem jawnym można wykorzystać do efektywnej i bezpiecznej dystrybucji klucza szyfrowania konwencjonalnego (klucza sesji) W tym celu wykorzystywany jest klucz publiczny odbiorcy w celu zaszyfrowania stworzonego przez nadawcy klucza sesji

36 Prosta dystrybucja kluczy B A [KJA||ID A ]E KJA [Ks] KS

37 Prosta dystrybucja kluczy Protokół jest narażony na atak aktywny realizowany przez użytkownika C mającego dostęp do sieci i mogącego przechwycić i zmienić komunikaty B A E KJC [Ks] KS C [KJC||ID A ] KS [KJA||ID A ] E KJA [Ks]

38 Prosta dystrybucja kluczy Użytkownik C, mający dostęp do kanału komunikującego może przechwycić komunikat od A z kluczem jawnym KJA i podać swój własny klucz jawny KJC wraz z identyfikatorem IDa To umożliwia mu przechwycenie i klucza zaszyfrowanego sesji KS i odszyfrowanie go Następnie może go przesłać do A, szyfrując go za pomocą KJA W rezultacie strony A i B znają klucz sesji Ks nie wiedząc, że poznał go również C, który może teraz podsłuchiwać szyfrowaną transmisję między A i B

39 Dystrybucja kluczy z zapewnieniem poufności i uwierzytelnieni Użytkownicy A i B po wymianie kluczy jawnych dokonują operacji dla zabezpieczenia przed atakami aktywnymi i pasywnymi B A E KJB [N 1 ||ID A ] E KJA [N 1 ||N 2 ] KJB KJA E KJB [N 2 ]E KJB [E KJA [Ks]] KS

40 Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty cyfrowe Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Algorytm Diffiego Hellmana Podsumowanie

41 Algorytm Diffiego-Hellmana Algorytm wymiany kluczy Diffiego-Hellmana opracowali w 1976 roku Whitfield Diffie i Martin Hellman Jest to pierwszy algorytm, który stosuje metodę wspólnego sekretu (ang. shared secret) Celem algorytmu opracowanego przez Diffiego i Hellmana jest umożliwienie bezpiecznej wymiany klucza potrzebnego do szyfrowania kolejnych komunikatów Algorytm wykorzystuje pewne właściwości liczby pierwszych i teorii liczb

42 Logarytm dyskretny Pierwiastek liczby pierwszej p, to taka liczba, która podniesiona po kolei do potęgi od 1 do (p-1) da przy dzieleniu przez p reszty od 1 do (p-1) To znaczy, że liczby a mod p, a 2 mod p,…, a (p–1) mod p są liczbami całkowitymi od 1 do (p-1) w pewnej permutacji Dla dowolnej liczby całkowitej b i pierwiastka a liczby pierwszej p można znaleźć wykładnik i taki, że b = a i mod p gdzie 0  i  (p – 1) Wykładnik i to logarytm dyskretny Wyznaczenie i znając b, a oraz p jest bardzo trudne dla dużych liczb

43 Algorytm Diffiego-Hellmana Globalne elementy jawny qliczba pierwsza 

44 Algorytm Diffiego-Hellmana Użytkownicy wymieniają między sobą jawne liczby Y i oraz Y j Następnie na tej podstawie mogą obliczyć ten sam klucz K według zasad teorii liczb Generowanie klucza tajnego przez użytkownika i K = (Y j ) Xi mod q Generowanie klucza tajnego przez użytkownika j K = (Y i ) Xj mod q Klucz K jest w posiadaniu obydwu stron pomimo, że nie został on nigdy przesłany w całości

45 Przykład Alicja i Bogdan uzgadniają, że będą używać liczby pierwszej q=23 i bazy  =5 Alicja wybiera tajną liczbę X a =6, następnie wysyła Bogdanowi liczbę 8=5 6 mod 23 (Y a =  Xa mod q) Bogdan wybiera tajną liczbę X b =15, następnie wysyła Alicji 19=5 15 mod 23 (Y b =  Xb mod q) Alicja oblicza klucz 2=19 6 mod 23 (K =(Y b ) Xa mod q) Bogdan oblicza 2=8 15 mod 23 (K =(Y a ) Xb mod q) Alicja i Bogdan mają ten sam klucz

46 Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty cyfrowe Dystrybucja kluczy z użyciem szyfrowania asymetrycznego Algorytm Diffiego Hellmana Podsumowanie

47 Efektywne i bezpieczne systemy dystrybucji kluczy są niezbędne do stworzenie bezpiecznych usług sieciowych działających online Kryptografia asymetryczna zaimplementowana w postaci certyfikatów cyfrowych jest najbardziej popularnym sposobem dystrybucji kluczy (np. TLS (SSL)) Efektywnym mechanizmem dystrybucji kluczy jest również algorytm Diffiego Hellmana wykorzystujący koncepcję podobną do szyfrowania asymetrycznego


Pobierz ppt "Dystrybucja kluczy. Plan wykładu Motywacja Dystrybucja kluczy dla szyfrowania konwencjonalnego Zarządzanie kluczami dla szyfrowania asymetrycznego Certyfikaty."

Podobne prezentacje


Reklamy Google