Wykład 11. Ochrona + Bezpieczeństwo cz. I. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB



Podobne dokumenty
Wykład 12. Ochrona. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Wykład 13. Bezpieczeństwo. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Ochrona zasobów. mechanizm ochrony polityka ochrony. 2. Domeny ochrony 3. Macierz dostępów 4. Implementacja macierzy dostępów

Ochrona zasobów. Cele ochrony. Polityka i mechanizm ochrony. Dariusz Wawrzyniak Cele ochrony

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 11

Bezpieczeństwo w sieci I. a raczej: zabezpieczenia wiarygodnosć, uwierzytelnianie itp.

WSIZ Copernicus we Wrocławiu

KUS - KONFIGURACJA URZĄDZEŃ SIECIOWYCH - E.13 ZABEZPIECZANIE DOSTĘPU DO SYSTEMÓW OPERACYJNYCH KOMPUTERÓW PRACUJĄCYCH W SIECI.

Systemy Operacyjne Ochrona

Wprowadzenie do PKI. 1. Wstęp. 2. Kryptografia symetryczna. 3. Kryptografia asymetryczna

2.1. System kryptograficzny symetryczny (z kluczem tajnym) 2.2. System kryptograficzny asymetryczny (z kluczem publicznym)

Wykład 4 Bezpieczeństwo przesyłu informacji; Szyfrowanie

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Wykład 3 Bezpieczeństwo przesyłu informacji; Szyfrowanie

2 Kryptografia: algorytmy symetryczne

PuTTY. Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Inne interesujące programy pakietu PuTTY. Kryptografia symetryczna

Laboratorium nr 5 Podpis elektroniczny i certyfikaty

Systemy Mobilne i Bezprzewodowe laboratorium 12. Bezpieczeństwo i prywatność

Laboratorium nr 3 Podpis elektroniczny i certyfikaty

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

KAMELEON.CRT OPIS. Funkcjonalność szyfrowanie bazy danych. Wtyczka kryptograficzna do KAMELEON.ERP. Wymagania : KAMELEON.ERP wersja

Instrukcja dla użytkowników Windows Vista Certyfikat Certum Basic ID

Certyfikat Certum Basic ID. Instrukcja dla użytkowników Windows Vista. wersja 1.3 UNIZETO TECHNOLOGIES SA

Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami

Authenticated Encryption

Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA

BSK. Copyright by Katarzyna Trybicka-Fancik 1. Bezpieczeństwo systemów komputerowych. Podpis cyfrowy. Podpisy cyfrowe i inne protokoły pośrednie

Czym jest kryptografia?

System Użytkowników Wirtualnych

Podstawy systemów kryptograficznych z kluczem jawnym RSA

Wykład 4. Metody uwierzytelniania - Bezpieczeństwo (3) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Przewodnik użytkownika

Instrukcja obsługi certyfikatów w programie pocztowym MS Outlook Express 5.x/6.x

Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Marcin Pilarski

Laboratorium. Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie

Kryptografia szyfrowanie i zabezpieczanie danych

Laboratorium nr 2 Szyfrowanie, podpis elektroniczny i certyfikaty

Outlook Instrukcja podpisywania i szyfrowania wiadomości certyfikatem niekwalifikowanym.

Problemy z bezpieczeństwem w sieci lokalnej

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku

Użytkownicy I. Użytkownik. Głównym celem istnienia użytkowników i grup w systemie jest utrzymanie porządku i separacja uprawnień.

ZAŁĄCZNIK Nr 3 do CZĘŚCI II SIWZ

II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI

CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 7

Konfiguracja programu MS Outlook 2007 dla poczty w hostingu Sprint Data Center

Bazy danych i usługi sieciowe

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 1

INSTRUKCJA INSTALACJI I OBSŁUGI GPG4Win

Bezpieczna poczta i PGP

Instrukcja generowania certyfikatu PFRON i podpisywania dokumentów aplikacji SODiR w technologii JS/PKCS 12

Bezpieczeństwo kart elektronicznych

Certyfikat niekwalifikowany zaufany Certum Silver. Instalacja i użytkowanie pod Windows Vista. wersja 1.0 UNIZETO TECHNOLOGIES SA

Ustalanie dostępu do plików - Windows XP Home/Professional

ZAŁĄCZNIK Nr 1 do CZĘŚCI II SIWZ

