Steganography
Steganography
Steganography
1
STEGANOGRAPHY
(A new technique to hide information within image file)
A PROJECT REPORT
Submitted By
S.PRADEEP
REG.NO. 0936JO127
Under the Guidance of
Mr. D.BOOMINATH M.C.A., M.Phil.,
MARCH-2011
2
CERTIFICATE
Principal
3
DECLARATION
I here by declare that this bonafied project work entitled the study on
“STEGANOGRAPHY” submitted to the Rathinam college of Arts and Science, in
partial fulfillment of the requirement for the award of the Degree of MASTER OF
INFORMATION TECHNOLOGY is the original work done by me during 2009-2011
under the supervision of Mr.D.BOOMINATH M.C.A.,M.Phil., Lecturer in Department
of computer Science, Rathinam college of Arts and Science, Coimbatore.
NAME : S.PRADEEP
REG. NO : 0936JO127
COURSE : M.SC (INFORMATION TECHNOLOGY)
COLLEGE : Rathinam College of Arts & Science
PLACE : Coimbatore
DATE :
4
ACKNOWLEDGEMENT
I thank God for his grace and blessings that have been showered upon me to bring
success for this project.
I extend my thanks to our chairman DR. MADAN A SENDHIL M.S., Ph.D., for
having given his concern to do my project in his organization.
I thank my parents, friends, and everlasting almighty for giving me the necessary
courage and for his invisible guidance to complete this project.
5
SYNOPSIS
Steganography is the art of hiding the fact that communication is taking place, by
hiding information in other information. Many different carrier file formats can be used,
but digital images are the most popular because of their frequency on the internet.
For hiding secret information in images, there exists a large variety of steganography
techniques some are more complex than others and all of them have respective strong and
weak points.
6
CHAPTER I. INTRODUCTION
The word steganography comes from the Greek “Seganos”, which mean covered or
secret and – “graphy” mean writing or drawing. Therefore, steganography mean, literally,
covered writing. It is the art and science of hiding information such its presence cannot be
detected and a communication is happening. A secrete information is encoding in a
manner such that the very existence of the information is concealed. Paired with existing
communication methods, steganography can be used to carry out hidden exchanges.
The publishing and broadcasting industries have become interested in techniques for
hiding encrypted copyright marks and serial numbers in digital films, audio recordings,
books and multimedia products.
7
Basically, the model for steganography is shown on following figure:
Cover-
object, C
Stego-key,
K
Message is the data that the sender wishes to remain it confidential. It can be plain
text, cipher text, other image, or anything that can be embedded in a bit stream such as a
copyright mark, a covert communication, or a serial number. Password is known as
stego-key, which ensures that only recipient who knows the corresponding decoding key
will be able to extract the message from a cover-object. The cover-object with the
secretly embedded message is then called the Stego-object.
In general, the information hiding process extracts redundant bits from cover-object.
The process consists of two steps:
8
• Identification of redundant bits in a cover-object. Redundant bits are those bits
that can be modified without corrupting the quality or destroying the integrity of the
cover-object.
• Embedding process then selects the subset of the redundant bits to be replaced
with data from a secret message. The stego-object is created by replacing the selected
redundant bits with message bits
9
CHAPTER II. SELECTION OF THE ORGANIZATION
Software Solutions – Here, we build up from initial study using our industry
knowledge and after a client need analysis, a complete business application for the
customer.
Typically, then they can begin with a through need analysis so as to prepare a system
requirement document. Then they can manage the entire development cycle and ensure a
smooth and effective implementation. They also have the ability to train people on the
system usage.
10
We develop,
• New Internet applications
• New Intranet applications
• User friendly applications, and
• New application in the retail banking, credit cards management etc.
Expertise:
Web enabling business application is thrust area. In the Internet era, web-enabling
applications are not just a technology issue but a business proposition as well. It has the
expertise to implement turnkey commercial application development projects covering
the entire software Development life cycle from initial system study, system design, code
development, testing, implementation, maintenance to training users on the application.
11
CHAPTER III. PROBLEM FORMULATION
The former consists of linguistic or language forms of hidden writing. The later, such
as invisible ink, try of hide messages physically. One disadvantage of linguistic
steganography is that users must equip themselves to have a good knowledge of
linguistry. In recent years, everything is trending toward digitization. And with the
development of the internet technology, digital media can be transmitted conveniently
over the network. Therefore, messages can be secretly carried by digital media by using
the steganography techniques, and then be transmitted through the internet rapidly
Steganography is the art of hiding the fact that communication is taking place, by
hiding information in other information. Many different carrier file formats can be used,
but digital images are the most popular because of their frequency on the internet. For
hiding secret information in images, there exists a large variety of steganography
techniques some are more complex than others and all of them have respective strong and
weak points.
So we prepare this application, to make the information hiding simpler and user
friendly.
12
3.2 EXISTING SYSTEM
The existing system uses hide the image in an image, in both the methods there are
number of loopholes through which the hackers can attack the message. The hackers may
change or damage the entire message. So there is no safety in transferring the data via
image.
Steganography pay attention to the degree of Invisibility while watermarking pay most
of its attribute to the robustness of the message and its ability to withstand attacks of
removal, such as image operations(rotation, cropping, filtering), audio
operations(rerecording, filtering)in the case of images and audio files being watermarked
respectively.
DRAWBACKS
It provides less security, because the secret messages are hacked by the hackers
and competitive companies.
It does not have proper reliability.
There is no proper acknowledgement.
The authority is not properly maintained.
To overcome the limitations of the existing system a new system has been proposed
using C# .Net. In this system we used two methods to add security to the file. The first
method, cryptography is a technique of hiding the message in the text file. So that the
authorized users can’t get the original information. On the receiving end, only by
knowing the private key (i.e., password) the user can decrypt the message.
13
The method, Steganography is a computer technique (or an art). It is same as text
encryption. But the message can be hidden in the picture in the pixel format.
To provide high degree of correctness and effectiveness and to reduce the workload it
is very important to computerize the system. System computerized is easy to handle and
provide the high accuracy in its output.
Since the software is developed for multi-user Environment the password protection is
provided to protect it from unauthorized user.
ANTICIPATED ADVANTAGES
It provides high security and reliability occurs.
The authorization is highly provided.
It gives assurance for the security of data.
There is no chance for hacking.
Because the data is in the form of Encrypted text.
14
Steganography sometimes is used when encryption is not permitted. Or, more
commonly, steganography is used to supplement encryption. An encrypted file may still
hide information using steganography, so even if the encrypted file is deciphered, the
hidden message is not seen
SPECIFIC OBJECTIVE
It is more effective and efficient way to transfer the file to the receiving end.
Easy method to manage the information so that the hackers can’t understand the
message.
15
WINDOWS XP
Windows XP was the successor to both Windows 2000 and Windows Me, and was the
first consumer-oriented operating system produced by Microsoft to be built on the
Windows NT kernel and architecture. Windows XP was released for retail sale on
October 25, 2001, and over 400 million copies were in use in January 2006, according to
an estimate in that month by an IDC analyst. It was succeeded by Windows Vista, which
was released to volume license customers on November 8, 2006, and worldwide to the
general public on January 30, 2007.
Direct OEM and retail sales of Windows XP ceased on June 30, 2008. Microsoft
continued to sell Windows XP through their System Builders (smaller OEMs who sell
assembled computers) program until January 31, 2009. XP may continue to be available
as these sources run through their inventory or by purchasing Windows 7 Ultimate,
Windows 7 Pro, Windows Vista Ultimate or Windows Vista Business, and then
downgrading to Windows XP.
FEATURES OF WINDOWS XP
16
Built on the new Windows engine
Windows XP Professional is built on the proven code base of Windows NT and
Windows 2000, which features a 32-bit computing architecture and a fully protected
memory model. Windows XP Professional will provide a dependable computing
experience for all business users.
17
Windows file protection protects core system files from being over written by
application installations. If a file is overwritten, Windows File Protection will restore the
correct version.
.NET FRAMEWORK
The Microsoft .NET Framework is an integrated and managed environment for the
development and execution of your code. The .NET Framework is a managed, type safe
environment for application development and execution. The framework manages all
aspects of the execution of your program: it allocates memory for the storage of data and
instructions, grants or denies the appropriate permissions to your application, initiates and
manages application execution, and manages the reallocation of memory for resources
that are no longer needed. The .NET Framework consists of two main components: the
common language runtime and the .NET Framework class library.
The framework's Base Class Library provides user interface, data access, database
connectivity, cryptography, web application development, numeric algorithms, and
network communications. The class library is used by programmers, who combine it with
their own code to produce applications.
Programs written for the .NET Framework execute in a software (as contrasted to
hardware) environment, known as the Common Language Runtime (CLR). The CLR is
an application virtual machine so that programmers need not consider the capabilities of
the specific CPU that will execute the program. The CLR also provides other important
services such as security, memory management, and exception handling. The class library
and the CLR together constitute the .NET Framework.
18
FEATURES OF .NET FRAMEWORK
With its language enhancements and its tight integration into the .NET Framework,
Visual Basic is a thoroughly modernized language that will likely become the premier
development tool for creating a wide range of .NET applications. In the past, Visual
Basic was often seen as a "lightweight" language that could be used for particular kinds
of tasks, but was wholly unsuitable for others.
Object Orientation.
Common Type System.
Access to System Services: The Framework Class Library.
A Common Runtime Environment.
.NET FRAMEWORK provides support in the language to find bugs early in the
development process. This makes for code that is easier to maintain and programs that
are more reliable.
In July 2000, Microsoft announced the .NET platform, a development framework that
provides a new way to create Windows applications. However, .NET goes beyond
traditional Windows programming to facilitate creating web application quickly and
easily. And .NET FRAMEWORK is one of the premier languages that Microsoft
supports for development in this new and exciting .NET space.
Reports are that Microsoft is devoting 80% of its research and development budget
to .NET and its associated technologies. The results of this commitment are impressive.
19
The .NET FRAMEWORK language can be used to develop two types of applications
that can be run on windows:
• Console applications display no graphics.
• Windows applications use the standard Windows interface.
The CLR is the heart of the .NET framework. It is the engine that drives key
functionality. “Runtime” is a component that a computer processes in order to execute
programs written in a particular programming language.
Here is how the CLR works. First of all, the source code written in a .NET language
gets compiled to the Intermediate Language (IL) and at the same time metadata
information is created by using the Meta data engine. These are optimally linked with
other code compiled by different compilers and the result is an EXE or DLL containing
the IL code, which is saved to disk.
Then, on execution, the IL code and any functionality from the .NET base class
libraries is brought together by using the class loader. Then, the combined code is
optimally tested for type safety by using the verifier before the Just-In-Time (JIT)
compiler comes to play. The JIT compiler processes the IL, creating managed native
code. Then, the managed native code is passes on to the .NET runtime manager.
20
Steganography system requires any type of image file and the information or message
that is to be hidden. It has two modules encrypt and decrypt.
Microsoft .Net framework prepares a huge amount of tool and options for
programmers that they simples programming. One of .Net tools for pictures and images is
auto-converting most types of pictures to BMP format. I used this tool in this software
called “Steganography” that is written in C#.Net language and you can use this software
to hide your information in any type of pictures without any converting its format to
BMP (software converts inside it).
The algorithm used for Encryption and Decryption in this application provides using
several layers lieu of using only LSB layer of image. Writing data starts from last layer
(8th or LSB layer); because significant of this layer is least and every upper layer has
doubled significant from its down layer. So every step we go to upper layer image quality
decreases and image retouching transpires.
The encrypt module is used to hide information into the image; no one can see that
information or file. This module requires any type of image and message and gives the
only one image file in destination.
The decrypt module is used to get the hidden information in an image file. It take the
image file as an output, and give two file at destination folder, one is the same image file
and another is the message file that is hidden it that.
Before encrypting file inside image we must save name and size of file in a definite
place of image. We could save file name before file information in LSB layer and save
file size and file name size in most right-down pixels of image. Writing this information
is needed to retrieve file from encrypted image in decryption state.
21
IMAGE FILE INFORMATION FILE
BMP FILE
22
BMP FILE
23
5.1 DESIGN PROCESS
The input design is the process of entering data to the system. The input design goal is
to enter to the computer as accurate as possible. Here inputs are designed effectively so
that errors made by the operations are minimized. The inputs to the system have been
designed in such a way that manual forms and the inputs are coordinated where the data
elements are common to the source document and to the input. The input is acceptable
and understandable by the users who are using it.
The quality of the system input determines the quality for system output. Input
specification describes the manner in which data entered the system processing.
The input design also determines the user to interact efficiently with the system. Input
design is a part of overall system design that requires special attention because it is the
common source for data processing error. The goal of designing input data is to make
entry easy and free from errors.
Five objectives of the input design are:
Effectiveness
Accuracy
Ease to use
Consistency
Attractiveness
The main objectives that are done during the input design are:
Data are collected from the source
Transfer of data to an input form is done
24
Data is converted to a computer acceptable form
The converted data are verified.
Data are checked for its accuracy.
Validation of input data are done
Data collections are done to eliminate the error
The output design was done so that results of processing could be communicated to
the users. The various outputs have been designed in such a way that they represent the
same format that the office and management used to.
Computer output is the most important and direct source of information to the user.
Efficient, intelligible output design should improve the systems relationships with the
user and help in decision making. A major form of output is the hardcopy from the
printer.
Output requirements are designed during system analysis. A good starting point for
the output design is the Data Flow Diagram (DFD). Human factors educe issues for
design involves addressing internal controls to ensure readability.
Modularity is one the desirable properties of large systems. It implies that the system
is divided into several parts. In such a manner, the interaction between parts is minimal
clearly specified.
Design will explain software components in detail. This will help the implementation
of the system. Moreover, this will guide the further changes in the system to satisfy the
future requirements.
25
System design is described as a process of planning a new business system or more to
replace or to complement an existing system. The system design states how a system will
meet the requirements identified during the system analysis.
Reviewing the study phase activities and making decisions about which functions are
to be performed by the hardware, software, and human ware started in the design phase.
The output, input and file design for each of the programs was done. Finally, the
generalized systems were explained to the management for approval.
26
6.1 SYSTEM TESTING
System testing is the process of exercising software with the intent of finding and
ultimately correcting errors. This fundamental philosophy does not change for web
applications, because web-based systems and applications resides on a network and
interoperate with many different operating systems, browsers, hardware platforms, and
communication protocols, the search for errors represents a significant challenge for web
applications.
TESTING ISSUES
User needs to run the application. The user has two tab options – encrypt and decrypt.
If user select encrypt, application give the screen to select image file, information file and
option to save the image file. If user select decrypt, application gives the screen to select
only image file and ask path where user want to save the secrete file.
27
In Encryption the secrete information is hiding in with any type of image file.
Decryption is getting the secrete information from image file. The objective of the
testing is to discover errors. To fulfill this objective a series of test step unit, integration,
validation and system tests were planned and executed. The test steps are:
TESTING RESULTS
28
All tests should be traceable to customer requirements. The focus of testing will shift
progressively from programs. Exhaustive testing is not possible. To be more effective,
testing should be one, which has probability of finding errors.
CORRECTNESS - The extent to which the program meets system specifications and
user objectives.
RELIABILITY - The degree to which the system performs Intended functions overtime.
MAINTAINABILITY - To use with which program errors are located and corrected.
29
TESTABILITY - The effort required testing a program to ensure its correct
performance.
Implementation is the stage in the project where the theoretical design is turned a
working system. The most crucial stage is achieving a successful new system and giving
the user confidence in that the new system will work efficiently and effectively in the
implementation stage.
30
The implementation phase is less creative than system design a system project
may be dropped at any time prior to implementation although it becomes more difficult
when it goes to the design phase.
The final report to the implementation phase includes procedural flow charts,
record layout, report layout and a workable plan for implementing the candidate system
include an operational one. Conversion is one aspect of implementation.
USER TRAINING
User training is designed to prepare the user for testing and converting the system.
There are several ways to train the user they are:
User manual
Help screens
Training demonstration
TRAINING DEMONSTRATION
31
Another user training element is a training demonstration. Live demonstration with
personal contact is extremely effective for training users.
Analyst and programmers spend far more time to maintain the program. Then they do
writing them. Maintenance accounts for 50-80% of total system development.
User are not fully cognizant of the maintenance problem are its high cost.
Programs are often maintained without care for structure and documentation.
32
CONCLUSION
The process of encryption and decryption are maintained more simple and easy. The
system is highly scalable, visible and user friendly. It is implemented and gone through
all validation. All phases of development were conceived using methodologies and now
the software executes successfully by fulfilling the objective of the project.
All the objective of the system has been met. The system minimizes the problem
arising in the existing manual system. It eliminates the human errors to zero level. Further
extensions to this system can be made as requirement is satisfies by the proposed system.
33
CHAPTER VII. SCOPE OF THE FUTURE DEVELOPMENT
This project is developed for hiding information in any image file. The scope of the
project is implementation of steganography tools for hiding information includes any
type of information file and image files and the path where the user wants to save Image
and extruded file.
Modification and enhancement can be made affecting any other part of the program
because of the user friendliness and understandability of the project.
The data screens can be upgraded and menus can be easily added when required.
Items can be added to the forms when there comes necessity of new data.
The system has much scope in the future an it can be developed to add more features
to satisfy the user‘s request and company’s request.
34
CHAPTER VIII. BIBLIOGRAPHY
WEBSITES
BOOKS
Following books and ebook are used to complete this project reports.
• .NET Black Book (Paperback)
• Professional ASP.NET (Paperback)
• MCAD/MCSD Self-Paced Training Kit: Developing Web Applications with
Microsoft® Visual Basic® .NET and Microsoft Visual C#® .NET, Second Edition
• MCAD/MCSE/MCDBA Self-Paced Training Kit: Microsoft SQL Server 2000
Database Design and Implementation, Exam 70-229, Second Edition
35
APPENDICES
Start
Application
Encryption Decryption
BMP image
file
36
B. DATA FLOW DIAGRAM (DFD):
START
Main
Form
Load Encrypted
Image & File
File
DECRYP
ENCRYP T
T
Encrypted A Decrypted
File Image & File
37
A
Final Result
Stop
38
C. SCREEN OUTPUTS
39
ENCRYPTION
40
41
42
43
44
45
DECRYPTION
46
47
48
49
50
51