Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Kryptografia i PKI (Infrastruktura Kluczy Publicznych) Rafal Lukawiecki, Project Botticelli

Podobne prezentacje


Prezentacja na temat: "Kryptografia i PKI (Infrastruktura Kluczy Publicznych) Rafal Lukawiecki, Project Botticelli"— Zapis prezentacji:

1 Kryptografia i PKI (Infrastruktura Kluczy Publicznych) Rafal Lukawiecki, Project Botticelli

2 2 2 Cele sesji Zrozumieć podstawy kryptografii i PKI (niezależnie od dostępnych produktów) Zrozumieć podstawy kryptografii i PKI (niezależnie od dostępnych produktów) Objaśnić popularną terminologię Objaśnić popularną terminologię Dać kilka rad Dać kilka rad Uwaga: to jest szybka i gwałtowna sesja Uwaga: to jest szybka i gwałtowna sesja

3 3 3 Zasoby (assets) Co zabezpieczamy? Co zabezpieczamy? Generalnie informatycy zabezpieczają: Generalnie informatycy zabezpieczają: Dane Dane Serwisy (czyli aplikacje, procesy biznesowe lub ich komponenty) Serwisy (czyli aplikacje, procesy biznesowe lub ich komponenty) Niektóre zasoby są kluczowe – Key Assets (KA), od nich zależy bezpieczeństwo innych zasobów Niektóre zasoby są kluczowe – Key Assets (KA), od nich zależy bezpieczeństwo innych zasobów Ta sesja nie jest o zabezpieczaniu: Ta sesja nie jest o zabezpieczaniu: Ludzi (przepraszam), kabli, dywanów, maszyn do pisania lub komputerów (?!) Ludzi (przepraszam), kabli, dywanów, maszyn do pisania lub komputerów (?!)

4 4 4 Bezpieczeństwo cyfrowe przedłużeniem fizycznego bezpieczeństwa kluczowych zasobów Mocne fizyczne bezp. KA Mocne bezp. cyfrowe Bezpiecznie Słabe fizyczne bezp. KA Mocne bezp. cyfrowe Niebez- piecznie Mocne fizyczne bezp. KA Słabe bezp. cyfrowe Niebez- piecznie

5 5 5 Użycia kryptografii Tajność Tajność Niepowołani nie rozumieją informacji Niepowołani nie rozumieją informacji Spójność (integrity) Spójność (integrity) Od razu jest bardzo widoczne jeśli ktoś zmieni informację Od razu jest bardzo widoczne jeśli ktoś zmieni informację Autentyczność Autentyczność Możemy zweryfikować związek między autorami i zasobem Możemy zweryfikować związek między autorami i zasobem Identifikacja Identifikacja Wiemy kto konkretnie jest związany z zasobem (np. jako autor) Wiemy kto konkretnie jest związany z zasobem (np. jako autor) Niezaprzeczalność (non-repudiation) Niezaprzeczalność (non-repudiation) Nie da się powiedzieć ja tego nie podpisałem Nie da się powiedzieć ja tego nie podpisałem

6 6 6Kryptografia Używamy trudnej matematyki by osiągnąć cele właśnie przedyskutowane Używamy trudnej matematyki by osiągnąć cele właśnie przedyskutowane StatycznaStatyczna Nie pozwala wykryć problemów wynikających ze schematu specyfiki prób włamania i dostępu w pewnym okresie czasu Nie pozwala wykryć problemów wynikających ze schematu specyfiki prób włamania i dostępu w pewnym okresie czasu Zależy od bezpieczeństwa zasobów kluczowych (np. główne klucze prywatne) Zależy od bezpieczeństwa zasobów kluczowych (np. główne klucze prywatne) Moc maleje z upływem czasu i rozwoju technik kryptoanalitycznych Moc maleje z upływem czasu i rozwoju technik kryptoanalitycznych

7 7 7 Podstawy Kryptografii

8 8 8 Co jest bezpieczne? Używaj systemów: Używaj systemów: Od znanych producentów Od znanych producentów Z opublikowanymi (nie tajnymi!) algorytmami Z opublikowanymi (nie tajnymi!) algorytmami Którymi się interesuje wiele ludzi Którymi się interesuje wiele ludzi Które przeżyły próby wielu włamań przez lata Które przeżyły próby wielu włamań przez lata Które były przeanalizowane matematycznie Które były przeanalizowane matematycznie W żadnym wypadku nie ulepszaj algorytmów W żadnym wypadku nie ulepszaj algorytmów Zatrudnij kogoś by spróbował się włamać Zatrudnij kogoś by spróbował się włamać

