Bezpieczeństwo systemów komputerowych Poczta elektroniczna Usługi systemu PGP szyfrowanie u IDEA, RSA sygnatura cyfrowa RSA, D5 kompresja ZIP zgodność poczty elektronicznej konwersja radix-64 segmentacja mgr Katarzyna rybicka-francik kasiat@zeus.polsl.gliwice.pl pok. 503 System PGP (pretty good privacy) Dzieło Phila Zimmermanna http://www.philzimmermann.com/ Dostępny bezpłatnie Pakiet zawiera: algorytm RSA algorytm IDEA algorytm D5 ie został stworzony, ani też nie jest kontrolowany przez żadną instytucję rządową ani standaryzacyjną Sygnatura cyfrowa D5 jednokierunkowa funkcja skrótu skrót 128 bitowy opis algorytmu dostępny na stronie www-zo.iinf.polsl.gliwice.pl/~kfrancik/bsk Działanie programu zapewnia 5 usług: uwierzytelnienie poufność kompresję zgodność poczty segmentację Uwierzytelnienie 1. adawca tworzy. 2. Przy użyciu D5 jest generowany 128-bitowy wynik haszowania dla u. 3. Wynik haszowania szyfruje się za pomocą RSA, przy użyciu klucza prywatnego nadawcy, i wynik dołącza się do początku u. 4. Odbiorca używa RSA i klucza jawnego nadawcy do odszyfrowania wyniku haszowania. 5. Odbiorca generuje nowy wynik haszowania dla u i porównuje go z odszyfrowanym wynikiem. Jeśli oba są takie same, zostaje uznany za autentyczny. 1
Uwierzytelnienie Uwierzytelnienie i poufność KU b KR a KR a II Z II Z K s EI II KRa [()] Z -1 KU a porównanie KUb [K s ] KR b KRa [()] Z -1 KU a porównanie Poufność 1. adawca generuje i 128-bitową liczbę, która ma pełnić rolę klucza sesji tylko dla tego u 2. Komunikat jest szyfrowany za pomocą algorytmu IDEA, przy użyciu klucza sesji 3. Klucz sesji jest szyfrowany za pomocą algorytmu RSA kluczem jawnym odbiorcy i dołączony do początku u 4. Odbiorca korzysta z RSA i odszyfrowuje klucz sesji za pomocą swojego klucza prywatnego. 5. Do odszyfrowania u używa się klucza sesji. Kompresja Wykonywana automatycznie po wygenerowaniu sygnatury Poufność Zgodność poczty KU b X<-plik K s Potrzebna sygnatura? Generuj sygnaturę X<- sygnatura X Z EI II KUb [K s ] KR b Kompresuj X<-Z(X) ypowy diagram transmisji (od A) Z -1 Potrzebna poufność? Szyfruj klucz X X<- KUb [K S ] EI Ks [X] Konwersja na radix 64 X<-R64[X] 2
Zgodność poczty Generowanie klucza sesji klucze DES użyte w odpowiednich etapach (K 1,K 2 ) Konwersja z radix 64 X<-R64-1[X] Potrzebna poufność? De kompresuj X<-Z-1(X) Odszyfruj klucz X X<- KUb[KS]; K[X] Oddziel sygnaturę od X Zweryfikuj sygnaturę ypowy diagram odbioru (do B) data i czas na początku i-tego etapu generowania (Dt i ) ziarno na początku i-tego etapu generowania (V i ) 3-DES 3-DES 3-DES V i+1 Potrzebna poufność? liczba pseudolosowa wyprodukowana w i-tego etapu generowania (R i ) Generator liczb pseudolosowych ASI X9.17 Segmentacja i desegmentacja Identyfikatory kluczy ID klucza jawnego składa się z jego mniej znaczących 64 bitów. Co w przypadku sygnatury cyfrowej? Sygnatura cyfrowa u zawiera 64-bitowy ID odpowiedniego klucza jawnego Klucze kryptograficzne i bazy danych jednorazowe konwencjonalne klucze sesji klucze jawne klucze prywatne klucze oparte na haśle prywatnych Datownik ID klucza Klucz jawny Klucz prywatny (zaszyfrowany) ID użytkownika 3
Identyfikatory kluczy Szyfrowanie klucza prywatnego wybiera hasło do szyfrowania klucza prywatnego Gdy system tworzy nową parę kluczy jawny/prywatny za pomocą RSA, prosi użytkownika o podanie hasła. a podstawie hasła przy użyciu D5 generuje się 128-bitowy wynik haszowania, a samo hasło jest kasowane System za pomocą algorytmu IDEA szyfruje klucz prywatny, posługując się wynikiem haszowania jako kluczem. astępnie wynik haszowania kasuje się, a zaszyfrowany klucz prywatny przechowuje w bazie kluczy prywatnych. prywatnych ID A Generowanie u PGP hasło zaszyfrowany klucz prywatny wyciąg klucz prywatny KR a sygnatura+ RG klucz sesji EI ID B wybór jawnych klucz jawny zasz. syg.+ ID klucza wynik Odbiór u PGP jawnych Datownik ID klucza Klucz jawny ID użytkownika prywatnych wybór hasło zaszyfrowany klucz prywatny klucz prywatnyk R b wybór jawnych ID klucza odbiorcy Zasz. klucz sesji Zasz. kom.+ sygnatura klucz sesji K s ID klucza nadawcy Zasz. wyciąg klucz jawny KR b porównanie Format u Komunikat Sygnatura Datownik Wyciąg Pierwsze dwa bajty wyciągu ID klucza jawnego nadawcy Klucz sesji Zarządzanie kluczami jawnymi Fizycznie uzyskać klucz od B Zweryfikować klucz przez telefon Uzyskać klucz jawny B od zaufanej osoby D Uzyskać klucz B od zaufanej instytucji certyfikacującej 4
Poziomy zaufania pole zaufania właściciela nieznanego nie obdarzonego zaufaniem obdarzonego ograniczonym zaufaniem całkowitym zaufaniem pole zaufania sygnatury pole wiarygodności klucza System PE (Privacy Enhanced ail) Specyfikacja PE zawiera następujące cztery RFC (request for comments): RFC 1421: Szyfrowanie ów i procedury uwierzytelniania RFC 1422: Zarządzanie kluczami na podstawie certyfikatów RFC 1423: Algorytmy, tryby i identyfikatory RFC 1424: Poświadczenia kluczy i usługi z tym związane odel zaufania Alicja Bob Adam Ewa???? Ola Iwan Kasia Jarek omek Karol Jan Cechy PE Wymienność Zgodność z innymi elementami Zgodność z różnymi narzędziami przesyłania poczty Zgodność z różnymi interfejsami użytkownika Wsparcie dla użytkowników PC Usługi dla list dyskusyjnych Zgodność z wieloma metodami zarządzania kluczami?? Adrian Jakub arek odel zaufania PE - możliwości ochrona przed ujawnieniem uwierzytelnienie pochodzenia nienaruszalność u niezaprzeczalność pochodzenia (przy asymetrycznym zarządzaniu kluczami) Alicja Bob Rozproszone poświadczenia certyfikatów 5
PE PE nie porusza następujących tematów kontrola dostępu poufność przesyłu kontrola rutowania problemy używania komputerów PC przez wielu użytkowników zapewnienie odbioru u i niemożności zaprzeczenia odbioru automatyczne kojarzenie potwierdzeń z ami, do których się odnoszą wykrywanie duplikatów ów PE - opis działania 1. Konwersja u do postaci kanonicznej 2. Generacja informacji służącej do uwierzytelniania i zapewnienia poufności 3. Szyfrowanie u (opcjonalnie) 4. Konwersja do postaci kodowania drukowanego (opcjonalnie) PE - algorytmy Szyfrowanie u (DES-CBC) Uwierzytelnianie i sygnatura cyfrowa (szyfrowanie asymetryczne), (RSA wraz z D2 lub D5) Uwierzytelnianie (szyfrowanie symetryczne), (DES-ECB lub DES-EDE wraz z D2 lub D5) Symetryczne zarządzanie kluczami (DES-ECB lub DES-EDE) Asymetryczne zarządzanie kluczami (RSA, D5) Zgodność poczty elektronicznej (konwersja radix-64) PE - typy u ECRYPED: wykonane są czynności od 1 do 4 IC-OLY: wykonane są czynności 1, 2 i 4 IC-CLEAR: wykonane są czynności 1 i 2 PE zastosowanie kluczy PE diagram przesyłania Klucze szyfrowania danych (DEK) stosuje się do szyfrowania Klucze wymiany stosuje się do szyfrowania Asymetryczny klucz wydającego stosuje się do szyfrowania Asymetryczne zarządzanie kluczami tekstu u, sygnowanej reprezentacji IC DEK Wynik haszowania certyfikatu klucza jawnego Symetryczne zarządzanie kluczami ekstu u DEK, IC - w postaci jawnej Konwersja u do postaci kanonicznej Generowanie IC, dołączenie informacji uwierzytelniających Szyfrowanie? Kodowanie drukowalne? Szyfrowanie u; dołączenie informacji o kluczu Konwersja na radix-64 Komunikat przetworzony 6
PE diagram odbioru Komunikat przetworzony kodowanie drukowalne Szyfrowano? Konwersja na radix-64 Uzyskanie klucza sesji, odszyfrowanie u PE Szyfrowanie ów usługa opcjonalna w nagłówku informacja o stosowanym algorytmie użycie asymetrycznego klucza IK do u zostaje włączony klucz DEK zaszyfrowany IK, oraz sygnatura IC zaszyfrowana DEK użycie symetrycznego klucza IK Generowanie IC, uwierzytelnienie u Konwersja u z postaci kanonicznej w postaci jawnej PE - forma kanoniczna Komunikat może zawierać znaki, które można przedstawić w 7-bitowym kodzie ASCII. Wszystkie wprowadzane znaki podlegają konwersji na ASCII. Każdy kod 7-bitowy umieszcza się w mniej znaczących siedmiu bitach bajtu, a najbardziej znaczący bit ustawia na zero Do oznaczenia końca wiersza stosuje się sekwencję ASCII<CR><LF> aksymalna długość wiersza z wliczeniem <CR><LF> to 1000 znaków. Dłuższe wiersze są dzielone przez wstawienie dodatkowych <CR><LF> PE Kapsulacja -Begin privacyenhanced message- agłówek kapsułkowy Pusty wiersz ekst kapsułkowy -End privacyenhanced message- agłówek zamykający RFC 822 Komunikat kapsułkowany PE ienaruszalność i uwierzytelnienie kod nienaruszalności IC dwie techniki technika szyfrowania symetrycznego technika szyfrowania asymetrycznego IC szyfrowany jest kluczem jawnym nadawcy (odbiorca może otrzymać klucz jako: ID osoby, certyfikat klucza jawnego) PE Kapsulacja -Begin privacyenhanced message- agłówek kapsułkowy Pusty wiersz agłówek zamykający RFC 822 Komunikat kapsułkowany ekst kapsułkowy -End privacy-enhanced message- 7
PE Listy dyskusyjne Dziękuję za uwagę etoda jednego klucza IK na odbiorcę etoda jednego klucza IK na każdą listę PE Zarządzanie kluczami jawnymi Certyfikaty kluczy jawnych Wersja formatu certyfikatu (0) umer seryjny Identyfikator algorytmu Wydający Okres ważności Podmiot Informacja o kluczu jawnym Sygnatura PE Internetowa hierarchia certyfikatów IPRA PCA PCA... PCA CA...... CA... CA CA CA CA CA IPRA=Internet PCA Registration Authority PCA=Policy Certification Authority CA=Certification Authority 8