Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Kryptografia oraz infrastruktura PKI w pasywnych zabezpieczeniach Rafał Łukawiecki Strategic Consultant, Project Botticelli Ltd

Podobne prezentacje


Prezentacja na temat: "Kryptografia oraz infrastruktura PKI w pasywnych zabezpieczeniach Rafał Łukawiecki Strategic Consultant, Project Botticelli Ltd"— Zapis prezentacji:

1 Kryptografia oraz infrastruktura PKI w pasywnych zabezpieczeniach Rafał Łukawiecki Strategic Consultant, Project Botticelli Ltd Copyright 2005 © Microsoft Corp & Project Botticelli Ltd. E&OE. Ta prezentacja ma wyłącznie charakter informacyjny. Nie udziela się jakichkolwiek gwarancji i przed posłużeniem się tymi informacjami należy je zweryfikować. Można ponownie użyć tej prezentacji pod warunkiem przeczytania, zaakceptowania i stosowania się do wytycznych opisanych w polu Komentarze okna Plik/Właściwości.

2 2Cele Omówienie podstaw pasywnych mechanizmów zabezpieczeń, których podstawowym zadaniem jest ochrona warstwy danych: kryptografia Przedyskutowanie aktualnie używanych algorytmów z punktu widzenia specjalisty IT Podanie kilku prostych zaleceń Przestrzeżenie przed kilkoma typowymi nieporozumieniami i słabymi algorytmami

3 3 Program sesji Podstawowe pojęcia Typowe algorytmy Infrastruktura PKI i podpisy Zalecenia

4 4 Podstawowe pojęcia

5 5 Dogłębna obrona Zasady, procedury i świadomość Zabezpieczenia fizyczne Granica Sieć wewnętrzna Host Aplikacja Dane

6 6 Co naprawdę jest zabezpieczone? Poszukajmy systemów Dobrze znanych firm Z opublikowanymi (nie tajnymi!) algorytmami Przyciągających sporą uwagę Których nie udało się przejąć hakerom przez parę lat Które zostały przeanalizowane matematycznie Pod żadnym pozorem nie poprawiać samodzielnie algorytmów Chyba że jest się specjalistą w tej dziedzinie

7 7 Nie traktować kryptografii jako danej Typowe niepowodzenia: Szyfrowanie zawartości DVD GSMWiFi Dobry przykład złego użycia kryptografii w protokole WEP Po którym nastąpiła cała masa poprawek, takich jak Mirosoft 802.1x A po nich rozsądniejsze rozwiązanie, WPA

8 8 Kryptografia z kluczem symetrycznym The quick brown fox jumps over the lazy dogThe quick brown fox jumps over the lazy dog AxCv;5bmEseTfid3) fGsmWe#4^,sdgfMwi %AxCv;5bmEseTfid3) fGsmWe#4^,sdgfMwi % The quick brown fox jumps over the lazy dogThe quick brown fox jumps over the lazy dog Deszyfrowanie Wejście: czysty tekst Wyjście: czysty tekst Tekst zaszyfrowany Ten sam klucz (wspólny sekret) Szyfrowanie

9 9 Za i przeciw symetrii Siła: Prostota i naprawdę ogromna szybkość (od 1000 do razy większa niż mechanizmów asymetrycznych) Superszybka (i trochę bezpieczniejsza), jeśli realizowana sprzętowo (DES, Rijndael) Słabość: Zawczasu trzeba uzgodnić klucz Konieczność bezpiecznego przekazania klucza drugiej stronie

10 10 Kryptografia z kluczem publicznym Znajomość klucza szyfrującego nie jest równoznaczna ze znajomością klucza deszyfrującego Odbiorca informacji generuje parę kluczy Ogłasza klucz publiczny w katalogu Następnie każdy może wysyłać do niego wiadomości, które tylko on może odczytać

