[ Pobierz całość w formacie PDF ]
.Klucze wtórne są rzadko zmieniane, ale i szyfrująstosunkowo rzadko i do tego krótkie teksty.W tym miejscu nale\y równie\ wyjaśnić pojęcie klucza sesyjnego.Zalecanejest u\ywanie odrębnych kluczy do szyfrowania komunikacji występującej wobrębie ka\dej sesji (sesja mo\e obejmować, na przykład, przesłanie plikówz odległego serwera albo operacje u\ytkownika dokonywane w ramachpojedynczej rejestracji w systemie wielodostępnym).U\ywanie kluczysesyjnych jest wskazane z następujących względów:>- ogranicza to ilość kryptogramów, jakie są generowane za pomocąjednego klucza, a tym samym ogranicza ilość kryptogramów, jakieprzeciwnik mo\e analizować.>- ogranicza skutki odgadnięcia klucza przez przeciwnika: o ile sesjazostała ju\ zakończona, przeciwnik nie ma mo\liwości prze-prowadzenia aktywnego ataku, mo\e jedynie poznać dane prze-kazywane w trakcie zakończonej ju\ sesji.Gdy sesja jeszcze trwa, tonegatywne skutki będą odczuwane jedynie do końca sesji.Wy-znaczenie kluczy dla następnej sesji przebiega bowiem przy u\yciukluczy wtórnych, a nie bie\ącego klucza sesyjnego.150Kryptografia10.1.4.Przechowywanie kluczyKlucze o podstawowym znaczeniu dla bezpieczeństwa (na przykładmaster key u\ytkownika) są przechowywane w specjalny sposób.U\y-wane są do tego celu urządzenia kryptograficzne, smart cards; innamo\liwość to nauczenie się klucza na pamięć.Godny polecenia jesttak\e podział klucza na części, na przykład według protokołu dzieleniatajemnic (patrz rozdział 11.6), oraz przechowywanie ka\dej części winny sposób.Poniewa\ w praktyce zwykle niezbędne jest korzystanie z du\ej liczbykluczy jednocześnie, nie jest mo\liwe zabezpieczenie ich w wy\ej opi-sany sposób.Najprościej jest w tej sytuacji wykorzystać master key i za-szyfrować za jego pomocą pozostałe klucze.W zaszyfrowanej postaciklucze te mogą być bez obaw przechowywane na dysku.Ostro\nośćjest wskazana jedynie w przypadku korzystania z takich kluczy.Naj-bezpieczniej jest wtedy skorzystać z urządzenia kryptograficznego.Dlazaszyfrowania tekstu za pomocą tak zabezpieczonego klucza K postę-pujemy następująco:1.Kryptogram klucza K zostaje przesłany do urządzenia kryptogra-ficznego.2.Za pomocą master key klucz K zostaje odczytany z jego krypto-gramu.3.Tekst jawny, który ma być zaszyfrowany za pomocą K, zostajewczytany porcjami do urządzenia kryptograficznego, jest szyfro-wany wewnątrz urządzenia za pomocą klucza K i znów porcjamiwysłany na zewnątrz.4.Na koniec K zostaje wymazany z wewnętrznej pamięci urządze-nia kryptograficznego.Ciekawy sposób przechowywania kluczy jawnych wykorzystuje się wpakiecie PGP (patrz rozdział 13.4.1).U\ytkownicy przechowują klu-cze jawne swych partnerów i mogą potwierdzić ich autentyczność napotrzeby innych zainteresowanych osób.O autentyczności klucza jaw-nego mo\na się przekonać w zadowalający sposób poprzez potwier-dzenie jego autentyczności w wielu miejscach.Liczymy w tym momen-151M.Kutyłowski, W.-B.Strothmanncie, \e ewentualny przeciwnik nie jest w stanie włamać się do wszystkichsystemów, w jakich sprawdzamy dany klucz jawny.10.1.4.1.Utrata kluczyUtrata klucza jest powa\nym problemem, gdy\ w takim przypadkuniedostępne stają się dane zaszyfrowane tym kluczem.Do pomyślenia jestrównie\ sytuacja, w której pracownik mający wyłączny dostęp do klucza zwa\nymi dla firmy danymi szanta\uje firmę, gro\ąc nieodszy-frowaniemdanych.Rozwiązaniem w tej sytuacji jest przechowywanie klucza poprzez protokółdzielenia tajemnic.Informacje o kluczu dzieli się pomiędzy n osób w firmie(na przykład kierownictwo firmy).Protokół zapewnia, \e dowolna grupa kosób jest w stanie odtworzyć klucz (fc jest parametrem protokołu).Jednocześnie mniej ni\ k osób nie jest w stanie otrzymać \adnych informacjio kluczu (patrz rozdział 11.6).10.2.Protokoły uzgadniania kluczyPodstawowym problemem w momencie nawiązywania komunikacji poprzezlinie komunikacyjne podatne na atak przeciwnika jest ustalenie klucza, którybędzie u\yty do szyfrowania przesyłanych wiadomości.O ile taki kluczzostał w jakiś sposób uzgodniony wcześniej między partnerami, tooczywiście nie ma problemu.Zazwyczaj jednak klucz takowy musi być nabie\ąco ustalony.Zadanie to wydaje się niemo\liwe do zrealizowania, gdy\przesyłane wiadomości o kluczu mogą być przechwycone przez przeciwnika.W niniejszym rozdziale przedstawimy rozwiązanie wy\ej wymienionegozagadnienia.Zauwa\my, \e mo\liwość bezpiecznego przesyłania wiadomości daje prostąmetodę uzgadniania kluczy:Prosty protokół uzgadniania kluczy:1.Alice wybiera losowy ciąg Y i dostarcza go Bobowi bezpieczną drogą.152Kryptografia2.Bob wybiera losowy ciąg rg i dostarcza go Alice bezpieczną drogą.3.Niezale\nie, Bob i Alice wyliczają /(T , rg) jako uzgodniony kluczsesyjny.Funkcja / jest dowolną funkcją jednokierunkową.W powy\szym protokole mo\na by wyeliminować zarówno u\ycie rg, jak ifunkcji jednokierunkowej.Nie jest to wskazane, gdy\ wtedy całaodpowiedzialność za wybór klucza sesyjnego spadłaby na Alice.Ewentualnezłamanie tego klucza przez przeciwnika mo\e wzbudzić podejrzenie u Boba,\e Alice jest winna, bo wybrała jeden ze słabych kluczy.W powy\szej sesjizarówno Alice, jak i Bob wpływają na wartość klucza.U\ycie funkcjijednokierunkowej pozwala na komfort psychiczny: jest małoprawdopodobne, \e w ten sposób zostanie wygenerowany słaby klucz, nawetspośród tych, o których słabości Alice i Bob nie są świadomi.10.2.1.Uzgadnianie kluczy poprzez szyfrowaniesymetryczneNawet w przypadku posiadania przez partnerów wspólnego klucza dlaalgorytmu symetrycznego wskazane jest, jak ju\ widzieliśmy, ustalenieinnego klucza jako klucza sesyjnego.Protokół 1: niech k będzie wspólnym kluczem algorytmu symetrycznegoposiadanym przez Alice i Boba.1.Niech t będzie momentem generacji klucza, n zaś jego numeremkolejnym.Alice wybiera losowy ciąg rA, szyfruje ciąg zło\ony zł , n , r i identyfikatora Boba za pomocą k i wysyła Bobowi.2.Bob deszyfruje otrzymaną wiadomość i odzyskuje z niej T.Ciąg Yjest ustalonym wspólnym kluczem.W powy\szym protokole t oraz n były u\yte, aby Bob mógł sprawdzić, \enadsyłany klucz został wygenerowany niedawno.Chroni to przed tzw.atakiem przez powtórzenie:1.Mallet przechwytuje komunikaty protokołu ustalania klucza s po-między Alice a Bobem.153M.Kutylowski, W.-B.Strothmann2.Mallet przechwytuje komunikaty wymieniane w trakcie sesji szy-frowanej kluczem s i na podstawie tego materiału dokonuje kryp-toanalizy s.3.Mallet podaje się za Alice i ustala z Bobem klucz s na podstawiepakietów przechwyconych w kroku 1 (zauwa\my, \e Mallet nie musiwcale odszyfrowywać tych pakietów)
[ Pobierz całość w formacie PDF ]