Beruflich Dokumente
Kultur Dokumente
CHAPTER 1
INTRODUCTION
1.1 PROBLEM DEFINITION:
We are of the belief that the easiest way to keep something from interfering
eyes is to place it right in front of the person looking for it and make it look as
innocuous as possible.
Everyone has a taste for a certain kind of music. Hence, it is more than
likely that the person will have that kind of music on the storage device of his
computer. Also, it is quite common case where people share and transfer
different music files to one another. If one were able to hide the message can be.
Our aim is to come up with a technique of hiding the message in the
image file in such a way, that there would be no large changes in the image file
after the message insertion. At the same time, if the message is hidden were
encrypted, the level of security would be raised to quite a satisfactory level.
Now, even if the hidden message were to be discovered the person trying to get
the message would only be able to lay on his hands on the encrypted message
with no way of being able to decrypt it.
CHAPTER 2
LITERATURE REVIEW
2.1 INTRODUCTION
There are several data hiding techniques available today. In each technique,
the host data type is fixed, but the embedded data type can be varied as per
requirement. Data hiding technique should be capable of embedding data in a
host signal with the following restrictions and features:
The embedded data should be directly encoded into the media rather
than into a header or a wrapper so that the data remain intact across
varying data file formats.
The embedded data should be protected to modifications ranging from
intentional and intelligent attempts of
removal to anticipated
CHAPTER 3
SYSTEM ANALYSIS
3.1 EXISTING SYSTEM:
Now a days, several methods are used for communicating confidential
messages for defense purposes or in order to ensure the privacy of
communication between two parties. So we go for hiding information in ways
that prevent its detection.
Some of the methods used for privacy communication are the use of
invisible links; covert channels are some of existing systems that are used to
convey the messages.
Since at present everything is done manually, it is having a lot of
drawbacks. The major Drawback of the present system is the bulk amount of
physical volume of the data making information search and retrieval is tedious
Process. There are chances for damage of papers containing information. So this
process is time consuming process.
Drawbacks
Increased time
Low accuracy
High labour charges
Increased uncertainty
Data security is less
1. Economical feasibility:
This study is carried out to check the economic impact for the system will
have on the organization. The amount of fund that the company can pour into
the research and development of the system is limited. The expenditures must
be justified. Thus the developed system as well within the budget and this was
achieved ,because most of the technologies used are freely available. Only the
customized products had to be purchased.
2. Technical feasibility:
If study is carried out to check about the technical requirements of the
system. Any system developed must not have a high demand on the available
technical resources. This will lead to high demands on the available technical
resources. This will lead to high demands being placed on the client. The
developed system must have a modern requirement, as only minimal or null
changes are required for implementing this system.
3. Social feasibility:
The aspect of study is to check the level of acceptance of the system by
the user. This includes the process of training the user to use the system
efficiently. The user must not feel threatened by the system, instead must accept
as a necessity. The level of acceptance by the users solely depends on the
methods that are employed to educate the user about the system and to make
him familiar with it. His level of confidence must be raised ,so that also able to
make some constructive criticism, as he is the final user of the system.
Window XP
Development Environment
MicrosoftVisualC#.NET
Platform
ASP.NET
Languages
C#.Net
Processor
Pentium IV
RAM
1 GB
Hard Disk
250 GB
Mother Board
Mouse
Key Board
Monitor
10
However, while the JVM officially supports only the Java language, the CLR
supports any language that can be represented in its Common Intermediate
Language (CIL). The JVM executes byte code, so it can, in principle, support
many languages,. Unlike Java's byte code, though CIL is never interpreted.
Conceptual difference between the two infrastructures is that Java code runs on
any platform with a JVM, whereas .NET code runs only on platforms that
support the CLR.
The Common Language Runtime
The heart of the .NET Framework is the common language runtime. The
common language runtime is responsible for providing the execution
environment that code written in a .NET language runs under. The common
language runtime can be compared to the Visual Basic 6 runtime, except that the
common language runtime is designed to handle all .NET languages, not any
one. The mention below are list describes the benefits of common language
runtime:
Cross-language debugging
XCOPY deployment
10
11
You might expect all those features, but this has never been possible using
Microsoft development tools. Figure 3.3 shows where the common language
runtime fits into the .NET Framework.
12
13
13
14
of
namespaces
that
expose
classes,
structures,
interfaces,
all the description information for the assembly. However, the assembly
14
15
manifest can be contained in its own file or within one of the assemblys
modules.
Compilation and Execution of a .NET Application
When you compile a .NET application, it is not compiled to binary
machine code; rather, it is converted to IL. This is the form that your deployed
application takesone or more assemblies consisting of executable files and
DLL files in IL form. At least one of these assemblies will contain an executable
file that has been designated as the entry point for the application.
When execution of your program begins, the first assembly is loaded into
memory. At this point, the common language runtime examines the assembly
manifest and determines the requirements to run the program. It examines
security permissions requested by the assembly and compares them with the
systems security policy. If the systems security policy does not allow the
requested permissions, the application will not run. If the application passes the
systems security policy, the common language runtime executes the code. It
creates a process for the application to run in and begins application execution.
The .NET Framework base class library contains the base classes that
provide many of the services and objects you need when writing your
applications. The class library is organized into namespaces. A namespace is a
logical grouping of types that perform related functions.
Namespaces are
logical groupings of related classes. The namespaces in the .NET base class
library are organized hierarchically. The root of the .NET Framework is the
system namespace. Other namespaces can be accessed with the period operator.
A typical namespace construction appears as follows:
System
System.Data
15
16
System.Data.SQLClient
Table 1-1. Representative .NET Namespaces
Namespace
Description
System
This namespace is the root for many of the low-level
types required by the .NET Framework. It is the root
for primitive data types as well, and it is the root for
all the other namespaces in the .NET base class
library.
System.Collections
System.Data. Common
System.Data.OleDb
17
Namespace
Description
System.Data.SQLClient
System.Drawing
System.IO
System.Math
System.Reflection
System.Security
System.Threading
System.Windows.Forms
17
18
19
19
20
21
21
22
CHAPTER 4
4.1 PROCESS MODEL
DATA FLOW
ATTRIBUTE
22
23
ACTOR
23
24
24
25
25
26
26
27
Fourth step is selecting a key file. In the fifth step whatever the files that
we have selected are viewed and verification of the path is done. In the sixth
process data is embedded in to the image file using low bit encoding technique.
After embedding the content both the image files are played and a listener
cannot find any difference between the images.
2. Extract module (To extract the text file from the image file)
In this module, the first step is the process of selecting the encrypted
image file. This is the file that a user has to extract information from the output
image. Second process involved in selecting a new text file to display the
embedded message. Symmetric encryption method is used here, so the key
selected during the embedding process is used in decrypting the message. All
the process done till now are displayed using a list box and finally the
embedded message can be viewed with the help of a file or in a textbox.
4.2.2 Input design
The Input design is the link that is the information system into the world
of its users. The design is the process of converting an external user oriented
description of the input to the system into a machine oriented form. Five
objectives guiding the design of inputs focus on controlling the amount of input
required, avoiding delays, controlling errors, avoiding extra steps and keeping
the steps are simple.
27
28
Input screens from the primary interface between user and the software.
The input screens are designed are in such a way that it has a simple and userfriendly layout. Necessary options are provided to reduce typing, which
automatically controls errors creeping in.
Input validations are performed to enforce all the necessary system
constraint, error messages are displayed, whenever the data entered is invalid.
The message also displays the corrective to be taken by the user.
29
30
31
31
32
Embedding form:
Calculate the length of the message in bytes
Prepare end the length to the message
Put the message on a byte queue
While (there are still bytes to be written)
{
Header = read 4 bytes from the file
If (Header is_valid && contains padding byte)
{
Seek to the end of frame
Pop the byte from the queue
Write the popped byte into file
}
}
Length = integer > 4
Counter = 0
While (counter < length)
{
Header = read 4 bytes from the file
If (Header is_valid && contains padding byte)
{
If (counter == 4)
{
Length = to_integer (pop 4 bytes from queue)
}
Seek to the end of frame
32
33
33
34
34
35
Now the computer is ready for implementing the proposed system. There
are three types of implementation.
Implementation of a new computer system to replace a manual one.
Implementation of a new computer system to replace an existing one.
Implementation a modified application to replace an existing one.
36
37
CHAPTER 5
SYSTEM TESTING
Testing is the process of executing the program with the intent of
finding errors. During testing, the program to be tested and executed with a set
of test cases and the output of the program for the test cases is evaluated to
determine the program is performing as it is expected. Error is the testing
fundamental and is defined as the difference between the actual output of a
software and a correct output i.e., difference between the actual and ideal testing
is usually relied upon to detect these faults in the coding phase for this, different
levels of testing are used which performs different tasks and aim to the test
different aspects of the system.
5.1 GOALS OF TESTING:
37
38
38
39
produced during the code phase and the goal is to test the internal logic of the
module.
5.2.2 Integration Testing
The goal here is to see if the modules can be integrated properly, the
emphasis being on testing interfaces between modules. After structural testing
and functional testing we get error free modules these modules are to be
integrated to get the required results of the system. After checking the module
another module is tested and is integrated with the previous module.
After the integration the test phases are generated and the results are tested.
5.2.3 System Testing
Here the entire software is tested. The reference document for this
process is the requirement document and the goal is to see whether the software
needs its requirements.
The system was tested for various test cases with various inputs.
5.2.4 Validation Testing
In this testing the software is tested to determine whether it suits to that
particular environment. Validation testing provides the final assurance that the
software meets all functional, behavioral and performance requirements.
Validation refers to the process of using the software in a live environment to
find errors. During the course of validation the system failure may occur and
software will be changed.
Tested all the fields whether accepting the valid input or not.
5.2.5 Acceptance Testing
39
40
41
output conditions but to exercise the different programming and data files used
in the program. This testing is also called White Box Testing or Structural
Testing.
.
CHAPTER 6
CONCLUSION AND FUTURE ENHANCEMENTS
6.1 CONCLUSION:
Data hiding system transmits secrets through apparently safe covers
in an effort to conceal the existence of a secret. Image file data hiding and its
derivatives are growing in use and application. In areas where cryptography and
strong encryption are being outlawed, citizens are looking at data hiding system
to outwit such policies and pass messages covertly.
Although the algorithm presented is a simple one and not without its
drawbacks,
it
represents
significant
improvement
over
simplistic
steganographic algorithms that do not use keys. By using this algorithm, two
41
42
parties can be communicated with a fairly high level of confidence about the
communication not being detected.
In designing the Data hiding system utmost care was taken to meet
user requirements as much as possible. The analysis and design phase was
reviewed. Care was taken strictly to follow the software engineering concepts.
And principles so as to maintain good quality in the developed system as per the
user requirements.
6.1.1 Merits of the System
43
43