11 11 Kryptografia z kluczem publicznym Szyfrowanie The quick brown fox jumps over the lazy dogThe quick brown fox jumps over the lazy dog Py75c%bn&*)9|fDe^ mdFg$5knvMdrkveg MsPy75c%bn&*)9|fDe^ mdFg$5knvMdrkveg Ms The quick brown fox jumps over the lazy dogThe quick brown fox jumps over the lazy dog Deszyfrowanie Wejście: czysty tekst Wyjście: czysty tekst Tekst zaszyfrowany Różne klucze Klucz publiczny odbiorcy Klucz prywatny odbiorcy prywatny publiczny

12 12 Za i przeciw klucza publicznego Słabość: Niezwykle mała prędkość Podatność na atak typu znany tekst zaszyfrowany Problem z zaufanym kluczem publicznym (zobacz dalej przy opisie PKI) Siła: Rozwiązany problem przekazywania klucza Możliwość utworzenia kontekstu zaufania między stronami

13 13 Szyfrowanie hybrydowe Jak wyżej, powtórzone dla innych odbiorców lub agentów odtwarzania Kopertacyfrowa Klucz publiczny innego odbiorcy lub agenta (w certyfikacie) w zasadzie odtwarzania Klucz odpalenia pociskujądrowegoRedHeatto... Klucz symetryczny zaszyfrowany asymetrycznie (np., RSA) Kopertacyfrowa Klucz publiczny użytkownika (w certyfikacie) RNG Generowanylosowosymetryczny klucz sesyjny Szyfrowanie symetryczne symetryczne (np. DES) *#$fjda^ju539!3t t389E 5e%32\^kd

14 14*#$fjda^ju539!3t 5e%32\^kd Klucz odpalenia pociskujądrowegoRedHeatto... pociskujądrowegoRedHeatto...Deszyfrowanie symetryczne symetryczne (np. DES) Kopertacyfrowa Asymetryczne deszyfrowanie klucza sesyjnego (np., RSA) Symetryczny klucz sesyjny Klucz sesyjny musi być zdeszyfrowany za pomocą klucza prywatnego odbiorcy Koperta cyfrowa zawiera klucz sesyjny zaszyfrowany za pomocą klucza publicznego odbiorcy Klucz prywatny odbiorcy Deszyfrowanie hybrydowe

15 15 Typowe algorytmy

16 16 DES, IDEA, RC2, RC5, Twofish Symetryczne DES (Data Encryption Standard) jest wciąż najpopularniejszy Bardzo krótkie klucze: 56 bitów W roku 1993 atak siłowy wymagał 3,5 godziny na komputerze wartym 1 milion USD. Dziś odbywa się to w czasie rzeczywistym Triple DES (3DES) jest bezpieczniejszy, ale mogą być lepsze opcje Po prostu odmawiać, chyba że wartość danych jest minimalna IDEA (International Data Encryption Standard) Pozornie podobny do algorytmu DES i nie pochodzi z NSA Klucze 128-bitowe RC2 & RC5 (autorstwa R. Rivesta) RC2 jest starszy a RC5 nowszy (1994) - podobne do DES i IDEA Blowfish, Twofish Zamiennik B. Schneiera dla algorytmu DES, a po nim Twofish, jeden z finalistów NIST tych zawodów

17 17 Rijndael (AES) Standardowy zamiennik algorytmu DES dla rządu USA i prawdopodobnie, w efekcie, dla wszystkich… Zwycięzca zawodów AES (Advanced Encryption Standard) prowadzonych przez instytut NIST (National Institute of Standards and Technology w USA) w latach Pochodzi z Europy (Belgia), autorzy Joan Daemen oraz Vincent Rijmen. Historie typu Z archiwum X raczej nie wchodzą w rachubę (w odróżnieniu od DES). Symetryczny szyfr blokowy (128, 192 lub 256-bitowy) ze zmiennym kluczem (także 128, 192 lub 256-bitowym) Szybki, o wielu dobrych cechach, takich jak dobra odporność na analizę czasową i poboru mocy Budowa ponownie pozornie podobna do DES (S-Box, operacje XOR itp.) ale tak naprawdę inna

