You are on page 1of 41

ABSTRACT

Halftone watermarking is the art and science of communicating in such a


way that the presence of a message cannot be detected. It includes the concealment
of information with in computer files. watermarking c messages are often first
encrypted by some traditional means, and then a cover text is modified in some
way to contain the encrypted message, resulting in stegotext. The strength of
Halftone watermarking can thus be amplified by combining it with cryptography.
The purpose of this approach is to restore the image statistics which get modified
during embedding and are generally exploited by the steganalytic attacks.

OBJECTIVES
1. The letter size, spacing, typeface, or other characteristics of a cover text can
be manipulated to carry the hidden message.
2. The message is the composition of some character.
3. Halftone watermarking differs from cryptography in the sense that where
cryptography focuses on keeping the contents of a message secret.
4. The strength of Halftone watermarking can thus be amplified by combining
it with cryptography.
5. Halftone watermarking are used to provide the more security and
confidential access.
6. Hiding the image or text.
1. INTRODUCTION
1.1 ABOUT THE PROJECT

Halftone watermarking is the art and science of communicating in such a


way that the presence of a message cannot be detected. It includes the
concealment of information with in computer files. Halftone watermarking
differs from cryptography in the sense that where cryptography focuses on
keeping the contents of a message secret, Halftone watermarking focuses on
keeping the existence of a message secret.Steganographic messages are often
first encrypted by some traditional means, and then a cover text is modified in
some way to contain the encrypted message, resulting in stegotext. For
example, the letter size, spacing, typeface, or other characteristics of a cover
text can be manipulated to carry the hidden message. This project considers an
information theoretic model for Halftone watermarking with a passive
adversary being proposed. The adversary’s task of distinguishing between an
innocent cover message C and modified message S containing hidden
information is interpreted as a testing problem. The message is the composition
of some character. Every character of the message can be represented as an
ASCII value which is either even or odd. Depending on this evenness, the
character is encrypted differently. This paper describes how an even-odd
encryption based on ASCII value is applied and how encrypted message is
converted by using Gray code and embedding with picture can secure the
message and thus makes crypt analyst’s job difficult. The strength of Halftone
watermarking can thus be amplified by combining it with cryptography. The
purpose of this approach is to restore the image statistics which get modified
during embedding and are generally exploited by the steganalytic attacks.
OBJECTIVES
1. The letter size, spacing, typeface, or other characteristics of a cover text can
be manipulated to carry the hidden message.
2. The message is the composition of some character.
3. Halftone watermarking differs from cryptography in the sense that where
cryptography focuses on keeping the contents of a message secret.
4. The strength of Halftone watermarking can thus be amplified by combining
it with cryptography.
5. Halftone watermarking are used to provide the more security and
confidential access.

1.2 PURPOSE,SCOPE AND APPLICABILITY


PURPOSE OF THE PROJECT
The major purpose for using this project is as follows:
 This system provides high interaction and gives best quality services.
 This system provide provides secure and confidential access.
 Secure data communication between to parties.
 Halftone watermarking are used to send image, test, audio and video
files.
SCOPE OF THE PROJECT
The main scope of the projects is as follows:
1. This project will help confidential access in data sharing.
2. To sent large number of files such as image,audio and
video files.
3. Hacker can’t access the data.
 It’s more securable.
 Its used to easy to communication
APPLICABILITY
The applicability of this project involves the following:
 It is used to promote the service to all users in efficient
way.
 Its secure data communication.
1.3 ACHIEVEMENTS
The main achievements of this project is
 It is more security.
 Confidential access.
 To share any multimedia components.
1.4 ORGANIZATION OF THE PROJECT REPORTS
2. SYSTEM ANALYSIS
System analysis is the process of gathering and interpreting facts, diagnosing
problems using the facts to improve the system. Analysis is a detailed study of
various operations performed by a system and their relationship within and outside
of the system.
This involves gathering information and using structured tools for analysis.
For the efficient and effective utilization of available resources, timing
availability information is very important.

2.1 EXISTING SYSTEM

In the existing system, messages are hidden using cryptography and other
methods which could be easily decoded if someone have enough hardware and
software resources. Another technique which is based on the information hiding
strategy is digital watermarking. But, in case of digital watermarking, the
important property of information hiding known as resistance to removal is
preferred. So, in these applications, we are not worrying about imperceptibility but
resistance to removal. This is mainly used in commercial applications like
copyright protection of digital forms of media like video or image.

Disadvantages of the Existing System:

o The security is very less.


o Message can be decoded easily without the secret key.
2.2 PROPOSED SYSTEM

We are proposing a method to hide messages within digital images using


