Bezpieczeństwo systemów komputerowych mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Metody łamania szyfrów Łamanie z szyfrogramem Łamanie ze znanym tekstem jawnym Łamanie z wybranym tekstem jawnym Łamanie z adaptacyjnie wybranym tekstem jawnym Łamanie z wybranym szyfrogramem Łamanie z wybranym kluczem Cel Całkowite złamanie szyfru Ogólne wnioskowanie Lokalne wnioskowanie Częściowy wnioskowanie Copyright by K.Trybicka-Francik 1
Badane własności Własność komplementarności Kolizje kluczy Klucze słabe Klucze półsłabe Punkty stałe Efekt lawinowy Podatność na znane ataki kryptograficzne Techniki Analiza statystyczna różnicowa liniowa Analiza różnicowa mocy Analiza z pomiarem czasu wykonywania operacji - szyfry przestawieniowe Łatwo rozpoznawalne częstość występowania liter Metoda kryptoanalizy metoda anagramowa Copyright by K.Trybicka-Francik 2
- szyfry przestawieniowe Stwórz tablice rozkładu częstotliwości diagramów trigramów dla języka naturalnego Stwórz tablice rozkładu częstotliwości diagramów trigramów dla kryptogramu Na podstawie uzyskanych statystyk wywnioskuj w jaki sposób została zmieniona kolejność znaków Szyfry oparte na alfabetach przesuniętych Sprawdzana jest cała przestrzeń klucza Szyfry korzystające z przekształceń afinicznych Analiza częstości występowania liter Algorytm relaksacyjny Peleg i Rosenfeld Dla każdej litery a tekstu jawnego oraz litery b kryptogramu, na podstawie częstości występowania liter oblicza się prawdopodobieństwo Pr[f(a)=b]. Prawdopodobieństwa te są następnie iteracyjnie aktualizowane na podstawie częstości występowania trigramów. Copyright by K.Trybicka-Francik 3
Szyfry wieloalfabetowe okresowe szyfry podstawieniowe okres = d, czyli mamy d alfabetów szyfrowych f i : A -> C i dla 1 {1, d} E K (M.) = f 1 (m 1 )...f d (m d )f 1 (m d+1 )...f d (m zd )... Wskaźnik zgodności William Friedman w 1920 r. charakteryzuje rozkład częstości występowania liter w kryptogramie jeżeli d=1, to WZ będzie duże, jeżeli d, to WZ WZ 1 N d d 1 = 0,066 + d N 1 d N N 0,038 1 Obliczyć częstość występowania poszczególnych liter. Obliczyć Wskaźnik Zgodności. Porównać otrzymane wyniki z wynikami podanymi w tabeli. d 1 2 3 4 5 10 duży Oczekiwany WZ 0,066 0,052 0,047 0,045 0,044 0,041 0,038 Copyright by K.Trybicka-Francik 4
Metoda Kasiskiego Fryderyk w. Kasiski, oficer armi pruskiej, 1863 r. Analiza powtórzeń w kryptogramie które umożliwiają wyznaczenie okresu szyfru. Przykład. M = T O B E O R N O T T O B E K = H A M H A M H A M H A M H E K (M) = A O N L O D U O F A O N L (szyfr Vignere a) d => 1, 3 lub 9 -szyfry kaskadowe Algorytm DES Copyright by K.Trybicka-Francik 5
różnicowa Opublikowana w 1990 przez E. Bihama i A. Shamira. Atak typu chosen plaintext. DES z 16-rundami wymaga około 2 47 par tekst jawny-kryptogram (chosen plaintext), 2 55 par przy ataku typu known plaitext. różnicowa Z kryptograficznego punktu widzenia, ważne są następujące fazy: Operacja XOR z bitami klucza. Obliczenia wykonywane przez S-boksy. różnicowa Rozważane są pary danych wejściowych, oznaczymy je przez X i Y (64x64). Różnica ciągów X i Y to X XOR Y. Kluczowa obserwacja Stosując operację XOR z bitami klucza K otrzymujemy z ciągów X i Y: X XOR K i Y XOR K Będące danymi wejściowymi dla S-boksów. Copyright by K.Trybicka-Francik 6
różnicowa Zauważmy, że: (X XOR K) XOR (Y XOR K) = X XOR Y Różnica między X xor K i Y xor K ulega zazwyczaj zmianie poprzez zastosowanie S-boksów. Nowa rożnica jest nie tylko zależna od X xor Y ale także od konkretnych wartości X xor K i Y xor K. Trick. Okazuje się, że tylko niektóre wartości X xork i Y xork są możliwe, tym samym tylko niektóre wartości dla K. różnicowa Przykład. Rozważmy S-boks S1, oraz dane wejściowe X xor Y = 34 Możliwe są następujące różnice pomiędzy danymi wyjściowymi tego S-boksu: 1 dla 8 par 2 dla 16 par 3 dla 6 par 4 dla 2 par 7 dla 12 par 8 dla 6 par D dla 8 par F dla 6 par Przyjmując, że różnica wynosi D to mamy do wyboru jedną z 8 par. Pierwszy element tych par to jeden z ciągów: 07, 33, 11, 25, 17, 23, 1D, 29 różnicowa Drugi element różni się od pierwszego o 34. Jeżeli przyjmiemy, że danymi wejściowymi dla S1 był ciąg 07, to X xor K = 07, a to oznacza, że K = X xor 07 Postępujemy analogicznie dla innych par przy tym samym kluczu poszukiwanym. Prawdziwy klucz należy do przecięcia zbiorów potencjalnych kluczy. Copyright by K.Trybicka-Francik 7
różnicowa E. Biham, A. Shamir. Differential cryptanalysis of DES-like Cryptosystems. Journal of Cryptology, Vol.4 No.1, pages 3-72, 1991 może być użyta liniowa Została wprowadzona przez Mitsuru Matsui ego. Atak, który wykorzystuje liniowe zależności miedzy bitami s-bloków. Może być użyta jako: atak ze znanym tekstem jawnym, atak z tekstem zaszyfrowanym. Wymaga średnio 2 43 par tekst jawny-kryptogram liniowa Liniow aproksymacja S-boksów Chociaż S-boksy nie obliczają łatwych do przedstawienia funkcji (np.. Funkcji liniowych), nie oznacza to, że funkcji tych nie da się przedstawić w przybliżeniu. i 1 xor i 2 xor... xor i s = o 1 xor o 2 xor... xor o s gdzie i s oraz o s oznaczają s-ty bit danych wejściowych i danych wyjściowych Copyright by K.Trybicka-Francik 8
liniowa Przykład. S-boks S5. i 4 = o 0 xor o 1 xor o 2 xor o 3 Równość ta zachodzi dla 19% danych wejściowych. Dla 81% więc nie zachodzi. Z formuł aproksymujących liniowo pojedyncze S-boksy można zbudować formuły opisujące związki pomiędzy danymi wejściowymi rundy, bitami klucza oraz wynikami rundy. liniowa XOR (p 7, p 18, p 24, p 29, p 47, c 7, c 18, c 24, c 29, c 47 ) = k 221 xor k 3 22 gdzie: p i to i-ty bit tekstu jawnego c j to j-ty bit kryptogramu k vu to v-ty bit klucza u-tej rundy Powyższa równość zachodzi z prawdopodobieństwem q Bezpieczeństwo systemów komputerowych Ataki na implementację kryptosystemów mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Copyright by K.Trybicka-Francik 9
Tradycyjne założenia odnośnie informacji dostępnych atakującemu wejście Przekształcenie kryptograficzne (szyfrowanie, deszyfrowanie, generacja podpisu, itp..) wyjście Tajny klucz, K Tradycyjne założenia odnośnie informacji dostępnych atakującemu Ulatniające się informacje: czas pobór mocy promieniowanie elektromagnetyczne wejście Przekształcenie kryptograficzne (szyfrowanie, deszyfrowanie, generacja podpisu, itp..) wyjście Tajny klucz, K Dziękuję za uwagę Copyright by K.Trybicka-Francik 10