18 18 CAST i GOST CAST Kanadyjczycy Carlisle Adams i Stafford Tavares Klucze i dane 64-bitowe Wybierz swoje skrzynki S Wydaje się odporny na kryptoanalizę różnicową i liniową, i jedynym sposobem złamania go jest atak siłowy (ale klucz jest trochę krótki!) GOST Radziecka wersja algorytmu DES, ale jaśniej zaprojektowany i ze znacznie większą liczbą powtórzeń procesu Klucz 256-bitowy, ale w rzeczywistości 610 bitów tajemnicy, więc solidny jak czołg Tylne drzwi? Kto wie…

19 19 Używać kryptosystemów W istocie: nigdy nie używać samego algorytmu, ale całego kryptosystemu Na przykład: Użycie algorytmu DES czy analogicznego, w prostej pętli do zaszyfrowania strumienia danych, to dosłownie oznacza to całkowitą utratę bezpieczeństwa Należy: użyć techniki zaprojektowanej w celu zaadaptowania algorytmu do przetworzenia strumienia danych, takiej jak CBC (Cipher Block Chaining) To z kolei oznacza, że należy wybrać i przesłać wektor inicjujący (IV) – jak? Użyć w tym celu dobrze znanego kryptosystemu Firma Microsoft nigdy nie implementuje samego algorytmu – zawsze kompletny kryptosystem, np. RSA- OAEP itp.

20 20 Niebezpieczne implementacje Aplikacje kryptograficzne ze słabo znanych źródeł Po prostu pobrane biblioteki używane przez własnych programistów Domagać się używania systemów wbudowanych, tam gdzie jest to możliwe: Systemy firmy Microsoft: CAPI, CAPICOM, MS CSP itp. Karty inteligentne: wbudowane dobrze znane systemy CSP Gdzie indziej: implementacje zgodne ze standardem FIPS

21 21RC4 Symetryczny Szybkie szyfrowanie strumieniowe R. Rivest w 1994 roku Początkowo tajny, ale ogłoszony na sci.crypt Spokrewniony z szyfrowaniem one-time pad, teoretycznie bezpieczniejszy Ale! Zależy od naprawdę dobrego generatora liczb losowych A to jest problem Obecnie skłaniamy się do używania szyfrowania blokowego w trybie działania pracującym na strumieniach

22 22 RSA, DSA, ElGamal, ECC Asymetryczne Bardzo wolne i kosztowne obliczenia – niezbędny komputer Bardzo bezpieczne Rivest, Shamir, Adleman – 1978 Popularne i dobrze zbadane Siła wynika z obecnej niemożności rozkładu na czynniki będące liczbami pierwszymi Istnieją obawy o proces generowania klucza w pewnych implementacjach DSA (Digital Signature Algorithm) – produkt NSA/NIST Tylko do podpisywania cyfrowego, a nie do szyfrowania Wariant algorytmu podpisywania Schnorra i ElGamala ElGamal Bazuje na złożoności dyskretnych logarytmów ECC (Elliptic Curve Cryptography) Naprawdę wysoka matematyka i topologia Poprawia algorytm RSA (i inne)

23 23 Kryptografia kwantowa Metoda generowania i poufnego przekazywania klucza lub losowego strumienia Nie służy do przekazywania faktycznych danych, ale to nie jest istotne Polaryzacja światła (fotony) może być wykryta jedynie w sposób niszczący kierunek (bazę) Jeśli więc ktoś inny podejrzy ją, nie otrzymamy niczego przydatnego i będzie wiadomo, że miał miejsce podsłuch Znakomicie wykonywalne za pośrednictwem dedykowanego łącza światłowodowego o długości do 120 km Wydaje się idealnym rozwiązaniem, ale jest kłopotliwe i wolne W praktycznych implementacjach do rzeczywistego szyfrowania wciąż się stosuje algorytmy AES/DES itp. Magiq QPN: Nie mylić z komputeryzacją kwantową, której nie będzie przez co najmniej najbliższych 50 lat, a może dłużej…

24 24 MD5, SHA Funkcje haszujące – część podpisu cyfrowego Cele: Nieodwracalne: nie można uzyskać wiadomości z jej hasza Hasz jest znacznie krótszy niż oryginalna wiadomość Dwie wiadomości nie będą miały identycznego hasza MD5 (R. Rivest) 512 bitów haszowanych na 128 Model matematyczny wciąż nieznany Ostatnio (lipiec 2004) złamany, nie używać samego SHA (Secure Hash Algorithm) Standard USA oparty na MD5 SHA-0 złamany (lipiec 2004), SHA-1 prawdopodobnie za słaby (częściowo złamany), używać co najmniej SHA-256