secret keys which can be decoded only if the user has this application and the
secret key used during encoding. The proposed system initializes some parameters,
which are used for subsequent data preprocessing and region selection, and then
estimates the capacity of those selected regions. If the regions are large enough for
hiding the given secret message, then data hiding is performed on the selected
regions. Finally, it does some post processing to obtain the stego-image. Other
wise the scheme needs to revise the parameters, and then repeats region selection
and capacity estimation until can be embedded completely. Please note that the
parameters maybe different for different image content and secret message. We
need them as side information to guarantee the validity of data extraction. In
practice, such side information (7 bits in our work) can be embedded into a
predetermined region of the image. In data extraction, the scheme first extracts the
side information from the stego image. Based on the side information, it then does
some preprocessing and identifies the regions that have been used for data hiding.
Finally, it obtains the secret message according to the corresponding extraction
algorithm.

Advantages of the Proposed System:

 The security is high.


 Message cannot be easily decoded without the secret key.
2.3 PROBLEM STATEMENT
 No security.
 Data mismatching problem.
 Unauthorized access.
3. REQUIREMENTS AND ANALYSIS
3.1 PROBLEM DEFINITION

Halftone watermarking is the art and science of communicating in such a


way that the presence of a message cannot be detected. It includes the concealment
of information with in computer files. Messages are hidden using cryptography and
other methods which could be easily decoded if someone have enough hardware
and software resources. Another technique which is based on the information
hiding strategy is digital watermarking. But, in case of digital watermarking, the
important property of information hiding known as resistance to removal is
preferred. So, in these applications, we are not worrying about imperceptibility but
resistance to removal. This is mainly used in commercial applications like
copyright protection of digital forms of media like video or image.

3.2 FEASIBILITY STUDY

A feasibility study is carried out to select the best system that meets
performance requirements. The main aim of the feasibility study activity is to
determine whether it would be financially and technically feasible to develop the
product. The feasibility study activity involves the analysis of the problem and
collection of all relevant information relating to the product such as the different
data items which would be input to the system, the processing required to be
carried out on these data, the output data required to be produced by the system as
well as various constraints on the behavior of the system.

 Economical Feasibility
 Technical Feasibility.
 Social Feasibility.
ECONOMIC FEASIBILITY

Economic analysis is the most frequently used technique for evaluating the
effectiveness of a proposed system. More commonly known as Cost / Benefit
analysis, the procedure is to determine the benefits and savings that are expected
from a proposed system and compare them with costs. If benefits outweigh costs, a
decision is taken to design and implement the system. Otherwise, further
justification or alternative in the proposed system will have to be made if it is to
have a chance of being approved. This is an outgoing effort that improves in
accuracy at each phase of the system life cycle.

TECHNICAL FEASIBILITY

This is concerned with specifying equipment and software that will


successfully satisfy the user requirement. The technical needs of the system may
vary considerably, but might include:

• The facility to produce outputs in a given time.

• Response time under certain conditions.

• Ability to process a certain volume of transaction at a particular speed.

• Facility to communicate data to distant locations.

In examining technical feasibility, configuration of the system is given more


importance than the actual make of hardware. The configuration should give the
complete picture about the system’s requirements: How many workstations are
required, how these units are interconnected so that they could operate and
communicate smoothly? And what speeds of input and output should be achieved
at particular quality of printing. S
SOCIAL FEASIBILITY STUDY

The social feasibility of its part would determine the proposed project will
be satisfactory for the people or not. This assumption would in general examine the
probability that the project would have to be accepted by the group of people that
are directly affected by the proposed system.The legal feasibility study would
determine whether the proposed project conflicts with legal requirements such as
known Acts, Statutes, or any pending legislation.

3.2 SOFTWARE DESCRIPTION:

SYSTEM REQUIREMENTS
Hardware Requirements:

 Processor : Dual core processor 2.6.0 GHZ


 RAM : 1GB
 Hard disk : 160 GB
 Compact Disk : 650 Mb
 Keyboard : Standard keyboard
 Monitor : 15 inch color monitor

Software Requirements:

 Operating System : Windows OS


 Front End : PHP
 IDE : Macromedia Dreamweaver 8
 Back End : MYSQL SERVER

TECHNOLOGY REQUIREMENTS
FRONT END SOFTWARE
FEATURES OF PHP
PHP: Hypertext Preprocessor (the name is a recursive acronym) is a widely used,
general-purpose scripting language that was originally designed for web development to produce
dynamic web pages. For this purpose, PHP code is embedded into the HTML source document
and interpreted by a web server with a PHP processor module, which generates the web page
document. As a general-purpose programming language, PHP code is processed by an interpreter
application in command-line mode performing desired operating system operations and
producing program output on its standard output channel. It may also function as a graphical
application. PHP is available as a processor for most modern web servers and as standalone
interpreter on most operating systems and computing platforms.

