1 / 33

MP3 Stegonography

MP3 Stegonography. Lukasz Grzegorz Maciak Micheal Alexis Ponniah Renu Sharma . Project Goal. Implement a method to embed textual data into audio files using stegonography Embed lyrics into mp3 files Extract lyrics from an mp3 Display the lyrics while the song is playing. Why MP3 Files?.

wei
Download Presentation

MP3 Stegonography

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. MP3 Stegonography Lukasz Grzegorz MaciakMicheal Alexis PonniahRenu Sharma

  2. Project Goal • Implement a method to embed textual data into audio files using stegonography • Embed lyrics into mp3 files • Extract lyrics from an mp3 • Display the lyrics while the song is playing

  3. Why MP3 Files? • Open Standard (as opposed to proprietary WMA) • Very Popular • Preferred by end users • Easily Available

  4. FEATURES OF MP3 • Designed to store audio data • It’s a compressed file format • It’s lossy data format meaning that original audio signal is not retained in its entirety. • Aims to preserve the sound quality while minimizing storage space.

  5. BASICS OF MP3 ENCODING • Takes into account the properties of HAS(Human auditory system) • Discards any sounds with frequencies out of the audible scale. • Mp3 stores only a single copy of group of similar sounding notes.

  6. MP3 Encoding • Fragmentation: The size of the frame depends on the audio resolution or bit rate. • Perceptual Optimization: Each frame is analyzed so that frequencies that are not audible are discarded. • Huffman Compression • Appending Header meta-data

  7. MP3 Encoding

  8. MP3 File Structure

  9. MP3 Frame Headers

  10. MP3 Frame Headers

  11. MP3 Frame Length

  12. Embedding Text into MP3 Files • Non-Stegonographic methods • Encode time mp3 stegonography • Post encoding mp3 stegonography

  13. Non Stegonographic Methods • ID3v2 Comment Frame • Lyrics3 Specification (ID3 extension)

  14. Flaws of Non-Stego Methods • Increase in File Size • Not applicable to this project

  15. Encode Time Stegonography • Low Bit Encoding • Phase Coding • Spread Spectrum Coding • Echo Data Hiding

  16. Flaws of Encode Time Stego • Difficult to implement • Tied to single implementation of mp3 encoder/decoder • Require access to source wav files

  17. Post Encoding Stegonography • Unused Header Bit Stuffing • Padding Byte Stuffing

  18. Why Post Encode Stego? • Easy to implement • Do not require source WAV files • Can be used with an of the shelf encoder • No sound quality degradation

  19. Implemented in Java Stegonographic Method: Padding Byte Stuffing Stegonographic Module as stand alone application Implementation Choices

  20. Stegonographic Module: Design

  21. Flow of Control

  22. LZW Compression

  23. StegIO - Writing calculate the length of the message in bytes prepend the length to the message put the message on a byte queue while(there are still bytes to be written) { Header = read4 bytes from the file if(Headeris_valid&&contains padding byte) { seek to the end of frame pop the byte from the queue write the popped byte into file } }

  24. StegIO - Reading length = integer > 4 counter = 0 while (counter<length) { Header = read4 bytes from the file if(Headeris_valid && contains padding byte) { if(counter==4) { length = to_integer ( pop4 bytes from queue) } seek to the end of frame read a byte from the file push the read byte onto queue } }

  25. Stegonographic Module: Usage • To Embed text: • java –jar mp3stego.jar mp3_file.mp3 text_file.txt • To Extract text: • java –jar mp3stego.jar mp3_file.mp3

  26. Stegonographic Module: Comments & Future Work • Padding Byte Stuffing – problematic • Data Corruption

  27. Java and MP3 • Java Sound API • Java Media Framework

  28. MP3 Player Implementation • Used an open source java player called Java MP3 player. • http://www.codetoad.com/java_mp3_player.asp

  29. Text & Music Synchronization • Line starts with time offset • Followed pipe character “ | ” • Followed by the lyric text • Line ends with a new line (“ \n ”) • File terminates in hash mark (“ # “)

  30. Sample Lyrics File

  31. Future Work • Implementation using Unused Header Bit Stuffing • Automating Lyrics Markup and Synchronization

  32. Demo and Questions

  33. References • Hacker, Scot, “MP3, The Definitive Guide”, 1st Edition, March 2000, O'Reilly Publishing. • Noto, Mark, MP3Stego: Hiding Text in MP3 Files, September 2001, SANS Institute. • Koichi Takagi, Shigeyuki Sakazawa, Yashuiro Takishima, “Light Weight MP3 Watermarking Method for Mobile Terminals”, KDDI R&D Labs, MM'05 November 6-11, 2005 Singapore, ACM • “Huffman Code”, Wikipedia, http://en.wikipedia.org/wiki/Huffman_code • M. Nilsson, “ID3 tag version 2.4.0 - Main Structure”, November 2000, http://www.id3.org/id3v2.4.0-structure.txt • Predrag Supurovic, “MPEG Audio Frame Header”, 1998 DataVoyage, http://www.dv.co.yu/mpgscript/mpeghdr.htm#MPEGTAG • “The Private Life of MP3 Frames”, http://www.id3.org/mp3frame.html • M. Nilsson, “ID3 tag version 2.3.0”, February 1999, http://www.id3.org/id3v2.3.0.html • Strnad Peter, Gingold Peter, “Lyrics3 Tag v2.00”, Jun 1998, http://www.id3.org/lyrics3200.html • Bender W., Gruhl D., Morimoto N., Lu A., “Techniques for data hiding”, 1996, IBM, http://www.research.ibm.com/journal/sj/353/sectiona/bender.txt • Petitcolas Fabien A. P., “mp3stego”, 1997–2005, http://www.petitcolas.net/fabien/steganography/mp3stego/ • Koso A., Turi A., and Obimbo C., “Embedding Digital Signatures in MP3s”, from proceedings 477 Internet and Multimedia Systems, and Applications, 2005 • Cheng Cheok Yan, “Introduction On Text Compression Using Lempel, Ziv, Welch (LZW) method”, http://www.geocities.com/yccheok/lzw/lzw.html • “LZW”, Wikipedia, http://en.wikipedia.org/wiki/LZW • “Information-and-Entropy”, MIT, Spring 2003, http://ocw.mit.edu/NR/rdonlyres/Electrical-Engineering-and-Computer-Science/6-050JInformation-and-EntropySpring2003/ABF6E960-C29C-48BB-95AE-AF9F79D9E20B/0/chapter3new.pdf • Fraunhofer-Gesellschaft, http://www.iis.fraunhofer.de/amm/techinf/layer3/index.html

More Related