25 25 Diffie-Hellman, SSL, certyfikaty Metody generacji i wymiany kluczy Algorytm DH jest inteligentny, gdyż zawsze generuje nową parę kluczy dla każdej sesji asymetrycznej Metody STS i MTI oraz certyfikaty gwarantują jeszcze większe bezpieczeństwo Certyfikaty to powszechny sposób wymiany kluczy publicznych Podstawa infrastruktury Public Key Infrastructure (PKI) SSL używa protokołu do bezpiecznej wymiany kluczy Patrz dalej

26 26Kryptoanaliza Atak siłowy Dobre do zgadywania haseł oraz niektórych 40-bitowych symetrycznych kluczy (w pewnych wypadkach potrzeba 27 prób) Analiza częstości Tylko do bardzo prostych metod (telefony komórkowe w USA) Kryptoanaliza liniowa Do silniejszych algorytmów typu DES, potrzeba 243 par tekst czysty- szyfr Kryptoanaliza różnicowa Słabsze algorytmy typu DES, potrzeba 214 par Analiza poboru mocy i czasowa Fluktuacje czasu reakcji lub zużycia energii przez procesor Użyteczna do łamania skradzionych kart inteligentnych

27 27 Łamanie za 10 milionów USD Klucz symetrycz- ny Klucz ECC Klucz RSA Czas na złamanie Liczba maszyn Pamięć < 5 minut Banalna miesięcy GB miliony lat GB E16 lat 0, TB Z raportu opracowanego przez Roberta Silvermana, RSA Laboratories, 2000

28 28 Infrastruktura PKI i podpisy

29 29 Problem dystrybucji klucza publicznego Właśnie rozwiązaliśmy problem dystrybucji klucza symetrycznego, korzystając z kluczy publicznych/prywatnych Ale... Scott tworzy parę kluczy (prywatny/publiczny) i szybko informuje świat, że ogłoszony przez niego klucz publiczny należy do Billa Ludzie wysyłają poufne informacje do Billa Bill nie ma klucza prywatnego, aby je odczytać… Scott odczytuje wiadomości Billa Scott odczytuje wiadomości Billa

30 30Eureka! Potrzebna nam infrastruktura PKI, aby rozwiązać ten problem I parę innych rzeczy…

31 31 Jak zweryfikować klucz publiczny? Dwa podejścia: 1. Przed użyciem klucza publicznego Billa zadzwonić do niego lub spotkać się z nim, aby sprawdzić, czy mamy właściwy klucz Skrót danych lub hasz klucza można potwierdzić przez telefon 2. Poprosić kogoś, komu ufamy, o potwierdzenie, że klucz faktycznie należy do Billa Sprawdzając zaufany podpis cyfrowy na kluczu Ale musi taki istnieć… I przede wszystkim trzeba mieć przyjaciół, którym można zaufać…

32 32 Modele zaufania Sieć zaufania (ang. Web-of-trust) (PGP) Model równorzędny (ang. Peer-to-Peer) Ludzie nawzajem podpisują cyfrowo swoje klucze Z założenia będzie się ufać kluczom podpisanym przez niektórych przyjaciół Zaufany urząd + ścieżka zaufania (urzędy certyfikacji) Wszyscy ufają głównym urzędom certyfikacji (Verisign, Thawte, BT itp.) Urząd certyfikacji podpisuje klucze każdej osoby, której poświadczenia zostały sprawdzone tradycyjnymi metodami Urząd certyfikacji może nawet mianować inne strony jako urzędy certyfikacji – i automatycznie także one będą zaufane