PHP was originally created by Rasmus Lerdorf in 1995[1] and has been in continuous
development ever since. The main implementation of PHP is now produced by The PHP Group
and serves as the de facto standard for PHP as there is no formal specification. PHP is free
software released under the PHP License, which is incompatible with the GNU General Public
License (GPL) because restrictions exist regarding the use of the term PHP.

Hypertext refers to files linked together using hyperlinks, such as HTML (HyperText
Markup Language) files. Preprocessing is executing instructions that modify the output. Below is
a demonstration of the difference between HTML and PHP files.

Accessing an HTML Page

1. Your browser sends a request to that web page's server (computer) for the file (HTML or
image) you wish to view.
2. The web server (computer) sends the file requested back to your computer.
3. Your browser displays the file appropriately.
4. If you request a PHP file (ends with ".php"), the server handles it differently.

Accessing a PHP Page

1. Your browser sends a request to that web page's server for the PHP file you wish to view.
2. The web server calls PHP to interpret and perform the operations called for in the PHP
script.
3. The web server sends the output of the PHP program back to your computer.
4. Your browser displays the output appropriately.

PHP originally stood for personal home page. Its development began in 1994 when the
Danish/Greenlandic programmer Rasmus Lerdorf initially created a set of Perl scripts he called
'Personal Home Page Tools' to maintain his personal homepage, including tasks such as
displaying his résumé and recording how much traffic his page was receiving. He rewrote these
scripts as C programming language Common Gateway Interface (CGI) binaries, extending them
to add the ability to work with web forms and to communicate with databases and called this
implementation 'Personal Home Page/Forms Interpreter' or PHP/FI. PHP/FI could be used to
build simple, dynamic web applications. Lerdorf released PHP/FI as 'Personal Home Page Tools
(PHP Tools) version 1.0' publicly on June 8, 1995, to accelerate bug location and improve the
code. This release already had the basic functionality that PHP has today. This included Perl-like
variables, form handling, and the ability to embed HTML. The syntax was similar to Perl but
was more limited and simpler, although less consistent. A development team began to form and,
after months of work and beta testing, officially released PHP/FI 2 in November 1997.

A new major version has been under development alongside PHP 5 for several
years. This version was originally planned to be released as PHP 6 as a result of its significant
changes, which included plans for full Unicode support. However, Unicode support took
developers much longer to implement than originally thought, and the decision was made in
March 2010[13] to move the project to a branch, with features still under development moved to
trunk.

Changes in the new code include the removal of register_globals, magic quotes, and
safe mode. The reason for the removals was that register_globals had given way to security
holes, and the use of magic quotes had an unpredictable nature, and was best avoided. Instead, to
escape characters, magic quotes may be replaced with the addslashes() function, or more
appropriately an escape mechanism specific to the database vendor itself like
mysql_real_escape_string() for MySQL. Functions that will be removed in future versions and
have been deprecated in PHP 5.3 will produce a warning if used.

PHP currently does not have native support for Unicode or multibyte strings; Unicode
support is under development for a future version of PHP and will allow strings as well as class,
method, and function names to contain non-ASCII characters.

PHP interpreters are available on both 32-bit and 64-bit operating systems, but on
Microsoft Windows the only official distribution is a 32-bit implementation, requiring Windows
32-bit compatibility mode while using Internet Information Services (IIS) on a 64-bit Windows
platform. As of PHP 5.3.0, experimental 64-bit versions are available for MS Windows.
Security

The PHP interpreter only executes PHP code within its delimiters. Anything outside its
delimiters is not processed by PHP (although non-PHP text is still subject to control structures
described within PHP code). The most common delimiters are <?php to open and ?> to close
PHP sections. <script language="php"> and </script> delimiters are also available, as are the
shortened forms <? or<?= (which is used to echo back a string or variable) and ?> as well as
ASP-style short forms <% or <%= and %>. While short delimiters are used, they make script
files less portable as support for them can be disabled in the PHP configuration, and so they are
discouraged. The purpose of all these delimiters is to separate PHP code from non-PHP code,
including HTML.

The first form of delimiters, <?php and ?>, in XHTML and other XML documents,
creates correctly formed XML 'processing instructions'. This means that the resulting mixture of
PHP code and other markup in the server-side file is itself well-formed XML.
Variables are prefixed with a dollar symbol and a type does not need to be specified in
advance. Unlike function and class names, variable names are case sensitive. Both double-quoted
("") and heredoc strings allow the ability to embed a variable's value into the string. PHP treats
newlines as whitespace in the manner of a free-form language (except when inside string
quotes), and statements are terminated by a semicolon. PHP has three types of comment syntax:
/* */ marks block and inline comments; // as well as # are used for one-line comments. The echo
statement is one of several facilities PHP provides to output text (e.g. to a web browser).

