Zastosowania informatyki w gospodarce Wykład 5
Transkrypt
Zastosowania informatyki w gospodarce Wykład 5
Instytut Informatyki, Automatyki i Robotyki Zastosowania informatyki w gospodarce Wykład 5 Podstawowe mechanizmy bezpieczeństwa transakcji dr inż. Dariusz Caban dr inż. Jacek Jarnicki dr inż. Tomasz Walkowiak Bezpieczeństwo Komputer jest bezpieczny, jeśli jego użytkownik może na nim polegać, a zainstalowane oprogramowanie działa zgodnie ze stawianymi mu oczekiwaniami – S. Garfinkel, G. Spafford • Bezpieczeństwo jest wypadkową zachowań ludzkich i technicznych środków zabezpieczających – Nakłady na bezpieczeństwo głównie w środki techniczne – Większość naruszeń bezpieczeństwa wykorzystuje błędy ludzkie • Bezpieczeństwo transakcji w Internecie – Bezpieczeństwo komputerów (serwera i stacji klienckich) – Bezpieczeństwo oprogramowania – Zabezpieczenia komunikacji i transakcji 2 Zagrożenia • Podstawowe (niekoniecznie związane z Internetem) – Zniszczenie / utrata danych (kopie zapasowe) – Naruszenie poufności informacji – Nieuprawnione operacje • Komputer / sieć lokalna z dostępem do Internetu – – – – Zwiększone ryzyko ataków zewnętrznych Możliwość ataków anonimowych Ograniczone środki prawne ścigania włamywaczy Dodatkowe zagrożenia • Realizacja transakcji przez Internet – Wiarygodność zlecenia – Niezaprzeczalność zlecenia – Ochrona dóbr powierzonych przez użytkownika 3 Rodzaje szyfrów kryptograficznych Szyfry z kluczem tajnym •Jeden klucz do szyfrowania i odkodowania Szyfry z kluczem publicznym •Klucz szyfrujący i klucz odkodowujący •Brak algorytmu wyznaczania jednego klucza na podstawie drugiego •Złożoność numeryczna: •Algorytmy kodowania i rozkodowania numerycznie złożone •można stosować w czasie rzeczywistym •Znajomość tekstu jawnego oraz zaszyfrowanego nie wystarcza do złamania szyfru (poznania klucza) •Klucz to nie hasło, jest znacznie dłuższy 64 – 256 bitów 1024 – 2048 bitów 4 Moc szyfru • Złamanie szyfru – Ujawnienie klucza • Przegląd zupełny (brute-force attack) – Polega na łamaniu szyfru metodą prób dla kolejnych możliwych kluczy – Skuteczność zależy od długości klucza • Czas potrzebny na złamanie szyfru t = τ × 2l – l – długość klucza (symetrycznego/prywatnego) – τ - czas testowania jednej wartości klucza • Podaje się w „latach” koniecznych na złamanie – np. dla l=128 bitów 2128≈1028 τ lat (gdy τ w ms) 5 Kryptoanaliza • Celem kryptoanalizy jest wyszukiwanie słabości szyfrów • Czy da się skrócić czas konieczny do złamania szyfru • Rodzaje ataków: – bez znajomości tekstu jawnego – ze znanym tekstem jawnym – – – – z możliwością wyboru tekstu jawnego z możliwością dynamicznego modyfikowania tekstu z wyborem tekstu zaszyfrowanego z dynamicznie modyfikowanym wyborem tekstu zaszyfrowanego 6 Szyfry symetryczne (bulk cipher) • Szyfry strumieniowe – – – – Dane XOR’owane z pseudolosowym strumieniem bitów Szyfr jednorazowy Vernam’a Praktyczny przykład – szyfr RC4 Niedoskonałość generatorów pseudolosowych • Szyfry blokowe – – – – Dane dzielone na bloki stałej wielkości Szyfrowane osobno bloki Ten sam klucz do szyfrowania AES – obecnie obowiązujący standard US (od grudnia 2002) 7 Podstawowy problem szyfrów blokowych Oryginał Szyfrowany ECB Szyfrowany CBC 8 Tryby szyfrowanie strumienia danych ElectronicC CodeB Book CipherB BlockC Chaining CipherF FeedB Back OutputF FeedB Back 9 Nowy tryb szyfrowania – CTR (licznikowy) 10 Tryb szyfrowania z uwierzytelnieniem OCB (Offset Codebook Mode) 11 Szyfry z kluczem publicznym • Bazują na problemach numerycznie „trudnych” • Kryptosystem RSA – liczba odwrotna, rozkład liczb na czynniki • Kryptosystem Diffie-Hellman, ElGamal – logarytmowanie dyskretne • Podpis cyfrowy DSA – logarytmowanie dyskretne • Klucze publiczny i prywatny – W RSA kluczem publicznym może być szyfrujący lub rozszyfrowujący – W pozostałych tak nie jest! 12 Zastosowania szyfrów • Do szyfrowania danych i komunikatów – Szyfr symetryczny – Wymaga wspólnego klucza tajnego • Do uzgodnienia wspólnej tajemnicy – Szyfr publiczny – W szczególności do uzgodnienia klucza sesyjnego (tajnego) 13 Wiadomość „w kopercie” (enveloping) • Tworzenie listu w kopercie – Treść listu szyfrowana jest algorytmem z kluczem tajnym, przy czym klucz generowany jest losowo (niepowtarzalnie) przez nadawcę – Klucz tajny szyfrowany jest algorytmem z kluczem publicznym, wykorzystując klucz publiczny odbiorcy – Wiadomość składa się z zaszyfrowanego listu i zaszyfrowanego klucza losowego • Odbiorca – rozszyfrowuje klucz tajny wykorzystując swój klucz prywatny, – rozszyfrowuje wiadomość wykorzystując otrzymany klucz • Odbiorca nie ma gwarancji autorstwa listu 14 Skrót kryptograficzny (digest) • Funkcja haszująca – przekształca dowolny ciąg oktetów (bajtów lub tekstu) na liczbę stałej długości (skrót) skrót = # ( „tekst zmiennej długości”) – Przestrzeń skrótów musi być statystycznie równomiernie wykorzystana – Niewielkie zmiany ciągu kodowanego muszą powodować dowolnie duże zmiany skrótu • Skrót kryptograficzny ma dodatkowe właściwości – Numerycznie nierealne jest wygenerowanie jakiegokolwiek tekstu, mającego zadany skrót (funkcja odwrotna do #) – Znajomość skrótu nie ujawnia żadnych fragmentów tekstu pierwotnego – Skróty kryptograficzne muszą być stosunkowo długie, aby wykluczyć ataki siłowe – Algorytmy: MD2, MD5, SHA (secure hash alg.) 15 Podpis elektroniczny • Wprowadzony w celu uwiarygodnienia poczty elektronicznej (wykluczenia fałszowania autorstwa) – Nie wyklucza podsłuchania treści listu • Podpis elektroniczny wiadomości to: – Skrót kryptograficzny tej wiadomości – Zaszyfrowany wykorzystując prywatny klucz szyfrujący nadawcy (algorytmem z kluczem publicznym) – Klucz rozszyfrowujący publikuje się w sposób zapewniający powiązanie z autorem wiadomości • Odbiorca – Rozszyfrowuje skrót używając klucza publicznego (poprawne rozszyfrowanie potwierdza autorstwo listu) – Ponownie wyznacza skrót kryptograficzny wiadomości – jego zgodność ze skrótem rozszyfrowanym gwarantuje, że wiadomość nie została zmieniona 16 Sumy kontrolne MAC • Uniemożliwiają zmiany w transmitowanych danych • Message Authentication Code – Obliczany skrót kryptograficzny i szyfrowany kluczem sesyjnym • Np. SHA1/RC4, MD5/RC2 • HMAC – Do wiadomości dołączany klucz sesyjny i skrót liczony łącznie • Nie wymaga dodatkowego etapu szyfrowania/deszyfrowania • Wyższe wymagania na odporność skrótu kryptograficznego (aby nie można zgadnąć klucza sesyjnego) • Stosowane w prostych aplikacjach, aby uniknąć implementacji algorytmów szyfrujących • MAC czy podpis elektroniczny – Podpisy stosują szyfrowanie z kluczem publicznym – MAC’i stosują szyfrowanie kluczem symetrycznym 17