9 9 9 Uproszczona terminologia Tekst jawny (plaintext) Tekst jawny (plaintext) To co chcemy zabezpieczyć, np. czytelny list który zaszyfrujemy To co chcemy zabezpieczyć, np. czytelny list który zaszyfrujemy Tekst zaszyfrowany (ciphertext) Tekst zaszyfrowany (ciphertext) Nieczytelne informacje, które trzeba rozszyfrować Nieczytelne informacje, które trzeba rozszyfrować Klucz Klucz Potrzebny by szyfrować lub rozszyfrowywać (lub oba) Potrzebny by szyfrować lub rozszyfrowywać (lub oba) Kryptoanaliza Kryptoanaliza Łamanie systemów korzystając z matematyki Łamanie systemów korzystając z matematyki Teoria złożoności (complexity theory) Teoria złożoności (complexity theory) Mierzy jak trudno się włamać do systemów Mierzy jak trudno się włamać do systemów

10 10 Kryptografia symetryczna Encryption The quick brown fox jumps over the lazy dog AxCv;5bmEseTfid3) fGsmWe#4^,sdgfMwi % The quick brown fox jumps over the lazy dog Decryption Plain-text input Plain-text output Cipher-text Taki sam klucz (współdzielony)

11 11 Symetryczność: zalety i wady Wady: Wady: Trzeba się zgodzić na klucz przed użyciem Trzeba się zgodzić na klucz przed użyciem Jak bezpiecznie przekazać klucz odbiorcy? Jak bezpiecznie przekazać klucz odbiorcy? Zalety: Zalety: Łatwe i bardzo szybkie algorytmy (rzędu 1000 do szybsze niż asymetryczne) Łatwe i bardzo szybkie algorytmy (rzędu 1000 do szybsze niż asymetryczne) Superszybkie jeżeli implementacja sprzętowa (DES, Rijndael) Superszybkie jeżeli implementacja sprzętowa (DES, Rijndael) Sprzętowe implementacje są bezpieczniejsze niż czysto software-owe Sprzętowe implementacje są bezpieczniejsze niż czysto software-owe

12 12 Kryptografia publiczna (asymetryczna) Wiedza o kluczu szyfrującym nie pozwala* odgadnąć klucza odszyfrowującego Wiedza o kluczu szyfrującym nie pozwala* odgadnąć klucza odszyfrowującego Odbiorca informacji generuje parę kluczy Odbiorca informacji generuje parę kluczy I publikuje swój klucz publiczny w jakimś katalogu I publikuje swój klucz publiczny w jakimś katalogu Zatem każdy może jej posyłać zaszyfrowane dane Zatem każdy może jej posyłać zaszyfrowane dane

13 13 Szyfrowanie publiczne (asym) Encryption The quick brown fox jumps over the lazy dog Py75c%bn&*)9|fDe^ mdFg$5knvMdrkveg Ms The quick brown fox jumps over the lazy dog Decryption Clear-text Input Clear-text Output Cipher-text Różne klucze Publiczny klucz odbiorcy Prywatny klucz odbiorcy private public

14 14 Proces złożony z obu Data Recovery Field generation (e.g., RSA) DRF Publiczny klucz agenta odtwarzania danych na wypdek katastrofy Launch key for nuclear missileRedHeatis... Data Decryption Field generation (e.g., RSA) DDF Publiczny klucz użytkownika (z certyfikatu) RNG Losowo wygenerowany klucz sesyjny (FEK) File encryption (np. DES) *#$fjda^ju539!3t t389E 5e%32\^kd

15 15 *#$fjda^ju539!3t t389E 5e%32\^kd Launch key for nuclear missileRedHeatis... Launch key for nuclear missileRedHeatis... File decryption (e.g., DES) DDF DDF extraction (e.g., RSA) File encryption key (FEK) DDF rozszyfrowujemy używając prywatnego klucza by uzyskać FEK DDF zawiera klucz FEK zaszyfrowany publicznym kluczem odbiorcy Privatny klucz odbiorcy Podwójne odszyfrowanie

16 16 Podstawy PKI

