Analiza metod wykrywania przekazów steganograficznych. Magdalena Pejas Wydział EiTI PW magdap7@gazeta.pl



Podobne dokumenty
Zastosowanie testowania wielu hipotez do steganalizy. Magdalena Pejas Prof. Andrzej DąbrowskiD

PODYPLOMOWE STUDIA ZAAWANSOWANE METODY ANALIZY DANYCH I DATA MINING W BIZNESIE

Zasady organizacji projektów informatycznych

Elementy modelowania matematycznego

ALGORYTM RANDOM FOREST

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie

Analiza danych. TEMATYKA PRZEDMIOTU

AUTOMATYKA INFORMATYKA

4.1. Wprowadzenie Podstawowe definicje Algorytm określania wartości parametrów w regresji logistycznej...74

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Rozglądanie się w przestrzeni Iris czyli kręcenie (głową/płaszczyzną) w czterech wymiarach

Spis treści WSTĘP... 9

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa

Metody klasyfikacji danych - część 1 p.1/24

Metody systemowe i decyzyjne w informatyce

Eksploracja Danych. wykład 4. Sebastian Zając. 10 maja 2017 WMP.SNŚ UKSW. Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja / 18

PROJEKTOWANIE. kodowanie implementacja. PROJEKT most pomiędzy specyfikowaniem a kodowaniem

Pattern Classification

ZAGADNIENIA DO EGZAMINU DYPLOMOWEGO NA STUDIACH INŻYNIERSKICH. Matematyka dyskretna, algorytmy i struktury danych, sztuczna inteligencja

Algorytmy klasyfikacji

Text mining w programie RapidMiner Michał Bereta

Techniki ukrywania informacji w danych cyfrowych i narzędzia je wykrywające

Analiza korespondencji

Inteligentne wydobywanie informacji z internetowych serwisów społecznościowych

Uczenie sieci neuronowych i bayesowskich

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

mgr inż. Magdalena Deckert Poznań, r. Metody przyrostowego uczenia się ze strumieni danych.

Transformacja wiedzy w budowie i eksploatacji maszyn

Systemy uczące się wykład 2

Testowanie hipotez statystycznych

Drzewa Decyzyjne, cz.2

Metody systemowe i decyzyjne w informatyce

Metody selekcji cech

Optymalizacja systemów

Kompresja danych DKDA (7)

Mail: Pokój 214, II piętro

Sprzętowo wspomagane metody klasyfikacji danych

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

Kodowanie transformacyjne. Plan 1. Zasada 2. Rodzaje transformacji 3. Standard JPEG

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

Steganograficzny system plików

SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

KLASYFIKACJA. Słownik języka polskiego

Matematyka dyskretna

Technologia dynamicznego podpisu biometrycznego

Część 2. Teoretyczne i praktyczne aspekty wybranych metod analiz ilościowych w ekonomii i zarządzaniu

Uczenie sieci typu MLP

Systemy uczące się wykład 1

Niezawodność i diagnostyka systemów cyfrowych projekt 2015

Wykład VII. Systemy kryptograficzne Kierunek Matematyka - semestr IV. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Oprogramowanie PTS w wersji 3.3

Spis treści. Wstęp Część I Internet rozwiązania techniczne... 13

Praca dyplomowa. Program do monitorowania i diagnostyki działania sieci CAN. Temat pracy: Temat Gdańsk Autor: Łukasz Olejarz

System wspomagania harmonogramowania przedsięwzięć budowlanych

Data Mining Wykład 4. Plan wykładu

e-sprawdzian instrukcja programu do sprawdzania wiedzy ucznia przy pomocy komputera (WINDOWS & LINUX)


Analiza i Przetwarzanie Obrazów. Szyfrowanie Obrazów. Autor : Mateusz Nawrot

Konstrukcja biortogonalnych baz dyskryminacyjnych dla problemu klasyfikacji sygnałów. Wit Jakuczun

Zapewnianie bezbłędności transmisji steganograficznej (Blok tematyczny S2B: Jakość sieci i usług)

Zestaw zagadnień na egzamin dyplomowy inżynierski

Teoria obliczeń i złożoność obliczeniowa