FAQ Systemu EKOS. 1. Jakie są wymagania techniczne dla stanowiska wprowadzania ocen?

System operacyjny UNIX - użytkownicy. mgr Michał Popławski, WFAiIS

Sieciowe Systemy Operacyjne

UWAGA!!! Przed przystąpieniem do zamknięcia roku proszę zrobić kopie bezpieczeństwa

Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi.

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

Podpisywanie i bezpieczne uruchamianie apletów wg

Zadanie 1: Protokół ślepych podpisów cyfrowych w oparciu o algorytm RSA

Zarys algorytmów kryptograficznych

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Certyfikat niekwalifikowany zaufany Certum Silver. Instrukcja dla uŝytkowników Windows Vista. wersja 1.1 UNIZETO TECHNOLOGIES SA

Memeo Instant Backup Podręcznik Szybkiego Startu

Usługi sieciowe systemu Linux

Portal SRG BFG Instrukcja korzystania z Portalu SRG BFG

INSTRUKCJA AKTYWACJI I INSTALACJI CERTYFIKATU ID

PGP - Pretty Good Privacy. Użycie certyfikatów niekwalifikowanych w programie PGP

Portal SRG BFG. Instrukcja korzystania z Portalu SRG BFG

Płace Optivum. Jakie czynności musi wykonać pracownik, aby otrzymywać drogą elektroniczną paski z list płac?

Bezpieczeństwo informacji w systemach komputerowych

Odczyty 2.0 Spis treści

Cel normalizacji. Tadeusz Pankowski

Systemy operacyjne. Zarządzanie dostępem do zasobów przy wykorzystaniu grup

Instrukcja logowania do systemu e-bank EBS

VPN Virtual Private Network. Użycie certyfikatów niekwalifikowanych w sieciach VPN. wersja 1.1 UNIZETO TECHNOLOGIES SA

Ochrona danych i bezpieczeństwo informacji

Przywracanie systemu. Do czego służy Przywracanie systemu?

11. Autoryzacja użytkowników

Bezpieczeństwo systemów komputerowych. Opis działania PGP. Poczta elektroniczna. System PGP (pretty good privacy) Sygnatura cyfrowa MD5

Laboratorium Programowania Kart Elektronicznych

Praca w programie dodawanie pisma.

Modele uwierzytelniania, autoryzacji i kontroli dostępu do systemów komputerowych.

Sieci komputerowe. Wykład 9: Elementy kryptografii. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

1) Czym jest architektura systemu Windows 7 i jak się ją tworzy? 2) Jakie są poszczególne etapy uruchomienia systemu Windows 7?

dr inż. Jarosław Forenc

!!!!!! FUDO% Architektura%Bezpieczeństwa! % % Warszawa,%28:04:2014%

System plików warstwa logiczna

Zarządzanie pamięcią operacyjną

0 + 0 = 0, = 1, = 1, = 0.

ZADANIE nr 4 Sprawdzian z informatyki

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

I. Uruchomić setup i postępować według instrukcji

Wstęp do systemów wielozadaniowych laboratorium 21 Szyfrowanie

Steganograficzny system plików

System plików warstwa fizyczna

System plików warstwa fizyczna

Transkrypt:

Wykład 11 Ochrona + Bezpieczeństwo cz. I Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Ochrona (ang. protection) Pojęcie ochrony dotyczy mechanizmu kontrolującego dostęp programów, procesów, i użytkowników do zasobów systemu operacyjnego. Typowe zasoby to pliki i urządzenia Cel ochrony: zapewnienie że każdy komponent systemu używa zasobów zgodnie z zadeklarowaną polityką (ang. policy). Ochrona powinna dostarczać mechanizmy do wymuszania polityki. Mechanizm określa jak coś ma być realizowane (np. bity rwx dostępu do pliku dla właściciela, grupy i całego świata w Uniksie). Polityka określa co ma być realizowane (np. studenci nie mogą zmienić pliku wyniki_egzaminu.txt). Mechanizm powinien być na tyle elastyczny, aby politykę można było zmienić bez konieczności zmiany mechanizmu. Obowiązuje zasada wiedzy koniecznej: Proces powinien mieć dostęp tylko do tych zasobów, do których jest uprawniony, oraz których potrzebuje w danej chwili do zakończenia zadania. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -2- Wydział Informatyki PB

