Audio Steganography
Index
Abstract……………………………………………………………………..
Chapter 1:
Introduction……………………………………….……………
Chapter 2.
Analysis…………………………………………………………
Purpose………………..……………………………………….
Scope…………..……………………………………………....
User Characteristics…..………………………………………
Assumptions and Dependency……………………….……...
Software and Hardware Requirement..……………………
Constraint…………………...………………………………….
Functional Requirement..…………………………………….
Chapter 3.
Design…….……………………………………………………
Embeding……………………………………...………………...
Dembed………………………………….………………………
Data Flow Diagram……………………………………….……
Chapter 4.
Implementation…………………………………………….....
Chapter 5.
Testing...……………………………………………………......
Chapter 6.
Post Implementation...………..…………………….…….......
Chapter 7.
User Walkthrough…………………………………….…….....
Chapter 8.
Future Enhancement……………………………………….....
Chapter 9.
References.…………………………………………….……...
Sahyadri Science College, Shimoga
1
Audio Steganography
ABSTRACT
Steganography is a technique allows a user to securely hide messages in a
cover media and to extract hidden message from the same. Cover media can be Audio,image
or videos. The information to be hidden can be a plain text message.The application is
intended to be used to hide confidential and proprietary information by anyone seeking to hide
information.. This software has an advantage over other information security systems as both
the key and the hidden messages are stored and transferred so no other person can see the
secret message. Another advantage of this program for individuals is that they do not have to
have any knowledge about steganography .
Project is developed using Java Development Kit (JDK) 1.7 , Notepad ++. Any
device that can support a Java Virtual Machine for JDK 1.7, along with the necessary memory
and disk storage space will be able to execute our application.
Sahyadri Science College, Shimoga
2
Audio Steganography
Chapter 1
INTRODUCTION
The main and the must feature of all the product is security .so I
have chosen one of the medium steganography to provide security.
Steganography is the art and science of hiding information by embedding
messages within other messages. Steganography works by replacing useless or unused data
in regular computer files (such as graphics, sound, text, HTML, etc.) with different, invisible
information or Using steganography a secret message is embedded in a medium. This hidden
information can be plain text, cipher text, or even images. The existence of the hidden
message is not known except by the sender and receiver. The word is derived from the Greek
words “stegos” meaning covered and “graphia” meaning writing.
The system that has been developed by me hide message behind any Audio.
PROBLEM DEFINITION
Embeded data is difficult to decipher, but it is relatively easy to detect. Embeding
only obscures a message's meaning, not its existence. Therefore, steganography, a technique
that hides the existence of a message, is often used to supplement Embeding. It's easy to use
and works by replacing bits of data in computer files or communication channels.
Sahyadri Science College, Shimoga
3
Audio Steganography
Chapter 2
ANALYSIS
During analysis we find that there are many techniques for providing security to the
digital data i.e. text,Audio etc from the miscreants. Some of these are as follows:-
Cryptography.
Steganography.
Water-marking.
Cryptography is an important technique for hiding the message and thus providing
security to the message. Cryptographyis the process of obscuring information to make it
unreadable without some type of special knowledge. In this case the message is not
concealed just scrambled or obscured. It does not hide the fact that the message exists.A
coded message that is unhidden, no matter how strong the encryption, will arouse suspicion
and may in itself be problematic.
Another technique for providing security to the digital data is water-marking. A digital
watermark is a pattern of bits inserted into a digital audio ,image or video file that identifies the
file's copyright information (author, rights, etc.). Digital watermarks are designed to be
completely invisible, or in the case of audio clips, inaudible. In digital watermarking the purpose
of inserting the bits is to protect the cover Audio rather than the encrypted bits.
With steganography this problem is resolved. While cryptography and steganography
are related, there is a difference between the two. The obvious advantage of steganography
over cryptography is that messages do not attract any attention. Steganography conceals the
fact that the message exists by hiding the actual message in another. The “cover” is the
medium which is used to hide the secret information. Cover media is an Audio.
In steganography since message is hidden behind the Audio and it is Audio which is
playable same as original, when in encrypted form, thus providing security to the digital
data.There is no suitable encryption technique for Audio other than the steganography.
Sahyadri Science College, Shimoga
4
Audio Steganography
SYSTEM REQUIREMENT SPECIFICATION
The software requirement specification is produced at the culmination of the
analysis task. The function and performance allocated to software as part of system
engineering are refined by establishing a complete information description as functional
representation, a representation of system behaviour, an indication of performance
requirements and design constraints, appropriate validation criteria.
Hardware Requirement
Hard disk : 40 GB
RAM : 256 MB
Processor : Pentium
Software Requirement
Language used : Java (Java Development Kit JDK 1.7)
Operating System : Windows 7
Java and JDK
Java is a high level object-oriented programming language with a built in
library of reusable software components. Java was conceived by James Gosling, Patrick
Naughton, Chris Wrath, Ed Frank, and Mike Sheridan at Sun Micro system in 1991. It is a
platform independent programming language that extends its features wide over the network.
Each Java program is both compiled and interpreted. With a compiler, we
can translate a Java program into an intermediate language called Java byte codes--the
Platform-independent codes interpreted by the Java interpreter. With an interpreter, each Java
byte code instruction is parsed and run on the computer. Compilation happens just once;
Sahyadri Science College, Shimoga
5
Audio Steganography
interpretation occurs each time the program is executed. The below Figure 3.1 illustrates how
this works.
Java byte codes can be considered as the machine code instructions for
the Java Virtual Machine (JVM). Every Java interpreter, whether it's a Java development tool
or a Web browser that can run Java applets is an implementation of the Java VM. The Java
VM can also be implemented in hardware. Java byte codes help make "write once, run
anywhere" possible. The Java program can be compiled into byte codes on any platform that
has a Java compiler. The byte codes can then be run on any implementation of the Java VM.
For example, the same Java program can run on Windows NT, Solaris, and Macintosh.
Java Program Compilations and Interpretation
JDK: The JDK contains the software and tools needed to compile, debug and execute applets
and applications written in Java language. Tools under JDK are javac compiler to compile java
source code into byte codes, java interpreter used to execute java byte codes, applet viewer
used to view and test applets and javadoc is the java documentation tool.
Purpose:-
An Audio contains thousand words so hiding of an message is a hiding of thousand
words. So the main purpose of our project is to hide a message into a cover Audio.
Scope:-
Message will be hidden into a cover Audio.
Sahyadri Science College, Shimoga
6
Audio Steganography
A large message will be hidden into multiple cover Audio.
A comparator will distinguish between normal cover Audio and Audio after embed.
User characteristics:-
A user with brief knowledge about computer will be able to use our software for hiding
message. And software developers will be able to use it as a module in other project.
Assumptions and Dependencies:-
Size and cover Audio is dependent upon the size of message.
Constraint:-
The resultant Audio should be in mp3 format because it is a loss less compression of
mp3.
Functional Requirements:-
Store:-
It will encrypt the message into the cover Audio.
Input: - Message , Carrier Audio.
Operation: - Bits of the carrier message will be manipulated for storing the
Message Audio.
Output: - Embeded Audio.
Retrieve:-
It will deembed the embeded for retrieving the message Audio.
Input: - Embeded Audio.
Operation: - Bits of the encrypted image will be manipulated for retrieving the
message image.
Output: - Message.
Sahyadri Science College, Shimoga
7
Audio Steganography
Chapter 3
DESIGN
Design is a meaningful engineering representation of something that is to be built. It can
be traced to a customer’s requirements and at the same time accessed for a quality against a
set of predefined criteria for good design.
Embeding (Storing message into carrier Audio)
We are using least significant bit insertion method. In this method the LSB of each last
bit of audio used to store the secret data. The resulting changes are too small didn’t
recognized by the audio player. The process of storing text data into Audio as Shown below
Sahyadri Science College, Shimoga
8
Audio Steganography
Deembeding
For retrieving message first of the Audio is checked, some message encrypt in the Audio or
not, And decrypt the message.
First of all message length retrieved from the first 16 pixel ,then according to message
length ,message retrieved from given carry Audio. The Dembeding process as Shown below
Sahyadri Science College, Shimoga
9
Audio Steganography
Data Flow Diagrams:-
CONTEXT DIAGRAM:
Message , carrier audio Embeded audio
Steganography
Message,audio
Embeded audio
1-LEVEL DFD
Message , carrier audio
Embeding Embeded audio
1
Embeded audio Dembeding Message
2
Sahyadri Science College, Shimoga
10
Audio Steganography
2-LEVEL DFD
Get message
1.1
Embeded
Audio audio
generator
Bit generator 1.5
1.3
Get carrier
Audio
1.2
Embeder
1.4
Get Embeded
Audio
Message,
2.1 Message and Audio
2.5
Bit generator
2.3
Check message
2.2
Sahyadri Science College, Shimoga
11
Audio Steganography
Chapter 4
IMPLEMENTATION
The GUI will contain a “Check” object, and will instantiate “Encode” and“Decode” objects as
needed to encode and decode images. User will respond to all of theuser’s events and set the
progress bar to visible when an encryption process is started.
Field Summary
Integer WalkThroughState
Contains information regarding the current state of the walkthrough.
JFrame progressPopUp
User Panel
JPanel - Panel
The main panel of the application contains a text tab and an Audio tab as
described below.
Text Field - textField
This contain the path of text file into Encode , the user types the text to be hidden
within an Audio.and file path
.
JScrollPane- scrollPane
This tab is also located within the panel.it’s purpose is selecting the directory of carrier audio
file and for selecting that file
.
Sahyadri Science College, Shimoga
12
Audio Steganography
jTextField- textField
This text box contain a image path of decoing image.
Functional Panel
JButton – button , button_3, btnBrowse, btnOk, btnCancel_1,b5
button will load the image for decode and button_3 will load a decode process in Decode.java.
btnBrowse will load image for Embed
btnOk will load a process of encryption.
btnCancel_1 will load a back process for embed and Dembed option
Constructor Summary
GUI()
Instantiates, adds, and sets listeners for all interactive components. Instantiates object
Sahyadri Science College, Shimoga
13
Audio Steganography
Chapter 5
TESTING
we applied many tests on our project and ww encountered many bugs and successfully
debugged them by using several test modules. Some test cases are as follows: -
Test: Embeding unit
Test 1: Size test:
Test approach: Here we took different Audio files of different sizes.
Goal and result: This test is performed for checking the maximum size of the message
and carrier Audio. Message can not be more than 32 times of Audio size.
Test 2: Audio comparison:
Test approach: Here we compared bit patterns of the message , cover Audio and
embeded Audio
Goal and result: This test is performed for checking whether the message is being
stored into the cover Audio. As a result we found that the bit pattern of the normal cover Audio
is different from the Embeded Audio.
Test 3: Logic testing:
Test approach: Here we compared the bit pattern of the Embeded Audio being made
and the Embeded Audio stored on the disk.
Goal and result: This test is performed for checking the bit pattern of the stored
Embeded Audio and Embeded Audio being made. As a result we found nothing change in
Audio playing.
Sahyadri Science College, Shimoga
14
Audio Steganography
Test: Dembeding unit
Test 4: Decryption of message stored in carrier Audio.
Test approach: Here we took different carrier Audio in different order. And some time
leave some carrier Audio.
Goal and result: This test is performed for checking whether the message can be
dembeded from embeded Audio , and effect of loosing any one of the embeded message bit.
As a result we found that the embedded message can be dembeded in any order. Also
message can be made after loosing any of the part of embedded audio, but the part of the
message, which was in the lost embedded audio, remained undetermined and difficult to find
that type of problem, and means it is lost.
Sahyadri Science College, Shimoga
15
Audio Steganography
Chapter 6
POST IMPLEMENTATION
Welcome Page
Login Page
Sahyadri Science College, Shimoga
16
Audio Steganography
Option for Embed and Dembed
Storing Message in Audio
Sahyadri Science College, Shimoga
17
Audio Steganography
Password for Deembeding
Thank you
Sahyadri Science College, Shimoga
18
Audio Steganography
Output of Embedeed Audio
Sahyadri Science College, Shimoga
19
Audio Steganography
Retrive Embeded Message from Audio
Successfully Message Decoding and Message and Audio are saved
Sahyadri Science College, Shimoga
20
Audio Steganography
Chapter 7
THE USER WALKTHROUGH
A portion of the main GUI is devoted to the user walkthrough. This walkthrough willlead
first time users through the process of embeding and dembeding message and in its final
stepinitiate the actual embeding or dembeding of the user’s text. The user may prepare for and
perform embeding and dembeding at any time without the use of the walkthrough.Consult the
following flow chart and corresponding description of states to understand the walkthrough
process.
2 3
1
4 5 6
The box below explains how each state will be described. Each has a unique state number.
Sahyadri Science College, Shimoga
21
Audio Steganography
The following boxes detail each state.
State 0:
There will be two buttons one for Embeding and second for Dembeding.
State 1:
Select message(*.txt).
State 2:
Choose a carrier Audio(*.mp3 ,*.Wave).
State 3:
Press “start” button and wait for while a progress bar not completed.
And message embeded successfully message will be show.
State 4:
Choose Embeded audio for the required message to de Dembed.
State 5:
Press Start
State 6:
After successfully Dembed , message will be show in new notepad.
Sahyadri Science College, Shimoga
22
Audio Steganography
Chapter 8
FUTURE ENHANCEMENT
Our project can be further extended by little bit of efforts. Various security enhancing and fault
tolerant features can be implemented easily. They are as follows:-
1. Further this product can be used to send the video clips and image similar in the
fashion as that message is send.
2. Another extra security can be provided.
.
Sahyadri Science College, Shimoga
23
Audio Steganography
Chapter 9
REFERENCES
Programming With JAVA a primer 4e,[Balagurusamy ]
Java Swing, [Loy,Eekestein,Wood,Elloit & Cole].
Complete Reference, [Herbert Schildt].
www.realnetworks.com.
en.wikipedia.org/wiki/Steganography.
www.sun.java.com.
Sahyadri Science College, Shimoga
24