33 33 Tworzenie podpisu cyfrowego Funkcjahaszująca (SHA, MD5) Jrf843kjfgf* £$&Hdif*7o HDFHSD(** Py75c%bn&*)9|fDe^b mdFg$5knvMdrkveg Ms… To jest bardzo długa wiadomość na temat Billa… Szyfrowanieasymetryczne Wiadomość lub plik Podpis cyfrowy 256-bitowy hash wiadomości Obliczenie hashu (skrótu) wiadomości na podstawie długiej wiadomości za pomocą jednokierunkowej funkcji tworzącej skrót (hasz) Klucz prywatny sygnatariusza prywatny

34 34 Weryfikowanie podpisu cyfrowego Jrf843kjf gf*£$&Hd if*7oUsd FHSD(** Py75c%bn&*) 9|fDe^bDFaq &nmdFg$5kn vMdrkvegMs Deszyfrowanieasymetryczne (np. RSA) Wszyscy mają dostęp do zaufanego klucza publicznego sygnatariusza Klucz publiczny sygnatariusza Podpis cyfrowy To jest bardzo długa Wiadomość na temat Billa… Taka sama funkcja haszująca (np. MD5, SHA...) Oryginalna wiadomość Py75c%bn&*) 9|fDe^bDFaq &nmdFg$5kn vMdrkvegMs ? == ? Takie same?

35 35 Kody uwierzytelniające wiadomość Kody MAC – Na ogół połączenie funkcji haszującej z szyfrowaniem symetryczynym Integralność, autentyczność, ale brak niezaprzeczalności Konieczność udostępniania klucza! HMAC Hash + szyfrowanie ze wspólnym sekretem dla wyników o długości do 160 bitów MACTripleDES Szyfrowanie, w którym korzysta się z 8, 16 lub 24-bajtowych kluczy TripleDES nałożonych na hasz Wynik 64-bitowy (na ogół niewystarczający) Często używane w transakcjach i bazach danych

36 36Certyfikaty Najprostszy certyfikat zawiera po prostu: Informacje na temat certyfikowanego podmiotu, który ma być właścicielem klucza publicznego Ten klucz publiczny A to wszystko jest Podpisane cyfrowo przez kogoś zaufanego (na przykład urząd certyfikacji)

37 37 Certyfikat X.509 Popis cyfrowy urzędu certyfikacji Wszystkich składników łącznie: Numer seryjny Wystawca X.500 Nazwa wyróżniana Okres ważności Podmiot X.500 Nazwa wyróżniana Informacje o kluczu publicznym podmiotu Użycie klucza/certyfikatu Rozszerzenia OU=Project Botticelli… Klucz lub informacje o nim

38 38 Uwierzytelnianie za pomocą certyfikatów 1. Melinda otrzymuje certyfikat Billa 2. Weryfikuje jego podpis cyfrowy Może zaufać, że klucz publiczny naprawdę należy do Billa Ale czy to Bill stoi przed nią, czy jest to Scott? 3. Melinda wzywa Billa do zaszyfrowania frazy, którą właśnie wymyśliła (Naprawdę potrzebuję więcej butów) 4. Bill dysponuje oczywiście kluczem prywatnym pasującym do certyfikatu, więc odpowiada (*&$^%L$&Lfhsdf*&EHFDhd62^&L) 5. Melinda rozszyfrowuje to za pomocą klucza publicznego, który ma w certyfikacie (któremu ufa) i jeśli fraza jest zgodna z frazą, o zaszyfrowanie której poprosiła Billa, to z drugiej strony faktycznie musi być Bill! 5. Melinda rozszyfrowuje to za pomocą klucza publicznego, który ma w certyfikacie (któremu ufa) i jeśli fraza jest zgodna z frazą, o zaszyfrowanie której poprosiła Billa, to z drugiej strony faktycznie musi być Bill! Tak przy okazji, to jest podstawowa idea działania protokołu SSL

39 39 Gdzie przechowywać? W większości certyfikaty są bezpieczne Nie ma potrzeby za bardzo ich chronić, gdyż są podpisane cyfrowo i zawierają jedynie publicznie dostępne informacje Można je przechowywać gdziekolwiek, w pliku lub na tępej karcie inteligentnej zawierającej wyłącznie pamięć Klucze prywatne (i zawierające je certyfikaty) odpowiadający kluczowi publicznemu są niezwykle wrażliwe To są kluczowe zasoby. Należy dobrze ich strzec Przechowywać w chronionym miejscu systemu operacyjnego lub na inteligentnej karcie inteligentnej z wbudowanymi funkcjami kryptograficznymi Na przykład karty inteligentne firmy Axalto zgodne z platformą.NET

