You are on page 1of 10

Software Requirements Specification

for

Secret Painter

Prepared by

Anand Krishna Shyam Mohan Roshan Franklin


Guide Name Course Date : : :

AM.EN.P3MCA10003 AM.EN.P3MCA10049 AM.EN.P3MCA10040


Ms Resmi T. R.

anand.krisshh@gmail.com 143shyamsaran@gmail.com roshan.1001@gmail.com

Master Of Computer Applications (MCA) 18-9-2012

Software Requirements Specification for <Project>

Page ii

Contents
1 INTRODUCTION......................................................................................................................................................1 2 OVERALL DESCRIPTION.....................................................................................................................................1 3 SPECIFIC REQUIREMENTS.................................................................................................................................4 4 OTHER NON-FUNCTIONAL REQUIREMENTS...............................................................................................6

Software Requirements Specification for Secret Painter

Page 1

1 Introduction
1.1 Document Purpose
This document aims at providing a detailed description of the application titled Secret Painter. This document will provide information about the functionalities, technologies inovolved, targeted users and various other aspects of this application. This document is intended to provide an authoritataive and detailed outline regarding all aspects of the Secret Painter application such as operating environment, design and implementation constraints, functional requirements of the application etc.

1.2 Product Scope


The main purpose of this project is to develop a secure and efficient way to encode confidential text documents in images. This type of encryption is referred to as Stenganography in this technique, textual data are encoded as colored pixels and placed at various points on an image. This can later be decoded at the receiver side using the same application ie Secret Painter to retrieve the original textual data encoded in each image. The main benefit of this application is that the image with encoded text will appear as a normal image itself. This increases the security of the encoded text.

1.3 Definitions, Acronyms and Abbreviations


Steganography is a technology that hides a message within an object, a text, or a picture. It is often confused with cryptography, not in name but in appearance and usage. The easiest way to differentiate the two is to remember steganography conceals not only the contents of the message but also the mere existence of a message.

1.4 Document Conventions


In general this document follows the IEEE formatting requirements. Italics have been used for comments. Each subsection of a major heading has been named in the format of 1.1, 1.2, 1.3 etc. All titles and major heading have been written in bold for easier identification.

2 Overall Description
2.1 Product Perspective
The product perspective of this application is the technique of steganography, in this method; data can encoded within an image. This image can later be decoded at the receiver side using the same

Software Requirements Specification for Secret Painter

Page 2

application ie Secret Painter to retrieve the original data in each image after providing the required authentication.

2.2

Product Functionality

The application allows a great deal of flexibility to the user, he can choose the text file that he wants to encode, he can choose the image file which will carry the encoded hidden data, he can even set password for that individual image in order to increase the level of security. Some of the functionalities offered by Secret Painter are: Allows user to select the text file that needs to be encoded Allows the user to select any image to be the carrier for the previously selected text file Enables the image to be password authenticated so that image cannot be easily decoded by a third-party using the Secret application. This increases the level of protection.

o Users and Characteristics


There is only a single type of user in Secret Painter application, also called as the artist. It can operate in two different modes. Pirate Mode In this mode the user will select the text file that he wants to be encoded, he specifies the image which will be the carrier (ie the image within which the text file will be hidden.). He can also specify and set authentication parameters like passwords for that image.

Saviour Mode In this the user will be able to decode the image received to recover the original data after providing necessary authentication details. He can then view, edit the original data.

Software Requirements Specification for Secret Painter

Page 3

o Operating Environment
2.4.1 Hardware requirements o Processor o Main Memory o Hard Disk o Display 2.4.2 Software requirements o Operating System o Language Used o Tools : Intel Pentium IV or higher : 512 MB or higher : 160 GB : 15 color monitor or more : Windows XP or higher. : Java : Net Beans IDE

o Design and Implementation Constraints


The Design Constraints for Secret Painter is that the application should be extremely user friendly so that any first time user can easily understand the working of the application. The user interface should be developed and designed in such a way that it is very intuitive and easy to operate. All this should be achieved while masking the complexity of the program logic from the user. Some of the Implementation Constraints in this application are as follows: This system can only be used correctly if both parties at receiver and sender sides has the same application as Secret Painter The application will work only with images in the .jpeg format. The application will not be able to recover the original data if, the carrier image has been edited in other applications or corrupted before being received at the destination. The carrier image cannot carry data in other forms such as video or audio or other images.

o User Documentation
After the developmental stage of the application is over, a step by step manual with screenshots of each step will be created to educate the users on how to use the application. The manual will cover all operational aspects of the application.

o Assumptions and Dependencies


Some of the major assumptions and dependencies are: Both sides use the same application Both machines have sufficient hardware capability to support this application The carrier image is not modified in any way before reaching the destination. The user will not try to encode more than one text file in a carrier image.

Software Requirements Specification for Secret Painter

Page 4

3 Specific Requirements
3.1 External Interface Requirements
3.1.1 User Interfaces As mentioned earlier, the users in Secret painter can operate in two different modes for specific functionalities the interfaces in each mode will have the following buttons and features namely Pirate mode (Encoding Mode) In this mode, the interface will assume a dark background and will have options to select and upload the text file to be hidden. Specific options for selecting the image which will be the carrier. This mode will also have button which will enable user to set the password for authentication. Saviour mode (Decoding Mode) In this, the interface will assume a light background and the user will be able to decode the image received to recover the original data after providing necessary authentication details. He can then view or edit the original data in any text editor.

3.1.2 Hardware Interfaces Since this project is a system based application all activities regarding the project takes place within the system with minimal interfaces to the hardware components of the system. 3.1.3 Communications Interfaces Secret Painter is a system based application in which the encoded data is carried from source to destination by the user in storage devices like USB drives , or SD cards there is no need of communication protocols like HTTP etc for the implementation of this project. The only requirement is that the Secret painter application should be available at source and destination.

Software Requirements Specification for Secret Painter

Page 5

Functional Requirements

3.1.4 Use Case View

Software Requirements Specification for Secret Painter

Page 6

4 Other Non-functional Requirements


4.1 Performance Requirements
The performance requirements identified for the Secret Painter application are as follows: The application should correctly hide and encode the textual data in a selected carrier image without corrupting the original data of the text. The encoding process should take as less time as possible. If the encoding process is interrupted , both carrier image and text data should be reverted to their original forms The carrier image should be decoded at the receiver side correctly and, in the shortest time possible. The application should also be extremely reliable with a small resource usage footprint on the system.

4.2 Safety and Security Requirements


Since this application is based on the concept of steganography, the application needs to be implemented using secure and efficient codes. The application should also be immune to attacks from malicious software etc. The hidden password authentication for carrier images should securely protect the hidden file within the image. This field should become visible only when it is accessed via the Secret Painter application. This feature is also part of the safety and security requirements of this project

4.3 Software Quality Attributes


This application needs to have all attributes Reliability, Efficiency, Security, Maintainability and Size. Software quality measurement quantifies to what extent a software or system rates along each of these five dimensions. The Secret Painter application must satisfy all these constraints

Software Requirements Specification for Secret Painter

Page 7

Appendix A Data Dictionary


<Data dictionary is used to track all the different variables, states and functional requirements that you described in your document. Make sure to include the complete list of all constants, state variables (and their possible states), inputs and outputs in a table. In the table, include the description of these items as well as all related operations and requirements.>

Software Requirements Specification for Secret Painter

Page 8

Appendix B - Group Log


<Please include here all the minutes from your group meetings, your group activities, and any other relevant information that will assist the Teaching Assistant to determine the effort put forth to produce this document>

You might also like