In terms of keywords and language syntax, PHP is similar to most high level languages that
follow the C style syntax. if conditions, for and while loops, and function returns are similar in
syntax to languages such as C, C++, Java and Perl.

BACK END SOFTWARE

FEATURES OF MY SQL

MySQL Introduction
The MySQL® database has become the world's most popular open source database
because of its consistent fast performance, high reliability and ease of use. It's used on every
continent -- Yes, even Antarctica! -- by individual Web developers as well as many of the
world's largest and fastest-growing organizations to save time and money powering their high-
volume Web sites, business-critical systems and packaged software -- including industry leaders
such as Yahoo!, Alcatel-Lucent, Google, Nokia, YouTube, and Zappos.com.

Not only is MySQL the world's most popular open source database, it's also become the
database of choice for a new generation of applications built on the LAMP stack (Linux, Apache,
MySQL, PHP / Perl / Python.) MySQL runs on more than 20 platforms including Linux,
Windows, Mac OS, Solaris, HP-UX, IBM AIX, giving you the kind of flexibility that puts you in
control.

Whether you're new to database technology or an experienced developer or DBA,


MySQL offers a comprehensive range of certified software, support, training and consulting to
make you successful.

MySQL can be built and installed manually from source code, but this can be tedious so it is
more commonly installed from a binary package unless special customizations are required. On most
Linux distributions the package management system can download and install MySQL with minimal
effort, though further configuration is often required to adjust security and optimization settings.

Though MySQL began as a low-end alternative to more powerful proprietary databases, it has
gradually evolved to support higher-scale needs as well. It is still most commonly used in small to
medium scale single-server deployments, either as a component in a LAMP based web application or as a
standalone database server. Much of MySQL's appeal originates in its relative simplicity and ease of use,
which is enabled by an ecosystem of open source tools such as phpMyAdmin. In the medium range,
MySQL can be scaled by deploying it on more powerful hardware, such as a multi-processor server with
gigabytes of memory.

There are however limits to how far performance can scale on a single server, so on larger
scales, multi-server MySQL deployments are required to provide improved performance and reliability. A
typical high-end configuration can include a powerful master database which handles data write
operations and is replicated to multiple slaves that handle all read operations. The master server
synchronizes continually with its slaves so in the event of failure a slave can be promoted to become the
new master, minimizing downtime. Further improvements in performance can be achieved by caching the
results from database queries in memory using memcached, or breaking down a database into smaller
chunks called shards which can be spread across a number of distributed server clusters.

MYSQL:

MySQL is the world's most used open source relational database management system
(RDBMS) as of 2008 that run as a server providing multi-user access to a number of databases.

The MySQL development project has made its source code available under the terms of
the GNU General Public License, as well as under a variety of proprietary agreements. MySQL
was owned and sponsored by a single for-profit firm, the Swedish company MySQL AB, now
owned by Oracle Corporation.

1. Scalability and Flexibility


The MySQL database server provides the ultimate in scalability, sporting the capacity to
handle deeply embedded applications with a footprint of only 1MB to running massive data
warehouses holding terabytes of information. Platform flexibility is a stalwart feature of MySQL
with all flavors of Linux, UNIX, and Windows being supported. And, of course, the open source
nature of MySQL allows complete customization for those wanting to add unique requirements
to the database server.

