stegano

Upload: ronak-agrawal

Post on 05-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/2/2019 stegano

    1/30

    usage

    Steganography is a means of storing information in a way that hides that

    informations existence. Paired with existing communication methods,steganography can be used to carry out hidden exchanges.

    Avoiding communication in well-known forms greatly reduces the risk ofinformation being leaked in transit. Another form of steganography, called watermarking is used primarily foridentification and entails embedding a unique piece of information within amedium without noticeably altering the medium. Steganography can also enhance individual privacy. This is effective onlyif the hidden communication is not detected.

    The most private communication is the one that never existed!

    conclusion

    Hiding information may introduce enough visible noise to raise suspicion.Therefore the carrier or cover audio must be carefully selected. A coveraudio should contain some randomness. It should contain some naturaluncertainty or noise. Once it has been used, the audio should be used again

    and should be destroyed. A familiar audio should be used. It is better forthe steganographer to create own audios. This proposed system is toprovide a good, efficient method for hiding the data from hackers and sentto the destination in a safe manner. This proposed system will not changethe size of the file even after encoding and also suitable for any type ofaudio file format. Encryption and Decryption techniques have been used tomake the security system robust. The project is being well made to tacklethe security issues and user interface makes user to handle well the systemand provides good communication between user and the system. The

    encrypt key makes further security and available of different audio formatsto choose by the user makes project a valuable project. As the encodingmethod varies dynamically, it cant be determined and hence even when theexistence of message is detected, it cant be read. To a steganalysis expertunable to determine the chosen encoding, a bit is just a bit. A betterfunction can be determined to improve the ability of the technique.Combining still more steganography methods may improve the strength ofthe technique. Future Work: We are going to implement this application forcompressed audio file formats and large audio files by using same

    technique.

    http://audiostegano.wordpress.com/2010/05/13/usage/http://audiostegano.wordpress.com/2010/05/13/usage/http://audiostegano.wordpress.com/2010/05/13/conclusion/http://audiostegano.wordpress.com/2010/05/13/conclusion/http://audiostegano.wordpress.com/2010/05/13/conclusion/http://audiostegano.wordpress.com/2010/05/13/usage/
  • 8/2/2019 stegano

    2/30

    algorithm

    The algorithm of audio steganography follow as below:

    * First of all the text message will be converted into the respective ASCIIvalue and after that it will be converted into binary pattern.

    * Audio file will be converted into the Binary pattern or stream of Binarydata through decoding by using any Encode/Decode library.

    * Calculating the intervals for the hiding message into the Binary patternof the audio file such as below .

    * The audio file contains set of bytes. For e.g. take an audio file which playfor 10 secs. It has more than 60,000 bytes. Each byte is received andchecked if the received byte is 254 or 255.If it is byte 255 or 254, encoding isdone.

    * Inserting the Binary pattern of message into that intervals such asquality & audioable characteristics couldnt alter .

    * for one character to encode we need eight 254 or 255 bytes. One characteris hidden in consecutive eight 254 or 255Bytes .

    * Identifying the message pattern for last packet such as mark the end ofmessage, the LSB bit of next eight consecutive 254 or 255 bytes whichcomes after all the messages have encoded are replaced by 1.

    * The encoded file is decoded to get the message .

    The process of algorithm as shown below:

    Steganographic algorithms can be characterized by a number of definingproperties. Three of them, which are most important for audiosteganographic algorithms, are defined below.

    PUBLISHED IN:

    DESIGNNIGON MAY 13, 2010 AT 3:50 PM LEAVE A COMMENT

    encoding

    http://audiostegano.wordpress.com/2010/05/13/algorithm/http://audiostegano.wordpress.com/2010/05/13/algorithm/http://audiostegano.wordpress.com/category/designnig/http://audiostegano.wordpress.com/category/designnig/http://audiostegano.wordpress.com/2010/05/13/algorithm/#respondhttp://audiostegano.wordpress.com/2010/05/13/algorithm/#respondhttp://audiostegano.wordpress.com/2010/05/13/encoding/http://audiostegano.wordpress.com/2010/05/13/encoding/http://audiostegano.wordpress.com/2010/05/13/encoding/http://audiostegano.wordpress.com/2010/05/13/algorithm/#respondhttp://audiostegano.wordpress.com/category/designnig/http://audiostegano.wordpress.com/2010/05/13/algorithm/
  • 8/2/2019 stegano

    3/30

    PUBLISHED IN:

    DESIGNNIGON MAY 13, 2010 AT 2:48 PM LEAVE A COMMENT

    Design Principles

    Software design is both a process and a model. The design process is a setof iterative steps that enable the designer to describe all aspects of thesoftware to be built. Basic design principles enable the software engineer tonavigate the design process.

    Some of the design principles are:

    The design should be traceable

    The design should not reinvent the wheel

    The design should minimize the intellectual distance between thesoftware and the problem as it exists in the real world

    The design should exhibit uniformity and integration

    http://audiostegano.wordpress.com/2010/05/13/encoding/http://audiostegano.wordpress.com/2010/05/13/encoding/http://audiostegano.wordpress.com/2010/05/13/encoding/http://audiostegano.wordpress.com/2010/05/13/encoding/http://audiostegano.wordpress.com/category/designnig/http://audiostegano.wordpress.com/category/designnig/http://audiostegano.wordpress.com/2010/05/13/encoding/#respondhttp://audiostegano.wordpress.com/2010/05/13/encoding/#respondhttp://audiostegano.wordpress.com/2010/05/13/design-principles/http://audiostegano.wordpress.com/2010/05/13/design-principles/http://audiostegano.files.wordpress.com/2010/05/new-picture-1.pnghttp://audiostegano.files.wordpress.com/2010/05/new-picture-1.pnghttp://audiostegano.wordpress.com/2010/05/13/design-principles/http://audiostegano.wordpress.com/2010/05/13/encoding/#respondhttp://audiostegano.wordpress.com/category/designnig/
  • 8/2/2019 stegano

    4/30

    PUBLISHED IN:

    DESIGNNIGON MAY 13, 2010 AT 2:16 PM LEAVE A COMMENT

    SOFTWARE DESIGN

    In the context of software, design is a problem solving process whoseobjective is to find and describe a way to implement the systems functionalrequirements while respecting the constraints imposed by the non-

    functional requirements (including the budget and deadlines) and byadhering to general principles of good quality.

    Software design is an interactive process through which the requirementsare translated into a blue print for constructing the software. The threecharacteristics that serve as a guide for the evaluation of a good design ofsoftware are as follows:

    The design must implement all the explicit requirements contained in the

    analysis mode, and it must accommodate all of the implicit requirementsdesired by the user.

    The design must be reliable, and act as an understandable guide for those,who generate code and test and subsequently maintain the software.

    The design should provide a complete picture of the software, addressingthe data, functional and behavioral domains from an implementingperspective.

    Design Principles:

    Software design is both a process and a model. The design process is a setof iterative steps that enable the designer to describe all aspects of thesoftware to be built. Basic design principles enable the software engineer tonavigate the design process.

    Some of the design principles are:

    The design should be traceable

    http://audiostegano.wordpress.com/category/designnig/http://audiostegano.wordpress.com/category/designnig/http://audiostegano.wordpress.com/2010/05/13/design-principles/#respondhttp://audiostegano.wordpress.com/2010/05/13/design-principles/#respondhttp://audiostegano.wordpress.com/2010/05/13/software-design/http://audiostegano.wordpress.com/2010/05/13/software-design/http://audiostegano.wordpress.com/2010/05/13/software-design/http://audiostegano.wordpress.com/2010/05/13/design-principles/#respondhttp://audiostegano.wordpress.com/category/designnig/
  • 8/2/2019 stegano

    5/30

    The design should not reinvent the wheel

    The design should minimize the intellectual distance between thesoftware and the problem as it exists in the real world

    The design should exhibit uniformity and integration

    limitation

    Steganography is constrained by the same assumption that exists forencryption. If Alice wants to send an audio file with a hidden message toBob, she must first privately agree with Bob on a method of steganography.Under the encryption model, Bob can be fairly sure when hes got somecipher text. However, in the steganography model, it will be difficult forBob to know when an audio is just an audio.

    The amount of data that can be effectively hidden in a given medium tendsto be restricted by the size of the medium itself. The fewer constraints thatexist on the integrity of the medium, the more potential it has for hidingdata. For example, this paragraph is constrained by the rules of the Englishlanguage and a specific topic of discussion. It would be difficult for me to

    hide a secret message in this paragraph due to the limited number of waysone can reasonably alter this text under those constraints.

    Images as Carriers:

    Images are a good medium for hiding data. The more detailed an image, thefewer constraints there are on how much data it can hide before it becomessuspect. The JPHide/JPSeek package uses the coefficients in a JPEG tohide information. Another method embeds data in visually insignificant

    parts of an image. Both of these methods alter the image; however, you canexplore image degradation using different images and messages of varyinglength. An alternative, specific to GIF images, is to manipulate an imagespalette in order to hide data. Gifshuffle does not alter the image itself in any

    visible way; rather, it permutes a GIF images color map, leaving theoriginal image completely intact.

    Audio File Carriers:

    Several packages also exist for hiding data in audio files. MP3Stego not onlyeffectively hides arbitrary information, but also claims to be a partly robust

    http://audiostegano.wordpress.com/2010/05/13/limitation/http://audiostegano.wordpress.com/2010/05/13/limitation/http://audiostegano.wordpress.com/2010/05/13/limitation/
  • 8/2/2019 stegano

    6/30

    method of watermarking MP3 audio files. The Windows Wave format letsusers hide data using StegoWav or Steghide. Steghide alters the leastsignificant bits of data in the carrier medium. Although nearly equal indata-hiding potential, the large size of meaningful audio files makes them

    less popular than image files as a steganographic medium.

    Images as Carriers:

    Images are a good medium for hiding data. The more detailed an image, thefewer constraints there are on how much data it can hide before it becomessuspect. The JPHide/JPSeek package uses the coefficients in a JPEG tohide information. Another method embeds data in visually insignificantparts of an image. Both of these methods alter the image; however, you can

    explore image degradation using different images and messages of varyinglength. An alternative, specific to GIF images, is to manipulate an imagespalette in order to hide data. Gifshuffle does not alter the image itself in any

    visible way; rather, it permutes a GIF images color map, leaving theoriginal image completely intact.

    Audio File Carriers:

    Several packages also exist for hiding data in audio files. MP3Stego not onlyeffectively hides arbitrary information, but also claims to be a partly robust

    method of watermarking MP3 audio files. The Windows Wave format letsusers hide data using StegoWav or Steghide. Steghide alters the leastsignificant bits of data in the carrier medium. Although nearly equal indata-hiding potential, the large size of meaningful audio files makes themless popular than image files as a steganographic medium.

    Images as Carriers:

    Images are a good medium for hiding data. The more detailed an image, the

    fewer constraints there are on how much data it can hide before it becomessuspect. The JPHide/JPSeek package uses the coefficients in a JPEG tohide information. Another method embeds data in visually insignificantparts of an image. Both of these methods alter the image; however, you canexplore image degradation using different images and messages of varyinglength. An alternative, specific to GIF images, is to manipulate an imagespalette in order to hide data. Gifshuffle does not alter the image itself in any

    visible way; rather, it permutes a GIF images color map, leaving theoriginal image completely intact.

    Audio File Carriers:

  • 8/2/2019 stegano

    7/30

    Several packages also exist for hiding data in audio files. MP3Stego not onlyeffectively hides arbitrary information, but also claims to be a partly robustmethod of watermarking MP3 audio files. The Windows Wave format letsusers hide data using StegoWav or Steghide. Steghide alters the least

    significant bits of data in the carrier medium. Although nearly equal indata-hiding potential, the large size of meaningful audio files makes themless popular than image files as a steganographic medium.

    Hardware Requirement

    The minimum requirements to run the proposed system are: Processor : PIV Hard Disk : 40GB RAM : 256MB Audio system : Speakers The above-mentioned hardware is the minimal requirement. It is advisable to have

    much advanced hardware since the purpose of the system is to response tolarge number of users rather than a limited number.

    PUBLISHED IN:

    LITRATURE SURVEYON MAY 13, 2010 AT 4:44 PM LEAVE A COMMENT

    .Software Requirement SpecificationA software requirements specification is developed as a consequence ofanalysis. Review is essential to ensure that the developer and customershave the same perception.

    Software requirements specification (SRS) is the starting point of thesoftware development activity. The Software Requirements Specification isproduced at the culmination of the analysis task. The introduction of the

    software requirements specification states the goals and objectives of thesoftware, describing it in the context of the computer-based system. Thesoftware requirements specification includes an information description,functional description, behavioral description, validation criteria.

    The purpose of this document is to present the software requirements in aprecise and easily understood manner. This document provides thefunctional, performance, design and verification requirements of thesoftware to be developed.

    http://audiostegano.wordpress.com/2010/05/13/hardware-requirement/http://audiostegano.wordpress.com/2010/05/13/hardware-requirement/http://audiostegano.wordpress.com/category/litrature-survey/http://audiostegano.wordpress.com/category/litrature-survey/http://audiostegano.wordpress.com/2010/05/13/hardware-requirement/#respondhttp://audiostegano.wordpress.com/2010/05/13/hardware-requirement/#respondhttp://audiostegano.wordpress.com/2010/05/13/software-requirement-specification-2/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification-2/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification-2/http://audiostegano.wordpress.com/2010/05/13/hardware-requirement/#respondhttp://audiostegano.wordpress.com/category/litrature-survey/http://audiostegano.wordpress.com/2010/05/13/hardware-requirement/
  • 8/2/2019 stegano

    8/30

    This is the only document that describes the requirements of the system.This is meant for use by the developers and will also be the basis for

    validating the final delivered system.

    A requirement is a statement about what the proposed system will do thatall stakeholders agree must be made true in order for the customersproblem to be adequately solved. Requirements can be divided into twomajor types, functional and non-functional. Requirements documentsnormally include both.

    Functional Requirements:

    Functional Requirements describe what the system should do, i.e. theservices provided for the users. The functional requirements of this systemare:

    Inputs: The user should provide a password, the message to embed, and acover audio file to hold the message. The receiver should provide the samepassword used for embedding the message, and the carrier audio in whichthe message is embedded.

    Outputs: The output is the carrier audio file with the message embedded init. The output for the receiver is the message contained in the carrier audio,

    and the secret message will be display in same message field.

    Non-Functional Requirements:

    Non-functional requirements are constraints that must be adhered toduring development. They limit what resources can be used and set boundson aspects of the softwares quality.

    One of the most important things about non-functional requirements is to

    make them verifiable. The verification is normally done by measuringvarious aspects of the system and seeing if the measurements confirm tothe requirements.

    Non-functional requirements are divided into several groups:

    The first group of categories reflects the five qualities attributes

    1. Usability

    2. Efficiency

  • 8/2/2019 stegano

    9/30

    3. Reliability

    4. Maintainability

    5. Reusability

    These requirements constrain the design to meet specified levels of quality.

    The second group of non-functional requirements categories constrains theenvironment and technology of the system like,

    1. Platform

    2. Technology to be used

    PUBLISHED IN:

    LITRATURE SURVEYON MAY 13, 2010 AT 4:43 PM LEAVE A COMMENT

    ANALYSIS

    Requirement Analysis

    Requirement Analysis is the first technical step in software engineeringprocess. It is at this point that a general statement of software scope isrefined into concrete specification that becomes the foundation for allsoftware engineering activities that follow.

    Analysis must focus on information, functional and behavioral domains ofthe problem. To better understand what is required, models are created andthe problem is partitioned. In many cases it is not possible to completelyspecify a problem at an early stage. Prototyping offers an alternateapproach from which requirements can be refined.

    1.Problem Specification

    The basic aim of problem analysis is to obtain a clear understanding of theneeds of the client and end users, what exactly is desired from software, and

    http://audiostegano.wordpress.com/category/litrature-survey/http://audiostegano.wordpress.com/category/litrature-survey/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification-2/#respondhttp://audiostegano.wordpress.com/2010/05/13/software-requirement-specification-2/#respondhttp://audiostegano.wordpress.com/2010/05/13/analysis/http://audiostegano.wordpress.com/2010/05/13/analysis/http://audiostegano.wordpress.com/2010/05/13/analysis/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification-2/#respondhttp://audiostegano.wordpress.com/category/litrature-survey/
  • 8/2/2019 stegano

    10/30

    what are the constraints on the solutions. A good problem statement shouldbe short and succinct 1 or 2 statements is best. It is a good idea to definethe problem and scope as early as possible, before getting deeper intoanalysis of the detailed requirements.

    In todays society the most practical implementation of steganography isused in the world of computers. Data is the heart of computercommunication and over the year a lot of methods have been created toaccomplish the goal of using steganography to hide data. The trick is toembed the hidden object into a significantly larger object so the change isundetectable by the human ear. The best object up to this writing is

    probably a digital audio. It is important to understand the process by whichdigital steganography takes place, and to make sure your cover audio islarge enough to support the byte manipulation.

    The basics of embedding data rely on three different facts. These threeitems are capacity, security, and robustness. Capacity means the amount ofdata that can be hidden in the cover audio. Security is the interceptorsability to decipher the data hidden inside the cover audio. Finally,

    robustness means the amount of manipulation a cover audio can handlebefore it is obvious a change has taken place. Steganography closelyresembles encryption in the fact that it requires the receiver to know thesecret which is called the secret key. In order for steganography to remainsecure the initial unmodified cover audio must also be kept secret. It would

    be easy to detect hidden data in an audio if one was to have the originalaudio side by side with the steganography cover audio.

    1.Problem Statement

    To embed the text message in cover audio, using the available methods ofaudio steganography.

    2.FeasibilityThe three important tests of feasibility are:

  • 8/2/2019 stegano

    11/30

    Technical Feasibility: There are a number of technical issues, whichare generally raised during the feasibility stage of investigation. They are as

    follows.

    Does the necessarytechnology exist to do what is suggested?

    Are there technical guarantees of accuracy, reliability, ease of access anddata security?

    Economic Feasibility: A system that can be developed technically and

    that will be used if installed must still be profitable for the organization.Some of the questions for Economic feasibility are:

    Are there sufficient benefits when creating system to make the costacceptable?

    Are the costs of not creating the system so great that the project must beundertaken?

    Is the cost of hardware and software for the class of application beingconsidered is feasible?

    Operational Feasibility:-

    Proposed projects are beneficial only if they can be turned into informationSystems that will meet the user requirements. Simply stated this test offeasibility asks if the system will work when it is developed and installed.

    Here are questions that will help test the operational feasibility of a project.

    Is there sufficient support for the project from the management? from the

    users?

  • 8/2/2019 stegano

    12/30

    If the current system is well liked and used to extranet that persons willnot be able to see reasons fro change there may be resistance. Are current business methods acceptable to the users? If they are not,users may welcome a change that will bring about a more operational and

    use full system.

    Have the users been involved in the planning and development of theproject?

    Early involvement reduces the chances of resistance to the system andchanges in general and increases the likelihood of successful projects.

    Will the proposed system cause harm? Will it produce poorer results inany respect or area? Will loss of control result in any area?

    Will customers be affected in an undesirable way? Will the system slowperformance in?

    Operational feasibility means users should support the project. During thepreliminary investigation it is came to know that the proposed system isoperationally feasible as many people are investigated in such a system as

    the benefits are high. As our system is user friendly there canbe nodifficulty in operating our system

    PUBLISHED IN:

    LITRATURE SURVEYON MAY 13, 2010 AT 4:39 PM LEAVE A COMMENT

    Features of java:

    Simple & Secure:

    Java was designed to be easy for the professional programmer to learn anduse effectively. The ability java applet with confidence that no harm could

    be done that no security will be breached is considered by many to be the

    single most important aspect of java.

    http://audiostegano.wordpress.com/category/litrature-survey/http://audiostegano.wordpress.com/category/litrature-survey/http://audiostegano.wordpress.com/2010/05/13/analysis/#respondhttp://audiostegano.wordpress.com/2010/05/13/analysis/#respondhttp://audiostegano.wordpress.com/2010/05/13/features-of-java/http://audiostegano.wordpress.com/2010/05/13/features-of-java/http://audiostegano.wordpress.com/2010/05/13/features-of-java/http://audiostegano.wordpress.com/2010/05/13/analysis/#respondhttp://audiostegano.wordpress.com/category/litrature-survey/
  • 8/2/2019 stegano

    13/30

    Robust:

    The multi plat formed environment of web places extraordinary demandson a program, because the program must execute reliably in a variety of

    systems. Thus, the ability to create robust programs was given priority inthe design of Java. To gain reliability, Java restricts you in a few key areas,to force you to find mistakes early in the program development. At thesame time, Java frees you in the form having to worry about many of thecommon causes of programming errors. Because java is a strictly typedlanguage, it checks your code at compile time.

    Multi-Threaded:

    Java was designed to meet the real-world requirement of creatinginteractive, networked programs. To accomplish this, Java supportsmultithreaded programming which allows you to write programs that domany things simultaneously.

    Distributed:

    Java is designed for the distributed environment of the Internet, because ithandles TCP/IP protocols. This feature brings an unparallel level ofabstraction to client/server programming.

    Dynamic:

    Java programs carry with them substantial amounts of runtime typeinformation that is used to verify and resolve accesses to objects at run-time. This makes it possible to dynamically link code in a safe andexpedient manner.

    Encapsulation:

    Encapsulation is the mechanism that binds together code and the data it

    manipulates, and keeps both safe from outside interference and misuse. Itcan be thought

  • 8/2/2019 stegano

    14/30

    Of as a protective wrapper that prevents the code and data from beingarbitrarily accessed

    By other code defined outside the wrapper.

    Inheritance:

    Inheritance is the process by which one object acquires the properties of theobject. This is important because it supports the concept of hierarchicalclassification without the use of hierarchies, each object would need todefine all of its characteristics explicitly. However, by use of inheritance, anobject need only define those qualities that make it unique with its class. Itcan inherit its general attributes from its parents.

    Polymorphism:

    Polymorphism is a feature that allows one interface to be used for a generalclass of actions more generally, the concept of polymorphism is oftenexpressed by the phrase One Interface, Multiple Methods. This meansthat it is possible to design a generic

    interface to a group of related activities. This helps reduce complexity byallowing the same interface to be used to specify a general class of action.

    Java Swings:

    Swing, which is an extension library to the AWT, includes new andimproved components that enhance the look and functionality of GUIs.Swing can be used to build Standalone swing gui Apps as well as Servletsand Applets. It employs a model/view design architecture. Swing is moreportable and more flexible than AWT.

    Swing Model/view design: The view part of the MV design isimplemented with a component object and the UI object. The model partof the MV design is implemented by a model object and a change listenerobject.

    Swing is built on top of AWT and is entirely written in Java, using AWTslightweight component support. In particular, unlike AWT, t hearchitecture of Swing components makes it easy to customize both theirappearance and behavior. Components from AWT and Swing can be mixed,allowing you to add Swing support to existing AWT-based programs. Forexample, swing components such as JSlider, JButton and JCheckbox could

  • 8/2/2019 stegano

    15/30

    be used in the same program with standard AWT labels, textfields andscrollbars. You could subclass the existing Swing UI, model, or changelistener classes without having to reinvent the entire implementation.Swing also has the ability to replace these objects on-the-fly.

    In Swing, classes that represent GUI components have names beginningwith the letter J. Some examples are JButton, JLabel, and JSlider.Altogether there are more than 250 new classes and 75 interfaces in Swing twice as many as in AWT.

    Java Swing class hierarchy:

    The class JComponent, descended directly from Container, is the root classfor most of Swings user interface components Swing contains componentsthat youll use to build a GUI. I am listing you some of the commonly usedSwing components. To learn and understand these swing programs, AWTProgramming knowledge is not required:

    JPanel is Swings version of the AWT class Panel and uses the samedefault layout, FlowLayout. JPanel is descended directly from JComponent.

    JFrame is Swings version of Frame and is descended directly from thatclass. The components added to the frame are referred to as its contents;these are managed by the contentPane. To add a component to a JFrame,

    we must use its contentPane instead.

    JInternalFrame is confined to a visible area of a container it is placed in. Itcan be iconified , maximized and layered.

    JWindow is Swings version of Window and is descended directly from

    that class. Like Window, it uses BorderLayout by default.

    JDialog is Swings version of Dialog and is descended directly from thatclass. Like Dialog, it uses Border Layout by default. Like JFrame andJWindow, JDialog contains a root Pane hierarchy including a contentPane,and it allows layered and glass panes. All dialogs are modal, which meansthe current thread is blocked until user interaction with it has beencompleted. JDialog class is intended as the basis for creating customdialogs; however, some of the most common dialogs are provided throughstatic methods in the class JOptionPane. JLabel, descended fromJComponent, is used to create text labels.

  • 8/2/2019 stegano

    16/30

    The abstract class AbstractButton extends class JComponent and providesa foundation for a family of button classes, including JButton.

    JTextField allows editing of a single line of text. New features include the

    ability to justify the text left, right, or center, and to set the texts font.

    JPasswordField (a direct subclass of JTextField) you can suppress thedisplay of input. Each character entered can be replaced by an echocharacter.

    This allows confidential input for passwords, for example. By default, theecho character is the asterisk, *.

    JTextArea allows editing of multiple lines of text. JTextArea can be used

    in conjunction with class JScrollPane to achieve scrolling. The underlyingJScrollPane can be forced to always or never have either the vertical orhorizontal scrollbar;

    JButton is a component the user clicks to trigger a specific action.

    JRadioButton is similar to JCheckbox, except for the default icon for eachclass. A set of radio buttons can be associated as a group in which only

    one button at a time can be selected.

    JCheckBox is not a member of a checkbox group. A checkbox can beselected and deselected, and it also displays its current state.

    JComboBox is like a drop down box. You can click a drop-down arrow andselect an option from a list. For example, when the component has focus,

    pressing a key that corresponds to the first character in some entrys nameselects that entry. A vertical scrollbar is used for longer lists.

    JList provides a scrollable set of items fromwhich one or more may beselected. JList can be populated from an Array or Vector. JList does not

    support scrolling directly, instead, the list must be associated with ascrollpane. The view port used by the scroll pane can also have a user-defined

    border. JList actions are handled using ListSelectionListener.

  • 8/2/2019 stegano

    17/30

    JTabbedPane contains a tab that can have a tool tip and a mnemonic, andit can display both text and an image.

    JToolbar contains a number of components whose type is usually some

    kind of button which can also include separators to group relatedcomponents

    within the toolbar.

    FlowLayout when used arranges swing components from left to right untiltheres no more space available. Then it begins a new row below it andmoves

    from left to right again. Each component in a FlowLayout gets as much

    space as it needs and no more.

    BorderLayout places swing components in the North, South, East, Westand center of a container. You can add horizontal and vertical gaps between

    the areas.

    GridLayout is a layout manager that lays out a containers components ina rectangular grid. The container is divided into equal-sized rectangles,

    and one component is placed in each rectangle.

    GridBagLayout is a layout manager that lays out a containers componentsin a grid of cells with each component occupying one or more cells,

    called its display area. The display area aligns components vertically andhorizontally, without requiring that the components be of the same size.

    JMenubar can contain several JMenus. Each of the JMenus can contain a

    series of JMenuItem s that you can select. Swing provides support for

    pull-down and popup menus.

    Scrollable JPopupMenu is a scrollable popup menu that can be usedwhenever we have so many items in a popup menu that exceeds the screenvisible height.

    ANALYSIS

    Requirement Analysis

  • 8/2/2019 stegano

    18/30

    Requirement Analysis is the first technical step in software engineeringprocess. It is at this point that a general statement of software scope isrefined into concrete specification that becomes the foundation for allsoftware engineering activities that follow.

    Analysis must focus on information, functional and behavioral domains ofthe problem. To better understand what is required, models are created andthe problem is partitioned. In many cases it is not possible to completelyspecify a problem at an early stage. Prototyping offers an alternateapproach from which requirements can be refined.

    proposed system

    Our system provides a very friendly User Interface where the user had tospecify just the required inputs (audio, text).After embedding or extractingthe user can save /open or just discord the output of that particularoperation according to their wish. In view of providing security bypreventing unauthorized person to access the software password facility isprovided to the user in order to work with the software. To provide moresecurity by avoiding an intruder to extract the embedded data a security keyis used while embedding and extracting message.

    Least significant bit (LSB) coding is the simplest way to embed informationin a digital audio file. By substituting the least significant bit of eachsampling point with a binary message, LSB coding allows for a largeamount of data to be encoded. The following diagram illustrates how themessage HEY is encoded in a 16-bit CD quality sample using the LSBmethod:

    In LSB coding, the ideal data transmission rate is 1 kbps per 1 kHz. In someimplementations of LSB coding, however, the two least significant bits of asample are replaced with two message bits. This increases the amount ofdata that can be encoded but also increases the amount of resulting noise inthe audio file as well.

    Thus, one should consider the signal content before deciding on the LSBoperation to use. For example, a sound file that was recorded in a bustlingsubway station would mask low-bit encoding noise. On the other hand, thesame noise would be audible in a sound file containing a piano solo.

    To extract a secret message from an LSB encoded sound file, the receiver

    needs access to the sequence of sample indices used in the embeddingprocess. Normally, the length of the secret message to be encoded is smaller

    http://audiostegano.wordpress.com/2010/05/13/proposed-system/http://audiostegano.wordpress.com/2010/05/13/proposed-system/http://audiostegano.wordpress.com/2010/05/13/proposed-system/
  • 8/2/2019 stegano

    19/30

    than the total number of samples in a sound file. One must decide then onhow to choose the subset of samples that will contain the secret messageand communicate that decision to the receiver. One trivial technique is tostart at the beginning of the sound file and perform LSB coding until the

    message has been completely embedded, leaving the remaining samplesunchanged. This creates a security problem, however in that the first part ofthe sound file will have different statistical properties than the second partof the sound file that was not modified. One solution to this problem is topad the secret message with random bits so that the length of the messageis equal to the total number of samples. Yet now the embedding processends up changing far more samples than the transmission of the secretrequired. This increases the probability that a would-be attacker willsuspect secret communication.

    A more sophisticated approach is to use a pseudorandom numbergenerator to spread the message over the sound file in a random manner.One popular approach is to use the random interval method, in which asecret key possessed by the sender is used as a seed in a pseudorandomnumber generator to create a random sequence of sample indices. Thereceiver also has access to the secret key and knowledge of thepseudorandom number generator, allowing the random sequence of sampleindices to be reconstructed. Checks must be put in place, however, to

    prevent the pseudorandom number generator from generating the samesample index twice. If this happened, a collision would occur where asample already modified with part of the message is modified again. Theproblem of collisions can be overcome by keeping track of all the samplesthat have already been used. Another approach is to calculate the subset ofsamples via a pseudorandom permutation of the entire set through the useof a secure hash function. This technique insures that the same index isnever generated more than once.

    The proposed system over comes all the restrictions made on the existingsystems. It provides good looking environment to user .It also provide theuser to give private key for encryption. The length of message is 650characters and provides frequency chart to see the variations afterencoding. The quality of the audio doesnt change variably. It cannot detectthe lack in quality of sound. The encryption key can be any combination ofcharacters, symbols, numbers. The key which is used for encoding is alsoused for decoding .

    PUBLISHED IN:

    PROBLEM DISCRIPTION

    http://audiostegano.wordpress.com/category/problem-discription/http://audiostegano.wordpress.com/category/problem-discription/http://audiostegano.wordpress.com/category/problem-discription/
  • 8/2/2019 stegano

    20/30

    ON MAY 13, 2010 AT 3:36 PM LEAVE A COMMENT

    existing system

    Digital Steganography is the art of inconspicuously hiding data within data.Steganography is a process that involves hiding a message in anappropriate carrier for example, an image or an audio file. The carrier canthen be sent to a receiver without anyone else knowing that it contains ahidden message.

    There are many techniques available to the digital steganographer. Themost common technique is to exploit the lenient constraints of popular file

    formats. Many publicly available software packages use this technique on avariety of media.

    Images are a good medium for hiding data. The more detailed an image, thefewer constraints there are on how much data it can hide before it becomessuspect. The JPHide/JPSeek package uses the coefficients in a JPEG tohide information. Another method embeds data in visually insignificantparts of an image. Both of these methods alter the image; however, you canexplore image degradation using different images and messages of varying

    length. An alternative, specific to GIF images, is to manipulate an imagespalette in order to hide data. Gifshuffle does not alter the image itself in any

    visible way; rather, it permutes a GIF images color map, leaving theoriginal image completely intact.

    Digital Steganography have some drawback such as bellow-

    1. Cannot provide more security

    2. Audio file cannot be reusable.

    PUBLISHED IN:

    PROBLEM DISCRIPTIONON MAY 13, 2010 AT 3:33 PM LEAVE A COMMENT

    description

    There are two methods in Audio steganography

    http://audiostegano.wordpress.com/category/problem-discription/http://audiostegano.wordpress.com/2010/05/13/proposed-system/#respondhttp://audiostegano.wordpress.com/2010/05/13/proposed-system/#respondhttp://audiostegano.wordpress.com/2010/05/13/existing-system/http://audiostegano.wordpress.com/2010/05/13/existing-system/http://audiostegano.wordpress.com/category/problem-discription/http://audiostegano.wordpress.com/category/problem-discription/http://audiostegano.wordpress.com/2010/05/13/existing-system/#respondhttp://audiostegano.wordpress.com/2010/05/13/existing-system/#respondhttp://audiostegano.wordpress.com/2010/05/13/description/http://audiostegano.wordpress.com/2010/05/13/description/http://audiostegano.wordpress.com/2010/05/13/description/http://audiostegano.wordpress.com/2010/05/13/existing-system/#respondhttp://audiostegano.wordpress.com/category/problem-discription/http://audiostegano.wordpress.com/2010/05/13/existing-system/http://audiostegano.wordpress.com/2010/05/13/proposed-system/#respond
  • 8/2/2019 stegano

    21/30

    1) Encoding

    2) Decoding

    Encoding is a process of hiding the message in the audio.

    Decoding is a process of retrieving the message from the audio.

    One ecode/decode library would be used to implement Algorithm is used toencode the message into audio. It performs bit level manipulation toencode the message. The following steps are:

    1. Receives the audio file in the form of some file format .2. Converted it in to binary pattern.3. Receives the message file in the form of document file format4. Each character in the message is converted in binary pattern.5. Encoding process would be done among binary pattern of audio

    with binary pattern of character in the message.

    For more security enhancement the encoding is done only when the bytewhich is received from the audio is a pattern of Bytes such as 254 or255.This selection of particular bytes for encoding will reduce the lack inquality of audio after encoding. It can be proved by seeing the frequencychart indicating the deviations happened after encode. Thought it shows bitlevel deviations in the chart as a whole the change in the audio cannot bedetermined.

    The best types of audio to use any file formats. The redundancy of the datahelps to hide the presence of a secret message. A cover audio shouldcontain some randomness. It should contain some natural uncertainty ornoise. Hiding information may introduce enough visible noise to raise

    suspicion. Therefore the carrier or cover audio must be carefully selected.Once it has been used the audio should not be used again and should bedestroyed. A familiar audio should not be used so it is better for thesteganographer to create their own audio. Some software displays the audio

    before and after data is hidden. The user will be someone who is familiarwith the process of information hiding and will have knowledge ofInformation systems. \

    Cryptography is recommended and will result in a more random looking

    message rather than a high degree of regularity. A cryptographic methodwill be included as an option prior to steganography. The user should be

  • 8/2/2019 stegano

    22/30

    able to select a plaintext message from a file, an audio file to be used as thecarrier and then select a steganographic method, which will hide theselected message in the selected carrier audio file. The user will then be ableto save the stegoed audio in another file. The ser should also be provided

    with the option to encrypt the message prior to hiding it in the audio. Theuser should be able to open an audio file containing a stegoed audiocontaining a message to be read and choose an appropriate method tounstego the message from the audio. The user should then be provided withthe hidden message. A graphical user interface will be provided for the userto select the appropriate files and methods. The software provides a GUI,

    which will allow a user to select a file containing the message, the audio inwhich to store the message and a file in which to store the stegoed audio.

    First we choose the technique from the list of the audio steganographymethods. After that find out the length of the audio file as well as length ofthe text file. Check whether the size of the audio file is greater or less thanthe text file. If the the size of the audio file is less than the size of theselected text file then print the error message, else embedded the text fileinto selected audio file.

    Embedded:

    Whenever the user want to embed the text message with in the audio filethen the user convert the audio file into bits. As well as text file will alsoconverted into bits.

    The first bit of the text will be inserted into the least significant bit of theaudio file. the process will run until the entire text message will be insertedinto audio file. if the text message will greater than the audio file thendisplay the error message.

    Extraction:

    The receiver can extract the message from the carrier audio file name. If theaudio file cannot contain the any message then print the error message.

    Steganalysis, the official countermeasure to steganography, is the art ofdetecting and often decoding hidden data within a given medium. Twomajor tools in steganalysis, information theory and statistical analysis,reveal in clear terms the tremendous potential for hidden information inInternet data as long as a set of data can be compressed to a smaller size,

    there is room for hidden data within the medium. Accordingly, the path ofseeking hidden data is treacherous and uncertain. Unless hidden data is

  • 8/2/2019 stegano

    23/30

    encoded in a common, well-defined format, it may be virtually impossibleto detect in the carrier data. To a steganalysis expert unable to determinethe chosen encoding, a bit is just a bit.

    In a computer audio file can be represented in a array fields, i.e. the audiofile can be converted into the bits. With in that the message will be hiddeninto audio files, so we choose the efficient audio files. Here we choose theuncompressed audio files, because when ever we are insert the messageinto uncompressed audio files then the noisy is very less i.e. the noisy cannot be detected by human ear. When you are inserting the message incompressed audio files then the noisy is very high that noisy is easilyidentify by the human ear. So we choose the two uncompressed audio fileformats .which are (mp3,wave,mid,aif,au) used here.

    PUBLISHED IN:

    PROBLEM DISCRIPTIONON MAY 13, 2010 AT 3:31 PM LEAVE A COMMENT

    objective

    The main objective of the project Audio steganography is to embed thetext message in cover audio file, using the available methods of audiosteganography methods. The receiver extracts the message from carrieraudio file.

    software requirement specification

    A software requirements specification is developed as a consequence ofanalysis. Review is essential to ensure that the developer and customers

    have the same perception. Software requirements specification (SRS) is thestarting point of the software development activity. The SoftwareRequirements Specification is produced at the culmination of the analysistask. The introduction of the software requirements specification states thegoals and objectives of the software, describing it in the context of thecomputer-based system. The software requirements specification includesan information description, functional description, behavioral description,

    validation criteria. The purpose of this document is to present the softwarerequirements in a precise and easily understood manner. This document

    provides the functional, performance, design and verification requirementsof the software to be developed. This is the only document that describes

    http://audiostegano.wordpress.com/category/problem-discription/http://audiostegano.wordpress.com/category/problem-discription/http://audiostegano.wordpress.com/2010/05/13/description/#respondhttp://audiostegano.wordpress.com/2010/05/13/description/#respondhttp://audiostegano.wordpress.com/2010/05/13/objective/http://audiostegano.wordpress.com/2010/05/13/objective/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification/http://audiostegano.wordpress.com/2010/05/13/objective/http://audiostegano.wordpress.com/2010/05/13/description/#respondhttp://audiostegano.wordpress.com/category/problem-discription/
  • 8/2/2019 stegano

    24/30

    the requirements of the system. This is meant for use by the developers andwill also be the basis for validating the final delivered system. Arequirement is a statement about what the proposed system will do that allstakeholders agree must be made true in order for the customers problem

    to be adequately solved. Requirements can be divided into two major types,functional and non-functional. Requirements documents normally include

    both. Functional Requirements: Functional Requirements describe whatthe system should do, i.e. the services provided for the users. The functionalrequirements of this system are: Inputs: The user should provide apassword, the message to embed, and a cover audio file to hold themessage. The receiver should provide the same password used forembedding the message, and the carrier audio in which the message isembedded. Outputs: The output is the carrier audio file with the message

    embedded in it. The output for the receiver is the message contained in thecarrier audio, and the secret message will be display in same message field.Non-Functional Requirements: Non-functional requirements areconstraints that must be adhered to during development. They limit whatresources can be used and set bounds on aspects of the softwares quality.One of the most important things about non-functional requirements is tomake them verifiable. The verification is normally done by measuring

    various aspects of the system and seeing if the measurements confirm tothe requirements. Non-functional requirements are divided into several

    groups: The first group of categories reflects the five qualities attributes 1.Usability 2. Efficiency 3. Reliability 4. Maintainability 5. Reusability Theserequirements constrain the design to meet specified levels of quality. Thesecond group of non-functional requirements categories constrains theenvironment and technology of the system like, 1. Platform 2. Technologyto be used

    PUBLISHED IN:

    REQUIREMENT ANALYSISON MAY 13, 2010 AT 3:46 PM LEAVE A COMMENT

    problem specification

    The basic aim of problem analysis is to obtain a clear understanding of theneeds of the client and end users, what exactly is desired from software, and

    what are the constraints on the solutions. A good problem statement should

    be short and succinct 1 or 2 statements is best. It is a good idea to definethe problem and scope as early as possible, before getting deeper into

    http://audiostegano.wordpress.com/category/requirement-analysis/http://audiostegano.wordpress.com/category/requirement-analysis/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification/#respondhttp://audiostegano.wordpress.com/2010/05/13/software-requirement-specification/#respondhttp://audiostegano.wordpress.com/2010/05/13/problem-specification/http://audiostegano.wordpress.com/2010/05/13/problem-specification/http://audiostegano.wordpress.com/2010/05/13/problem-specification/http://audiostegano.wordpress.com/2010/05/13/software-requirement-specification/#respondhttp://audiostegano.wordpress.com/category/requirement-analysis/
  • 8/2/2019 stegano

    25/30

    analysis of the detailed requirements. In todays society the most practicalimplementation of steganography is used in the world of computers. Data isthe heart of computer communication and over the year a lot of methodshave been created to accomplish the goal of using steganography to hide

    data. The trick is to embed the hidden object into a significantly largerobject so the change is undetectable by the human ear. The best object upto this writing is probably a digital audio. It is important to understand theprocess by which digital steganography takes place, and to make sure yourcover audio is large enough to support the byte manipulation. The basics ofembedding data rely on three different facts. These three items are capacity,security, and robustness. Capacity means the amount of data that can behidden in the cover audio. Security is the interceptors ability to decipherthe data hidden inside the cover audio. Finally, robustness means the

    amount of manipulation a cover audio can handle before it is obvious achange has taken place. Steganography closely resembles encryption in thefact that it requires the receiver to know the secret which is called the secretkey. In order for steganography to remain secure the initial unmodifiedcover audio must also be kept secret. It would be easy to detect hidden datain an audio if one was to have the original audio side by side with thesteganography cover audio. 1.Problem Statement To embed the textmessage in cover audio, using the available methods of audiosteganography. 2.Feasibility The three important tests of feasibility are:

    Technical Feasibility: There are a number of technical issues, which aregenerally raised during the feasibility stage of investigation. They are asfollows. Does the necessary technology exist to do what is suggested? Arethere technical guarantees of accuracy, reliability, ease of access and datasecurity? Economic Feasibility: A system that can be developedtechnically and that will be used if installed must still be profitable for theorganization. Some of the questions for Economic feasibility are: Are theresufficient benefits when creating system to make the cost acceptable? Arethe costs of not creating the system so great that the project must be

    undertaken? Is the cost of hardware and software for the class ofapplication being considered is feasible? Operational Feasibility:- Proposedprojects are beneficial only if they can be turned into information Systemsthat will meet the user requirements. Simply stated this test of feasibilityasks if the system will work when it is developed and installed. Here arequestions that will help test the operational feasibility of a project. Is theresufficient support for the project from the management? from the users? If the current system is well liked and used to extranet that persons will not

    be able to see reasons fro change there may be resistance. Are current

    business methods acceptable to the users? If they are not, users maywelcome a change that will bring about a more operational and use full

  • 8/2/2019 stegano

    26/30

    system. Have the users been involved in the planning and development ofthe project? Early involvement reduces the chances of resistance to thesystem and changes in general and increases the likelihood of successfulprojects. Will the proposed system cause harm? Will it produce poorer

    results in any respect or area? Will loss of control result in any area? Willcustomers be affected in an undesirable way? Will the system slowperformance in? Operational feasibility means users should support theproject. During the preliminary investigation it is came to know that theproposed system is operationally feasible as many people are investigatedin such a system as the benefits are high. As our system is user friendlythere canbe no difficulty in operating our system

    TESTING AND IMPLEMENTATION

    Software testing is a critical element of software quality assurance andrepresents the ultimate service of specification design and coding. Theincreasing visibility of software as a system element and the attended costsassociated with the software failure and motivating forces for well planned,thorough testing. It is not unusual for a software development to spend

    between 30 and 40 percent of total project effort in testing. System TestingStrategies for this system integrate test case design techniques into a wellplanned series of steps that result in the successful construction of this

    software. It also provides a road map for the developer, the qualityassurance organization and the customer, a roadmap that describes thesteps to be conducted as path of testing, when these steps are planned andthen undertaken and how much effort, time and resources will be required.The test provisions are follows. SYSTEM TESTING Software Testing: As thecoding is completed according to the requirement we have to test thequality of the software. Software testing is a critical element of softwarequality assurance and represent the ultimate review of specification, designand coding. Although testing is to uncover the errors in the software but it

    also demonstrates that software functions appear to be working as per thespecifications, those performance requirements appear top have been met.In addition, data collected as testing is conducted provide a good indicationof software and some indications of software quality as a whole. To assurethe software quality we conduct both White Box Testing and Black BoxTesting. White Box Testing: White Box Testing is a test case design methodthat uses the control structure of the procedural design to derive test cases.

    As we are using a non-procedural language, there is very small scope for theWhite Box Testing. Whenever it is necessary , there the control structure

    are tested and successfully passed all the control structure with a veryminimum error. Black Box Testing: Black Box Testing focuses on the

    http://audiostegano.wordpress.com/2010/05/15/testing-and-implementation/http://audiostegano.wordpress.com/2010/05/15/testing-and-implementation/http://audiostegano.wordpress.com/2010/05/15/testing-and-implementation/
  • 8/2/2019 stegano

    27/30

    functional requirement of the software. It enables to derive sets of inputconditions that will fully exercise all functional requirements for a program.The Black Box Testing finds almost all errors. If finds some interface errorsand errors in accessing the database and some performance errors. In Black

    Box Testing we use mainly two techniques Equivalence partitioning theBoundary Volume Analysis Technique. Equivalence Partitions: In themethod we divide input domain of a program into classes of data from

    which test cases are derived. An Equivalence class represents a set of validor invalid of a set of related values or a Boolean condition. The equivalencefor these is: Input condition requires specific value-specific or non-specifictwo classes. Input condition requires a range or out of range two classes. Input condition specifies a number of a set-belongs to a set or not belongsto the set two classes. Input condition is Boolean-valid or invalid Boolean

    condition two classes. By these types of equivalent classes, we can test formany cases. Boundary Values Analysis: Number of errors usually occurs atthe boundaries of the input domain generally. In this technique a selectionof test cases is exercised using boundary values i.e., around boundaries. Bythe above two techniques, we eliminated almost all errors from the softwareand checked for numerous test values for each and every input value. Theresults were satisfactory. Flow of Testing System testing is designated touncover weakness that was not detected in the earlier tests. The totalsystem is tested for recovery and fallback after various major failures to

    ensure that no data are lost. An accepted test is done to validity andreliability of the system. The philosophy behind the testing is to find errorin project. There are many test cases designed with this is mind. The flow oftesting is as follows. Code Testing: Specification testing is done to check ifthe program does with it should do and how it should behave under variousconditions or combinations and submitted for processing in the system andits checked if any overlaps occur during the processing. This strategyexamines the logic of the program. Here only syntax of the code is tested. Incode testing syntax errors are corrected, to ensure that the code is perfect.

    Unit Testing: The first level of testing is called unit testing. Here differentmodules are tested against the specifications produced during the design ofthe modules. Unit testing is done to test the working of individual modules

    with test oracles. Unit testing comprises a set of tests preformed by anindividual programmer prior to integration of the units into a large system.

    A program unit is small enough that the programmer who developed if cantest it in a great detail. Unit testing focuses first on the modules to locateerrors. These errors are verified and corrected so that the unit perfectly fitsto the project. System Testing: The next level of testing is system testing

    and acceptance testing. This testing is done to check if the system has itsrequirements and to find the external behavior of the system. System

  • 8/2/2019 stegano

    28/30

    testing involves two kinds of activities: Integration testing Acceptancetesting Integration Testing: The next level of testing is called theIntegration Testing. In this many tested modules are combined intosubsystems, which were tested. Test case data is prepared to check the

    control flow of all the modules and to exhaust all possible inputs to theprogram. Situations like treating the modules when there is no data enteredin the text box is also tested. This testing strategy dictates the order in

    which modules must be available, and exerts strong influence on the orderin which the modules must be written, debugged and unit tested. Inintegration testing, all the modules / units on which unit testing isperformed are integrated together and tested. Acceptance Testing: Thistesting is performed finally by user to demonstrate that the implementedsystem satisfies its requirements. The user gives various inputs to get

    required oupputs. Specification Testing: Specification testing is done tocheck if the program does what is should do and how it should behaveunder various conditions or combination and submitted for processing inthe system and it is checked if any overlaps occur during the processing.Testing Objectives: The following are the testing objectives. Testing is aprocess of executing a program with the intent of finding an error. A goodtest case is one that has a high probability of finding an as yet undiscoverederror. A successful test is one that uncovers an as yet undiscovered error.The above objectives imply a dramatic change in view point. They move

    counter to the commonly held view that a successful test is one in which noerrors are found. Our objective is to design tests that systematically verifydifferent clauses of errors and do so with minimum amount of time andeffort. If testing is conducted successfully, it will uncover errors in thesoftware. As a secondary benefit, testing demonstrates that softwarefunctions appear to be working according to specification and thatperformance requirements appear to have been met. In addition, datacollected as testing is conducted provides a good indication of software.Testing cant show the absence of defects, it can only show that software

    errors are present. It is important to keep this stated in mind as testing isbeing conducted. Testing principles: Before applying methods to designeffective test cases, a software engineer must understand the basicprinciples that guide software testing. All tests should be traceable tocustomer requirements. Tests should be planned long before testing

    begins. Testing should begin in the small and progress towards testingin the large. Exhaustive testing is not possible. Test Plan: A test plan is adocument that contains a complete set of test cases for a system, along withother information about the testing process. The test plan should be

    returned long before the testing starts. Test plan identifies 1. A task set tobe applied as testing commences , 2. The work products to be produced as

  • 8/2/2019 stegano

    29/30

    each testing task is executed 3. The manner, in which the results of testingare evaluated, recorded and reuse when regression testing is conducted. Insome cases the test plan is indicated with the project plan. In others the testplan is a separate document. The test report is a record of the testing

    performed. The testing report enables the acquirer to assess the testing andits results. The test report is a record of the testing performed. The testingreport enables the acquirer to assess the testing and its results. Test Plan1:Input Audio file type Input: Sender selects an audio from the list ofsupported files Process: Message is embedded in the selected audio andnew audio file is saved Action: Display alert showing the successfulembedding of message # Aspect to be tested Test Case Expected ResultResult 1 Audio file type File type .wav Accept the file & embed msg in itSave the output image as .mp3 file 2 Audio file type File type .mp3 Accept

    the file & embed msg in it Output image is saved as .mid file Test Plan2:Output audio file name Input: provides a file name for the output audioProcess: Embed the message and save new audio as a .wav or .mp3 file

    Action: Creates the output audio file of given name with .wav or .mp3 asextension # Aspect to be tested Test Case Expected Result Result 1 Outputfile name o/p file name with extension is given Create the output fileCreates o/p file with .wav extension appended to the given name 2 Outputfile name No name is given for the output file Provide the alert box to enterthe o/p file name. Creates the output file with name output Test Plan3:

    Message to be encoded Input: Sender provides the message to be embeddedProcess: Embed the message in selected source audio and save as a newaudio Action: Display alert showing the status of message embedding #

    Aspect to be tested Test Case Expected Result Result 1 Message Audio canhold the message of provided length Embed the message in the audio Alertis given showing successful embedding of message 2 Message Audio cannothold the message of provided length Display a msg that the audio cannothold the given message Alert is given that target file cannot hold themessage Test Plan4: Supported audio files for encoding and decoding a

    message Input: source selects the source audio to embed a message. outputselects the stegoed audio to get the message contained in it. Process:Supported audio files as Files of Type shows .wav and .mp3 files etc.Result: Display list of all the supported audio. # Aspect to be tested TestCase Expected Result Result 1 Files of type in the dialog box Files of type:Supported audio files All .wav and .mp3 files are shown Lists all the wavand mp3 files 2 Files of type in the dialog box Files of type: All audios Allfiles at the selected location are shown Lists all the files at the selectedlocation Test Plan5: Output file Input: selects the source audio and provides

    the message to embed Process: Edits the audio to hold the message andsave it as a new audio Result: Display alert showing the status of message

  • 8/2/2019 stegano

    30/30

    embedding # Aspect to be tested Test Case Expected Result 1 Output fileSelected file to be decoded contains data Decoded message is given to thereceiver Message is decoded and given to receiver 2 Output file Selected fileto be decoded doesnt contain any data Display a message that the image

    file doesnt have any data Alert is given that please enter the TestPlan6:Show the Frequency chart Input: click the chart button Result:Display the frequency chart of the both (source and output audio file) in asaprate window. Finally, all errors and exceptional handling paths aretested. The exceptions are handled in every module using ExceptionalHandling Mechanism to ensure that no errors will affect the working of thesystem.