Bezpieczeństwo System jest bezpieczny, gdy zasoby są używane tak jak jest to (przez system) zamierzone bez względu na okoliczności. System może zapewniać wspaniały mechanizm ochrony gwarantujący, że użytkownik który jest studentem nigdy nie otrzyma praw zapisu do do pliku wyniki_egzaminu.txt, ale Student może się zalogować do systemu jako prof. Kowalski. Student może poprzez złośliwe działanie (np. utwórz 10000 procesów, przydziel 10GB pamięci, inne...) zakłócić normalną pracę systemu atak typu denial of service. Student może wystartować z dyskietki własny system operacyjny i uzyskać dostęp do wszystkich plików na dysku twardym Student może wymontować dysk z komputera, wstawić do innego systemu, a następnie powtórzyć czynności z poprzedniego kroku. Student mający znajomości w CIA może zarejestrować z odległości 200m wszystkie znaki wpisywane na klawiaturze. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -3- Wydział Informatyki PB

Domeny ochrony Domena 1 Domena 2 Domena 3 Plik1[R] Plik2[R W] Plik3[R] Plik4[R WX] Plik 5[R W] Drukarka1[W] Plik5[R WX] Plotter 2[W] Obiekty sprzętowe (procesor, obszary pamięci, drukarki, dyski,...) oraz programowe (pliki, programy, semafory). Domena jest zbiorem obiektów, przy czym dla każdego obiektu jest zdefiniowany zbiór uprawnień. Domeny nie muszą być rozłączne (Plik5). Związek domeny z procesem może być statyczny albo dynamiczny (przełączenie domen). Domeną może być: użytkownik. grupa użytkowników - zwiększa wydajność proces Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -4- Wydział Informatyki PB

Macierz dostępu (ang. access matrix) Obiekt Plik1 Plik2 Plik3 Plik4 Plik5 Drukarka1 Plotter2 Domena 1 W rite 2 Write Execute W rite Write 3 Write Execute Write W rite Model domenowy może być przedstawiony przy pomocy macierzy zwanej macierzą dostępu (ang. access matrix). Mechanizm macierzy dostępów pozwala na realizację polityki. System operacyjny musi ten mechanizm poprawnie zaimplementować, tzn. zapewnić że proces wykonywujący się w ramach domeny Di ma dostęp tylko do tych zasobów, które są występują w wierszu i, zgodnie z zawartymi tam uprawnieniami. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -5- Wydział Informatyki PB

Przełączanie domen obiekty jak domeny omena Obiekt Plik1 Plik2 Plik3 Plik4 Plik5 Drukarka1 Plotter2 Domena1 Domena2 Domena3 1 Write switch 2 Write Execute Write Write 3 Write Execute Write Write switch Założenie, że każda domena jest obiektem (występuje jako kolumna macierzy dostępu) wraz z dodatkowym uprawnieniem switch (mającym sens tylko dla obiektów reprezentujących domeny) pozwala na przełączanie domen. W powyższym przykładzie z Domeny 1 możemy się przełączyć do Domeny 2, a z Domeny 3 do Domeny 2 Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -6- Wydział Informatyki PB

Dodatkowe uprawnienia w macierzy switch patrz poprzedni slajd. control, podobnie jak switch dotyczy wyłącznie obiektów będących domenami. Proces wykonujący się w Domenie która ma uprawnienie control dla Domeny i domeny, może usunąć dowolne uprawnienia z wiersza związanego z Domeną i. owner (właściciel): możliwość zmieniania uprawnień w dowolnej kolumnie związanej z danym obiektem. copy: możliwość przekazania swoich uprawnień innej domenie (np. gdyby Domena2 miała uprawnienie copy do obiektu Plik5, to mogłaby przekazać dowolne ze swoich uprawnień innej domenie. transfer: podobnie jak copy, ale usuwa uprawnienia z domeny źródłowej. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -7- Wydział Informatyki PB

Implementacja macierzy dostępu Najprostszym rozwiązaniem byłaby tablica, przechowująca trójki postaci: <Domena,Obiekt,Zbiór_uprawnień> Niestety rozmiar takiej tablicy byłby olbrzymi Wyobraźmy sobie system, w którym mamy 100 użytkowników i 10000 plików, tablica miałaby wtedy milion pozycji. W praktyce stosuje się trzy inne inne rozwiązania: przechowuj kolumny macierzy dostępu wraz z obiektem (tzw. listy dostępów). przechowuj wiersze macierzy dostępu wraz z domeną (listy uprawnień) mechanizm klucza-zamka (rozwiązanie mieszane) Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -8- Wydział Informatyki PB

Listy dostępów dla obiektu (ang. access control list - ACL) Proces Właściciel A B C Przestrzeń użytkownika Plik F1 A: RW; B: A ACL F2 F3 A: R; B:RW; C:R B:RWX; C: RX Przestrzeń jądra Lista dostępu przechowuje pary <Domena, Zbiór_uprawnień>. Pomijamy domeny, które nie mają żadnych uprawnień. Wady: a) trudno jest określić zbiór praw dla konkretnej domeny b) każda próba dostępu wymaga przeszukania listy Często do listy dostępu dodaje sie domyślny zbiór uprawnień. np *:R (każdy może czytać) Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -9- Wydział Informatyki PB

