watermarking synopsis a
TRANSCRIPT
A Predictive Approach For Digital Image Watermarking
SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENT FOR THE AWARD OF THE DEGREE OF
Bachelor of Engineering(Computer Science & Engg.)
Submitted to: Submitted by:Mr. Pankaj Gupta Ayushi (115/CS/07) H.O.D Of CSE Bhawana Juneja(116/CS/07) Vce,Rohtak Mona(160/CS/07)
Department of Computer Science & Engineering Vaish College Engineering
Maharishi Dayanand University Rohtak
CERTIFICATE
We hereby certify that the work which is being presented in the B.E Project Report entitled “ A Predictive Approach for Digital Image Watermarking”, in partial fulfillment of the requirements for the award of the Bachelor Of Engineering (Computer Science and Engineering) and submitted to the Department of Computer Science and Engineering VCE Rohtak is an authentic record of our own work carried out during a period from July 2009 to May 2010 under the guidance of Miss Madhu Bhatia, CSE Department.
The matter presented in this report has not been submitted by us for the award of
any other degree elsewhere.
Ayushi (115/CS/07)
Bhawana Juneja(116/CS/07)
Mona(160/CS/07)
This is to certify that the above statement made by the candidate is correct to the
best of my knowledge.
Mr. Pankaj Gupta
H.O.D Of CSE
VCE,Rohtak
ACKNOWLEDGEMENT
Authors are highly grateful to the Principal, Vaish college of Engineering, Rohtak, for providing
this opportunity to carry out the present report/ work.
The constant guidance and encouragement received from Miss Madhu Bhatia, Lect in
Department of CSE, VCE Rohtak has been of great help in carrying our the present work
and are acknowledged with reverential thanks.
Authors express gratitude to other faculty members of CSE Department, VCE for their
intellectual support throughout the course of this work.
Finally, authors are indebted to all whosoever have contributed in this report work and
friendly stay at VCE.
Ayushi (115/CS/07)
Bhawana Juneja(116/CS/07)
Mona(160/CS/07)
INTRODUCTION
Many multimedia authentication systems have been proposed in the last few years for
ensuring the integrity and origin of multimedia data such as images. These systems fall in
to two broad categories: label-based systems and watermarking-based systems In label-
based systems, an authenticator is appended to the original signal for integrity
verification of the protected signal.
This project focuses on watermarking-based multimedia content
authentication. In particular, we address the problem of content authentication using a
coding-based scheme in which a source-dependent authenticator is invisibly embedded
within the source itself. The goal of multimedia authentication is to authenticate the
content, not its specific format representation. Thus, the embedding of the authenticator
as an invisible watermarking in a host signal has two main objectives: to alert a party to
unacceptable distortions on the host and to authenticate the legitimate source. Possible
distortions on a signal can be divided into two groups: legitimate and illegitimate
distortions. When a signal undergoes a legitimate distortion which does not alter the
content of the data, the authentication system should indicate that the signal is authentic.
Conversely, when it undergoes illegitimate tampering, the distorted signal should be
rejected as inauthentic
Initially proposed digital watermarking techniques for authentication were
highly fragile often detecting any modifications to the signal in a similar way to
traditional digital signatures. In order to exploit the benefits of a data embedding
approach to content authentication, semi-fragile watermarking methods were later
introduced to tolerate certain kinds of processing. The primary advantage of employing
semi-fragile watermarking over digital signature and fragile watermarking technology is
that there is greater potential in characterizing the tamper distortion, and in designing a
method which is robust to certain kinds of processing.
ABSTRACT
Since security & authentication is very important in domains like banking,
finance etc for transfer of valuable data .we going do design project based on secured
data authentication in which we are going to hide the data in an image in a secured
manner for that we are going to use a technique called semi-fragile watermarking
technique in which we are going to hide the given data behind the image usually when
the data is extracted from the image some of the data could be lost for this MSB-LSB
decomposition is used to retrieve the data fully and in secured manner
In this project we are also using authentication. Authentication is also a form
of security, in this project we are using Authentication in the form of key .key is nothing
but some numbers or some character or even may be a text file containing some data
which is known only to the user and the receiver. During the extraction process the
receiver can extract the data only if the key is provided correctly if he doesn’t provide the
key correctly the data cannot be extracted correctly
Needs of watermarking
Copies are exact duplicates and therefore indistinguishable from theoriginal.
Copies can be produced easily and inexpensively.
Copies can be distributed rapidly,especially in today’s networked world
Modules
The project have been divided into three parts
Authentication
Embedding process
Extraction process
Authentication
The first module of Secured Data Authentication System is
authentication. Authentication is done to secure the project from unauthorized user. The
username and password is checked and the unauthorized user is ignored. The user can
access the application if the username and password is valid. As it is the first module of
the project it gives security to our application.
Embedding process
In embedding module there are three modules they are
data conversion
Security
Watermarking
Image conversion
Enter username and password
Verify
Permit access
Restrict access
No
Yes
In data conversion module the given data is converted into its binary
values and those binary values are changed into numeric streams because if a hacker try
to get the data behind the image it cannot be understandable to him this process makes
the project more secured
Security
In security module we are going to give security for the data. In the sense we
are going to provide a key for the protection and authentication of the data. A key is
nothing but a set of characters or numbers or special characters like $ or a combination of
all or it can also be a text file with txt extension which is used for authentication purpose
message
Concerting them into numeric stream
Numeric stream
during the extraction process. in this module we are embedding the key with the numeric
stream which we will get from the above module
Watermarking
This is the last module in the embedding process, in this module we are
going to watermark the data from the above module in the given Microsoft word
document this process is done by converting the word document into bytes and
combining the data from the above module in the word document the out put is a
watermarked word document
Key
Combining with numeric stream
Combined data
Extraction process
It is the last module in this project in this module input is image with data
hidden in side in which the hidden data is extracted by giving a correct key the extracted
data will be in the form of numeric stream so they are converted into binary values and
using that binary values the data is formed
Data from the security module
Combining with data With the image
Image with hidden data
Image with hidden data
Extracting the hidden data
Hidden data
Existing System
Digital Watermark is an invisible mark inserted into the digital
multimedia data so that it can be detected in the later stage of evidence of rightful
ownership. A great deal of research efforts has been focused on digital watermark in
recent years. The techniques proposed so far can be divided into two main groups of
according to the embedding domain of the container image
In existing system we uses spread spectrum technique for watermarking
in which robustness and fragility are not present robustness in the sense security and
fragility in the sense retrieval of the Data without any error i.e. during the extraction
process the data retrieved from the image gets clubbed and because of this some data
may get lost and also there is no authentication in the existing system and because of this
there is no security in the existing system
DRAWBACKS OF EXISTING SYSTEM
The major problem with many of these watermarking schemas is that they are not very
robust against different types of image manipulations or attacks. Moreover, some of these
techniques are quite complicated to implement in real-time.
Proposed system
Due to above mentioned failures a new technique has been proposed so that to cover and
maintain the drawbacks prevailed in the previous system and hence a technique called
Fast Hadamard Transformation is proposed
Our proposed system is Secured Data Authentication System in which we
are using a technique called semi-fragile technique in which authentication is provided
such that both objectives of robustness and fragility are effectively controlled and
achieved which gives the proposed system more security and
we are using MSB-LSB decomposition method for the extraction process
this method extracts the data from the image without any loss it also satisfies both
objectives of robustness and fragility
Advantage of proposed system
Security is high
Authentication is provided
The main objective of watermarking robustness and fragility has been satisfied.
Applications of digital watermarking
Copyright Protection :
Digital watermarks can be used to identify and protect copyright ownership.
Tracking :
Digital watermarks can be used to track the usage of digital content
Tamper Proofing:
Digital watermarks, which are fragile in nature, can be used for
tamper proofing.
Broadcast Monitoring:
Digital watermarks can be used to
monitor broadcasted content like television and broadcast radio.
REQUIREMENTS
Hardware requirements
Processor : Pentium family or AMD family with 1.5 GHz
Hard Disk : 10GB
RAM : 256 MB
Monitor : Color Monitor 15 inches
Keyboard : 104Keys
Mouse : 3Buttons
Software Requirements
Operating System : Windows XP and above
.NET Framework : Microsoft .NET Framework 2.0 and above
Front-End : VB.NET
TECHNOLOGY USE D C#.NET ADO.NET ASP.NET
C#.NET:C# is an elegant and type-safe object-oriented language that enables developers to build a variety of secure and robust applications that run on the .NET Framework. We can use C# to create traditional Windows client applications, XML Web services, distributed components, client-server applications, database applications, and much, much more. Visual C# 2010 provides an advanced code editor, convenient user interface designers, integrated debugger, and many other tools to make it easier to develop applications based on version 4.0 of the C# language and version 4.0 of the .NET Framework.C# syntax is highly expressive, yet it is also simple and easy to learn. The curly-brace syntax of C# will be instantly recognizable to anyone familiar with C, C++ or Java. Developers who know any of these languages are typically able to begin to work productively in C# within a very short time. C# syntax simplifies many of the complexities of C++ and provides powerful features such as nullable value types,enumeration,delegates,lambda expressionsand direct memory access,which are not found in java.
As an object-oriented language, C# supports the concepts of encapsulation, inheritance, and polymorphism. All variables and methods, including the Main method, the application's entry point, are encapsulated within class definitions. A class may inherit directly from one parent class, but it may implement any number of interfaces. Methods that override virtual methods in a parent class require the override keyword as a way to avoid accidental redefinition. In C#, a struct is like a lightweight class; it is a stack-allocated type that can implement interfaces but does not support inheritance.
.NET Framework Platform Architecture
C# programs run on the .NET Framework, an integral component of Windows that includes a virtual execution system called the common language runtime (CLR) and a unified set of class libraries. The CLR is the commercial implementation by Microsoft of the common language infrastructure (CLI), an international standard that is the basis for creating execution and development environments in which languages and libraries work together seamlessly.
Source code written in C# is compiled into an intermediate language (IL) that conforms to the CLI specification. The IL code and resources, such as bitmaps and strings, are stored on disk in an executable file called an assembly, typically with an extension of .exe or .dll. An assembly contains a manifest that provides information about the assembly's types, version, culture, and security requirements.
When the C# program is executed, the assembly is loaded into the CLR, which might take various actions based on the information in the manifest. Then, if the security requirements are met, the CLR performs just in time (JIT) compilation to convert the IL code to native machine instructions.
ADO.NET :
ADO.NET (ActiveX Data Objects .NET) is the primary data access API for the .NET Framework. It provides the classes that you use as you develop database applications with Visual Basic .NET as well as other .NET languages. In the two topics that follow, you’ll learn about how ADO.NET uses these classes to provide access to the data in a database and the two ways you can create ADO.NET objects in your Visual Basic programs.
How ADO.NET works
To work with data using ADO.NET, you use a variety of ADO.NET objects. Figure 2-1 shows the primary objects you’ll use to develop Windows-based ADO.NET applications in Visual Basic.
To start, the data used by an application is stored in a dataset that contains one or more data tables. To load data into a data table, you use a data adapter. The main function of the data adapter is to manage the flow of data between a dataset and a database. To do that, it uses commands that define the SQL statements to be issued. The command for retrieving data, for example, typically defines a Select statement. Then, the command connects to the database using a connection and passes the Select statement to the
database. After the Select statement is executed, the result set it produces is sent back to the data adapter, which stores the results in the data table.
To update the data in a database, the data adapter uses a command that defines an Insert, Update, or Delete statement for a data table. Then, the command connects to the database and performs the requested operation.
Although it’s not apparent in this figure, the data in a dataset is independent of the database that the data was retrieved from. In fact, the connection to the database is typically closed after the data is retrieved from the database. Then, the connection is opened again when it’s needed. Because of that, the application must work with the copy of the data that’s stored in the dataset. The architecture that’s used to implement this type of data processing is referred to as a disconnected data architecture. Although this is more complicated than a connected architecture, the advantages offset the complexity.
One of the advantages of using a disconnected data architecture is improved system performance due to the use of fewer system resources for maintaining connections. Another advantage is that it makes ADO.NET compatible with ASP.NET web applications, which are inherently disconnected. You’ll learn more about developing ASP.NET web applications that use ADO.NET in chapters 12 through 14 of this book.
The ADO.NET classes that are responsible for working directly with a database are provided by the .NET data providers. These data providers include the classes you use to create data adapters, commands, and connections. As you’ll learn later in this chapter, the .NET Framework currently includes two different data providers, but additional providers are available from Microsoft and other third-party vendors such as IBM and Oracle.
Basic ADO.NET Objects
HOW ADO.NET WORKS
ASP.NET:
ASP.NET is more than the next version of Active Server Pages (ASP); it provides a unified Web development model that includes the services necessary for developers to build enterprise-class Web applications. While ASP.NET is largely syntax compatible with ASP, it also provides a new programming model and infrastructure for more scalable and stable applications that help provide greater protection. You can feel free to augment your existing ASP applications by incrementally adding ASP.NET functionality to them.
ASP.NET is a compiled, .NET-based environment; you can author applications in any .NET compatible language, including Visual Basic .NET, C#, and JScript .NET. Additionally, the entire .NET Framework is available to any ASP.NET application. Developers can easily access the benefits of these technologies, which include the managed common language runtime environment, type safety, inheritance, and so on.
ASP.NET has been designed to work seamlessly with WYSIWYG HTML editors and other programming tools, including Microsoft Visual Studio .NET. Not only does this make Web development easier, but it also provides all the benefits that these tools have to offer, including a GUI that developers can use to drop server controls onto a Web page and fully integrated debugging support.
Developers can use Web Forms or XML Web services when creating an ASP.NET application, or combine these in any way they see fit. Each is supported by the same infrastructure that allows you to use authentication schemes, cache frequently used data, or customize your application's configuration, to name only a few possibilities.
Web Forms allow you to build powerful forms-based Web pages. When building these pages, you can use ASP.NET server controls to create common UI elements, and program them for common tasks. These controls allow you to rapidly build a Web Form out of reusable built-in or custom components, simplifying the code of a page.
An XML Web service provides the means to access server functionality remotely. Using XML Web services, businesses can expose programmatic interfaces to their data or business logic, which in turn can be obtained and manipulated by client and server applications. XML Web services enable the exchange of data in client-server or server-server scenarios, using standards like HTTP and XML messaging to move data across firewalls. XML Web services are not tied to a particular component technology or object-calling convention. As a result, programs written in any language, using any component model, and running on any operating system can access XML Web services.
Each of these models can take full advantage of all ASP.NET features, as well as the power of the .NET Framework and .NET Framework common language runtime. These features and how you can use them are outlined as follows:
If you have ASP development skills, the new ASP.NET programming model will seem very familiar to you. However, the ASP.NET object model has changed
significantly from ASP, making it more structured and object-oriented. Unfortunately this means that ASP.NET is not fully backward compatible; almost all existing ASP pages will have to be modified to some extent in order to run under ASP.NET. In addition, major changes to Visual Basic .NET mean that existing ASP pages written with Visual Basic Scripting Edition typically will not port directly to ASP.NET. In most cases, though, the necessary changes will involve only a few lines of code
Accessing databases from ASP.NET applications is an often-used technique for displaying data to Web site visitors. ASP.NET makes it easier than ever to access databases for this purpose. It also allows you to manage the database from your code..
ASP.NET provides a simple model that enables Web developers to write logic that runs at the application level. Developers can write this code in the Global.asax text file or in a compiled class deployed as an assembly. This logic can include application-level events, but developers can easily extend this model to suit the needs of their Web application..
ASP.NET provides easy-to-use application and session-state facilities that are familiar to ASP developers and are readily compatible with all other .NET Framework APIs.
ASP.NET takes advantage of performance enhancements found in the .NET Framework and common language runtime. Additionally, it has been designed to offer significant performance improvements over ASP and other Web development platforms. All ASP.NET code is compiled, rather than interpreted, which allows early binding, strong typing, and just-in-time (JIT) compilation to native code, to name only a few of its benefits. ASP.NET is also easily factorable, meaning that developers can remove modules (a session module, for instance) that are not relevant to the application they are developing. ASP.NET also provides extensive caching services (both built-in services and caching APIs). ASP.NET also ships with performance counters that developers and system administrators can monitor to test new applications and gather metrics on existing applications. .
The .NET Framework and ASP.NET provide default authorization and authentication schemes for Web applications. You can easily remove, add to, or replace these schemes, depending upon the needs of your application
ASP.NET configuration settings are stored in XML-based files, which are human readable and writable. Each of your applications can have a distinct configuration file and you can extend the configuration scheme to suit your requirements.
Applications are said to be running side by side when they are installed on the same
computer but use different versions of the .NET Framework
Embedding process
Start
Message is input
Converting it intoBinary values
Data hiding
Stop
Data hided image file
Image
Secret key Converting it into numeric streams
Embedded system
Start
Watermarked image file
Extracting the numeric streams
Stop
Hidden message
Converting them into message
Secret key
Block Diagram
Embedding process Input is a message
Embedding the key
Hiding the data In the image
Watermarked word document
Converting it intoNumeric streams
Extraction process
Input is a image
Giving the secret key
Extracting the numeric streams
Converting them message
View of hidden message
Conclusion/Goal
In this project, we present a general coding-type framework which provides
useful and constructive tools in the analysis and design of semi-fragile watermarked-
based authentication system In particular, we demonstrate the effectiveness of nested
lattice codes in achieving design objectives such as robustness, fragility, security, and
implementation efficiency.
Future work
Future work considers incorporating unconditionally secure authentication
code to our semi-fragile watermark-based authentication framework. We can also
enhance in to perform watermark for 3D images
In this project we use a gray scale image for watermark image into original image. In
future we may use a coloured image instead of a grey scale image
References
C.-Y. Lin and S.-F. Chang, “Semi-fragile watermarking for authenticating JPEG visual content,” in Proc. SPIE, Security and Watermarking of Multimedia Content II, Jan. 2000.
J. Dittmann, A. Steinmetz, and R. Steinmetz, “Content-based digital Signature for motion pictures authentication and content-fragile watermarking,” in Proc. IEEE Int. Conf. Multimedia Computing and Systems, vol. 2, 1999, pp. 209–213.
J. Fridrich, M.Goljan, and N.Memon, “Further attacks on Yeung-Mintzer Fragile watermarking scheme,” in Proc. SPIE, Security and Watermarking of Multimedia Contents, San Jose, CA, 2000, pp. 428–437.
P. Campisi, D. Kundur, D. Hatzinakos, and A. Neri, “Compressive data hiding: An unconventional approach for improved color image coding,”EURASIP J. Appl. Signal Process. Special Issue on Emerging Applications of Multimedia Data Hiding, vol. 2002, no. 2, pp. 152–163, Feb.2002
R. Radhakrishnan and N. Memon, “On the security of digest function In the SARI image authentication system,” IEEE Trans. Circuits Syst .Video Techno. vol. 12, no. 11, pp. 1030–1033, Nov. 2002
R. J. Barron, B. Chen, and G.W.Wornell, “The duality between information embedding and source coding with side information and some applications,”IEEE Trans. Inform. Theory, vol. 49, no. 5, pp. 1159–1180, May 2003.