2. High Performance
A unique storage-engine architecture allows database professionals to configure the
MySQL database server specifically for particular applications, with the end result being
amazing performance results. Whether the intended application is a high-speed transactional
processing system or a high-volume web site that services a billion queries a day, MySQL can
meet the most demanding performance expectations of any system. With high-speed load
utilities, distinctive memory caches, full text indexes, and other performance-enhancing
mechanisms, MySQL offers all the right ammunition for today's critical business systems.
3. High Availability
Rock-solid reliability and constant availability are hallmarks of MySQL, with customers
relying on MySQL to guarantee around-the-clock uptime. MySQL offers a variety of high-
availability options from high-speed master/slave replication configurations, to specialized
Cluster servers offering instant failover, to third party vendors offering unique high-availability
solutions for the MySQL database server.
4. Robust Transactional Support
MySQL offers one of the most powerful transactional database engines on the market.
Features include complete ACID (atomic, consistent, isolated, durable) transaction support,
unlimited row-level locking, distributed transaction capability, and multi-version transaction
support where readers never block writers and vice-versa. Full data integrity is also assured
through server-enforced referential integrity, specialized transaction isolation levels, and instant
deadlock detection.
5. Web and Data Warehouse Strengths
MySQL is the de-facto standard for high-traffic web sites because of its high-
performance query engine, tremendously fast data insert capability, and strong support for
specialized web functions like fast full text searches. These same strengths also apply to data
warehousing environments where MySQL scales up into the terabyte range for either single
servers or scale-out architectures. Other features like main memory tables, B-tree and hash
indexes, and compressed archive tables that reduce storage requirements by up to eighty-percent
make MySQL a strong standout for both web and business intelligence applications.
6. Strong Data Protection
Because guarding the data assets of corporations is the number one job of database
professionals, MySQL offers exceptional security features that ensure absolute data protection.
In terms of database authentication, MySQL provides powerful mechanisms for ensuring only
authorized users have entry to the database server, with the ability to block users down to the
client machine level being possible. SSH and SSL support are also provided to ensure safe and
secure connections. A granular object privilege framework is present so that users only see the
data they should, and powerful data encryption and decryption functions ensure that sensitive
data is protected from unauthorized viewing. Finally, backup and recovery utilities provided
through MySQL and third party software vendors allow for complete logical and physical
backup as well as full and point-in-time recovery.
7. Comprehensive Application Development
One of the reasons MySQL is the world's most popular open source database is that it
provides comprehensive support for every application development need. Within the database,
support can be found for stored procedures, triggers, functions, views, cursors, ANSI-standard
SQL, and more. For embedded applications, plug-in libraries are available to embed MySQL
database support into nearly any application. MySQL also provides connectors and drivers
(ODBC, JDBC, etc.) that allow all forms of applications to make use of MySQL as a preferred
data management server. It doesn't matter if it's PHP, Perl, Java, Visual Basic, or .NET, MySQL
offers application developers everything they need to be successful in building database-driven
information systems.
8. Management Ease
MySQL offers exceptional quick-start capability with the average time from software
download to installation completion being less than fifteen minutes. This rule holds true whether
the platform is Microsoft Windows, Linux, Macintosh, or UNIX. Once installed, self-
management features like automatic space expansion, auto-restart, and dynamic configuration
changes take much of the burden off already overworked database administrators. MySQL also
provides a complete suite of graphical management and migration tools that allow a DBA to
manage, troubleshoot, and control the operation of many MySQL servers from a single
workstation. Many third party software vendor tools are also available for MySQL that handle
tasks ranging from data design and ETL, to complete database administration, job management,
and performance monitoring.
3.4 PRELIMINARY PRODUCT DESCRIPTION

Identification of the hardware requirements needed for doing projects such


as requirement, graphics card, numeric co-processor, mouse, disk capacity, ram
capacity, CPU speed, keyboard, motherboard and monitor.

This project uses software tools such as operation system, the compiler,
testing tools and library are necessary tools to compile, link and install the software
that are specified.

The objective of the system is all the facilities to fulfill the drawbacks found
in the existing system. Here there is not at all any kind of paper work to be done to
maintain the record details of the users.

3.5 DATA FLOW DIAGRAM

A data flow diagram (DFD) is a graphical representation of the "flow" of


data through an information system, modeling its process aspects. Often they are a
preliminary step used to create an overview of the system which can later be
elaborated. DFDs can also be used for the visualization of data processing.A DFD
shows what kind of information will be input to and output from the system, where
the data will come from and go to, and where the data will be stored. It does not
show information about the timing of processes, or information about whether
processes will operate in sequence or in parallel.
Database
Login Registration

Home
Load Encode

Save

Decode Load
UML DIAGRAM:

UML is a standard language for specifying, visualizing, constructing, and


documenting the artifacts of software systems.

 UML stands for Unified Modeling Language.


 UML is different from the other common programming languages like C++,
Java, COBOL etc.
 UML is a pictorial language used to make software blue prints.

So UML can be described as a general purpose visual modeling language to


visualize, specify, construct and document software system. Although UML is
generally used to model software systems but it is not limited within the boundary.
It is also used to model non software systems as well like process flow in a
manufacturing unit.UML is not a programming language but tools can be used to
generate code in various languages using UML diagrams. UML has a direct
relation with object oriented analysis and design. After some standardization UML
is become an OMG (Object Management Group) standard.

Class Notation:

UML class is represented by the diagram shown below. The diagram is divided
into four parts.

 The top section is used to name the class.


 The second one is used to show the attributes of the class.
 The third section is used to describe the operations performed by the class.
 The fourth section is optional to show any additional components.