17 17 Problem klucza publicznego Rozwiązaliśmy problem przekazania klucza Rozwiązaliśmy problem przekazania klucza Ale… Ale… Scott tworzy parę kluczy i daje wszystkim swój klucz publiczny mówiąc, że należy do Billa Scott tworzy parę kluczy i daje wszystkim swój klucz publiczny mówiąc, że należy do Billa Ludzie szyfrują tajne dane dla Billa Ludzie szyfrują tajne dane dla Billa Bill nie ma klucza prywatnego by to odszyfrować… Bill nie ma klucza prywatnego by to odszyfrować… Scott czyta wiadomości posłane do Billa Scott czyta wiadomości posłane do Billa

18 18 Eureka! Potrzebujemy PKI by rozwiązać ten problem Potrzebujemy PKI by rozwiązać ten problem I kilka innych problemów… I kilka innych problemów…

19 19 Jak zweryfikować klucz publiczny? Dwa podejścia: Dwa podejścia: 1. Zadzwoń do Billa zanim użyjesz jego klucza i sprawdź Fingerprint lub jakaś suma kontrolna Fingerprint lub jakaś suma kontrolna 2. Poproś kogoś komu już ufasz by zcertyfikował prawdziwość klucza Billa Niech się oni cyfrowo podpiszą pod kluczem Billa Niech się oni cyfrowo podpiszą pod kluczem Billa Ale musisz komuś ufać… Ale musisz komuś ufać…

20 20 Modele zaufania Web-of-Trust (PGP) Web-of-Trust (PGP) Model koleżeński Model koleżeński Ludzie podpisują sobie klucze nawzajem Ludzie podpisują sobie klucze nawzajem Trusted Authority + Path of Trust (CAs) Trusted Authority + Path of Trust (CAs) Każdy ufa w Certificate Authority (Verisign, Thawte, BT etc.) Każdy ufa w Certificate Authority (Verisign, Thawte, BT etc.) CA cyfrowo podpisuje klucze CA cyfrowo podpisuje klucze CA może nawet nominować inne CAs CA może nawet nominować inne CAs

21 21 Problemy i przyszłość modeli zaufania Web-of-trust jest bardziej wiarygodny Web-of-trust jest bardziej wiarygodny Ale trudniejszy i zajmuje dużo czasu oraz zarządzania Ale trudniejszy i zajmuje dużo czasu oraz zarządzania CAs są prostsze ale bardziej jak wielki brat CAs są prostsze ale bardziej jak wielki brat Tańsze i łatwiej nimi zarządzać Tańsze i łatwiej nimi zarządzać Strategia połączona? Strategia połączona? Niech CA werifikuje ludzi techniką web-of- trust Niech CA werifikuje ludzi techniką web-of- trust

22 22 Podpisujemy cyfrowo Hash Function (SHA, MD5) Jrf843kjfgf* £$&Hdif*7o HDFHSD(** Py75c%bn&*)9|fDe^b mdFg$5knvMdrkveg Ms This is a really long message about Bills… Asymmetric Encryption Message or File Digital Signature 128 Bytes Message Digest Funkcja hash użyta by skalkulować krótki, unikatowy odcisk palca wiadomości Kluczy prywatny podpisu- jącego private

23 23 Verifying a Digital Signature Jrf843kjf gf*£$&Hd if*7oUsd FHSD(** Py75c%bn&*) 9|fDe^bDFaq &nmdFg$5kn vMdrkvegMs Asymmetric decryption (e.g. RSA) Każdy wierzy w publiczny klucz bo go może zweryfikować Publiczny klucz podpisującego Digital Signature This is a really long message about Bills… Same hash function (e.g. MD5, SHA…) Oryg. wiadomość Py75c%bn&*) 9|fDe^bDFaq &nmdFg$5kn vMdrkvegMs ? == ? Are They Same?

24 24 Certyfikaty Najprostszy to: Najprostszy to: Informacja o właścicielu i Informacja o właścicielu i Jego klucz publiczny Jego klucz publiczny To wszystko jest podpisane przez CA któremu ufamy To wszystko jest podpisane przez CA któremu ufamy

25 25 X.509 Certificate Certificate Authority Digital Signature of All Components Together: Serial Number Issuer X.500 Distinguished Name Validity Period Subject X.500 Distinguished Name Subject Public Key Information Key/Certificate Usage Extensions OU=Project Botticelli… The Key or Info About It