Data Mining Wykład 6. Naiwny klasyfikator Bayes a Maszyna wektorów nośnych (SVM) Naiwny klasyfikator Bayesa.

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Michał Strzelecki Metody przetwarzania i analizy obrazów biomedycznych (3)

II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI

Co to jest grupowanie

Algorytmy, które estymują wprost rozkłady czy też mapowania z nazywamy algorytmami dyskryminacyjnymi.

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

Wykład 4 Wybór najlepszej procedury. Estymacja parametrów re

Modyfikacja algorytmów retransmisji protokołu TCP.

Wprowadzenie do programu RapidMiner Studio 7.6, część 4 Michał Bereta

Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS

teoria informacji Kanały komunikacyjne, kody korygujące Mariusz Różycki 25 sierpnia 2015

Najwyżej ocenione raporty dla Mr Buggy 4

Opis ultradźwiękowego generatora mocy UG-500

BIOINFORMATYKA. Copyright 2011, Joanna Szyda

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Trafność czyli określanie obszaru zastosowania testu

Jakość uczenia i generalizacja

Praca dyplomowa magisterska

Zastosowanie modelu regresji logistycznej w ocenie ryzyka ubezpieczeniowego. Łukasz Kończyk WMS AGH

Celem tych ćwiczeń jest zapoznanie się z klasyfikacją za pomocą sieci neuronowych.

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 1 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH

Diagnostyka procesów przemysłowych Kod przedmiotu

Wprowadzenie do uczenia maszynowego

Konwerter Plan testów. Jakub Rauch Tomasz Gołębiowski Adam Busch Bartosz Franaszek 1 czerwca 2008

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

Testowanie hipotez statystycznych