Classes are used to represent objects. Objects can be anything having properties
and responsibility.

Object Notation:

The object is represented in the same way as the class. The only difference is
the name which is underlined as shown below.

As object is the actual implementation of a class which is known as the instance of


a class. So it has the same usage as the class.
Interface Notation:

Interface is represented by a circle as shown below. It has a name which is


generally written below the circle.

Interface is used to describe functionality without implementation. Interface is the


just like a template where you define different functions not the implementation.
When a class implements the interface it also implements the functionality as per
the requirement.

Collaboration Notation:

Collaboration is represented by a dotted eclipse as shown below. It has a name


written inside the eclipse.
Collaboration represents responsibilities. Generally responsibilities are in a group.

Use case Notation:

Use case is represented as an eclipse with a name inside it. It may contain
additional responsibilities.

Use case is used to capture high level functionalities of a system.

Actor Notation:

An actor can be defined as some internal or external entity that interacts with the
system.

Actor is used in a use case diagram to describe the internal or external entities.
USECASE DIAGRAMS

Upload the image

Add text or images

Destination
Source
Hide the image or text

Extract the image

Get the original image or text


3.5.3 ENTITY RELATIONSHIP DIAGRAM

Extracting
Image or Encryption Image
text

Source Destination

Upload
image
Hiding the
image
4. SYSTEM DESIGN
4.1 BASIC MODULE

o Identify Authentication
o Encoding
o Key Generation
o Calculate PSNR Value
o Decoding

MODULE DESCRIPTION:

IDENTIFY AUTHENTICATION

Authentication factor covers a range of elements used to authenticate or


verify a person identity prior to being granted access, approving a transaction
request, signing a document or other work product, granting authority to others,
and establishing a chain of authority.

ENCODING
In this module, users can load a bitmap image in to the application and can
encode a message along with a secret code in to the digital image and the user can
save the encoded image and can send to any one through email and other means.

KEY GENERATION

Key generation is the process of generating keys for cryptography. A key is


used to encrypt and decrypt whatever data is being encrypted/decrypted. A license
or product generator (usually stylized as keygen) is either a computer program that
generates a licensing key, serial number, or some other registration information
necessary to activate for use a software application, or a program that
generates public-key data for cryptographic applications.

CALCULATE PSNR VALUE

The PSNR is most commonly used as a measure of quality of reconstruction


of lossy compression codecs (e.g., for image compression). The signal in this case
is the original data, and the noise is the error introduced by compression. When
comparing compression codecs it is used as an approximation to human perception
of reconstruction quality, therefore in some cases one reconstruction may appear to
be closer to the original than another, even though it has a lower PSNR (a higher
PSNR would normally indicate that the reconstruction is of higher quality).

DECODING

In this module, users who have access to the Image Halftone watermarking
application and the secret key used during encoding can load the encoded image
and decode it using the secret key to obtain the message hidden during the
encoding module.

4.2 HIGH LEVEL DESIGN


The highest level solution design should briefly all platforms, systems
Products, services and processes that it depends upon and include any important
changes that need to be made to them. A high-level design document will usually
include a high –level architecture diagram depicting the components, interfaces
and networks that need to be further specified or developed. The document may
also depict or otherwise refer to work flows and or data flows between component
systems.

4.3 LOW LEVEL DESIGN

The most creative and challenging face of the system development is low
level design. If provides the understanding and procedural detail nessary for
implementing the system recommended in the feasibility study. Design goes
through the logical and physical stages of development . In designing a new
system, analysis must have a clear understanding of the objectives, which the
design is aiming to fulfill.

INPUT DESIGN

This section is a description of the input media used by the operator for
providing information to the system; show a mapping to the high-level data flows
For example, data entry screens, optical character readers, bar scanners, etc. If
appropriate, the input record types, file structures, and database structures
provided in Section 3, File and Database Design, may be referenced. Include data
element definitions, or refer to the data dictionary.
Provide the layout of all input data screens or graphical user interfaces
(GUTs) (for example, windows). Provide a graphic representation of each
interface. Define all data elements associated with each screen or GUI, or
reference the data dictionary.

This section should contain edit criteria for the data elements, including
specific values, range of values, mandatory/optional, alphanumeric values, and
length. Also address data entry controls to prevent edit bypassing.

Discuss the miscellaneous messages associated with operator inputs, including the
following:

 Copies of form(s) if the input data are keyed or scanned for data entry from
printed forms
 Description of any access restrictions or security considerations
 Each transaction name, code, and definition, if the system is a transaction-based
processing system

OUTPUT DESIGN

This section describes of the system output design relative to the