26 26 Weryfikacja autentyczności 1. Melinda dostaje certyfikat Billa 2. Sprawdza podpis na certyfikacie Więc wierzy w certyfikat Więc wierzy w certyfikat Ale czy przed nią stoi Bill czy Scott Ale czy przed nią stoi Bill czy Scott 3. Melinda prosi by Bill zaszyfrował losowo wybraną frazę (I really need more shoes) 4. Bill ma swój prywatny klucz więc odpowiada (*&$^%£$&£fhsdf*&EHFDhd62^&£) 5. Melinda odszyfrowuje i porównuje odpowiedź – jako że się zgadza, wie że przed nią jest jedyny właściciel klucza prywatnego czyli Bill 5. Melinda odszyfrowuje i porównuje odpowiedź – jako że się zgadza, wie że przed nią jest jedyny właściciel klucza prywatnego czyli Bill Tak działa SSL... Tak działa SSL...

27 27 Krótki opis algorytmów

28 28 DES, IDEA, RC2, RC5, Rijndael Symmetric Symmetric DES (Data Encryption Standard) is the most popular DES (Data Encryption Standard) is the most popular NSA may know back door - not very likely considering 20 years research NSA may know back door - not very likely considering 20 years research Keys very short: 56 bits Keys very short: 56 bits Triple DES (3 DES) not much more secure but may thwart NSA Triple DES (3 DES) not much more secure but may thwart NSA IDEA (International Data Encryption Standard) IDEA (International Data Encryption Standard) Similar to DES, but not from NSA Similar to DES, but not from NSA 128 bit keys 128 bit keys RC2 & RC5 (by R. Rivest) RC2 & RC5 (by R. Rivest) RC2 is older and RC5 newer (1994) - similar to DES and IDEA RC2 is older and RC5 newer (1994) - similar to DES and IDEA

29 29 Rijndael Standard replacement for DES for US government, and, probably for all of us as a result… Standard replacement for DES for US government, and, probably for all of us as a result… Winner of the AES (Advanced Encryption Standard) competition run by NIST (National Institute of Standards and Technology in US) in Winner of the AES (Advanced Encryption Standard) competition run by NIST (National Institute of Standards and Technology in US) in Comes from Europe (Belgium) by Joan Daemen and Vincent Rijmen. X-files stories less likely (unlike DES). Comes from Europe (Belgium) by Joan Daemen and Vincent Rijmen. X-files stories less likely (unlike DES). Symmetric block-cipher (128, 192 or 256 bits) with variable keys (128, 192 or 256 bits, too) Symmetric block-cipher (128, 192 or 256 bits) with variable keys (128, 192 or 256 bits, too) Fast and a lot of good properties, such as good immunity from timing and power (electric) analysis Fast and a lot of good properties, such as good immunity from timing and power (electric) analysis Construction deceptively similar to DES (S-boxes, XORs etc.) but really different Construction deceptively similar to DES (S-boxes, XORs etc.) but really different

30 30 RC4 Symmetric Symmetric Fast, streaming encryption Fast, streaming encryption R. Rivest in 1994 R. Rivest in 1994 Originally secret, but published on sci.crypt Originally secret, but published on sci.crypt Related to one-time pad, theoretically most secure Related to one-time pad, theoretically most secure But! But! It relies on a really good random number generator It relies on a really good random number generator And that is the problem And that is the problem

31 31 RSA, ElGamal, ECC Asymmetric Asymmetric Very slow and computationally expensive – need a computer Very slow and computationally expensive – need a computer Very secure Very secure Rivest, Shamir, Adleman – 1978 Rivest, Shamir, Adleman – 1978 Popular and well researched Popular and well researched Strength in todays inefficiency to factorise into prime numbers Strength in todays inefficiency to factorise into prime numbers Some worries about key generation process in some implementations Some worries about key generation process in some implementations ElGamal ElGamal Relies on complexity of discrete logarithms Relies on complexity of discrete logarithms ECC (Elliptic Curve Cryptography) ECC (Elliptic Curve Cryptography) If you understand how it works you are probably a mathematician If you understand how it works you are probably a mathematician Better than RSA, in general Better than RSA, in general