40 40 Słowo o kartach inteligentnych (smartcards) Niektóre karty inteligentne są tępe tzn. zawierają jedynie kości pamięci Nie są zalecane do przechowywania kluczy prywatnych używanych do weryfikowania tożsamości Mimo to i tak są lepszym miejscem niż dyskietki czy dyski twarde Karty inteligentne z wbudowanymi funkcjami kryptograficznymi są droższe, ale zapewniają lepsze zabezpieczenia Klucz prywatny jest bezpieczny i używany zgodnie z potrzebami Możliwa jest dodatkowa ochrona (hasło, biometria) W sprzęcie są zaimplementowane pewne algorytmy Możliwe jest samozniszczenie

41 41 Hierarchia certyfikacji Większość organizacji nie używa tylko jednego klucza głównego do podpisywania certyfikatów Narażenie tego klucza wiąże się z niebezpieczeństwem Nie jest to odpowiednie dla wielkich organizacji Problemy z zarządzaniem odpowiedzialnością Hierarchie certyfikatów Na ogół 3-warstwowa: 2 offline i 1 online Weryfikacja certyfikatu może się wiązać z weryfikacją ścieżki zaufania Certyfikacja krzyżowa (mesh, web), jeśli jest to możliwe

42 42Zalecenia

43 43 Silne systemy Zawsze jest to mieszanka! Zmienia się cały czas… Symetryczne: AES, min. 128-bitowe dla RC2 i RC5, 3DES, IDEA, uważnie przeanalizowane RC4, lepsze 256-bitowe Asymetryczne: RSA, ElGamal, Diffie-Hellman (dla kluczy) minimum 1024-bitowe (decydować się na maksymalne wartości, typowo 4096, jeśli stać nas na to) Hasz: SHA co najmniej 256 bitów

44 44 Słabe systemy Wszystkie 40-bitowe (w tym wersje 128 i 56-bitowe z ustaloną resztą) Większość uważa DES za słaby algorytm CLIPPER A5 (telefony komórkowe GSM poza USA) Vigenère (telefony komórkowe w USA) Pochodzi z 1585 roku! Hasze (i podpisy) oparte na MD5 lub SHA-0 (być może także na SHA-1) lub 64-bitowych haszach Niezweryfikowane certyfikaty bez zaufania Słabe certyfikaty (tak jak wiele osobistych certyfikatów klasy 1)

45 45Wnioski

46 46Streszczenie Kryptografia to bogata i dojrzała dziedzina Każdego dnia uzależniamy od niej nasze życie Należy znać podstawy i dokonywać słusznych wyborów, unikając pułapek Wcześnie planować swoją infrastrukturę PKI Unikać bardzo nowych, nieznanych rozwiązań

47 47Odsyłacze Odwiedź witrynę Zagraj w Czytaj grupę sci.crypt (w tym archiwa) Dodatkowe informacje: Cryptography: An Introduction, N. Smart, McGraw-Hill, ISBN Practical Cryptography, N. Ferguson & B. Schneier, Wiley, ISBN Contemporary Cryptography, R. Oppliger, Artech House, ISBN (data planowanej publikacji Maj 2005, zobacz Applied Cryptography, B. Schneier, John Wiley & Sons, ISBN Handbook of Applied Cryptography, A.J. Menezes, CRC Press, ISBN , (bezpłatny plik PDF) PKI, A. Nash et al., RSA Press, ISBN Foundations of Cryptography, O. Goldereich, Cryptography in C and C++, M. Welschenbach, Apress, ISBN X (zawiera przykłady kodu na dysku CD)


Pobierz ppt "Kryptografia oraz infrastruktura PKI w pasywnych zabezpieczeniach Rafał Łukawiecki Strategic Consultant, Project Botticelli Ltd"

Podobne prezentacje


Reklamy Google