user/operator; show a mapping to the high-level data flows. System outputs
include reports, data display screens and GUIs, query results, etc. The output files
are described in Section 3 and may be referenced in this section. The following
should be provided, if appropriate:

 Identification of codes and names for reports and data display screens
 Description of report and screen contents (provide a graphic representation of
each layout and define all data elements associated with the layout or reference
the data dictionary).

5.IMPLEMENTATION AND TESTING


5.1 SYSTEM IMPLEMENTATION

Implementation is the realization of an application, or execution of a plan,


idea, model, design, specification, standard, algorithm, or policy. In computer
science, an implementation is a realization of a technical specification or algorithm
as a program, software component, or other computer system through
programming and deployment. Many implementations may exist for a given
specification or standard. For example, web browsers contain implementations of
World Wide Web Consortium-recommended specifications, and software
development tools contain implementations of programming languages.

System implementation generally benefits from high levels of user


involvement and management support. User participation in the design and
operation of information systems has several positive results. First, if users are
heavily involved in systems design, they move opportunities to mold the system
according to their priorities and business requirements, and more opportunities to
control the outcome. Second, they are more likely to react positively to the change
process. Incorporating user knowledge and expertise leads to better solutions. The
relationship between users and information systems specialists has traditionally
been a problem area for information systems implementation efforts. Users and
information systems specialists tend to have different backgrounds, interests, and
priorities. This is referred to as the user-designer communications gap. These
differences lead to divergent organizational loyalties, approaches to problem.

5.2 CODING DETAILS AND EFFICIENCY

5.3 TESTING APPROACHES


TESTING

A “Program unit” stands for a routine or a collection of routines


implemented by an individual programmer. It might even be a stand-alone program
or a functional unit a larger program.
TYPES OF TESTING

1. Unit testing

2. System testing

3. Integration testing

4. Acceptance testing
5. Software testing

6. Integration testing
7. Validation testing
8. Recovery testing
9. Security testing

UNIT TESTING

Unit testing is performed prior to integration of the unit into a larger system.
It is like

Coding and debugging -> unit testing -> integration testing

A program unit must be tested for Functional tests, Performance tests, Stress
tests and Structure tests.

Functional tests refer to executing the code with standard inputs, for which
the results will occur within the expected boundaries. Performance test determines
the execution time spent in various parts of the unit, response time, device
utilization and throughput. Performance testing will help the tuning of the system.

Stress tests drive the system to its limits. They are designed to intentionally
break the unit. Structure tests verify logical execution along different execution
paths. Functional, performance and stress tests are collectively known as “Black
box testing”. Structure testing is referred to as “White box” or “glass box” testing.
Program errors can be classified as missing path errors, computational errors and
domain errors.Even if it looks like all possible execution paths have been tested,
there might still exist some more paths. A missing path error occurs, when a
branching statement and the associated computations are accidentally omitted.
Missing paths can be detected only by functional specifications. A domain error
occurs when a program traverses the wrong path because of an incorrect predicate
in a branching statement. When a test case fails to detect a computational error
there is said to be a coincidental error.

DEBUGGING

Debugging is eliminating the cause of known errors. Commonly used


debugging techniques are induction, deduction and backtracking. Debugging by
induction involves the following steps:

1. Collect all the information about test details and test results
2. Look for patterns
3. Form one or more hypotheses and rank /classify them.
4. Prove/disprove hypotheses. Re examine
5. Implement appropriate corrections
6. Verify the corrections. Re run the system and test again until
satisfactory
Debugging by deduction involves the following steps:

1. List possible causes for observed failure


2. Use the available information to eliminate various hypotheses
3. Prove/disprove the remaining hypotheses
4. Determine the appropriate corrections
5. Carry out the corrections and verify

Debugging by backtracking involves working backward in the source code from


Point where the error was observed. Run additional test cases and collect more
information.

SYSTEM TESTING

System testing involves two activities: Integration testing and Acceptance


testing. Integration strategy stresses on the order in which modules are written,
debugged and unit tested. Acceptance test involves functional tests, performance
tests and stress tests to verify requirements fulfillment. System checking checks
the interfaces, decision logic, control flow, recovery procedures, and throughput,
capacity and timing characteristics of the entire system.

INTEGRATION TESTING

Integration testing strategies include bottom-up (traditional), top-down and


sandwich strategies. Bottom-up integration consists of unit testing, followed by
sub system testing, followed by testing entire system. Unit testing tries to discover
errors in modules. Modules are tested independently in an artificial environment
known as a “test harness”. Test harnesses provide data environments and calling
sequences for the routines and subsystem that are being tested in isolation.

Disadvantages of bottom-up testing include that harness preparation, which


