1 / 70

Szyfrowanie symetryczne 1

Szyfrowanie symetryczne 1. Plan wykładu. Historia Model szyfrowanie konwencjonalnego Steganografia Algorytmy podstawieniowe Algorytmy transpozycyjne Sieci Fiestela Algorytm DES Algorytm IDEA Podsumowanie. Plan wykładu. Historia Model szyfrowanie konwencjonalnego Steganografia

ivory
Download Presentation

Szyfrowanie symetryczne 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Szyfrowanie symetryczne 1

  2. Plan wykładu • Historia • Model szyfrowanie konwencjonalnego • Steganografia • Algorytmy podstawieniowe • Algorytmy transpozycyjne • Sieci Fiestela • Algorytm DES • Algorytm IDEA • Podsumowanie

  3. Plan wykładu • Historia • Model szyfrowanie konwencjonalnego • Steganografia • Algorytmy podstawieniowe • Algorytmy transpozycyjne • Sieci Fiestela • Algorytm DES • Algorytm IDEA • Podsumowanie

  4. Historia • W VII w p.n.e w Grecji stosowano do szyfrowania scytale • Tekst pisany był na nawiniętym na patyk pasku skórzanym • Po rozwinięciu tekst widoczny na pasku był trudny do odszyfrowania • Odszyfrowanie wymaga ponownego nawięnięcia na patyk • Na przykład tekst „Proszę o pomoc” Pros zęop omoc • Po odczytaniu na pasku wygląda „pzoręmooospc”

  5. Historia • Szyfr Cezara polegający na przesunięciu liter tesktu o 3 używany przez Juliusz Cezara do komunikacji z wojskami • Dzięki stosowaniu tego szyfru Juliusz Cezar podbił całą Galię z wyjątkiem pewnej małej wioski ;-)

  6. Historia • Polacy w czasie wojny polsko-bolszewickiej (1919-1920) potrafili odszyfrować depesze wroga, co ułatwiało działania wojenne (więcej na serwisy.gazeta.pl/df/1,34467,2856516.html

  7. Historia • Enigma – maszyna szyfrująca używana przez wojska niemieckie od lat 20 XX wieku do czasów drugiej wojny światowej. W 1932 roku Enigma została złamana przez polskich matematyków: Marian Rejewski, Jerzy Różycki i Henryk Zygalski)

  8. Plan wykładu • Historia • Model szyfrowanie konwencjonalnego • Steganografia • Algorytmy podstawieniowe • Algorytmy transpozycyjne • Sieci Fiestela • Algorytm DES • Algorytm IDEA • Podsumowanie

  9. Uproszczony model szyfrowania konwencjonalnego

  10. Model szyfrowania konwencjonalnego • Szyfrator tworzy tekst zaszyfrowany Y=EK(X) • Odbiorca posiadający klucz może odwrócić przekształcenie X=DK(Y) • Przeciwnik śledzący Y, ale pozbawiony dostępu do X i K, próbuje odgadnąć hipotetyczny tekst jawny X` i hipotetyczny klucz K`. Zakładamy, że zna on algorytm szyfrujący E i deszyfrujący D

  11. Techniki szyfrowania • Steganografia służy do ukrycia faktu istnienia komunikatu, np. zaznaczanie liter, atrament sympatyczny • Techniki podstawiania polega na zastępowaniu elementów (bitów) tekstu jawnego innymi elementami (bitami) • Techniki transpozycyjne polegają na permutacji liter (przestawieniu) tekstu jawnego

  12. Plan wykładu • Historia • Model szyfrowanie konwencjonalnego • Steganografia • Algorytmy podstawieniowe • Algorytmy transpozycyjne • Sieci Fiestela • Algorytm DES • Algorytm IDEA • Podsumowanie

  13. Steganografia • Herodot w "Dziejach" opisuje następujący tajny przekaz informacji • Despota Hiastus przetrzymywany przez króla perskiego Dariusza postanawia przesłać informację do swego zięcia Arystogorasa z Miletu, tak aby mogła się ona przedostać mimo pilnujących go strażników • Aby tego dokonać na wygolonej głowie swego niewolnika tatuuje przesłanie • Kiedy niewolnikowi odrosły włosy posyła go z oficjalnym, mało istotnym listem

  14. Steganografia • Stosowanie atramentu sympatycznego • Nakłuwanie szpilką liter tekstu (książki) • Sformułowanie komunikatu, aby sekwencja kolejnych liter, sylab bądź wyrazów tworzyła ukrytą wiadomość

  15. Steganografia w informatyce • W komputerowym zapisie obrazu (zdjęcie jpg, film mpg) lub dźwięku (mp3) pewne bity można zmienić bez wpływu na jakość obrazu (dźwięku) • Na tych bitach przesyłane są tajne informacje, które można odczytać wiedząc gdzie zostały ukryte

  16. Plan wykładu • Historia • Model szyfrowanie konwencjonalnego • Steganografia • Algorytmy podstawieniowe • Algorytmy transpozycyjne • Sieci Fiestela • Algorytm DES • Algorytm IDEA • Podsumowanie

  17. Techniki podstawiania • Technika podstawienia polega na zastępowaniu elementów (liter, bitów) tekstu jawnego innymi elementami (b literami, bitami) według ustalonego schematu • Przykładowe algorytm: szyfr Cezara, Szyfr Playfair, szyfr Vigenere’a

  18. Szyfr Cezara • Szyfr Cezara polega na zastąpieniu każdej litery alfabetu literą znajdującą się o trzy pozycje dalej C=E(p)=(p+3) mod (26) • C to litera tekstu zaszyfrowanego odpowiadająca literze tekstu jawnego o indeksie p • Przesunięcie może mieć wielkość dowolną, więc ogólna postać algorytmu wygląda następująco: C=E(p)=(p+k) mod (26), 0<k<26 • Algorytm deszyfrujący ma postać: p=D(C)=(C-k) mod (26)

  19. Szyfr Cezara • Przykład dla szyfru Cezara (przesunięcie o 3 znaki) • Klucz a b c d e f g h i j k l m n o p q r s t u v w x y z D E F G H I J K L M N O P Q R S T U V W X Y Z A B C • Szyfrowanie tekst jawny : szyfr juliusza cezara tekst zaszyfrowany: VCBIU MXOLXVCD FHCDUD • Dla szyfru Cezara łatwo można przeprowadzić kryptoanalizę metodą brutalną polegającą na wypróbowaniu 25 możliwych kluczy k

  20. Szyfry jednoalfabetowe • Dla szyfrów jednoalfabetowych możemy zastosować jako szyfr dowolną permutację 26 znaków alfabetu • Oznacza to 26!=4*1026 możliwych kluczy, czyli można wykluczyć próby rozszyfrowania metodą brutalną • Jednak, jeśli krypotanalityk zna tekst zaszyfrowany i jego charakter (język tekstu jawnego), może on wykorzystać regularności zawarte w języku

  21. Szyfry jednoalfabetowe - kryptoanaliza • Dla każdego języka można określić względną częstość występowania liter (film „Motyl i skafander”) • Poniższa tabela prezentuje procentową częstość względną występowania poszczególnych liter w tekście angielskim

  22. Szyfry jednoalfabetowe - kryptoanaliza • Można również przeanalizować częstość występowania kombinacji dwuliterowych, zwanych dwuznakami • Szyfry jednoalfabetowe są łatwe do złamania ponieważ odzwierciedlają częstości alfabetu oryginału • Aby temu zaradzić można jednej literze przypisać rotacyjnie kilka symboli szyfrowych (homofony)

  23. Szyfr Playfair • Szyfr Playfair, traktuje dwuznaki tekstu jawnego jako osobne jednostki i tłumaczy na dwuznaki zaszyfrowane • Algorytm Playfair używa matrycy 5x5, zbudowanej przy użyciu słowa kluczowego • Np. dla słowa kluczowego MONARCHY matryca wygląda następująco:

  24. Szyfr Playfair • Powtarzające się litery tekstu jawnego oddziela się literą wypełniającą • W przypadku, gdy litery pary liter tekstu jawnego występują w tym samym wierszu matrycy, zastępuje się każdą z nich literą o jedną pozycję w prawo • W przypadku, gdy litery pary liter tekstu jawnego występują w tej samej kolumnie matrycy, zastępuje się każdą z nich literą o jedną pozycję w dół • Jeżeli nie zachodzi żaden z powyższych przypadków, każda litera z pary liter tekstu jawnego zastępuje się literą leżącą w tym samym, co ona rzędzie, lecz w kolumnie, w której leży druga litera

  25. Szyfr Playfair – przykład jawny : the Playfaif is good jawny : th eP la yf ai fi sg ox od zaszyfrowany: PD FL SM HG BS GK QI AV RH

  26. Szyfry wieloalfabetowe • Szyfr wieloalfabetowy polega na stosowaniu różnych podstawień jednoalfabetowych podczas szyfrowania jednego komunikatu • Przykładem szyfru wieloalfabetowego jest szyfr Vigenere’a, w którym stosuje się szyfr Cezara z przesunięciami od 0 do 25 • Litera klucza wyznacza wiersz tablicy • Litera tekstu jawnego kolumnę tablicy

  27. Szyfr Vigenere’a - przykład klucz : deceptivedeceptivedeceptive tekst jawny : wearediscoveredsaveyourself tekstzaszyfrowany: ZICVTWQNGRZGVTWAVZHCQYGLMGJ

  28. Losowe szyfry wieloalfabetowe • Dla szyfru wieloalfabetowego można zastosować losowy klucz, o takiej samej długości co komunikat, bez powtórzeń • Taki system, zwany systemem z kluczem jednorazowym (ang. one time pad), jest nie do złamania • Wynikiem jego działania jest losowy tekst, który nie ma żadnych statystycznych związków z tekstem jawnym • Praktycznym utrudnieniem jest konieczność posiadania i strzeżenia losowego klucza przez nadawcę i odbiorcę

  29. Porównanie szyfrów

  30. Plan wykładu • Historia • Model szyfrowanie konwencjonalnego • Steganografia • Algorytmy podstawieniowe • Algorytmy transpozycyjne • Sieci Fiestela • Algorytm DES • Algorytm IDEA • Podsumowanie

  31. Techniki transpozycyjne • Techniki transpozycyjne polegają na permutacji liter tekstu jawnego • Najprostszym takim szyfrem jest tzw. technika płotu, polegająca na tym, że tekst jawny zapisuje się jako ciąg kolumn, a odczytuje jako ciąg wierszy • Na przykład dla płotu o wysokości 2 tekst jawny : szyfrtranspozycyjny syrrnpzcjy zftasoyyn tekst zaszyfrowany: syrrnpzcjyzftasoyyn

  32. Techniki transpozycyjne • Bardziej skomplikowany system polega na zapisaniu komunikatu w prostokącie, a następnie odczytanie ze zmianą kolejności kolumn Klucz : 3 1 4 2 7 6 5 tekst jawny : b a r d z i e j s k o m p l i k o w a n y s y s t e m p o l e g a n a tekst zaszyfrowany: ASKYLDOWTGBJISORKOSEELYPAIPNMNZMAEA • Szyfr transpozycyjny można uczynić znaczenie bezpieczniejszym poprzez stosowanie kilku etapów transpozycji, co utrudnia znacznie rekonstrukcję klucza

  33. Konfuzja i dyfuzja Shannon, twórca teorii informacji przedstawił w 1949 roku dwie główne zasady szyfrowania: • Konfuzja oznacza rozmycie zależności pomiędzy tekstami jawnymi a ich zaszyfrowanymi wersjami • Dyfuzja oznacza rozłożenie zawartych w tekście jawnym informacji w całym tekście zaszyfrowanym Proste szyfry podstawieniowe (szyfr Cezera, szyfr Vigenere’a) zapewniają tylko konfuzję, gdyż każda litera jest szyfrowana oddzielnie

  34. Efekt lawinowy • Efektem lawinowym określamy intensywniejszy niż dla dyfuzji rozmazanie tekstu jawnego w tekście zaszyfrowanym • Jest spotykany dla szyfrowania blokowego • Każdy bit zaszyfrowanego tekstu zależy od wszystkich bitów tekstu jawnego w danym bloku • Dla zmiany pojedynczego bitu tekstu jawnego lub klucza, każdy bit tekstu zaszyfrowanego powinien zmienić swoją wartość z prawdopodobieństwem równym dokładnie 50% • Kryptoanaliza różnicowa wykorzystuje nawet niewielkie odstępstwo od tej zasady

  35. Algorytmy produktowe • Większość współczesnych algorytmów blokowych to algorytmy produktowe – po kolei wykonywane są proste, stosunkowo mało bezpieczne kroki szyfrujące zwane rundami (iteracjami) • Dzięki stosowaniu wielu rund bezpieczeństwo algorytmu znacząco rośnie

  36. Plan wykładu • Historia • Model szyfrowanie konwencjonalnego • Steganografia • Algorytmy podstawieniowe • Algorytmy transpozycyjne • Sieci Fiestela • Algorytm DES • Algorytm IDEA • Podsumowanie

  37. Sieci Feistela • Wiele algorytmów blokowych z jednym kluczem wykorzystuje tzw. Sieci Feistela

  38. Sieci Feistela • Każdy blok dzielony jest na dwie równe połówki, oznaczane dla i-tej rundy jako Li (lewa połówka) oraz Ri (prawa połówka) • Właściwe szyfrowanie polega na zamianie miejscami obu połówek, a następnie zastąpieniu prawego bloku Ri przez XOR fS,i(Ri) oraz Li • Funkcja fS,i wprowadza klucz i-tej rundy, czyli klucz obliczany na podstawie klucza głównego S • Zazwyczaj każda runda ma inny klucz rundy • Funkcje fS,i nie muszą być odwracalne

  39. Sieci Feistela • Szyfrowanie Li+1 = Ri     Ri+1 = Li XOR fS,i(Ri) • Właściwość Li = (Li XOR fS,i(Ri)) XOR fS,i(Ri) = Ri+1 XOR fS,i(Ri) • Deszyfrowanie Rn-1 = Ln     Ln-1 = Rn XOR fS,n-1(Rn-1) . . . R0 = L1     L0 = R1 XOR fS,0(R0)

  40. Plan wykładu • Historia • Model szyfrowanie konwencjonalnego • Steganografia • Algorytmy podstawieniowe • Algorytmy transpozycyjne • Sieci Fiestela • Algorytm DES • Algorytm IDEA • Podsumowanie

  41. Algorytm DES - historia • 1971 – pierwszy patent dotyczący algorytmu Lucifer opracowanego przez Horst Fiestel i jego kolegów w IBM • 1973 – NBS (National Bureau of Standar) ogłosza konkursu na algorytm szyfrujący • 1977 – FIPS (wcześniej NBS) publikuje algorytm DES (ang. Data Encryption Standard) oparty na Lucifer jako standard FIPS 46 • 1999 – DES potwierdzony po raz 4 przez NIST w wersji Triple DES jako FIPS 46-3 • 2001 – publikacja AES (Advanced Encryption Standard) jako FIPS 197 • 2005 – NIST wycofuje DES (FIPS 46-3)

  42. DES w pigułce • Dane są szyfrowane w 64-bitowych blokach • Klucz ma długość 56 bitów • Algorytm produktowy – stosuje transpozycje w kolejnych etapach (iteracjach) • Szyfrowanie polega na serii etapów przetwarzających 64-bitowe dane wejściowe na 64-bitowy wynik • Deszyfrując wykonuje się te same etapy i ten sam klucz, ale w odwrotnej kolejności • Najważniejszym elementem algorytmu są S-bloki (ang. S-box)

  43. Ogólny schemat DES

  44. Permutacja wstępna • Permutację wstępną IP i jej odwrotność IP-1 definiuje poniższa tabela • Obie funkcje są odwrotne względem siebie • Jeżeli szyfrujemy blok M to tekst po permutacji wygląda następująco X=IP(M) • Po permutacji odwrotnej otrzymujemy Y= IP-1(X)=IP-1(IP(M))=M

  45. Pojedyncza iteracja DES

  46. Permutacja rozszerzająca • Permutacja rozszerzająca powoduje wygenerowanie z 32 bitów wejściowych 48 bitów wyjściowych według podanej tabeli

  47. S-blok

  48. S-blok • Pierwszy i ostatni bit wejścia S-bloku wskazuje odpowiedni wiersz tabeli S-bloku • Środkowe 4 bity określają kolumnę • Na przykład wejście: 011011 wiersz 01 (1) kolumna 1101 (13) wyjście: 5 (0101)

  49. Łamanie DES • Krótki klucz 56 bitowych – metoda brute force ma złożoność 256 = 7*1016 • Kryptoanaliza różnicowa • Kryptoanaliza liniowa

More Related