Generowanie liczb o zadanym rozkładzie. ln(1 F (y) λ

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Klasyfikacja metodą Bayesa

Zastosowania sieci neuronowych

1. Symulacje komputerowe Idea symulacji Przykład. 2. Metody próbkowania Jackknife Bootstrap. 3. Łańcuchy Markova. 4. Próbkowanie Gibbsa

Według raportu ISO z 1988 roku algorytm JPEG składa się z następujących kroków: 0.5, = V i, j. /Q i, j

Rozdział 9 PROGRAMOWANIE DYNAMICZNE

Opis efektów kształcenia dla modułu zajęć

Metody systemowe i decyzyjne w informatyce

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

Kombinacja jądrowych estymatorów gęstości w klasyfikacji - zastosowanie na sztucznym zbiorze danych

Transkrypt:

Analiza metod wykrywania przekazów steganograficznych Magdalena Pejas Wydział EiTI PW magdap7@gazeta.pl

Plan prezentacji Wprowadzenie Cel pracy Tezy pracy Koncepcja systemu Typy i wyniki testów Optymalizacja parametrów systemu Implementacja systemu Podsumowanie 2

Steganografia i steganoanaliza E Dane do ukrycia Funkcja steganograficzna M Dane z ukrytą wiadomością C Dane nośne Klucz steganograficzny Kanał Komunikacyjny Opcjonalne E1 Wiadomość oryginalna Odwrotna funkcja steganograficzna M1 Dane z ukrytą wiadomością Decyzja Funkcja steganoalityczna 3

Cel pracy Opracowanie możliwie skutecznego zintegrowanego systemu testów wykrywających przekazy steganograficzne umożliwiającego: Wykrywanie nowych technik ukrywania przekazów steganograficznych, Konstrukcję nowych testów wykrywających zastosowanie poznanych technik ukrywania danych, Systematyczne testowanie danych cyfrowych na obecność przekazów steganograficznych. 4

Teza pracy Możliwa jest budowa zintegrowanego systemu steganoanalitycznego oraz jego optymalizacja pod względem poziomu błędów pierwszego i drugiego rodzaju, szybkości działania oraz wielkości użytych zasobów komputera poprzez: Odpowiedni wybór testów wykrywających przekazy steganograficzne oraz kolejności ich wykonywania, Opracowanie koncepcji systemu testowania, Wykorzystanie informacji o dotychczasowej częstości pojawiania się przekazów steganograficznych. 5

Koncepcja systemu Plik Import danych Obiekt cyfrowy Ekstrakcja cech Baza wiedzy Klasyfikacja i Tak Nie 6

Faza testowania Plik Import danych i ekstrakcja cech Sygnatury Znajdź sygnatury Tak Nie Anomalie Znajdź anomalie Tak Progi decyzyjne Nie Testy gładkości 7

Części składowe systemu Rozpoznawcza podgląd graficzny interaktywność Trenująca wszystkie testy tryb wsadowy Testowa wybrane testy optymalizacja klasyfikatora 8

Typy testów Statyczne sygnatury Lokalne anomalie w strukturze danych Efekty dwukrotnego kodowania Efekty pojemnościowe Klasa Nazwa (programu) Opis Zmienna decyzyjna Wartość progowa Warunek decyzyjny Implementacja (Matlab) Klasa, do której dany test należy Nazwa programu, którego dotyczy test Opis testu Wartość testowana Wartość progowa Opis formalny warunku testu Implementacja warunku Jakość P = { P, P, P, P } 10 11 00 01 Wielkość błędu klasyfikacji Złożoność On ( ) Szacowana złożoność obliczeniowa testu 9

Przykład deskryptora testów Klasa Nazwa (programu) Opis Zmienna decyzyjna Wartość progowa Warunek decyzyjny Implementacja (Matlab) Jakość Złożoność P= { P, P, P, P} On () 10 11 00 01 Sygnatura Courier 1.0 Znajduje określony ciąg bitów w drugim wierszu obrazu. v(c)=bitand(1,m(2,:,c)),c = 1..3 * s g n = [10] 0, x np x < 1, width ( m ) >, c { r, g, b } lsb(m(2,x,c)== 1, x P s1(c)=sum(lsb(2,1:2:y,c)==0); s2(c)=sum(lsb(2,2:2:y,c)==1); test(c)=(abs(s1+s2-y )<=2); P ={0,1,1,0} O( width( image)) 10

Przykład deskryptora testów Klasa Nazwa (programu) Opis Zmienna decyzyjna Wartość progowa Warunek decyzyjny Implementacja (Matlab) Anomalie Stealth Files Znajduje ciąg liter na końcu pliku. d=dataload(filename);l=length(d);d(l-7:l) λ thr =< 97,122> <65,90> min( s) = int(' a') s = f( x: length( f)), max( s) = int(' z') thr=[97,122]; sum(d(l-7:l)>=thr(1) & d(l-7:l)<=thr(2))==8 Jakość Złożoność P= { PPPP,,, } On () 10 11 00 01 2*26 1 P10 ( n) = P( bi [ a.. Z]) = ~ ( ) i= 1.. n 256 5 O( width( image)) n n 11

Jakość testów korelacyjnych 12

Wybrane testy Symbol Opis Wzór Smt1 Smt2 Smt3 Smt4 Blc Gładkość wektora Gładkość macierzy Kontrast 2D - 1 Kontrast 2D - 2 Blokowość N i= 2 MN i= 2, j= 1 X X / N i X X /( M N) ( M 1) ( N 1) i= 2, j= 2 ( M 1)( N 1) i= 2, j= 2 i, j i 1, j i 1 4 X X X X X i, j i, j 1 i, j+ 1 i 1, j i+ 1, j 4 X X X X X i, j i 1, j 1 i 1, j+ 1 i+ 1, j 1 i+ 1, j+ 1 M /8 N M N/8 ( X X ) + ( X X ) 8 k+ 1, j 8 k+ 1, j 1 i,8 l+ 1 i 1,8 l+ 1 k= 1 j= 1 i= 1 l= 1 13

Kryterium Fishera Wybór najlepszych testów Lepsze jest kryterium Bayesa Rozkłady nie są Gaussowskie Utrata informacji przy redukcji wymiaru uur W 2 1 0 2 X 2 1 0 ( X X ) :max ( X ) + ( ) 14

Kryterium Bayesa 15

Podstawowe parametry systemu P = { h, h} d 0 1 P = { P( H ), P( H )} h 0 1 P = { P, P P, P } e 10 00, 11 01, c = { c, c c, c } = { c, c } λ thr 10 00, 11 01, 1 2 PH ( ) ( Ph, c) = 1 PH ( ) c 0 1 c 0 2 16

Poprawienie jakości klasyfikacji P( E ) = P ( x) dx dx dx, x R ij j r g b x R x G x B r i g i b i 3 P( E ) = P ( x) dx dx dx, x R 10 0 x R x G x B r 1 g 1 b 1 r g b 3 P( E ) = P ( x) dx dx dx, x R 01 1 x R x G x B r 0 g 0 b 0 r g b 3 17

Poprawienie fazy testowania Uaktualnianie parametrów systemu N P H + N + 1 P'( H0 ) = N P( H0), N + 1 N' = N + 1 ( 0) 1, ' ' ' ' ' dist λ = dist λ err hyp P ( P, ) P ( P, ( C, P )) err thr err thr for D for D 0 1 in :{ c, P, P P, D} P λ P ' hyp ' thr ' err hyp dist, err ( D) ' hyp ' hyp (, cp, P ) ( P λ ) dist, out :{ P, P } Warunek konieczny na optymalizację ' err ' thr dist P : P <= 0.1 P <= 0.1 e 10 01 18

Heurystyka wyboru testów Kolejno wykonywane testy wg klas Sygnatury Anomalie Gładkość obszaru Kolejność w klasach według prawdopodobieństwa pojawiania się pozytywnego wyniku testu c c i i sygn anom glad Ord( T ) P( H ), c C = { C, C, C } 19

Moduł fazy rozpoznawczej 20

Implementacja parametrów systemu Opis Rozkład prawdopodobieństwa Próg decyzyjny Prawdopodobieństwo błędu decyzji D i, kiedy jest słuszna hipoteza Prawdopodobieństwo błędu fałszywego alarmu Prawdopodobieństwo błędu przeoczenia przekazu Prawdopodobieństwo błędu przeoczenia w dziedzinie trójwymiarowej H j Opis formalny P( x) Implementacja - Matlab uuuur uur ur PH ( 0) c1 λthr indi = find( hj < hi δ); δ = 1 PH ( 0) c2 P( Eij ) = Pj ( x) dx R PE ( 10 ) = P0 ( xdx ) i x X PE ( 01) = P1 ( xdx ) 1 x X P( E ) P( x) dx 01 1 0 x R x G x B r 0 g 0 b 0 ur uur uur h = hist( X )/ length( X ); i i i uuuur uur ur indi = find( hj < hi); uur uuuur P = sum( h ( ind )); ij j i uuuur uur uur ind1 = find( h0 < h1); uur uuuur P = sum( h ( ind )); 10 0 1 uuuur uur uur ind0 = find( h0 > h1); uur uuuur P = sum( h ( ind )); 01 1 0 uuuur uur uur ( ); uur uuuur P = sum( h ( ind )); = ind0 = find h0 > h1 01 1 0 21

Podsumowanie Opracowanie nowych testów wykrywających przekazy steganograficzne Opis i implementacja wybranych testów oraz ocena ich jakości pod kątem poziomu błędów klasyfikacji Konstrukcja zintegrowanego systemu do wykrywania przekazów steganograficznych Optymalizacja parametrów programu wykrywającego przekazy steganograficzne klasyfikator Bayesa heurystyka wyboru kolejności testów wykorzystanie częstości pozytywnych wyników testów wykorzystanie reprezentacji graficznej danych statystyczna metoda wykrywania nowych sygnatur 22

Wnioski System generuje fałszywe alarmy w przypadku obrazów cyfrowych nieznanego pochodzenia W przypadku zawężonym do obrazów wykonanych aparatem cyfrowym i zmodyfikowanym wyłącznie jednym z wybranych programów poziom błędów jest pomijalny Problem jest dynamiczny i zmienia się wraz z oprogramowaniem do steganografii 23

Plan dalszych prac Zbadanie nowych programów steganograficznych Opracowanie nowych testów Testowanie zawartości Internetu Wykorzystanie teorii sieci neuronowych Zastosowanie algorytmów genetycznych 24