32 32 MD5, SHA Hash functions – not encryption at all! Hash functions – not encryption at all! Goals: Goals: Not reversible: cant obtain the message from its hash Not reversible: cant obtain the message from its hash Hash much shorter than original Hash much shorter than original Two messages wont have the same hash Two messages wont have the same hash MD5 (R. Rivest) MD5 (R. Rivest) 512 bits hashed into bits hashed into 128 Mathematical model still unknown Mathematical model still unknown But it resisted major attacks But it resisted major attacks SHA (Secure Hash Algorithm) SHA (Secure Hash Algorithm) US standard based on MD5 US standard based on MD5

33 33 Diffie-Hellman, SSL, Certs Methods for key exchange Methods for key exchange DH is very clever since you always generate a new key-pair for each asymmetric session DH is very clever since you always generate a new key-pair for each asymmetric session STS, MTI, and certs make it even safer STS, MTI, and certs make it even safer SSL uses a protocol to exchange keys safely SSL uses a protocol to exchange keys safely Certs (certificates) are the most common way to exchange public keys Certs (certificates) are the most common way to exchange public keys Foundation of Public Key Infrastructure (PKI) Foundation of Public Key Infrastructure (PKI)

34 34 Breaking It on $10 Million Symme- tric Key ECC Key RSA Key Time to Break MachinesMemory < 5 mins 10000Trivial months 43004GB million years GB E16 years TB From a report by Robert Silverman, RSA Laboratories, 2000

35 35 Rekomendacje

36 36 Typowe rekomendacje mocy (May 2003) MinimumLepiej Symmetric Key 96 bits (avoid DES as it can do only 56, instead use AES-Rijndael or RC5) 256 bits (Rijndael, RC5 128bits, not DES) Asymmetric Key 1024 (RSA) 4096 (RSA) ECC Key 192 bits 256 bits Hash: SHA/MD5 128 bits (absolutely not 64 bits) 256 bits or more Common Cert Classes – Personal and Employee Common Use Class 2 (in Verisign classification) Class 3 at least ((in Verisign classification)

37 37 Słabe systemy Cokolwiek z 40-bitów (nawet 128 i 56 bitowe gdzie przyblokowano część) Cokolwiek z 40-bitów (nawet 128 i 56 bitowe gdzie przyblokowano część) CLIPPER CLIPPER A5 (GSM) A5 (GSM) Vigenère (komórki w USA) Vigenère (komórki w USA) Pochodzi z 1585! Pochodzi z 1585! Certyfikaty niezweryfikowane Certyfikaty niezweryfikowane Słabe certyfikaty (klasa 1 itd) Słabe certyfikaty (klasa 1 itd)

38 38 Pamiętaj: Nie używaj nietestowanych systemów Nie używaj nietestowanych systemów Stwórz swoje PKI i bardzo dbaj o klucze prywatne Stwórz swoje PKI i bardzo dbaj o klucze prywatne Wybierz i zaimplementuj strategię odwoływania kluczy Wybierz i zaimplementuj strategię odwoływania kluczy Używaj smartcards Używaj smartcards Silne hasła są ważne... Silne hasła są ważne...

39 39 Podsumowując Zdecyduj co zabezpieczyć Zdecyduj co zabezpieczyć Miej szefa bezpieczeństwa - CSO (Chief Security Officer) Miej szefa bezpieczeństwa - CSO (Chief Security Officer) Używaj mocnych algorytmów Używaj mocnych algorytmów Balansuj bezpieczństwo z używalnością Balansuj bezpieczństwo z używalnością

40 40 Kroki następne Studiuj PKI Studiuj PKI Czytaj: Czytaj: Applied Cryptography, B. Schneier, John Wiley & Sons, ISBN Applied Cryptography, B. Schneier, John Wiley & Sons, ISBN Foundations of Cryptography, O. Goldereich, Books/oded_book_readme.html Foundations of Cryptography, O. Goldereich, Books/oded_book_readme.html Books/oded_book_readme.html Books/oded_book_readme.html Handbook of Applied Cryptography, A.J. Menezes, CRC Press, ISBN Handbook of Applied Cryptography, A.J. Menezes, CRC Press, ISBN PKI, A. Nash et al., RSA Press, ISBN PKI, A. Nash et al., RSA Press, ISBN Cryptography in C and C++, M. Welschenbach, Apress, ISBN X (includes code samples CD) Cryptography in C and C++, M. Welschenbach, Apress, ISBN X (includes code samples CD)


Pobierz ppt "Kryptografia i PKI (Infrastruktura Kluczy Publicznych) Rafal Lukawiecki, Project Botticelli"

Podobne prezentacje


Reklamy Google