Zastosowanie kompresji w kryptografii Piotr Piotrowski 1
Plan prezentacji I. Wstęp II. Kryteria oceny algorytmów III. Główne klasy algorytmów IV. Przykłady algorytmów selektywnego szyfrowania V. Podsumowanie VI. Literatura 2
I. Wstęp Podstawowe właściwości: procesów kompresji, szyfrowania, oraz danych multimedialnych na tle danych tekstowych Kryteria oceny algorytmów Podstawowe parametry i dodatkowe czynniki różnicujące algorytmy 3
II. Główne G klasy algorytmów Bezpośrednie szyfrowanie Tradycyjne metody Skramblowanie Proste szyfry, Przekształcenia na sygnale analogowym, Selektywne szyfrowanie Szyfrowanie wybranych fragmentów strumienia bitowego, Podział algorytmów selektywnego szyfrowania, Schematy do szyfrowania obrazu i danych Schematy szyfrowania bazujące na chaosie Generacja bitów pseudolosowych, Permutacje z wykorzystanie map chaosu i krzywych fraktalnych 4
II. Główne G klasy algorytmów c.d. Kompresja w znakowaniu wodnym Odwracalne znaki wodne, Wbudowywanie znaku wodnego we współczynniki transformat Ukrywanie danych Kruche uwierzytelnianie Algorytmy o wysokiej pojemności wbudowywania Półkruche uwierzytelnianie Testy pseudolosowości Lempela-Ziva Kompresja w teście pseudolosowości Lempela-Ziva Inne algorytmy kryptograficzne wykorzystujące kompresję Krzyptografia torusowa, Kryptografia krzywych eliptycznych 5
Algorytmy selektywnego szyfrowania 6
Przykłady algorytmów selektywnego szyfrowania Szyfrowanie transparentne obrazów Szyfrowanie obrazów i danych wideo Szyfrowanie sekwencji wideo Zabezpieczanie kodera entropijnego Szyfrowanie danych audio Szyfrowanie mowy 7
Szyfrowanie transparentne obrazów Definicja i zastosowania szyfrowania transparentnego Szyfrowanie najmniej znaczących bitplanów oryginalnego obrazu Szyfrowanie pewnej liczby niezerowych współczynników AC transformaty DCT obrazu skompresowanego JPEG 8
Szyfrowanie obrazów w i danych wideo Szyfrowanie istotnych bitów obrazów skompresowanych SPIHT Szyfrowanie danych wideo o niskiej rozdzielczości 9
Szyfrowanie sekwencji wideo Rodzaje schematów szyfrowania danych wideo MPEG Szyfrowanie danych wideo MPEG algorytmem RVEA Szyfrowanie strumienia wideo algorytmem VEA 10
Algorytm RVEA Dla każdego makrobloku jest wybieranych do: 64 bitów znaku współczynników DCT w przypadku ramek I, 62 bitów znaku współczynników DCT oraz bity znaku wektora ruchu w przód, w przypadku ramek P, 60 bitów znaku współczynników DCT oraz bity znaku wektora ruchu w przód i w tył, w przypadku ramek B. 11
Sposób b wyboru bitów w znaku współczynnik czynników w DCT w algorytmie RVEA 12
Algorytm VEA Etapy algorytmu VEA są następujące: utworzenie bloku nagłówka dla każdej ramki MPEG typu I, dodanie KeyF do KeyM i Key i, obliczenie dla j - tego 128-bitowego segmentu strumienia bitowego, mieszanie j - tego 128-bajtowego segmentu strumienia bitowego z kombinacją kluczy i podział wynikowego segmentu na 4 kolejne 32-bajtowe części - Listy Nieparzyste oraz Listy Parzyste, operacje na parach list Parzystych i Nieparzystych, powtórzenie kroku 3), powtórzenie kroku 1) dla każdej ramki. Rodzaje kluczy stosowanych w algorytmie 13
Algorytm VEA 14
Postać ramki nagłówka MPEG używana w algorytmie VEA 15
Algorytm zapewniający poufność kodowania entropijnego Wybór określonego drzewa Huffmana dla danego słowa kodowego Procedura kodowania entropijnego opartego na wielokrotnych tablicach Huffmana: generacja 2 k różnych tablic Huffmana, ponumerowanych od 0 do 2 k 1, generacja m - bitowej sekwencji pseudolosowej s, obliczenie części całkowitej z r = m/k, obliczenie h(s) = t 1 t 2 t r rem, gdzie: t i jest liczbą od 0 do n 1 wyrażoną za pomocą k-bitów, rem pozostałe bity jeśli m nie jest wielokrotnością k, dla każdego i, gdzie i = 1,2, r, użycie tablicy t i do zakodowania pojedynczego symbolu, ustawienie s = s + 1, po zakodowaniu r symboli i powrót do kroku 4. Rodzaje kluczy stosowanych w algorytmie 16
Proces mutacji drzewa Huffmana 17
Szyfrowanie danych audio Modyfikacja i szyfrowanie określonych pól ramki MP3, Optymalizacja liczby zaszyfrowanych bitów i wprowadzanych zniekształceń sygnału audio. 18
Szyfrowanie mowy G.729 Znaczenie dla percepcji poszczególnych parametrów wyjściowych kodeka stanowi kryterium wyboru bitów do zaszyfrowania 19
Podsumowanie Znaczne zmniejszenie ilości przetwarzanych danych i skrócenie czasu obliczeń, Zastosowanie do zabezpieczenia danych: wideo, obrazu, audio, mowy oraz usług multimedialnych: wideokonferecji, VoD, telewizji rozsiewczej, multimedialnych baz danych, Niewielki wpływ na stopień kompresji, Podatność na ataki oraz utrata zgodności z formatem MPEG w algorytmach selektywnego szyfrowania wideo. 20
Literatura Furht B., Kirovski D., Multimedia Security Handbook, CRC Press, 2005. Furht B., Socek D., A Survey of Multimedia Security, Comprehensive Report on Information Security, IEC 2004. Lookabaugh T. D. i inni, Security Analysis of Selectively Encrypted MPEG-2 Streams, Proceedings of the SPIE, Vol. 5241, pp. 10-21, November 2003. Öztürk I., Soğukpinar I., Analysis and Comparison of Image Encryption Algorithms, International Journal of Information Technology, Vol. 1, No. 2, 2004. Uhl A., Pommer A., Image and Video Encryption. From Digital Rights Management to Secured Personal Communication, Springer, 2005. Wang C., Cryptography in Data Compression., CodeBreakers- Journal, Vol. 2, No. 3, 2005. Opisy algorytmów 21