Bezpieczeństwo systemów komputerowych Kryptoanaliza Metody
Transkrypt
Bezpieczeństwo systemów komputerowych Kryptoanaliza Metody
BSK_2003 Bezpieczeństwo systemów komputerowych Metody łamania szyfrów • • • • • • Kryptoanaliza Łamanie Łamanie Łamanie Łamanie Łamanie Łamanie z szyfrogramem ze znanym tekstem jawnym z wybranym tekstem jawnym z adaptacyjnie wybranym tekstem jawnym z wybranym szyfrogramem z wybranym kluczem mgr Katarzyna Trybicka-Francik [email protected] pok. 503 BSK - 2003 Cel • • • • Badane własności Całkowite złamanie szyfru Ogólne wnioskowanie Lokalne wnioskowanie Częściowy wnioskowanie BSK - 2003 • • • • • • • Copyright by K. Trybicka-Francik Własność komplementarności Kolizje kluczy Klucze słabe Klucze półsłabe Punkty stałe Efekt lawinowy Podatność na znane ataki kryptograficzne BSK - 2003 Analiza statystyczna Kryptoanaliza różnicowa Kryptoanaliza liniowa Analiza różnicowa mocy Analiza z pomiarem czasu wykonywania operacji BSK - 2003 Copyright by K.Trybicka-Francik Copyright by K. Trybicka-Francik Kryptoanaliza - szyfry przestawieniowe Techniki • • • • • Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik • Łatwo rozpoznawalne – częstość występowania liter • Metoda kryptoanalizy – metoda anagramowa BSK - 2003 Copyright by K. Trybicka-Francik 1 BSK_2003 Kryptoanaliza - 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 Kryptoanaliza - szyfry podstawieniowe • 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 dla kryptogramu • Na podstawie uzyskanych statystyk wywnioskuj w jaki sposób została zmieniona kolejność znaków BSK - 2003 Copyright by K. Trybicka-Francik BSK - 2003 Kryptoanaliza - szyfry podstawieniowe • Algorytm relaksacyjny Kryptoanaliza - szyfry podstawieniowe • Szyfry wieloalfabetowe Peleg i Rosenfeld – okresowe szyfry podstawieniowe 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. BSK - 2003 Copyright by K. Trybicka-Francik • okres = d, czyli mamy d alfabetów szyfrowych • fi : A -> Ci dla 1∈{1, d} EK(M.) = f1(m1)...fd(md)f1(md+1)...fd(mzd)... BSK - 2003 Kryptoanaliza - szyfry podstawieniowe • Obliczyć częstość występowania poszczególnych liter. • Obliczyć Wskaźnik Zgodności. • Porównać otrzymane wyniki z wynikami podanymi w tabeli. 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 ↓ §1·N −d § d −1· N WZ = ¨ ¸ 0 , 066 + ¨ 0 , 038 ¸ © d ¹ N −1 © d ¹ N −1 Copyright by K.Trybicka-Francik Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik Kryptoanaliza - szyfry podstawieniowe • Wskaźnik zgodności William Friedman w 1920 r. BSK - 2003 Copyright by K. Trybicka-Francik BSK - 2003 d Oczekiwany WZ 1 2 3 4 5 10 duży 0,066 0,052 0,047 0,045 0,044 0,041 0,038 Copyright by K. Trybicka-Francik 2 BSK_2003 Kryptoanaliza - szyfry podstawieniowe Kryptoanaliza -szyfry kaskadowe • 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 OB EO RNOT TO BE K=HAMHAMHAMHAMH EK(M) = A O N L O D U O F A O N L (szyfr Vignere’a) d => 1, 3 lub 9 BSK - 2003 Copyright by K. Trybicka-Francik BSK - 2003 Algorytm DES Copyright by K. Trybicka-Francik Kryptoanaliza różnicowa • Opublikowana w 1990 przez E. Bihama i A. Shamira. • Atak typu chosen plaintext. • DES z 16-rundami wymaga około 247 par tekst jawny-kryptogram (chosen plaintext), 255 par przy ataku typu known plaitext. BSK - 2003 Copyright by K. Trybicka-Francik BSK - 2003 Kryptoanaliza różnicowa Copyright by K. Trybicka-Francik Kryptoanaliza różnicowa Z kryptograficznego punktu widzenia, ważne są następujące fazy: • Operacja XOR z bitami klucza. • Obliczenia wykonywane przez S-boksy. • 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. BSK - 2003 Copyright by K.Trybicka-Francik Copyright by K. Trybicka-Francik BSK - 2003 Copyright by K. Trybicka-Francik 3 BSK_2003 Kryptoanaliza różnicowa Kryptoanaliza różnicowa Zauważmy, że: (X XOR K) XOR (Y XOR K) = X XOR Przykład. Rozważmy S-boks S1, oraz dane wejściowe X xor Y = 34 Y Możliwe są następujące różnice pomiędzy danymi wyjściowymi tego S-boksu: 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. 1 dla 8 par 3 dla 6 par 7 dla 12 par D dla 8 par Trick. 2 dla 16 par 4 dla 2 par 8 dla 6 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: Okazuje się, że tylko niektóre wartości X xor K i Y xor K są możliwe, tym samym tylko niektóre wartości dla K. 07, 33, 11, 25, 17, 23, 1D, 29 BSK - 2003 Copyright by K. Trybicka-Francik BSK - 2003 Kryptoanaliza różnicowa Copyright by K. Trybicka-Francik Kryptoanaliza różnicowa Drugi element różni się od pierwszego o 34. E. Biham, A. Shamir. 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 Differential cryptanalysis of DES-like Cryptosystems. Journal of Cryptology, Vol.4 No.1, pages 3-72, 1991 Postępujemy analogicznie dla innych par przy tym samym kluczu poszukiwanym. Prawdziwy klucz należy do przecięcia zbiorów potencjalnych kluczy. BSK - 2003 Copyright by K. Trybicka-Francik może być użyta BSK - 2003 Kryptoanaliza liniowa Copyright by K. Trybicka-Francik Kryptoanaliza liniowa • Liniow aproksymacja S-boksów • 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. i1 xor i2 xor ... xor is = o1 xor o2 xor ... xor os • Wymaga średnio 243 par tekst jawny-kryptogram BSK - 2003 Copyright by K.Trybicka-Francik 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. gdzie is oraz os oznaczają s-ty bit danych wejściowych i danych wyjściowych Copyright by K. Trybicka-Francik BSK - 2003 Copyright by K. Trybicka-Francik 4 BSK_2003 Kryptoanaliza liniowa Kryptoanaliza liniowa Przykład. S-boks S5. XOR (p7, p18, p24, p29, p47, c7, c18, c24, c29, c47) = k221 xor k223 i4= o0 xor o1 xor o2 xor o3 gdzie: pi to i-ty bit tekstu jawnego Równość ta zachodzi dla 19% danych wejściowych. Dla 81% więc nie zachodzi. cj to j-ty bit kryptogramu kvu to v-ty bit klucza u-tej rundy Powyższa równość zachodzi z prawdopodobieństwem q 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. BSK - 2003 Copyright by K. Trybicka-Francik BSK - 2003 Copyright by K. Trybicka-Francik Bezpieczeństwo systemów komputerowych Tradycyjne założenia odnośnie informacji dostępnych atakującemu Ataki na implementację kryptosystemów wejście Przekształcenie kryptograficzne (szyfrowanie, deszyfrowanie, generacja podpisu, itp..) mgr Katarzyna Trybicka-Francik [email protected] pok. 503 wyjście Tajny klucz, K BSK - 2003 Copyright by K. Trybicka-Francik 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..) Dziękuję za uwagę wyjście Tajny klucz, K BSK - 2003 Copyright by K.Trybicka-Francik Copyright by K. Trybicka-Francik BSK - 2003 Copyright by K. Trybicka-Francik 5