Listy uprawnień dla domeny (ang. capability lists) Proces Właściciel A B C Przestrzeń użytkownika F1 F2 F3 F1:R F2:R F1:R F2:RW F3:RWX F2:R F3:RX C-list Przestrzeń jądra Proces podejmujący próbę dostępu musi wykazać się, że ma uprawnienie. Lista uprawnień również musi być obiektem podlegającym ochronie. Np. przestrzeń adresowa procesu może mieć odrębny segment niedostępny z poziomu użytkownika. Proces ma wskaźnik do listy uprawnień, ale nie może jej modyfikować. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -10- Wydział Informatyki PB

Porównanie list dostępów z listami uprawnień Listy dostępów odpowiadają potrzebom użytkowników. Użytkownik tworzy obiekt, a określa uprawnienia dla tego obiektu. List uprawnień nadają się szczególnie do implementacji piaskownic (ang. sandbox) np. dla kodu mobilnego (applety) któremu nie możemy zaufać. Większość systemów stosuje kombinację tych dwóch technik. Na przykład w Uniksie przy otwieraniu pliku (open) sprawdzana jest lista dostępów związana z danym plikiem. Po pomyślnym otwarciu proces otrzymuje deskryptor (uchwyt) pliku - liczba 32bitowa. Deskryptor jest indeksem do tablicy otwartych plików danego procesu. W tablicy jest przechowywane m.in. tryb otwarcia pliku (odczyt/zapis). Proces nie ma bezpośredniego dostępu do tej tablicy. Operacje read/write wymagają podania deskryptoru pliku. Nie są już sprawdzane uprawnienia związane z obiektem. Tablica otwartych plików pełni więc funkcję listy uprawnień. Po zamknięciu pliku (close) pliki odpowiadający deskryptorowi jest usuwany z tablicy. (Wycofanie uprawnień). Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -11- Wydział Informatyki PB

Mechanizm klucza i zamka (ang. lock-key scheme) Każdy obiekt posiada wykaz jednoznacznych wzorców binarnych zamków (locks) Każda domena posiada wykaz jednoznacznych wzorców binarnych kluczy (keys) Proces działający w danej domenie może mieć dostęp do obiektu, jeżeli jeden z kluczy tej domeny pasuje do któregoś zamka obiektu. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -12- Wydział Informatyki PB

Wycofanie (ang. revocation) praw dostępu Czasami musimy usunąć pewne prawa dostępu z domeny. Wycofanie natychmiastowe albo opóźnione Wycofanie ogólne (dla wszystkich domen) albo selektywne (dla wybranych) Wycofanie całkowite (tracone wszystkie prawa dostępu) albo częściowe Wycofanie permanentne albo tymczasowe. W przypadku mechanizmów list dostępów oraz zamka-klucza nie ma problemów z implementacją. W przypadku list uprawnień problem jest bardziej skomplikowany, ponieważ uprawnienia dostępu do jednego obiektu są rozproszone po wielu listach. Wskaźniki zwrotne (back-pointers): każdy obiekt posiada listę wskaźników do wszystkich list uprawnień związanych z danym obiektem. Powtórna akwizycja: co jakiś czas listu uprawnień są automatycznie kasowane. W takim przypadku proces musi ponownie spróbować uzyskać uprawnienie (i może go nie uzyskać jeżeli zostanie cofnięte). Każde uprawnienie nie wskazuje bezpośrednio na obiekt, ale na pozycję w globalnej tablicy, która z kolei wskazuje na obiekt. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -13- Wydział Informatyki PB