can sometimes take almost 50% or more of the coding and debugging effort for a
smaller product. After testing all the modules independently and in isolation, they
are linked and executed in one single integration and in isolation; they are linked
and executed in one single integration run. This known as “Big bang” approach to
integration testing. Isolating sources of errors is difficult in “big bang“ approach.

Top-down integration starts with the main routine and one or two
immediately next lower level routines. After a thorough checking the top level
becomes a test harness to its immediate subordinate routines. Top-down
integration offers the following advantages.

1. System integration is distributed throughout the implementation phase.


Modules are integrated as they are developed.
2. Top-level interfaces are first test
3. Top-level routines provide a natural test harness for lower-level routines.
4. Errors are localized to the new modules and interfaces that are being
added.
Though top-down integrations seem to offer better advantages, it may not be
applicable in certain situations. Sometimes it may be necessary to test certain
critical low-level modules first. In such situations, a sandwich strategy is
preferable. Sandwich integration is mostly top-down, but bottom-up techniques
are used on some modules and sub systems. This mixed approach retains the
advantages of both strategies.

ACCEPTANCE TESTING

Acceptance testing involves planning and execution of functional tests,


performance tests and stress tests in order to check whether the system
implemented satisfies the requirements specifications. Quality assurance people as
well as customers may simultaneously develop acceptance tests and run them. In
addition to functional and performance tests, stress test are performed to determine
the limits/limitations of the system developed. For example, a complier may be
tested for its symbol table overflows or a real-time system may be tested for its
symbol table overflows or a real-time system may be tested to find how it responds
to multiple interrupts of different/same priorities.

Acceptance test tools include a test coverage analyzer, and a coding


standards checker. Test coverage analyzer records the control paths followed for
each test case. A timing analyzer reports the time spent in various regions of the
source code under different test cases. Coding standards are stated in the product
requirements. Manual inspection is usually not an adequate mechanism from
detecting violations of coding standards.

SOFTWARE TESTING

Software testing is an important element of software quality assurance and


represents the ultimate review of specification design and coding. The user tests
the developed system and changes are made according the needs. The testing phase
involves testing of developed system using various kinds of data. An elaborated
test data is prepared and system using the data. Whole testing is noted and
corrections are made.

TESTING OBJECTIVES

 Testing is a process of executing a program with the intent of finding on


errors.
 A good test is on that has a high probability of finding an undiscovered
errors.
Testing is vital to the success of the system. System testing is the state of
implementation, which ensures that the system works accurately before live
operations commence. System testing makes a logical assumption that the system
is correct and that the goals are successfully achieved.

EFFECTIVE TESTING PREREQUISITES

1) Types of Testing Done

INTEGRATION TESTING

An overall test plan for the project is prepared before the start of coding.

VALIDATION TESTING

This project will be tested under this testing using sample data and produce
the correct sample output.

RECOVERY TESTING

This project will be tested under this testing using correct data input and its
product and the correct valid output without any errors.

SECURITY TESTING

This project contains password to secure the data.

6. SCREEN SHOT
7. CONCLUSION

Halftone watermarking is the art and science of communicating in such a


way that the presence of a message cannot be detected. It includes the concealment
of information with in computer files. We are proposing a method to hide
messages within digital images using secret keys which can be decoded only if the
user has this application and the secret key used during encoding. The proposed
system initializes some parameters, which are used for subsequent data
preprocessing and region selection, and then estimates the capacity of those
selected regions. If the regions are large enough for hiding the given secret
message, then data hiding is performed on the selected regions. Finally, it does
some post processing to obtain the stego-image. Other wise the scheme needs to
revise the parameters, and then repeats region selection and capacity estimation
until can be embedded completely. Please note that the parameters maybe different
for different image content and secret message. We need them as side information
to guarantee the validity of data extraction. In practice, such side information (7
bits in our work) can be embedded into a predetermined region of the image. In
data extraction, the scheme first extracts the side information from the stego image.
Based on the side information, it then does some preprocessing and identifies the
regions that have been used for data hiding. Finally, it obtains the secret message
according to the corresponding extraction algorithm.
8. BIBLIOGRAPHY

REFERENCE

BOOK REFERENCE

• Book Name: Programming PHP ,

Author Name: Rasmus Lerdorf, Kevin Tatroe

• Book Name: PHP developer&#39;s cookbook

Author Name: Sterling Hughes,Andrei Zmievski

• Book Name: MySQL: the complete reference

Author Name: Vikram Vaswani

WEBSITE REFERENCE

• http://www.vhsoft.com/products/vhtender.htm

http://www.bloochip.com/website/site/products/tender_management_sys

tem/home.htm

• http://www.c1india.com/solutions/tender.html