UNIWERSYTET PEDAGOGICZNY. im. Komisji Edukacji Narodowej W KRAKOWIE. Wydział Matematyczno-Fizyczno-Techniczny
|
|
- Alicja Chrzanowska
- 7 lat temu
- Przeglądów:
Transkrypt
1 UNIWERSYTET PEDAGOGICZNY im. Komisji Edukacji Narodowej W KRAKOWIE Wydział Matematyczno-Fizyczno-Techniczny Katedra Informatyki i Metod Komputerowych Kierunek Informatyka, specjalność Social Media JAKUB KRZEMIŃSKI UKRYWANIE INFORMACJI W DŹWIĘKU Implementacja systemu steganograficznego Praca licencjacka napisana pod kierunkiem dr. inż. Marcina Piekarczyka KRAKÓW 2016
2 Spis Treści Spis Treści... 2 Wstęp Historia steganografii Dźwięk i ludzki słuch Metody steganografii komputerowej... 7 LSB... 7 Ukrywanie informacji w szumie... 8 Wykorzystanie echa... 9 Metoda rozproszonego widma Wykorzystanie kodowania fazy Użycie znaczących fragmentów sygnału Oprogramowanie implementujące steganografię Autorska implementacja systemu steganograficznego Założenia projektowe Python Biblioteka Tk Struktura programu Implementacja LSB Implementacja Ukrycia w echu Odczytywanie ukrytej wiadomości Testy efektywności systemów Podsumowanie Bibliografia Spis rysunków
3 Wstęp Ludzie od zawsze mieli potrzebę ukrywania informacji, aby te nie zostały odkryte przez osoby nieupoważnione. Wiązało się to z pragnieniem prywatności. Stosowano wiele metod, aby wiadomość pozostała niezauważona. W tym celu powstawały systemy, których zadaniem było utrudnić lub uniemożliwić odczytanie treści. Dla zachowania poufności informacji stosowano i stosuje się nadal różne procedury. W dzisiejszych czasach najczęściej wykorzystywane są kryptografia 1 oraz steganografia 2. Tematem pracy jest przedstawienie implementacji systemów steganograficznych ukrywających informacje w plikach dźwiękowych oraz wykonanie testów mających za zadanie sprawdzić, czy informacje ukryte za pomocą stworzonych aplikacji są trudno wykrywalne. Steganografia jest to nauka o komunikacji, która zajmuje się metodami ukrywania informacji w taki sposób, aby ta nie została wykryta. Implementacje systemów steganografii komputerowej zostały wykonane w języku Python[20]. Praca została podzielona na sześć części. W pierwszej znalazły się historyczne informacje na temat wykorzystania steganografii. W drugim rozdziale zawarto podstawowe dane dotyczące ludzkiego słuchu. Kolejna część przedstawia wybrane metody steganografii komputerowej, m.in. LSB 3, wykorzystania echa, czy wykorzystania kodowanej fazy. Czwarta część zawiera informacje na temat programów steganograficznych dostępnych na licencji Open Source. W piątym rozdziale przedstawiono autorską implementację systemu steganograficznych, w tym założenia projektowe oraz opis wykonania projektu i użytych technologii. W ostatniej części pracy zawarto wyniki testów efektywności, które porównują obie metody. Wszystkie trudne pojęcia (dla osób niezaznajomionych z informatyką) są tłumaczone na bieżąco, podczas pierwszego pojawienia się w tekście. 1 Kryptografia nauka o przekazywaniu danych w sposób zabezpieczony 2 Steganografia nauka o przekazywaniu danych w sposób utajniony 3 LSB Najmniej znaczący bit (least significant bit, LSB) 3
4 1. Historia steganografii Steganografia stosowana jest już od starożytności. Herodot w Dziejach [1], w księdze siódmej, opisał metodę ukrywania informacji na tabliczkach służących do pisania. Po zeskrobaniu z niej wosku, zapisywano wiadomość, a następnie tabliczkę zalewano ponownie woskiem, aby wiadomość pozostała niewidoczna. Pierwsze doniesienia o wykorzystaniu miniaturyzacji nośnika informacji w celu przesłania pochodzą z 1871 roku [2]. Podczas wojny francusko-pruskiej przesyłano raporty z frontu do Paryża na prostokątach rozmiarów 3x4cm. Technika ta została udoskonalona przez niemiecki wywiad podczas II Wojny Światowej, gdzie za pomocą specjalnego aparatu przedstawionego na rysunku 1, tworzono mikraty, zwane również mikrokropkami. Były to kropki średnicy 1 mm, na których, dzięki wykonaniu zdjęcia w skali 1:300, można było umieścić jedną kartkę rozmiaru A4. Rysunek 1 Aparat Mark IV do tworzenia mikropkropek, źródło: W 1966 roku, podczas wojny w Wietnamie, została przeprowadzona konferencja prasowa, podczas której nagrywano przebieg rozmowy z jeńcami [4]. Amerykański żołnierz Jeremiah Andrew Denton, podczas rozmowy z urzędnikiem, mrugał oczami do kamery, przekazując wiadomość alfabetem Morse'a. 4
5 Brzmiała ona T-O-R-T-U-R-E. Dzięki odczytaniu wiadomości przez Amerykańskie służby, mężczyzna został uwolniony wraz z 591 jeńcami podczas operacji Homecoming. Przykładem niedawnych wydarzeń, podczas których wykorzystano steganografię, była komunikacja z więźniami Rewolucyjnych Sił Zbrojnych Kolumbii w 2010 roku [5]. Pułkownik Jose Espejo chciał przekazać informacje schwytanym ludziom. Poprosił o pomoc Juana Carlosa Ortiza, aby wymyślił w jaki sposób to wykonać. W wiadomości miała być zawarta informacja o tym, że przeprowadzana jest akcja uwalniania więźniów oraz, aby nie tracili nadziei na ratunek. Mężczyźni doszli do wniosku, że mogliby stworzyć piosenkę, w której będzie ukryta wiadomość. Piosenka Better Days posiadała ukrytą w refrenie wiadomość w alfabecie Morse a o treści 19 ocalonych. Jesteś następny. Nie trać nadziei. Piosenka była emitowana w 130 stacjach radiowych. Po wypuszczeniu na wolność, wielu z więźniów przyznało, że odebrało przekaz i dzięki temu zmienili swoje nastawienie: podtrzymani na duchu przetrwali. 5
6 2. Dźwięk i ludzki słuch Fala dźwiękowa to rozchodzące się po ośrodku sprężystym (na przykład w gazie lub cieczy) zaburzenie gęstości. Jest to odmiana fali akustycznej powodująca wrażenia słuchowe. Ludzki słuch nie jest przystosowany do słyszenia całego spektrum dźwięków. Może on odebrać sygnały w zakresie od 20 Hz do Hz [10] (rysunek 2), jednak zakres największej czułości wynosi od 1000 Hz do 3000 Hz. Niektóre zwierzęta posiadają szerszy zakres dźwięków słyszalnych. Przykładowo zakres częstotliwości słyszanych przez psy wynosi od 15 Hz do Hz. Wiedza ta wykorzystywana jest w algorytmach kompresji stratnej oraz w steganografii, gdzie wiadomość ukrywa się w częstotliwościach niesłyszalnych Rysunek 2 Powierzchnia słyszalności, źródło: Adam Kliczek, wikimedia.org 6
7 3. Metody steganografii komputerowej Steganografię można zastosować poprzez przekazanie wiadomości w sposób widoczny gołym okiem, tak jak w przypadku piosenki Better Days. Można również zastosować różne metody cyfrowej obróbki nośnika informacji, aby ukryć wiadomość głębiej. W opisach pojawi się pojęcie pojemności steganograficznej, czyli informacji o ilości danych, jakie możemy ukryć w kontenerze. Poniżej przedstawione zostały niektóre z technik ukrywania informacji w plikach dźwiękowych. LSB Najczęściej wykorzystywanymi metodami jest LSB w wielu wariantach, polegające na zmianie najmniej znaczących bitów w pliku. Ludzki narząd słuchu jest zbyt słaby, aby wykryć różnicę między sygnałem oryginalnym a przetworzonym. W plikach dźwiękowych modyfikujemy ostatnie bity próbki dźwięku, zamieniając je na 0 lub 1 [6]. Można zmodyfikować bardziej znaczące bity niż ostatnie, dzięki czemu zyskujemy większą pojemność steganograficzna do ukrycia informacji, lecz modyfikacja taka staje się bardziej słyszalna. Informacja ukryta w ten sposób jest bardzo podatna na zniszczenie. Większość programów do obróbki dźwięku, podczas modyfikacji pliku, niszczy zawartą w nim informację. Ograniczeniem tej metody są typy plików informację możemy ukryć tylko w plikach z kompresją bezstratną (np..wav,.bmp) 4. Najprostszą prezentacją zasady działania tej metody jest przedstawienie zmiany koloru w bitmapach (.bmp). Pojedynczy piksel, czyli punkt w grafice rastrowej 5, składa się z trzech kolorów: czerwonego, zielonego oraz niebieskiego. W każdym z nich możemy ukryć informację. Na rysunku 3 przedstawiony został podstawowy kolor (po lewej stronie) oraz kolor z ukrytymi bitami (po prawej stronie). 4.wav,.bmp rozszerzenia plików 5 Grafika rastrowa obraz reprezentowany siatką pionowo - poziomą 7
8 Informacja została ukryta w każdym bicie koloru, dzięki czemu możemy ukryć 3 bity informacji. W grafice o rozmiarach 400 px wysokości i 400 px szerokości jest możliwe umieszczenie bitów informacji, czyli znaków = = Rysunek 3 Porównanie kodów kolorów w metodzie LSB, źródło: praca własna Ukrywanie informacji w szumie Kolejną z metod ukrycia informacji jest modyfikacja szumu [7], który posiada każdy sygnał dźwiękowy. Jedną z najprostszych metod wykorzystania tej techniki jest modyfikacja istniejącego szumu. W trakcie próbkowania dźwięku (czyli procesu tworzenia sygnału dyskretnego reprezentującego sygnał ciągły [14]) powstają zniekształcenia, które możemy ograniczyć przy pomocy sygnału rozpraszającego. Jest on odpowiednio dostosowanym sygnałem o niewielkiej mocy, który wprowadza do dźwięku odrobinę szumu niwelując zniekształcenia [8]. Informacje można ukryć poprzez zmodyfikowanie sygnału rozpraszającego i z jego pomocą spróbkować kontener [6]. System steganograficzny realizuje się za pomocą dwóch kwantyzerów 6, które muszą dawać różne wyniki próbek wynikowych. Dzięki temu możemy przypisać wartości zero oraz jeden dla odpowiednich wyników kwantyzacji i wykorzystać je aby ukryć informację. Aby odczytać informację musimy sprawdzić z którego kwantyzera pochodzi sprawdzany fragment dźwięku. 6 Kwantyzer - przyrząd dokonujący kwantyzacji, czyli przyporządkowujący skończoną liczbę dyskretnych poziomów do wartości sygnału analogowego 8
9 Rysunek 4 Wykorzystywanie kwantyzerów dla ukrycia znaków, źródło: [21] Wykorzystanie echa Jest to zbiór technik polegających na wykorzystaniu echa w celu ukrycia informacji. Metody te opierają się na fakcie, iż ludzkie ucho nie jest w stanie wykryć echa występującego w czasie do dwóch milisekund oraz posiadającego do 50% siły sygnału powielanego [12]. Jednym ze sposobów wykorzystania tej techniki jest przypisanie wartości zero oraz jeden dla różnych opóźnień echa (na przykład dla 2 ms i 1 ms), a następnie ukrycie wiadomości bit po bicie. Opóźnienie nadajemy dla bloku ramek dźwięku, a pojemność steganograficzna zależna jest od jego wielkości. Na rysunku 5 został przedstawiony proces dodawania echa do sygnału dźwiękowego. Oryginalną próbkę dźwięku umieszcza się w filtrze opóźniającym h(t), który tworzy zmodyfikowaną kopię dźwięku, a następnie łączy razem oba sygnały. W miejsce δ podaje się opóźnienie w milisekundach. 9
10 Rysunek 5 Dodawanie echa do próbki dźwięku, a)schemat b) wykres, źródło: praca własna Aby odczytać ukryte dane, należy obliczyć autokorelację fragmentu sygnału oraz opóźnień odpowiadającym ukrytym zerom i jedynkom. Metoda rozproszonego widma Metody rozproszonego widma opierają się na fakcie, że ludzki słuch nie wykrywa niektórych dźwięków. Rozproszenie ukrywanych danych w całym spektrum widma pliku będącego kontenerem, umożliwia na ukrycie nawet w wypadku gdy moc sygnału przekracza moc szumu [8]. Wykorzystanie częstotliwości niesłyszalnych przez ludzi pozwala na umieszczenie tam informacji z minimalnym wpływem na odbierany dźwięk. Sposób ten jest odporny na uszkodzenie ukrytych informacji ze względu na trudność w dokładnym oczyszczeniu całego dźwięku bez uszkadzania jego właściwej struktury. System ten realizuje się poprzez wymożenie wygenerowanego pseudolosowego sygnału (stworzonego za pomocą ziarna musi być powtarzalny) z informacją. Tak rozproszone widmo należy połączyć z kontenerem. Odczyt informacji polega na wygenerowaniu pseudolosowego sygnału za pomocą klucza, a następnie przeprowadzenie operacji XOR 7. Dla zachowania niskich zniekształceń, moc sygnału dodawanego do kontenera powinna mieć najwyżej 0.5% mocy sygnału kontenera [16]. 7 XOR operacja logiczna, alternatywa wykluczająca 10
11 Wykorzystanie kodowania fazy Tak jak w metodzie opisanej poprzednio (rozproszone widmo), ta technika oparta jest na ograniczeniach percepcji słuchowej. Jest wiele algorytmów operujących na tym zjawisku. Możemy je podzielić na grupy zależne od kodowania oraz modulacji fazy. Działanie kodowania bazuje na podziale kontenera na części o stałym rozmiarze. Informacje zostają ukryte tylko w pierwszej części poprzez modyfikację widma fazy dźwięku. Jest to zasadniczą wadą można ukryć małą ilość danych oraz stosunkowo łatwo uszkodzić wiadomość. Modulacja fazy polega na drobnej modyfikacji każdego pasma nośnika [16]. Aby zmiana była niewykrywalna słuchem, musi zostać spełniona zależność: φ(z) z < 30 φ(z) faza sygnału z skala Barka, częstotliwość krytyczna Na następnej stronie przedstawiona została tabela zależności między częstotliwością a skalą barkową Zwickera. b = 13 arctan(0.76f) arctan (( f 7.5 ) 2 ) f częstotliwość wyrażona w hercach Modyfikację wykonać należy dla każdego z wcześniej stworzonych grup danych. Duże bloki zapewniają niewielkie zmiany fazy w czasie. Ukrytą wiadomość należy zapisać jako zmiany fazy, aby modyfikacja o jeden stopień w skali odzwierciedlała informację o jednym bicie. Im większy zakres zmiany kodujący bit, tym większa odporność dodanych informacji. Tracimy jednak przy tym na pojemności steganograficznej. Informacje odczytujemy poprzez porównanie wyjściowego pliku z oryginałem. Warto zaznaczyć, że niewielkie modyfikacje kontenera nie oddziaływają na ukryte dane. 11
12 Numer pasma Częstotliwość środkowa [Hz] Tabela 1Podział na 24 pasma krytyczne według Zwickera, źródło: Szerokość pasma [Hz] 12
13 Użycie znaczących fragmentów sygnału Operacje modyfikujące czas trwania (ang. Time Scale Modification, TSM) mogą spowodować usunięcie ukrytej informacji. Niewiele algorytmów steganograficznych jest odpornych na modyfikacje plików w ten sposób. Aktualnie wykorzystywane algorytmy TSM zostały stworzone w taki sposób, aby otrzymać jak najwyższą jakość dźwięku dzięki operacjom na poszczególnych fragmentach sygnału. Najpierw plik jest analizowany, aby znaleźć fragmenty, w których słuch jest najbardziej wrażliwy i zostają one wykluczone lub modyfikowane w jak najmniejszym stopniu. Wei Li oraz Xiangyang Xue w swojej publikacji [6] przedstawili, że można dołączyć znak wodny, który nie jest podatny na modyfikację czasu trwania. Trzeba wykonać pasmowo filtrowanie przepustowe sygnałów wykluczając pasmo w zakresie od 3 khz do 5 khz. Zakres ten jest pomijany przez TSM ze względu na bardzo dobry odbiór dźwięków przez człowieka. Największe wartości w analizowanym pliku pokazują miejsca, które nie są poddawane modyfikacji przez algorytm i tam należy dodać znak wodny. Dla regionu wielkości 4096 próbek można maksymalnie dołączyć 64 bity danych. Zanim informacja zostanie dodana, powinna zostać przetworzona algorytmem binarnego kluczowania fazy, aby zamienić wartości 0 oraz 1 na -1 oraz 1. Następnie dane są dołączane do regionu poprzez modyfikację współczynników transformaty Fouriera. Podczas badań twórcy algorytmu potwierdzili, że metoda ta pozwala informacji przetrwać kompresję do mp3 (przepustowość 32kb/s), dodanie szumu, TSM do 16% i wiele innych przekształceń 13
14 4. Oprogramowanie implementujące steganografię Istnieje wiele programów, które implementują systemy steganograficzne. Niektóre z nich są darmowe a inne wymagają wykupienia licencji. Poniżej zostało zaprezentowanych kilka przykładowych programów na darmowej licencji. Pierwszym z nich jest OpenPuff, której pierwsza wersja pochodzi z grudnia 2004 roku. Obsługuje on, jako kontenery danych, zarówno pliki graficzne, dźwiękowe jak również wideo. Możliwe jest ukrycie wiadomości w dokumentach PDF. Głównymi cechami programu jest możliwość ukrycia do 256 MB informacji i losowo wybierany algorytm szyfrujący (256 bitowy). Ciekawym zabiegiem, jaki możemy zastosować dzięki programowi, jest steganografia oraz szyfrowanie wraz z możliwością zaprzeczenia. Oznacza to, że program umożliwia dodanie informacji jako wabik, czyli danych o małej wartości, które także są ukryte i podczas ataku na ukryte dane te zostaną wykryte wcześniej. Program dostępny jest na licencji freeware [17]. Rysunek 6 Aplikacja OpenPuff, źródło: 14
15 Kolejnym programem wykorzystującym steganografię jest s-tools, napisany przez Andrew Brown a. Aplikacja pozwala ukryć informacje zarówno w plikach graficznych jak i w audio. Podstawowymi formatami jakie można wykorzystać jako kontenery są WAV, BMP oraz GIF. S-tools do wykonania steganografii wykorzystuję technikę LSB w losowo wybranych miejscach kontenera, jednak przed dołączeniem do pliku bazowego, dane są szyfrowane za pomocą jednego z zaimplementowanych algorytmów kryptograficznych (IDEA, DES oraz MDC)[18]. Rysunek 7 Aplikacja s-tools, źródł: 15
16 Większość aplikacji dostępnych w sieci, potrafi ukryć dane tylko w plikach z kompresją bezstratną. Z powodu rozmiarów plików WAV, przesyłanie ich przez Internet może wydawać się podejrzane. Rozwiązanie tego problemu znalazł Fabien Petitcolas, który stworzył program o nazwie MP3Stego. Aplikacja bazuje na ukrywaniu informacji w trakcie kompresji pliku do formatu MP3. Wiadomość podatna jest na zniszczenie w trakcie dekompresji i ponownej kompresji pliku. Dla zmniejszenia objętości i zwiększenia losowości ukrytej informacji zastosowana jest dodatkowa kompresja oraz szyfrowanie [19]. Aplikacja nie posiada graficznego interfejsu i obsługuje się ją wyłącznie za pomocą konsoli poleceń. Rysunek 8 Program MP3Stego, źródło: 16
17 5. Autorska implementacja systemu steganograficznyego Założenia projektowe Celem pracy jest implementacja systemu steganograficznego, ukrywającego informację w sygnale audio. Dla sprecyzowania zakresu pracy, zostało przyjęte iż jako kontener wykorzystane zostały pliki WAVE posiadające dwa kanały dźwiękowe. Ukrywane mogą być dowolne dokumenty. Pierwszą informacją, która została umieszczona w sygnale wynikowym, jest bit mówiący o metodzie, jaką wykorzystano. W kolejnym kroku zostały ukryte 32bity mówiące o wielkości informacji, następne 32bity informują o ilości znaków rozszerzenia plików a na koniec zakodowane zostało rozszerzenie wiadomość oraz sama informacja. Wybranymi metodami ukrywania jest LSB oraz wykorzystanie echa. Python Język programowania, w którym zostały zaimplementowane systemy steganograficzne, to Python. Jest to język programowania wysokiego poziomu, który powstał w 1991 roku, a jego twórcą był Guido van Rossum. Python, podobnie jak język C++, nie wymaga stosowania usystematyzowanego stylu programowania. Na chwilę obecną najnowsza wersja języka nosi numer (27 czerwca 2016), jednak starsza wersja również jest rozwijana i aktualizowana (Python czerwca 2016) [20]. Aktualnie starsza wersja języka (2.7) nadal jest bardzo popularna ze względu na dużą ilość udostępnionego kodu źródłowego i bibliotek, które nie są kompatybilne z wersją 3.5. Głównymi zaletami języka jest pokaźnych rozmiarów biblioteka standardowa, brak wymogu deklarowania zmiennych oraz instrukcje grupowane za pomocą wcięć zamiast nawiasów. Najważniejszą wadą tego języka jest prędkość z jaką wykonywane są obliczenia. Fakt, iż język jest interpretowany, ma znaczący wpływ na szybkość działania programów.
18 Biblioteka Tk Tk jest biblioteką na licencji opensource 8, która służy do budowania aplikacji posiadających GUI (Graficzny Interfejs Użytkownika). Twórcą tej biblioteki jest John Ousterhout. Początkowo stosowano ją tyko dla języka skryptowego TCL. Dzięki zastosowaniu Tk, możliwe jest stworzenie GUI które będzie działać po uruchomieniu na większości systemów operacyjnych oraz powstało wiele dowiązań do innych języków. Jednym z takich dowiązań jest Tkinter dla języka Python. Biblioteka Tk została wykorzystana w implementacji systemów steganograficznych, aby ułatwić pracę z programem. Struktura programu Główna częścią programu jest klasa Application. Znajdują się w niej zmienne które przechowują najważniejsze dane wykorzystywane w trakcie działania programu, takie jak container (zmienna przechowująca wczytany plik.wav, w którym ukrywana będzie wiadomość) lub information (przechowuje wiadomość do ukrycia). Podczas inicjalizacji klasy, program buduje swoje GUI tworząc obiekty modułu Tkinter. Rysunek 9 Przygotowany program realizujący systemy steganograficzne, źródło: praca własna Na rysunku 9 przedstawiony został graficzny interfejs użytkownika. Po naciśnięciu przycisków Wybierz Kontener, użytkownik wybiera plik, w którym ma zostać ukryta wiadomość. Przycisk Wybierz informacje służy do wczytania informacji, którego zawartość ma zostać poddana procesowi steganografii. Po wybraniu kontenera oraz informacji do ukrycia, pojawiają się dwa przyciski: Metoda LSB oraz Wykorzystanie echa (rysunek 10). Po naciśnięciu 8 Opensource odłam ruchu wolnego oprogramowania 18
19 jednego z nich, rozpoczyna się proces ukrywania wiadomości. Z racji faktu, że procesy są dosyć złożone, program przestaje reagować na działania użytkownika. Po zakończeniu procesu ukrywania informacji, program znów staje się aktywny. Rysunek 10 Przygotowany program po wybraniu kontenera oraz informacji, źródło: praca własna Implementacja LSB Pierwszą implementacją systemu steganograficznego jest metoda ukrywania informacji wykorzystująca najmniej znaczący bit (Metoda LSB). Metoda ta została opisana wcześniej w rozdziale 4. Metody steganografii komputerowej. Rozpoczynając działanie, program otwiera nowy plik o nazwie output.wav i przypisuje mu parametry oraz framerate. Dla bezpieczeństwa plik będący kontenerem jest przewijany do początku pliku, aby podczas operacji ukrywania wiadomości nie doszło do błędów. def lsb(self): print("rozpoczynam ukrywanie za pomocą metody LSB!") self.container.rewind() newfile = wave.open('output.wav', 'wb') newfile.setparams(self.container.getparams()) newfile.setframerate(newfile.getframerate()) Rysunek 11 Fragment kodu źródłowego metody LSB, źródło: praca własna Po wykonaniu tych operacji, program rozpoczyna pętlę, której celem jest przekopiowanie ramek do nowego pliku. Podczas pętli sprawdzane są warunki określające, co aktualnie jest wykonywane. Pętla wykonuje się do czasu aż zmienna 19
20 i nie jest równa zmiennej self.maxframes (zmienna ta przechowuje liczbę ramek, jaką posiada plik będący kontenerem). Przy każdym rozpoczęciu operacji będących w pętli, pobierana jest jedna ramka kontenera i zostaje przekonwertowana za pomocą funkcji from_bytes() (pochodzącej z klasy int), na liczbę całkowitą. Następnie sprawdzana jest wielkość zmiennej i. Jeśli jest większa lub równa od 1 oraz mniejsza od 33 ukrywana jest liczba znaków ukrytych w wiadomości. 32 bity ukrywane w tym czasie odpowiadają wielkości liczby całkowitej w pamięci komputera. Jeśli i jest większe lub równe liczbie 33, a mniejsze od 33 plus ilość znaków wiadomości (zmienna self.infolen). Jeśli ten warunek jest prawdziwy, program sprawdza jaki znak przechowywany jest w tablicy infostrint[i-34] i zależnie czy jest to zero czy jeden, taki znak zostaje ukryty za pomocą zero_lsb() lub def zero_lbs(number): if number % 2 == 0: LSBZero = number else: LSBZero = number - 1 return def one_lsb(number): if number % 2 == 1: LSBOne = number else: LSBOne = number + 1 return LSBOne Rysunek 12 Kod funkcji ukrywającej jeden lub zero, źródło: praca własna Jeżeli żaden z powyższych warunków nie został spełniony, ukryta zostaje liczba zero (czyli w przypadku ramki będącej pierwszą oraz jeśli zmienna i przekracza zakres (34+self.infolen)). 20
21 Rysunek 13 Porównanie kontenera z plikiem wynikowym w programie Audacity, źródło: praca własna Rysunek 13 przedstawia porównanie pierwszych 500 milisekund pliku wynikowego (output.wav) oraz pliku-kontenera (test.wav). Oba pliki nie posiadają widocznych różnic, przez co można wywnioskować że operacja przebiegła pomyślnie. Informacje zostają ukryte w prawym kanale dźwięku. Implementacja Ukrycia w echu Drugim zaimplementowanym systemem steganograficznym jest jedna z metod wykorzystujących echo. Huynh Ba Dieu z wietnamskiego Uniwersytetu Duy Tan w swoim artykule [13] przedstawia opracowaną przez siebie metodę, która została wykorzystana w programie. Głównymi założeniami tej metody jest przypisanie dla pliku z echem wartości jeden, a dla pliku bez echa zera. Pierwszą rzeczą jaką należy wykonać, jest utworzenie kopii pliku, która zawiera echo. Zgodnie z założeniami przedstawionymi w rozdziale 4. tej pracy, powtórzenie dźwięku musi zachodzić z opóźnieniem do 2ms oraz z mocą nie przekraczającą 50% mocy dźwięku kontenera. Przygotowany program tworzy plik o nazwie plik_z_echo.wav, posiadający echo o sile 10% i występujące po czasie dwóch milisekund. 21
22 Rysunek 14 Porównanie pliku posiadającego stałe echo i kontenera, źródło: praca własna Na rysunku 14 przedstawiono porównanie pliku posiadającego echo, utworzonego w pierwszej części działania metody ukrywającej informację w echu. W programie Audacity, na ekranie przedstawiającym ścieżki w dźwięku, od 0 do 0,1 sekundy dostrzegalna jest subtelna zmiana amplitudy. Oznacza to, że echo zostało poprawnie dołączone do kontenera. Kolejnym etapem który zostaje wykonany, jest utworzenie nowego pliku o nazwie output_echo.wav oraz otworzenie poprzednio stworzonego plik_z_echo.wav. Po przekopiowaniu parametrów z kontenera, rozpoczyna się działanie pętli, której działanie kończy się gdy zmienna iteracyjna i będzie miała wartość równą ilości ramek kontenera (self.container.getnframes()). Podczas działania pętli sprawdzane są warunki. Pierwszy z nich to: czy zmienna i wynosi 0. Jeśli tak, ukryta zostaje wartość jeden w pierwszej ramce pliku. Następny warunek sprawdza czy i jest większe od 0 oraz czy i nie przekracza wartości 33. W tym warunku ukrywana jest ilość bitów ukrytej wiadomości, dla łatwiejszego odczytania jej przez program. Ostatnim warunkiem jest sprawdzenie czy i jest większe lub równe liczbie 33 oraz czy nie jest mniejsze od 33+self.infolen. Jest ten warunek jest prawdziwy, zostają ukryte bity wiadomości. Jeśli żaden z warunków nie jest prawdziwy, przekopiowane zostają ramki kontenera, bez echa. Ukrywanie informacji polega na zapisie do pliku 1024 ramek pliku kontenera dla ukrywanej wartości zero oraz 1024 ramek pliku z echem dla wartości jeden. W tej metodzie kluczowe jest aby zaraz po sprawdzeniu warunku pobrać 22
23 odpowiednia ilość ramek z obu plików dla zachowania spójności podczas zapisu do pliku wynikowego. Rysunek 15 Porównanie kontenera i wynikowego pliku metody ukrywania w echu, źródło: praca własna Na rysunku 15 zostało przedstawienie porównania pliku output_echo.wav oraz kontenera test.wav. Różnice są niemal niewykrywalne. Odczytywanie ukrytej wiadomości Aby odwrócić proces steganografii, a tym samym odczytać ukrytą wiadomość, należy nacisnąć przycisk przedstawiony na rysunku 16 Po wybraniu pliku, z którego chcemy odczytać wiadomość, program automatycznie wykryje która metoda została wykorzystana do ukrycia. Rysunek 16 Przycisk odczytywania wiadomości, źródło: praca własna Rysunek 17 przedstawia informacje zwracane do konsoli podczas odkrywania informacji. W pierwszej linii wypisywana jest metoda, z której pomocą została ukryta wiadomość, druga to ciąg bitów wiadomości. Kolejne linie prezentują zawartość odkrytych danych, w tym przypadku wiadomość Ukryta wiadomość.. Ostatnia linia informuje użytkownika że informacje zostały zapisane w pliku ukryta_wiadomość.txt. W trakcie działania programu odkrywane były informacje zarówno z pliku output.wav (wykorzystanie metody LSB) oraz output_echo.wav (metoda wykorzystująca echo). 23
24 Rysunek 17 Odkrywanie ukrytej wiadomości, źródło: praca własna Podczas odkrywania wiadomości, która została ukryta za pomocą metody LSB, program automatycznie wykonuje potrzebne działania. W przypadku pliku, w którym informacja została ukryta drugą metodą, wymagane jest podanie pliku będącego kontenerem, do porównania ramek w trakcie odczytu wiadomości. 6. Testy efektywności systemów Podczas testów aplikacji, wykorzystano piętnastosekundowe pliki dźwiękowe: głos lektora z fragmentami ciszy, instrumentalny podkład dźwiękowy, wygenerowany biały szum o amplitudzie 0,8 oraz ciszę. Podczas prezentacji działania powyższych metod, wykorzystywany był piętnastosekundowy fragment nagrania instrumentalnego. Dla obu przypadków, udało się ukryć i odczytać wiadomość bez błędów. Kolejnym testowanym plikiem był głos lektora. Podczas ukrywania wiadomości nie doszło do błędów, wiadomość została ukryta poprawnie. Rysunek 18 Porównanie próbki głosu i plików z ukrytymi informacjami, źródło: praca własna 24
25 Rysunek 18 przedstawia porównanie plików wynikowych z kontenerem. Plik znajdujący się w środku z zakreślonym fragmentem ścieżki na czerwono, posiada ukrytą wiadomość metodą LSB. Poniżej niego znajduje się ścieżka pliku z ukrytą wiadomością metodą wykorzystującą echo. Odczyt z output.wav przebiegł pomyślnie lecz, jak zostało zaznaczone na rysunku 16, widać lekką zmianę amplitudy. W przypadku pliku output_echo.wav ma dostrzegalnych zmian. Wykorzystanie szumu białego jako kontenera dla steganografii okazało się bardziej sprzyjające dla metody LSB. Na rysunku 19 widać, że plik z ukrytą wiadomością wykorzystującą echo, ma widoczne skoki amplitudy. Zmiana w obu przypadkach nie jest wykrywalna słuchem, jednak zobaczenie skoków widocznym w pliku output_echo.wav może zdradzić obecność wiadomości. 25
26 Rysunek 19 Porównanie próbki szumu i plików z ukrytymi informacjami, źródło: praca własna 26
27 Ostatni plik dźwiękowy, wykorzystany jako kontener to cisza. W tym przypadku obie metody również podołały zadaniu udało się ukryć oraz odczytać informacje. Rysunek 20 przedstawia wykresy plików kolejno: kontener, output.wav oraz output_echo.wav. W obu plikach wynikowych, zauważalne są różnice graficzne, jednak słuch nie potrafi wykryć zmiany. Rysunek 20 Porównanie ciszy i plików z ukrytymi informacjami, źródło: praca własna Oprócz przeprowadzenia testów kontenera, wykonano test pojemności steganograficznej. Ze względu na wykorzystanie 1024 ramek dla ukrycia jednego bitu w metodzie wykorzystującej echo, pojemność drastycznie się zmniejsza, co przedstawia rysunek 21. W obu przypadkach ukryte zostały dwa akapity Lorem Ipsum, jednak tylko w przypadku metody LSB cała wiadomość została ukryta. Rysunek 21 Problem pojemności steganograficznej, źródło: praca własna 27
28 7. Podsumowanie Celem pracy była implementacja systemów steganograficznych, ukrywających informacje w dźwięku. Zarówno metoda LSB jak również metoda wykorzystująca echo przyniosła pozytywne rezultaty w działaniu, jednak ostateczne zastosowanie tych metod jest całkowicie różne Zaletą metody LSB jest duża pojemność steganograficzna oraz fakt, że dla kontenera o małej zmianie amplitudy (na przykład szum) jest niewykrywalna. Do zalet metody wykorzystującej echo zaliczyć można niewidoczne ukrywanie w plikach o zmiennej amplitudzie (głos lub muzyka). Głównymi wadami obu metod jest wrażliwość na uszkodzenie informacji przy operacjach na plikach z ukrytymi danymi. Przy zmianie głośności, odszumianiu czy normalizacji, spójność danych zostaje przerwana. Dodatkowo na niekorzyść metody wykorzystującej echo działa fakt, iż wymaga ona pliku-kontenera. Metoda ta mogła by znaleźć zastosowanie gdyby plik z ukrytymi danymi został umieszczany na stronie internetowej przez osoby posiadające plik oryginalny. Niski poziom pojemności steganograficznej tej metody można zwiększyć poprzez zmniejszenie ilości ramek ukrywających jeden bit (na przykład zamiast ukrywać w 1024, użyć 256 ramek). Istnieje jednak prawdopodobieństwo powstania zakłamań w odczycie wiadomości, przez co informacje mogę zostać źle odczytane. W przyszłości możliwe jest rozwinięcie projektu o obsługę innych informacji takich jak pliki binarne oraz obsługę innych formatów plików dźwiękowych jako kontenery 28
29 Bibliografia [1]. Herodot Dzieje, wyd. Czytelnik, 2015r. ISBN [2]. G. Kipper Investigator's Guide to Steganography. Boca Raton: Auerbach Publications, [3]. Piekałkiewicz J. Dzieje szpiegostwa, wyd. Czytelnik, 1999r., ISBN: [4]. Langer E. Washington Post Jeremiah A. Denton Jr., Vietnam POW and former U.S. senator, dies at r., dostęp: r. pow-and-us-senator-dies/2014/03/28/1a15343e-b500-11e3-b de76985_story.html [5]. Kędzierski R. Gazeta.pl Next 5 spektakularnych przykładów użycia steganografii, r., dostęp: r. ykladow_uzycia_steganografii.html [6]. Czerwinski S., Fromm R. - "Digital music distribution and audio watermarking", dostęp: [7]. Boney L., Tewfik A. H., Hamdy K. N.: "Digital watermarks for audio signals", Proceedings of the 1996 International Conference on Multimedia Computing and Systems pp , dostęp: [8]. Katzenbeisser S., Petitcolas F. A. P.: "Information hiding techniques for steganography and digital watermarking", Artech House dostęp: [9]. Li W., Xue X.: "Audio Watermarking Based on Music Content Analysis: Robust against Time Scale Modification", Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) pp , 2004 [10]. Jorasz U. Selektywność układu słuchowego, Wydaw. Naukowe UAM 1999, ISBN [11]. Łopatka K., Opracowanie Katedry Systemów Multimedialnych Politechniki Gdańskiej: "Perceptualne skale częstotliwości", 29
30 dostęp: [12]. Dymarski P., Pobłocki A., Baras C., Moreau N.: Algorytmy znakowania wodnego sygnałów dźwiękowych, Krajowe Sympozjum Telekomunikacji 2003 s , 2003 [13]. Huynh Ba Dieu, An Improvement for Hiding Data in Audio Using Echo Modulation, Duy Tan University [14]. Ziółko B., Ziółko M. Przetwarzanie mowy, Wydawnictwa AGH, [15]. Erhard J., Technika cyfrowa - przetwarzanie analogowo-cyfrowe. Kwantowanie, dostęp: r. [16]. Bender W., Gruhl D., Morimoto N., Lu N.: "Techniques for data hiding", IBM system Journal (5) 1996 [17]. dostęp r. [18]. dostęp r. [19]. dostęp r. [20]. Lutz M., Python. Wprowadzenie. Wydanie IV, Helion [21]. Chen B., Wornell G., Quantization Index Modulation Methods for Digital Watermarking and Information Embedding of Multimedia Journal of VLSI Signal Processing 27, 7 33,
31 Spis rysunków Rysunek 1 Aparat Mark IV do tworzenia mikropkropek, źródło: 4 Rysunek 2 Powierzchnia słyszalności, źródło: Adam Kliczek, wikimedia.org... 6 Rysunek 3 Porównanie kodów kolorów w metodzie LSB, źródło: praca własna... 8 Rysunek 4 Wykorzystywanie kwantyzerów dla ukrycia znaków, źródło: [21]... 9 Rysunek 5 Dodawanie echa do próbki dźwięku, a)schemat b) wykres, źródło: praca własna Rysunek 6 Aplikacja OpenPuff, źródło: 14 Rysunek 7 Aplikacja s-tools, źródł: 15 Rysunek 8 Program MP3Stego, źródło: 16 Rysunek 9 Przygotowany program realizujący systemy steganograficzne, źródło: praca własna Rysunek 10 Przygotowany program po wybraniu kontenera oraz informacji, źródło: praca własna Rysunek 11 Fragment kodu źródłowego metody LSB, źródło: praca własna Rysunek 12 Kod funkcji ukrywającej jeden lub zero, źródło: praca własna Rysunek 13 Porównanie kontenera z plikiem wynikowym w programie Audacity, źródło: praca własna Rysunek 14 Porównanie pliku posiadającego stałe echo i kontenera, źródło: praca własna Rysunek 15 Porównanie kontenera i wynikowego pliku metody ukrywania w echu, źródło: praca własna Rysunek 16 Przycisk odczytywania wiadomości, źródło: praca własna Rysunek 17 Odkrywanie ukrytej wiadomości, źródło: praca własna Rysunek 18 Porównanie próbki głosu i plików z ukrytymi informacjami, źródło: praca własna Rysunek 19 Porównanie próbki szumu i plików z ukrytymi informacjami, źródło: praca własna Rysunek 20 Porównanie ciszy i plików z ukrytymi informacjami, praca własna. 27 Rysunek 21 Problem pojemności steganograficznej, źródło: praca własna
Analiza i Przetwarzanie Obrazów. Szyfrowanie Obrazów. Autor : Mateusz Nawrot
Analiza i Przetwarzanie Obrazów Szyfrowanie Obrazów Autor : Mateusz Nawrot 1. Cel projektu Celem projektu jest zaprezentowanie metod szyfrowania wykorzystujących zmodyfikowane dane obrazów graficznych.
Wykład II. Reprezentacja danych w technice cyfrowej. Studia Podyplomowe INFORMATYKA Podstawy Informatyki
Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład II Reprezentacja danych w technice cyfrowej 1 III. Reprezentacja danych w komputerze Rodzaje danych w technice cyfrowej 010010101010 001010111010
Systemy multimedialne. Instrukcja 5 Edytor audio Audacity
Systemy multimedialne Instrukcja 5 Edytor audio Audacity Do sprawozdania w formacie pdf należy dołączyc pliki dźwiękowe tylko z podpunktu 17. Sprawdzić poprawność podłączenia słuchawek oraz mikrofonu (Start->Programy->Akcesoria->Rozrywka->Rejestrator
Wymiana i Składowanie Danych Multimedialnych Mateusz Moderhak, EA 106, Pon. 11:15-12:00, śr.
Wymiana i Składowanie Danych Multimedialnych 2019 Mateusz Moderhak, matmod@biomed.eti.pg.gda.pl, EA 106, Pon. 11:15-12:00, śr. 12:15-13:00 Zaliczenie: 60% wykład, 40% laboratorium Zerówka w formie dwóch
Co to jest dźwięk. Dźwięk to wyrażenie słuchowe wywołane przez falę akustyczną. Ludzki narząd wyłapuje dźwięki z częstotliwością 16 do 20 Hz
Dźwięk Co to jest dźwięk Dźwięk to wyrażenie słuchowe wywołane przez falę akustyczną. Ludzki narząd wyłapuje dźwięki z częstotliwością 16 do 20 Hz Próbkowanie Cyfrowy zapis dźwięku opiera się na procedurze
Audacity jest darmowym edytorem audio
Audacity jest darmowym edytorem audio Umożliwia on: nagrywanie i odtwarzanie, importowanie i eksportowanie plików w formatach MP3, WAV, AIFF, Ogg Vorbis i inne. edycję dźwięków z wykorzystaniem wycinania,
Technologie Informacyjne
System binarny Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności October 7, 26 Pojęcie bitu 2 Systemy liczbowe 3 Potęgi dwójki 4 System szesnastkowy 5 Kodowanie informacji 6 Liczby ujemne
Przygotowali: Bartosz Szatan IIa Paweł Tokarczyk IIa
Przygotowali: Bartosz Szatan IIa Paweł Tokarczyk IIa Dźwięk wrażenie słuchowe, spowodowane falą akustyczną rozchodzącą się w ośrodku sprężystym (ciele stałym, cieczy, gazie). Częstotliwości fal, które
Zastosowanie kompresji w kryptografii Piotr Piotrowski
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
Formaty plików. graficznych, dźwiękowych, wideo
Formaty plików graficznych, dźwiękowych, wideo Spis treści: Wstęp: Co to jest format? Rodzaje formatów graficznych Właściwości formatów graficznych Porównanie formatów między sobą Formaty plików dźwiękowych
KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT
KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT Temat: Zaimplementować system kryptografii wizualnej http://www.cacr.math.uwaterloo.ca/~dstinson/visual.html Autor: Tomasz Mitręga NSMW Grupa 1 Sekcja 2 1. Temat projektu
O sygnałach cyfrowych
O sygnałach cyfrowych Informacja Informacja - wielkość abstrakcyjna, która moŝe być: przechowywana w pewnych obiektach przesyłana pomiędzy pewnymi obiektami przetwarzana w pewnych obiektach stosowana do
Programowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Techniki multimedialne
Techniki multimedialne Digitalizacja podstawą rozwoju systemów multimedialnych. Digitalizacja czyli obróbka cyfrowa oznacza przetwarzanie wszystkich typów informacji - słów, dźwięków, ilustracji, wideo
Księgarnia internetowa Lubię to!» Nasza społeczność
Kup książkę Poleć książkę Oceń książkę Księgarnia internetowa Lubię to!» Nasza społeczność Spis treści Rozdział 1. Zastosowanie komputera w życiu codziennym... 5 Rozdział 2. Elementy zestawu komputerowego...13
Wykład VII. Systemy kryptograficzne Kierunek Matematyka - semestr IV. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej
Wykład VII Kierunek Matematyka - semestr IV Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Steganografia Steganografia - nauka o komunikacji w taki sposób,
lekcja 8a Gry komputerowe MasterMind
lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych
Podstawy Przetwarzania Sygnałów
Adam Szulc 188250 grupa: pon TN 17:05 Podstawy Przetwarzania Sygnałów Sprawozdanie 6: Filtracja sygnałów. Filtry FIT o skończonej odpowiedzi impulsowej. 1. Cel ćwiczenia. 1) Przeprowadzenie filtracji trzech
Cechy karty dzwiękowej
Karta dzwiękowa System audio Za generowanie sygnału dźwiękowego odpowiada system audio w skład którego wchodzą Karta dźwiękowa Głośniki komputerowe Większość obecnie produkowanych płyt głównych posiada
Laboratorium. Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie
Laboratorium Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie programowalnym FPGA. 1. Zasada działania algorytmów Algorytm Vernam a wykorzystuje funkcję
Zastosowanie Informatyki w Medycynie
Zastosowanie Informatyki w Medycynie Dokumentacja projektu wykrywanie bicia serca z sygnału EKG. (wykrywanie załamka R) Prowadzący: prof. dr hab. inż. Marek Kurzyoski Grupa: Jakub Snelewski 163802, Jacek
Systemy i Sieci Telekomunikacyjne laboratorium. Modulacja amplitudy
Systemy i Sieci Telekomunikacyjne laboratorium Modulacja amplitudy 1. Cel ćwiczenia: Celem części podstawowej ćwiczenia jest zbudowanie w środowisku GnuRadio kompletnego, funkcjonalnego odbiornika AM.
Dźwięk podstawowe wiadomości technik informatyk
Dźwięk podstawowe wiadomości technik informatyk I. Formaty plików opisz zalety, wady, rodzaj kompresji i twórców 1. Format WAVE. 2. Format MP3. 3. Format WMA. 4. Format MIDI. 5. Format AIFF. 6. Format
2. STRUKTURA RADIOFONICZNYCH SYGNAŁÓW CYFROWYCH
1. WSTĘP Radiofonię cyfrową cechują strumienie danych o dużych przepływnościach danych. Do przesyłania strumienia danych o dużych przepływnościach stosuje się transmisję z wykorzystaniem wielu sygnałów
Neurobiologia na lekcjach informatyki? Percepcja barw i dźwięków oraz metody ich przetwarzania Dr Grzegorz Osiński Zakład Dydaktyki Fizyki IF UMK
Neurobiologia na lekcjach informatyki? Percepcja barw i dźwięków oraz metody ich przetwarzania Dr Grzegorz Osiński Zakład Dydaktyki Fizyki IF UMK IV Konferencja Informatyka w Edukacji 31.01 01.02. 2007
E.14.1 Tworzenie stron internetowych / Krzysztof T. Czarkowski, Ilona Nowosad. Warszawa, Spis treści
E.14.1 Tworzenie stron internetowych / Krzysztof T. Czarkowski, Ilona Nowosad. Warszawa, 2014 Spis treści Przewodnik po podręczniku 8 Wstęp 10 1. Hipertekstowe języki znaczników 1.1. Elementy i znaczniki
Spis treści. Format WAVE Format MP3 Format ACC i inne Konwersja między formatami
Spis treści Format WAVE Format MP3 Format ACC i inne Konwersja między formatami Formaty plików audio różnią się od siebie przede wszystkim zastosowanymi algorytmami kompresji. Kompresja danych polega na
16MB - 2GB 2MB - 128MB
FAT Wprowadzenie Historia FAT jest jednym z najstarszych spośród obecnie jeszcze używanych systemów plików. Pierwsza wersja (FAT12) powstała w 1980 roku. Wraz z wzrostem rozmiaru dysków i nowymi wymaganiami
Spis treści. Format WAVE Format MP3 Format ACC i inne Konwersja między formatami
Spis treści Format WAVE Format MP3 Format ACC i inne Konwersja między formatami Formaty plików audio różnią się od siebie przede wszystkim zastosowanymi algorytmami kompresji. Kompresja danych polega na
Zasady programowania Dokumentacja
Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika
Temat: Algorytm kompresji plików metodą Huffmana
Temat: Algorytm kompresji plików metodą Huffmana. Wymagania dotyczące kompresji danych Przez M oznaczmy zbiór wszystkich możliwych symboli występujących w pliku (alfabet pliku). Przykład M = 2, gdy plik
Przykładowe zagadnienia na sprawdzian z wiedzy ogólnej. Linux to nazwa: A. Programu biurowego. B. Systemu operacyjnego. C. Przeglądarki internetowej.
Przykładowe zagadnienia na sprawdzian z wiedzy ogólnej Linux to nazwa: A. Programu biurowego. B. Systemu operacyjnego. C. Przeglądarki internetowej. Przycisk RESET znajdujący się na obudowie komputera,
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS) Temat: Platforma Systemowa Wonderware cz. 2 przemysłowa baza danych,
Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie
Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których
Biblioteka: sound. RGui. Podstawowe funkcje do działań na plikach.wav i próbkach dźwięku. Autor biblioteki: Matthias Heymann
RGui Biblioteka: sound Podstawowe funkcje do działań na plikach.wav i próbkach dźwięku. Autor biblioteki: Matthias Heymann Opracowała: Magdalena Wanat PLIKI.wav Format plików dźwiękowych stworzonych przez
Cała prawda o plikach grafiki rastrowej
~ 1 ~ Cała prawda o plikach grafiki rastrowej Grafika rastrowa to rodzaj grafiki zapisywanej na dysku w postaci bitmapy, czyli zbioru pikseli. W edytorach grafiki rastrowej możliwa jest edycja na poziomie
Sprawdzian wiadomości z jednostki szkoleniowej M3.JM1.JS3 Użytkowanie kart dźwiękowych, głośników i mikrofonów
Sprawdzian wiadomości z jednostki szkoleniowej M3.JM1.JS3 Użytkowanie kart dźwiękowych, głośników i mikrofonów 1. Przekształcenie sygnału analogowego na postać cyfrową określamy mianem: a. digitalizacji
Przetwornik analogowo-cyfrowy
Przetwornik analogowo-cyfrowy Przetwornik analogowo-cyfrowy A/C (ang. A/D analog to digital; lub angielski akronim ADC - od słów: Analog to Digital Converter), to układ służący do zamiany sygnału analogowego
ZASTOSOWANIE TRANSFORMATY FOURIERA W STEGANOGRAFII DŹWIĘKU
STUDIA INFORMATICA 2011 Volume 32 Number 2A (96) Grzegorz KOZIEŁ Politechnika Lubelska, Instytut Informatyki ZASTOSOWANIE TRANSFORMATY FOURIERA W STEGANOGRAFII DŹWIĘKU Streszczenie. W artykule przedstawiono
Memeo Instant Backup Podręcznik Szybkiego Startu
Wprowadzenie Memeo Instant Backup pozwala w łatwy sposób chronić dane przed zagrożeniami cyfrowego świata. Aplikacja regularnie i automatycznie tworzy kopie zapasowe ważnych plików znajdujących się na
Wizualizacja pogody dla windsurferów
Politechnika Wrocławska AiR ARR Wizualizacja danych sensorycznych Wizualizacja pogody dla windsurferów Autor: Małgorzata Witka-Jeżewska 218634 Prowadzący: dr inż. Bogdan Kreczmer 22 czerwca 2017 Spis treści
Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.
Nazwa implementacji: Nauka języka Python wyrażenia warunkowe Autor: Piotr Fiorek Opis implementacji: Poznanie wyrażeń warunkowych if elif - else. Nasz kalkulator umie już liczyć, ale potrafi przeprowadzać
1. Pobieranie i instalacja FotoSendera
Jak zamówić zdjęcia przez FotoSender? Spis treści: 1. Pobieranie i instalacja FotoSendera 2. Logowanie 3. Opis okna programu 4. Tworzenie i wysyłanie zlecenia Krok 1: Wybór zdjęć Krok 2: Podsumowanie zlecenia
Andrzej Leśnicki Laboratorium CPS Ćwiczenie 9 1/5 ĆWICZENIE 9. Kwantowanie sygnałów
Andrzej Leśnicki Laboratorium CP Ćwiczenie 9 1/5 ĆWICZEIE 9 Kwantowanie sygnałów 1. Cel ćwiczenia ygnał przesyłany w cyfrowym torze transmisyjnym lub przetwarzany w komputerze (procesorze sygnałowym) musi
Kompresja dźwięku w standardzie MPEG-1
mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 7, strona 1. Kompresja dźwięku w standardzie MPEG-1 Ogólne założenia kompresji stratnej Zjawisko maskowania psychoakustycznego Schemat blokowy
Transpozer czasowy mowy
Transpozer czasowy mowy Politechnika Gdańska ul. Narutowicza 11/12 80-233 Gdańsk www.pg.gda.pl 1. Wprowadzenie Transpozer czasowy mowy został opracowany w celu wspierania rozumienia mowy przez osoby z
INSTRUKCJA DO OPROGRAMOWANIA KOMPUTEROWEGO
INSTRUKCJA DO OPROGRAMOWANIA KOMPUTEROWEGO DLA LEKKIEJ PŁYTY DO BADAŃ DYNAMICZNYCH HMP LFG WYMAGANE MINIMALNE PARAMETRY TECHNICZNE: SPRZĘT: - urządzenie pomiarowe HMP LFG 4 lub HMP LFG Pro wraz z kablem
INSTRUKCJE WIKAMP Dotyczy wersji systemu z dnia
INSTRUKCJE WIKAMP Dotyczy wersji systemu z dnia 22.04.2016 Spis treści: Jak zmienić hasło?... 1 Jak zmodyfikować profil użytkownika?... 5 Jak zmienić hasło? 1 S t r o n a Hasło umożliwia zalogowanie się
kodowanienaekranie.pl
Temat: Naucz się tekstowego języka Python z Codey Rocky - część 1 Zdarzenia kl7-8 Szkoła Podstawowa Przedmiot: informatyka Autor: Sylwester Zasoński Czas trwania: 1h lekcyjna Cele ogólne: Rozwijanie kompetencji
Ćwiczenie II. Edytor dźwięku Audacity
Ćwiczenie II. Edytor dźwięku Audacity Sprzęt Aplikacja Komputer osobisty PC Karta dźwiękowa zainstalowana w PC Mikrofon Wzmacniacz z kolumnami Audacity Program Audacity jest wielościeżkowym edytorem dźwięku.
Technika audio część 2
Technika audio część 2 Wykład 12 Projektowanie cyfrowych układów elektronicznych Mgr inż. Łukasz Kirchner lukasz.kirchner@cs.put.poznan.pl http://www.cs.put.poznan.pl/lkirchner Wprowadzenie do filtracji
Autorzy: Tomasz Sokół Patryk Pawlos Klasa: IIa
Autorzy: Tomasz Sokół Patryk Pawlos Klasa: IIa Dźwięk wrażenie słuchowe, spowodowane falą akustyczną rozchodzącą się w ośrodku sprężystym (ciele stałym, cieczy, gazie). Częstotliwości fal, które są słyszalne
Wykrywanie twarzy na zdjęciach przy pomocy kaskad
Wykrywanie twarzy na zdjęciach przy pomocy kaskad Analiza i przetwarzanie obrazów Sebastian Lipnicki Informatyka Stosowana,WFIIS Spis treści 1. Wstęp... 3 2. Struktura i funkcjonalnośd... 4 3. Wyniki...
Konwersja dźwięku analogowego do postaci cyfrowej
Konwersja dźwięku analogowego do postaci cyfrowej Schemat postępowania podczas przetwarzania sygnału analogowego na cyfrowy nie jest skomplikowana. W pierwszej kolejności trzeba wyjaśnić kilka elementarnych
II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI
II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI STEGANOGRAFIA Steganografia jest nauką o komunikacji w taki sposób by obecność komunikatu nie mogła zostać wykryta. W odróżnieniu od kryptografii
SCENARIUSZ LEKCJI. Fale akustyczne oraz obróbka dźwięku (Fizyka poziom rozszerzony, Informatyka poziom rozszerzony)
Autorzy scenariusza: SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH
Transformata Fouriera
Transformata Fouriera Program wykładu 1. Wprowadzenie teoretyczne 2. Algorytm FFT 3. Zastosowanie analizy Fouriera 4. Przykłady programów Wprowadzenie teoretyczne Zespolona transformata Fouriera Jeżeli
Percepcja dźwięku. Narząd słuchu
Percepcja dźwięku Narząd słuchu 1 Narząd słuchu Ucho zewnętrzne składa się z małżowiny i kanału usznego, zakończone błoną bębenkową, doprowadza dźwięk do ucha środkowego poprzez drgania błony bębenkowej;
Logiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE STOPNIE Z INFORMATYKI W KLASIE 8 opracowane na podstawie podręcznika
WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE STOPNIE Z INFORMATYKI W KLASIE 8 opracowane na podstawie podręcznika Informatyka Europejczyka. Podręcznik do informatyki dla szkoły podstawowej. Klasa 8. Prowadzące:
Przesył mowy przez internet
Damian Goworko Zuzanna Dziewulska Przesył mowy przez internet organizacja transmisji głosu, wybrane kodeki oraz rozwiązania podnoszące jakość połączenia głosowego Telefonia internetowa / voice over IP
Spis treści. 1. Cyfrowy zapis i synteza dźwięku Schemat blokowy i zadania karty dźwiękowej UTK. Karty dźwiękowe. 1
Spis treści 1. Cyfrowy zapis i synteza dźwięku... 2 2. Schemat blokowy i zadania karty dźwiękowej... 4 UTK. Karty dźwiękowe. 1 1. Cyfrowy zapis i synteza dźwięku Proces kodowania informacji analogowej,
Kwantowanie sygnałów analogowych na przykładzie sygnału mowy
Kwantowanie sygnałów analogowych na przykładzie sygnału mowy Treść wykładu: Sygnał mowy i jego właściwości Kwantowanie skalarne: kwantyzator równomierny, nierównomierny, adaptacyjny Zastosowanie w koderze
1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
instrukcja użytkownika terminala ARGOX PA-20 SYSTEMY AUTOMATYCZNEJ IDENTYFIKACJI
instrukcja użytkownika terminala ARGOX PA-20 SYSTEMY AUTOMATYCZNEJ IDENTYFIKACJI SPIS TREŚCI 04 Opis opcji terminala 05 SKANOWANIE 06 Skanowanie kod 07 Skanowanie kod ilość 08 Skanowanie kod ilość cena
Wpływ szumu na kluczowanie fazy (BPSK)
Politechnika Warszawska Wydział Elektryczny Laboratorium Teletechniki Skrypt do ćwiczenia T.9 Wpływ szumu na kluczowanie fazy () . Wpływ szumu na kluczowanie fazy () Ćwiczenie ma na celu wyjaśnienie wpływu
Programowanie w języku C++ Grażyna Koba
Programowanie w języku C++ Grażyna Koba Kilka definicji: Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i zasad
Nagrywamy podcasty program Audacity
Pobieranie i instalacja Program Audacity jest darmowym zaawansowanym i wielościeżkowym edytorem plików dźwiękowych rozpowszechnianym na licencji GNU GPL. Jest w wersjach dla systemów typu Unix/Linux, Microsoft
Etap I V Gminnego Konkursu Informatycznego.
Informacje wstępne. Etap I V Gminnego Konkursu Informatycznego. 1. Do każdego pytania w teście podane są 3 odpowiedzi, z których tylko jedna jest odpowiedzią prawidłową. 2. Na starcie każdy uczestnik otrzymuje
Zastowowanie transformacji Fouriera w cyfrowym przetwarzaniu sygnałów
31.01.2008 Zastowowanie transformacji Fouriera w cyfrowym przetwarzaniu sygnałów Paweł Tkocz inf. sem. 5 gr 1 1. Dźwięk cyfrowy Fala akustyczna jest jednym ze zjawisk fizycznych mających charakter okresowy.
Platforma e-learningowa
Platforma e-learningowa skrócona instrukcja obsługi. Aby uruchomić platformę e-learningową, należy otworzyć przeglądarkę internetową, a następnie wpisać adres http://aok.learnway.eu/ - wyświetlony zostanie
Rozdział 1. Zastosowanie komputera w życiu codziennym... 5. Rozdział 2. Elementy zestawu komputerowego...11
Spis treści Rozdział 1. Zastosowanie komputera w życiu codziennym... 5 Rozdział 2. Elementy zestawu komputerowego...11 Rozdział 3. System operacyny, oprogramowanie...15 Rozdział 4. Podstawy edycji grafiki...23
mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 4, strona 1. GOLOMBA I RICE'A
mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 4, strona 1. KOMPRESJA ALGORYTMEM ARYTMETYCZNYM, GOLOMBA I RICE'A Idea algorytmu arytmetycznego Przykład kodowania arytmetycznego Renormalizacja
System diagnostyki słuchu
System diagnostyki słuchu Politechnika Gdańska ul. Narutowicza 11/12 80-233 Gdańsk www.pg.gda.pl 1. Wprowadzenie Celem opracowanej aplikacji jest umożliwienie przeprowadzenie podstawowych testów słuchu,
Politechnika Szczecińska Wydział Elektryczny Elektronika i Telekomunikacja
Politechnika Szczecińska Wydział Elektryczny Elektronika i Telekomunikacja Temat Projektu: Steganografia - ukrywanie w kolorowym zdjęciu kolorowego zdjęcia, przy użyciu programu Mathcad. Filip Kos gr.3
Audio i video. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski
Audio i video R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski s-rg@siwy.il.pw.edu.pl Fale dźwiękowe Dźwięk jest drganiem powietrza rozchodzącym się w postaci fali. Fala ma określoną amplitudę i częstotliwość.
Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego
Arytmetyka cyfrowa Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego (binarnego). Zapis binarny - to system liczenia
Tematy lekcji informatyki klasa 4a styczeń 2013
Tematy lekcji informatyki klasa 4a styczeń 2013 temat 7. z podręcznika (str. 70-72); sztuczki 4. i 5. (str. 78); Narysuj ikony narzędzi do zaznaczania i opisz je. 19 Zaznaczamy fragment rysunku i przenosimy
wagi cyfry 7 5 8 2 pozycje 3 2 1 0
Wartość liczby pozycyjnej System dziesiętny W rozdziale opiszemy pozycyjne systemy liczbowe. Wiedza ta znakomicie ułatwi nam zrozumienie sposobu przechowywania liczb w pamięci komputerów. Na pierwszy ogień
POLITECHNIKA LUBELSKA WYDZIAŁ ELEKTROTECHNIKI I INFORMATYKI INSTYTUT INFORMATYKI ZAKŁAD OCHRONY INFORMACJI
POLITECHNIKA LUBELSKA WYDZIAŁ ELEKTROTECHNIKI I INFORMATYKI INSTYTUT INFORMATYKI ZAKŁAD OCHRONY INFORMACJI mgr inż. Grzegorz Kozieł ZMODYFIKOWANE METODY CYFROWEGO PRZETWARZANIA SYGNAŁÓW DŹWIĘKOWYCH W STEGANOGRAFII
REFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany
5.4. Tworzymy formularze
5.4. Tworzymy formularze Zastosowanie formularzy Formularz to obiekt bazy danych, który daje możliwość tworzenia i modyfikacji danych w tabeli lub kwerendzie. Jego wielką zaletą jest umiejętność zautomatyzowania
5.4. Efekty specjalne
5.4. Efekty specjalne Przedstawiliśmy już sobie sporo kwestii związanych z dodawaniem, edytowaniem czy usuwaniem elementów, które możemy zamieścić w prezentacji. Ale pomyłką było by stwierdzenie, że więcej
LABORATORIUM TELEMONITORINGU OBIEKTÓW I AGLOMERACJI. Temat: Metody anonimizacji obrazu
LABORATORIUM TELEMONITORINGU OBIEKTÓW I AGLOMERACJI Temat: Metody anonimizacji obrazu W programie Watermarker.exe dostępny jest graficzny interfejs udostępniający opcje algorytmów anonimizacji. Funkcjonalności
Teoria przetwarzania A/C i C/A.
Teoria przetwarzania A/C i C/A. Autor: Bartłomiej Gorczyński Cyfrowe metody przetwarzania sygnałów polegają na przetworzeniu badanego sygnału analogowego w sygnał cyfrowy reprezentowany ciągiem słów binarnych
Poziomy wymagań Konieczny K Podstawowy- P Rozszerzający- R Dopełniający- D Uczeń:
WYMAGANIA EDUKACYJNE PRZEDMIOT: Witryny i aplikacje internetowe NUMER PROGRAMU NAUCZANIA (ZAKRES): 351203 Lp 1. Dział programu Podstawy HTML Poziomy wymagań Konieczny K Podstawowy- P Rozszerzający- R Dopełniający-
1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania
1. Opis aplikacji Interfejs programu podzielony jest na dwie zakładki. Wszystkie ustawienia znajdują się w drugiej zakładce, są przygotowane do ćwiczenia i nie można ich zmieniac bez pozwolenia prowadzącego
Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011
Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011 1 Spis treści 1 Charakterystyka projektu. 3 2 Schematy układów elektronicznych. 3 2.1 Moduł czujników.................................
LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q
LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone
Transformacja współrzędnych geodezyjnych mapy w programie GEOPLAN
Transformacja współrzędnych geodezyjnych mapy w programie GEOPLAN Program GEOPLAN umożliwia zmianę układu współrzędnych geodezyjnych mapy. Można tego dokonać przy udziale oprogramowania przeliczającego
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy
Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy
1 Wprowadzenie do informatyki i użytkowania komputerów Kodowanie informacji System komputerowy Kodowanie informacji 2 Co to jest? bit, bajt, kod ASCII. Jak działa system komputerowy? Co to jest? pamięć
Przetwarzanie analogowo-cyfrowe sygnałów
Przetwarzanie analogowo-cyfrowe sygnałów A/C 111111 1 Po co przekształcać sygnał do postaci cyfrowej? Można stosować komputerowe metody rejestracji, przetwarzania i analizy sygnałów parametry systemów
MOŻLIWOŚCI WYKORZYSTANIA TRANSFORMATY FOURIERA W STEGANOGRAFII DŹWIĘKU
Grzegorz KOZIEŁ MOŻLIWOŚCI WYKORZYSTANIA TRANSFORMATY FOURIERA W STEGANOGRAFII DŹWIĘKU STRESZCZENIE Niniejszy artykuł prezentuje możliwości wykorzystania transformaty Fouriera jako przekształcenia bazowego
Konwersja AVI do DVD w programie Avidemux z napisami (również w systemie Linux)
Konwersja AVI do DVD w programie Avidemux z napisami (również w systemie Linux) Wstęp W serwisie znajduje się już wiele opisów dotyczących konwersji plików AVI (DivX) do formatu DVD Video. Wszystkie te
Generowanie ciągów bitów losowych z wykorzystaniem sygnałów pochodzących z komputera
Generowanie ciągów bitów losowych z wykorzystaniem sygnałów pochodzących z komputera Praca dyplomowa magisterska Opiekun: prof. nzw. Zbigniew Kotulski Andrzej Piasecki apiaseck@mion.elka.pw.edu.pl Plan
PL B BUP 16/04. Kleczkowski Piotr,Kraków,PL WUP 04/09
RZECZPOSPOLITA POLSKA (12) OPIS PATENTOWY (19) PL (11) 201536 (13) B1 (21) Numer zgłoszenia: 358531 (51) Int.Cl. G10L 21/02 (2006.01) H03G 3/00 (2006.01) Urząd Patentowy Rzeczypospolitej Polskiej (22)
WYMAGANIA EDUKACYJNE. Witryny i Aplikacje Internetowe klasa I
WYMAGANIA EDUKACYJNE Witryny i Aplikacje Internetowe klasa I Dopuszczający definiuje pojęcia: witryna, portal, wortal, struktura witryny internetowej; opisuje rodzaje grafiki statycznej wymienia i charakteryzuje
W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby
Część XI C++ W folderze nazwisko36 program za każdym razem sprawdza oba warunki co niepotrzebnie obciąża procesor. Ten problem można rozwiązać stosując instrukcje if...else Instrukcja if wykonuje polecenie
ArtPlayer oprogramowanie do odtwarzania plików video sterowane Artnet/DMX V1.0.1
Instrukcja obsługi ArtPlayer oprogramowanie do odtwarzania plików video sterowane Artnet/DMX V1.0.1 1 ArtPlayer to proste oprogramowanie umożliwiające odtwarzanie plików video i ich wybór poprzez protokół