Mechanizmy ochrony w systemie Uniks - dostęp do plików Superużytkownik (ang. root, superuser) może wszystko Każdy plik ma właściciela w postaci użytkownik.grupa. Użytkownik może należeć do wielu grup. Każdy plik i katalog ma określone uprawnienia do odczytu [r], zapisu [w] oraz wykonania. Uprawnienia są określane osobno dla właściciela grupy oraz pozostałych użytkowników. Np. -rwxr-xr-x 1 wkwedlo users plik5 Dla katalogu odczyt jest równoznaczny z przeglądaniem katalogu (ls), zapis z usunięciem albo dodaniem nowej pozycji lub zmianą nazwy a wykonanie z uczynieniem katalogu katalogiem bieżącym. Aby usunąć plik trzeba mieć uprawnienia do pisania w katalogu w którym plik się znajduje. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -14- Wydział Informatyki PB

Bit suid w Uniksie Pytanie: W czyim imieniu wykonuje się proces załadowany z pewnego programu? Czy w imieniu właściciela programu, czy w imieniu tego użytkownika który uruchomił program? Odpowiedź domyślnie z uprawnieniami użytkownika który uruchomił program. Ale rozpatrzmy program passwd (właściciel root) uruchomiony przez użytkownika wkwedlo w celu zmiany hasła. Oczywiście modyfikacje pliku haseł mogą być wykonane tylko przez superużytkownika. W Uniksie ten problem rozwiązano przez wprowadzenie dodatkowej flagi suid. Plik mający tą flagę wykonuje się z uprawnieniami właściciela. Programy których właścicielem jest root i z bitem suid są potencjalnie **olbrzymim** źródłem problemów związanych z bezpieczeństwem. Co się stanie gdy w wyniku (być może złośliwego) podania przez użytkownika wkwedlo hasla o długości 0 znaków program passwd w wyniku błędu w kodzie skasuje plik z hasłami? Bit suid stosuje się także do katalogów Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -15- Wydział Informatyki PB

Naruszenia bezpieczeństwa Całkowite bezpieczeństwo jest niemożliwe do osiągnięcia - ale należy projektować mechanizmy sprawiające, aby naruszenia były jak najrzadsze. Ogólnie można podzielić na przypadkowe bądź celowe, złośliwe (ang. malicious) - obrona przed złośliwymi jest dużo trudniejsza. Najważniejsze celowe naruszenia to: Nieautoryzowany dostęp do danych lub kradzież informacji. Nieautoryzowana modyfikacja danych. Nieautoryzowane zniszczenie danych. Uniemożliwienie normalnego korzystania z systemu (ang. denial of service, DOS). Niezbędne jest podjęcie niezbędnych środków na poziomie: Fizycznym: kluczyki, kasa pancerna,... Ludzkim: może nie warto przyznawać konta osobie, która jest spędza cały wolny czas w kasynie i jest zadłużona. Sieci: Komputery nie są izolowane, dane przesyłane są liniami nad którymi nie mamy kontroli: możliwość podsłuchu, ukrycia tożsamości, zmiany tożsamości Systemu operacyjnego. Na dzisiejszym (i następnym) wykładzie dwa ostatnie punkty Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -16- Wydział Informatyki PB

Uwierzytelnianie (ang. authentication) użytkowników Jak sprawdzić, czy identyfikator użytkownika jest autentyczny? Istniejące podejścia oparte są na sprawdzeniu wiedzy (hasła), pomiarach biometrycznych (linie papilarne, wzór siatkówki), czy stanu posiadania (np. karty chipowe). Hasła są najpopularniejsza, ale sprawiają wiele problemów. Ludzie wybierają jako hasła słowa łatwe do odgadnięcia (np. swoje imię). Użytkownik może zapisać trudne hasło na kartce i pozostawić w łatwo dostępnym miejscu. Hasła są narażone na ujawnienie w wyniku monitoringu (np. spoglądanie zza ramienia, przechwyt pakietów w sieci (o ile nie są szyforwane)). Problem: W jaki sposób nie przechowywać hasła w sposób jawny, ale jednocześnie umożliwić uwierzytelnienie? Odp: Wykorzystując szyfrowanie w postaci jednokierunkowej funkcji skrótu f, np. f( Wojtek ) = aqw36vbuyolrw6yefgnmyulocdxnmueq98i7rtfmuo76w Postać zaszyfrowana jest przechowywana w pliku z hasłami. Przy uwierzytelnianiu jest obliczana funkcja skrótu, a wynik porównywany z postacią zaszyfrowaną. Jeżeli funkcja skrótu jest na tyle bezpieczna, że (a) pomimo znajomości algorytmu i (b) znajomości postaci zakodowanej, nie da się analitycznie (bez przeszukania wyczerpującego ) odgadnąć hasła, dostęp do postaci zaszyfrowanej niewiele daje. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -17- Wydział Informatyki PB

Szyfrowanie symetryczne Sprzedaj akcje szyfrowanie BxWv;5df ~TmWe#4 ^,sdgfmwir 3:dkJeTsY\ s@!q3 deszyfrowanie Sprzedaj akcje BOB Ten sam klucz (tajny) ALICJA Algorytmy: DES,3-DES, IDEA, Blowfish,... (szybkie!!!) Wada: Jak uzgodnić tajny klucz (włamywacz może podsłuchiwać!!!) Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -18- Wydział Informatyki PB

Kryptografia asymetryczna różne klucze różne klucze Klucz publiczny Klucz prywatny Klucz publiczny Klucz prywatny BOB ALICJA Zarówno Bob jak i Alicja generują pary kluczy: Klucz publiczny - dostępny dla wszystkich np. w książce telefonicznej Klucz prywatny - tajny Algorytm działa w sposób następujący: Komunikat zaszyfrowany jednym kluczem z pary można odszyfrować wyłącznie drugim kluczem. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -19- Wydział Informatyki PB

Kryptografia asymetryczna - przesyłanie tajnej wiadomości Sprzedaj akcje szyfrowanie BxWv;5df ~TmWe#4 ^,sdgfmwir 3:dkJeTsY\ s@!q3 deszyfrowanie Sprzedaj akcje BOB Klucz publiczny Alicji Klucz prywatny Alicji ALICJA Tylko Alicja może odczytać wiadomość. Nie trzeba uzgadniać tajnego klucza!!! Alicja nie wie, czy nadawcą jest Bob Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -20- Wydział Informatyki PB

Kryptografia asymetryczna - podpis cyfrowy To ja BOB szyfrowanie BxWv;5df ~TmWe#4 ^,sdgfmwir 3:dkJeTsY\ s@!q3 deszyfrowanie To ja BOB BOB Klucz prywatny BOBa Klucz publiczny BOBa ALICJA Każdy może odczytać wiadomość. Mamy gwarancję że napisał ją BOB. Dobre narzędzie do uwierzytelnienia np. program ssh. Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -21- Wydział Informatyki PB

Kryptografia asymetryczna Możemy łączyć dwie techniki np. BOB szyfruje wiadomość najpierw kluczem publicznym Alicji a potem swoim kluczem prywatnym. Alicja dekoduje używając najpierw klucza publicznego BOBa, a następnie swojego klucza prywatnego. Alicja ma gwarancję, że komunikat wysłała BOB i jednocześnie treść jest tajna. Techniki asymetryczne są niezwykle wolne (1000 razy wolniejsze od technik symetrycznych) - problem w przypadku długich wiadomości, ruchu w sieci,... W praktyce używa się rozwiązań hybrydowych, w którym techniki asymetryczne wykorzystuje się do wygenerowania i uzgodnienia klucza dla szyfru symetrycznego - ale dla użytkownika nie ma to znaczenia. Problem: Jak zagwarantować, że publiczny klucz Alicji umieszczony w książce telefonicznej jest naprawdę kluczem Alicji. Rozwiązania: certyfikaty. Klucz publiczny jest podpisany przez organizację której ufamy: VeriSign, PCSS, Microsoft (- to żart). W ten sposób powstaje PKI (Public Key Infrastructure) - e-banki, etc... Wojciech Kwedlo,Krzysztof Bandurski, Wykład z Systemów Operacyjnych -22- Wydział Informatyki PB