Design And Implementation Of Watermarking Technique

Published:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

This chapter includes detailed introduction regarding watermarking and its significance and its applications like ownership protection authentication or tempering protection, fingerprinting or labeling, annotation, research statement, objectives, scope of the document and outline. Due to concept of huge data storage, it is easy for the organizations to store their data but the data is not secure from the malicious users who are always attempt to corrupt or distort the data and thus make it useless.

Piracy has been increased due to huge progress in the digital technology which has become a great challenge for the organizations. Organizations pile up their data for decision making purposes and that data is mostly in digital form which can be easily copied and re distributed without facing the problem of property rights protection. Hence there is a need for digital protection mechanism that can detect and deter data piracy effectively [4]. Digital watermarking provides the solution which almost fulfills the requirements. Watermarks are specials marks that are imprints on the paper that are used for the genuineness of the data. There are two types of watermarking one is perceptible and the other is imperceptible. In imperceptible the marks are not visible. The marks should b embedded in the dataset randomly such that there is no concentration of marks at one place.

In the first process the marks (hidden information) are embedded and transform the actual data into watermarked data. The marks should be inserted in such a way that it should not affect the usefulness of the data. Watermark detection is the reverse of watermark embedding process. In this process the marks that are embedded in the first routine are extracted and the watermarked data is converted back to its original form.

Our contribution in the field of watermarking technology is to formulate an entirely new technique for non numeric relational databases as the work on non numeric relational databases is very limited at this time. It will provide up to the mark accuracy and error tolerance against various malicious attacks.

1.1 Digital watermarking

Digital watermarking is very latest and up to date technology. The Internet pace of business today unfortunately leads many to take unethical shortcuts to get the data they want, including stealing it, duplicating it or passing it off as their own original work. Digital watermarks are a method to assert an intellectual copyright in the electronic world. Digital watermarking is the process of embedding copyright information such as author/owner/usage restrictions into the original file, be it a Beatles song or an original photograph. In the paper and ink world, traditional watermarks are visible impressions left on the paper. In the digital world, watermarks are intended to be imperceptible to the end user of the file. A digital watermark also must be recoverable by someone checking the copyright - yet it also must be unalterable to intentional fraud and unintentional file manipulations such as data compression. It's a pretty tall order to do all of this, as well making the data easy to use for the appropriate users. This is not the same thing as using digital signatures to determine the authenticity of a document - a single change will cause mismatched checksums and invalidate the file. Watermarks need to stay with the file, even if it is a song that is being rerecorded or an image that is being cropped.[7]

Digital watermarks are created by converting copyright information into apparently random digital "noise" using an algorithm that is imperceptible to all but special watermark-reading software. The demand for this type of technology can be expected to grow enormously as businesses seek to assert some control over their property on the "everything is free" Internet. [7]

1.2 Importance of watermarking

In early decades the copying and distribution of digital assets was not a simple task as nowadays, Because digital asset can be easily accessed by the ordinary people throughout the world [3]. So there is a desperate need to protect the ownership of digital asset which was accomplished by introducing the watermarking technology that fulfills all the requirements to deter piracy.

1.3 Purpose of the document

The most precious asset of the organizations is its data. Due to unethical use of the internet one can easily get access to his required data and with little bit modifications he can pass the data off as his own work. There is a great need to keep the data protected in its original form from the malicious users. The desire for the availability of real information has been a major factor in the development of new technology. This document serves a mixture of purposes. First one is to detect data piracy in the field of information security and convey the awareness of watermarking. The research has been conducted to provide software that detects the piracy efficiently.

1.4 Background Knowledge

The idea of watermarking can be dated back to the late middle ages. The earliest use has been to record the manufacture's trademark on the product so that piracy can be prohibited. The Government uses it for currencies, postage stamps, revenue stamps, etc. [1] As this is the period of computer and internet, new techniques have been emerged to deter data piracy. As there is a pile of data across internet million of peoples have access to internet so there is a great chance of data piracy. Copyright is the main source for developing the new encryption techniques but these are not enough to control the copyright issues so a new technology that specifically target the issues of data ownership has been introduced named as watermarking.

1.5 Applications of Watermarking

There are a lot of applications of watermarking. Some of them regarding to the research conducted is given below.

1.5.1 Ownership Protection

This is the major application for digital watermarking that provides the ownership information. As there is a possibility that there may be an opponent who may attempts to modify the material by eliminating the ownership information. The ownership cannot be claimed without using any watermarking technique. Because when a owner watermarks his data then he can easily proof his ownership in front of court by showing the same watermarks he embed.

1.5.2 Authentication or tempering detection

Despite of the fact that there are malicious users who always tries to spoil the data usability, but when the data is required for official purposes then it is compulsory that the data must be in its original form and it must be guaranteed that it is derived from a authenticated source and had not been altered and distorted. Therefore a watermarking technique is required that assures the authenticity of the data by extracting the watermark through unique key.

1.5.3 Fingerprinting or Labeling

Fingerprinting is up-to-the-minute technique which is used to identify the attacker who tries to modify the data for false claim ownership. It is very helpful and efficient technique for identifying the digital videos and digital watermarking.

1.5.4 Annotation

Basically annotation is a remark given to information in a book, documents, outline record, video, software code or other type of information. It is an important application of digital watermarking. Annotation of digital photographs is included in the branch of steganography which is a recent technology.

1.6 Motivation

Watermarking is extremely vast field. Basically this technique is used against copyright protection and to deter piracy of digital asset like software, image, video, audio, etc. As the data is the foremost asset for the organizations so there is a desperate need to protect the data from being useless. Data protection is achieved by watermarking the data to avoid million dollars loss. Watermarking is very helpful for PTCL, NADRA, State Bank of Pakistan in order to provide authentication and confidentiality to them.

1.7 Objective

The research objective is to protect the non numeric relational assets from piracy and to deter piracy as well which will result in the establishment of more data warehouses leading to the way of more job opportunities. A new and flawless technique is formulated that is robust against attacks which provide 100% tolerance and accuracy to the databases [2].

1.8 Scope of the Document

The scope of this document is

To provide awareness about the watermarking technology

To show the importance of ownership proofing by analyzing and evaluating existing techniques with their strengths and weaknesses.

To formulate a new and secure watermarking technique against malicious attacks.

1.9 Outline

The research work is arranged in the subsequent sections. Chapter 2 covers the background knowledge and the related work regarding the watermarking. Chapter 3 entails the insertion-detection algorithm, models, comparative analysis of existing techniques along their strengths and weaknesses. Chapter 4 covers the attacks. Chapter 5 includes the proposed model of watermarking technique. Chapter 6 describes the analysis and design of the proposed technique. Chapter 7 includes the implementation, testing and results respectively. Chapter 8 is concerned about the summary and conclusion.

Chapter 3: Related Work

3.0 Technique #1: Technique by Faiza Akther

Technique: Watermarking for relational databases by bit flipping and bit preservation

3.1 Main idea: Faiza introduces the new watermarking technique for relational databases. The watermarks are inserted by flipping a particular bit selected by a selection routine and then preserving the same bit in the database before flipping it. Watermark detection process is blind. This new technique can be implemented with and without presence of primary key. This technique is robust against various malicious attacks like bit flipping attacks and subsetting attacks.

3.1.1 Features/characteristics

Primary key: the watermarking technique can be implemented in the presence as well as in the absence of primary key.

Blind Watermarking: the method does not require the non watermarked or actual data at the time of detection

Data Loss: Not either a bit of data is lost as preserved at the end of the other cell before being watermarked

Error Tolerance: provides complete error tolerance

Multi bit watermarking: multiples bits of same attribute can be marked as well.

3.1.2 Graphical Model

3.1.3 Algorithm

3.1.3.1 Watermarking Encoding Algorithm

Step E1: Selection Routine: Binomial Expansion is used for selection of bits for bit preservation and bit flipping

Step E2: Bit preservation routine: Bit marked for flipping is preserved in selected bit position by preservation routine to achieve data integrity

Step E3: Bit flipping routine: Bit marked for flipping is flipped algorithmically to generate a watermark

Step E4: Merging and Insertion Routine: Outputs of bit preservation routine and bit flipping routine are merged to generate a watermark W to be inserted in original dataset to generate watermarked dataset.

3.1.3.2 Watermark Detection Algorithm

The watermark detection algorithm comprises of following three steps

Step D1: Selection Routine: by using the selection routine used in E1, the flipped bits and the preserved bits are reselected by using secret parameters for watermark detection.

Step D2: detection Routine: inserted watermarks in watermarked database are detected to prove ownership or to suspect piracy

Step D3: Bit-Restoration routine: flipped bits are preserved bits are restored in order to generate original database to achieve data integrity and data usability for query processing etc

3.1.4 Advantages

Primary key: the watermarking technique can be implemented in the presence as well as in the absence of primary key

Accuracy: Dummy values stored at the end of the cells provide 100 % accuracy by holding the copy of original data

Blind Watermarking: the method does not require the non watermarked or actual data at the time of detection

Data Loss: Not either a bit of data is lost as preserved at the end of the other cell before being watermarked

Error Tolerance: provides complete error tolerance

Multi bit watermarking: multiples bits of same attribute can be marked as well.

3.1.5 Limitations

Increase in Relation: The technique will bring very small overhead in terms of increase in relation, therefore the time required to process a query will b increases.

3.2 Technique # 2: Technique by vahab

3.2.1 Main idea: vahab gave the idea of insertion of fake tuples erroneously into the database, depending on the owner of database. Fake row is filled by either biased sampler or uniform sampler . the detection of watermark is done by checking the sensitivity of an attribute. The inserted watermarks should be imperceptible and should not degrade the significance of the data

3.2.2 Characteristics

Fake Tuple : it gives the latest concept of fake tuples insertion that depends on the owner of the database

Quality: These inserted marks will not degrade the quality o the data

Nature: Only detection algorithm is probabilistic in its nature.

3.2.3 Graphical Algorithm:

3.2.4 Algorithms

3.2.4.1 Watermarking Encoding Algorithm:

Step E1:Number of fake Tuples: Select the number of fake tuples to be inserted in the relation. It is selected by the owner.

Step E2: Generation of candidate key: Generate a candidate key using pattern generation algorithm

Step E3: Sensitivity: Check the sensitivity of the attribute. Whose range is from 0 to 1

Step E4: Set of fake values: Make the set of fake values according to the uniform sampler and bias sampler

3.2.4.2 Watermarking Decoding Algorithm:

Step D1: watermarking selection routine: Select the set of fake tuples inserted in the relation

Step D2:Countless Matches: check the relationship between fake values inserted, if it is greater than similarity score then return true, else return false.

3.2.5 Advantages

Data Hiding Technique: Hiding the information in fake rows is efficient .it also causes very small changes (usually ignorable) in the data.

Vulnerability: Highly vulnerable to very trivial attacks due to the fake row insertion.

3.2.6 Limitations

Primary Key: primary key must be present in the relation to be watermarked. This technique can not be implemented in the absence of primary key.

Deletion of fake tuples: Watermark detection process fails if all the fake tuples are deleted by the attacker.

3.3: Technique #3: Agrawal

3.3.1 Main Idea: Agrawal proposed a watermarking algorithm that embeds the watermark bits in the least significant bit(LSB) of the selected attribute of a selected set of tuples which are all algorithmically determine under the control of a secret key known only to the owner of data. This bit pattern constitutes the watermark. Only if one has access to the secret key can the watermark be detected with high probability.

3.3.2 Features/Characteristics: This technique ensures that some bit positions of the attributes of some of the tuples contain specific values. The specific bit locations and values are algorithmically determined under the control of a secret key known only to the owner of the data. This bit pattern constitutes the watermark. Only if one has access to the secret key can the watermark be detected with high probability. Detecting the watermark requires access neither to the original data nor the watermark, and the watermark can be easily and efficiently maintained in the presence of insertions, updates and deletions. Our analysis shows that the proposed technique is robust against various forms of malicious attacks as well as benign updates to the data.

3.3.3 Graphical Model:

:

3.3.4 Algorithm

3.3.4.1Watermark Encoding Algorithm:

Step-1: Marking Tuple: Select tuple by initializing random sequence generator with the primary key and the secret key.

Step-2: Marking Attributes: Fir the selected tuple, determine the attribute that will be marked among the candidate attributes.

Step-3: Marking Bit: For the selected attribute, determine the bit position that will be marked among the least significant bits

Step-4: Marking routine: The mark() subroutine sets the selected bit to 0 or 1 depending on the next number in the random sequence.

3.3.4.2 Watermark decoding algorithm:

Step-1: Watermarking Insertion Routine: Identifies the bits that should have been marked by the insertion algorithm, basically by executing the operations described by step 1 to 3 of the encoding algorithm using the original secret key

Step-2: Countless Matches: For each identified bit, test whether or not the bit's value matches the value that should have been assigned by the insertion algorithm and count the number of matches. If there are extremely many matches or suspiciously extremely few matches, then the piracy is suspected.

3.3.5 Advantages:

Following are the main advantages of the discussed technique:

1) Since tuple sorting is not required that's why the computation is too low as compare to other techniques.

2) The watermark is incremental updatable with respect to adding/deleting tuples or modifies the values of attributes. That is, the watermarks values will only be recomputed for the added and modified tuples.

3) Hiding bits in LSB are efficient. It also causes very small (usually neglect able) changes in the data.

3.3.6 Limitations:

1) This technique does not provide a mechanism for multibit watermarks; instead all operations are dependent only on the secret key.

2) The LSB based data hiding technique is not resilient as the watermark can be easily compromise by very trivial attacks for example manipulation of the data by shifting the LSB's one position easily leads to watermark loss without much damage to the data.

3) Checking data constraints: The LSBs bits in any tuple can be altered without checking the data constraints. Simple unconstrained LSB manipulations can easily generate undesirable results such as changing the age from 20 to 21.

4) Although watermark (intentional error) is being introduced in LSB hence there is not much damage to the data but still some data sets aimed for more accurate results.

5) To apply watermark on numeric data, those attributes are selected that can resist errors.

6) Requires the presence of a primary key in the watermarked relation.

7) Does not handle usability constraints such as category preserving usability constraints.

3.4 Technique #4: Developing a new technique to embed watermarks in non-numeric datasets

3.4.1 Main Idea:

The fourth technique given by Nida Zaigham is based on the generation of fake rows created by pattern generation algorithm. The watermarks are embedded by mapping the fake rows with selected rows to be watermarked. The watermarks can not be detected unless the fake rows are identified. The technique is independent of primary key A person can only detect the watermark if he has access to the secret key.in the detection process neither the watermarked data nor the actual data is required[3].

3.4.2 Features/Characteristics:

In the proposed approach the concept of fake rows and row association as adopted from [26,30] has been used though but in this neither the fake row contain whole copy of existing rows nor they are wholly generated rows but the generated fake rows are in the bond of association with the rows selected to be watermarked.

This combination is quite enough to deceive the attacker.

The proposed technique has also been proved robust against subset, attribute replacement attacks and also false claim of ownerships.

3.4.3 Graphical Model:

3.4.4 Algorithm

3.4.4.1 Watermark insertion algorithm:

The steps of watermark insertion are as follows:

Step-1: Row selection: The rows are selected on the principle of Fibonacci sequence of numbers.

Step-2: Pattern generation routine: A fake pattern is generated.

Step-3: Watermark Selection: The fake pattern will act as an intentional error or in other words the watermark.

Step-4: Watermark embedding

Now the fake pattern will be inserted as the fake row.

An association is developed between the fake rows and the row selected.

The RSA Encryption is used for the association purpose (a part of Mapping Routine), The primary key, say pk1 of the row selected is encrypted through RSA and become a fake primary key, say pkf for the fake row to be generated.

This way the watermark is embedded.

3.4.4.2 Watermark detection algorithm:

The steps of watermark detection are as follows:

Step-1: Row Selection: The row selected is same as that of the insertion process.

Step-2: Pattern generation routine: A fake pattern is regenerated.

Step-3: Watermark Extraction:

Once the row that was selected for watermarking is determined, then the existence of its associated fake row is checked.

Once the existence is confirmed, regenerated fake pattern is matched with that of the identified fake row in order to confirm the detection.

3.4.5 Advantages:

This technique serve as conduit for watermarking sensitive databases that cannot tolerate minor errors in the form of watermarks.

100% data accuracy has been observed as the row selected to be watermarked is preserved before and after the watermark insertion.

It is robust against the attacks (subset, attribute replacement attacks and also false claim of ownership).

Imperceptibility of watermarks is quite high because of the fake row generation.

There is no replication of rows or data instead entirely new row is generated through Pattern Generation Algorithm and is not harmful to the original rows.

3.4.6 Limitations:

It only affects the query optimization a little, since there would be increase in the number of rows due to generation of fake rows. But this aspect can be ignored because the generation of fake rows adds vitality to the insertion and detection procedure.[5]

Chapter # 2

2.0 Background

This chapter is basically concerned with all the background knowledge of watermarking. It entails the general history regarding the watermarking technology, watermarking characteristics, types of watermarking and introduction of the related work.

2.1 Types of watermarking

Two types of watermarking are given below

2.1.1 Visible watermarking

Visible watermarking contains the visible information which is perceptible to everybody using the data. Mostly this information is in the form of translucent text or a logo from which the owner of the data can be recognized. Such visible watermarks are embedded in such a way that they are un-removable by the malicious users.

2.1.2 Invisible watermarking

Invisible watermarking contains the information which is not viewable to everyone. Only the owner of the data can detect the watermarks. The art of embedding the imperceptible watermarks lies in a way that neither it should degrade the data usability nor they can be detectable at one glimpse. These watermarks are detected by the owner by using his secret keys to proof his possession. The unnoticeable watermarks are added and detected in particular regions by using some watermarking technique. The important characteristic of invisible watermark is that they are used to protect the copyright system.

2.2 Categories of invisible watermarking

There are three categories of invisible watermarking that are given below

Robust Watermarking

Fragile watermarking

Semi fragile watermarking

2.2.1 Robust watermarking

The watermarks that can endure all possible alterations or distortions made by the malicious user are called the robust watermark. The watermark insertion must be done in highly secure and confidential way to achieve the robustness. Robust watermarks can only be removed by high level attacks, but the worth of data would be degraded.

2.2.2 Fragile watermarking

When the malicious user attempts to destroy the watermark by modifying the data or deleting it then some of the watermarks got deleted such watermarks are failed to be detected by the owner this type of watermarks are called the fragile watermarks. These types of watermarks are used for localization of modifications and authentication. The fragile watermarks are used to identify the changes made in the document.

2.2.3 Semi Fragile watermarking

A watermark is called semifragile if it resist beingn transformations but fails detection after transformations.they are used to identify the maligent transformations.

2.3 Difference between Stegnography and Watermarking

This table represents the aspects in which stegnography and watermarking are different.

Stegnography

Watermarking

Stegnography hides the message in a way that malicious user can not detect its presense

Watermarking hides the message in a way that malicious user can not remove or replace it.

Its goal is to hide a message in one to one communication

Its goal is to hide a message in one to many communication

Its about concealing the existence of the message

Watermarking is about protecting the message

stegnography Techniques do not provide strong security against modifications or alterations.

Watermarking Techniques need to be robust against the modifications or alterations performed by the malicious user

2.4 Characteristics of Watermarking

The following are some of the characteristics which a watermark must possess.

There should be no interference if there is more than one watermark exist in the relation

Quality of work should not be disgraced.

There must be different marks on different copies.

Watermarks must be robust against attacks

Watermarks (intentional errors) must be imperceptible.

Watermark must be error tolerant.

2.5 Related Work

2.5.1 Technique by Agrawal

Rakesh Agrawal, peter J Hass and jerry Kiernan in [1] selected some tuples and then attributes are selected from the selecteed tuples and among them some of the bit positions were choosen to insert watermark in them. These selections have been done algorithamically with the help of secret keys which is only known to owner of the relation. This bit pattern makes the watermark. A person can only detect the watermark if he has access to the secret key.in the detection process neither the watermarked data nor the actual data is required [1].

2.5.2 Technique by Vahab

The second technique given by Vahab is based on the fake tuples erroneously to the database. The inserted watermarks should be imperceptible and should not degrade the significance of the data. Robust watermarking for relational data is applied so that the attacker would not be able to retrieve the original database unless he has access to similar database and the watermarks would be kept after updating by benign [2].

2.5.3 Technique by Nida Zaigham

The third technique given by Nida Zaigham is based on the generation of fake rows created by pattern generation algorithm. The watermarks are embedded by mapping the fake rows with selected rows to be watermarked. The watermarks can not be detected unless the fake rows are identified. The technique is independent of primary key A person can only detect the watermark if he has access to the secret key in the detection process neither the watermarked data nor the actual data is required[3].

2.5.4 Tecnique by Faiza Akther

Faiza introduces the new watermarking technique for relational databases. The watermarks are inserted by flipping a particular bit selected by a selection routine and then preserving the same bit in the database before flipping it. Watermark detection process is blind. by This new technique can be implemented with and without presence of primary key. This technique is robust against various malicious attacks like bit flipping attacks and bit subsetting attacks.

CHAPTER 4

PROPOSED MODEL

4.0 Introduction

This chapter includes the proposed model along with the parameters used, algorithms of watermark embedding and decoding with their subroutines, descriptions and graphical models are elaborated as well. It also covers the characteristics, advantages and limitation of proposed model.

4.1 Overview of Proposed Model

4.1.1 Symbol Table

Symbols

Description

Do

Original Dataset

Dw

Watermarked Dataset

Kseq

Secret Key that generate pseudo random numbers

Krow

Secret key that selects the Row

Secret key that selects the Attribute

Rsel

Selected Row for Watermarking

Asel

Selected Attribute for watermarking

Gamma

Total number of rows

Eeta

Totlal number of coloumns

E.H.C

Total Number of spaces

Pos

Position of spaces in attribute value

L(Asel)

Length of selected Attribute

Tpos

Target position to embed watermark

T

Threshold

Α

Level of significance

Dpw

Pirated watermark dataset

Ώ

Number of rows to be watermarked

4.1.2 Framework of Proposed Technique

Fig. 1 shows the generic model that elaborates the procedures for watermark insertion and watermark detection. The dataset Do is a host for watermark embedding. Three secret keys that are only known to the owner of the database are used to watermark the dataset.

Fig 1 Graphical Model for Watermarking

4.1.2.1 Watermark Insertion

The watermark insertion is elaborated in Fig. 2.Three secret keys are used to watermark the dataset Do. After applying the insertion procedure the dataset Do becomes a watermarked dataset Dw. It may happen that the watermark dataset may or may not suffer by the alterations performed by the malicious users.

Fig 2 Graphical Model for Watermark Insertion

4.1.2.2 Routines for Watermark Insertion

The watermark Insertion process is summarized in the following four steps

Step-E1 Selection Routine: Pseudorandom number generator and System of linear Equation is used to select the row and attribute as a host for watermarking on the basis of secret keys.

Step-E2 Hidden Capacity Computation Routine: positions where spaces can exist in the selected attribute are calculated.

Step-E3 Watermark Computation Routine: target position to embed spaces as a watermark is computed.

Step-E4 Watermark Embedding Routine: finally the watermark is embedded at the target position.

4.1.2.2.1 Watermark Insertion Algorithm

Algorithm Insertion()

Input Do

Input E, Kseq, Krow, Ká, ÏŽ // secret parameters

Output Dw // watermark database

1) Row Selected=Row Selection(ÏŽ,kseq,krow)

2) Attribute Selected=Attribute Selection(ÏŽ,Kseq,Ká)

3) For Each ( Rsel € Row Selected && Asel € Attribute Selected)

4) E.H.C= ComputeSpaces(Asel)

5) Tpos=targetpos(E.H.C % L(Asel))

6) Do=Embedding(Tpos,E) 

7) Next Rsel, Asel

8) Return Do As Dw 

Fig 3 Watermark Insertion Routine

4.1.2.2.1.1 Description of Watermark Insertion Algorithm

The original dataset Do undergoes through the procedure of row selection and attribute selection routines based on the secret keys Ks2,Ks3.At line 1 -2 subroutines returns the selected row and selected attribute. Detail of these routines is presented in another figure

Line 4 determines that for each selected row and column, Existing hiding capacity for spaces is computed by ComputeSpaces subroutine. Line 5 determines the target position to embed the spaces(watermark) which is calculated by taking the modulo between E.H.C and length of the attribute. Line 6 embed the spaces (E) at the target position (Tpos) in the original dataset.

4.1.2.2.2 Selection Routine

The Row selection and the Attribute Selection is based on the Pseudo random sequence and System of Linear Equations.

Algorithm: Selection()

Input ÏŽ,Kseq,Krow,Ká

Output RowSelected, AttributeSelected

Seed G1 with Kseq

While (true)

Sequence=G1.Next()

Chunk =chunkformation(sequence)

Rowselected, AttributeSelected=System of linear Equation(chunk,Krow,Ká)

RowArray=RowSelected;

AttributeArray=AttributeSelected;

Ignore Duplication

If sizeof (RowArray && Attribute Array) > ÏŽ

Exit While

End if

Return RowArray As RowsSelected

Return AttributeArray As AttributeSelected

Fig 4 Selection Routine

4.1.2.2.2.1 Description of Row Selection Routine

G1 is designated as the seed for the Pseudo random sequence generator which produce a sequence of numbers that meet certain statistical requirements for randomness. At line 1 the G1 is seeded with the KS1, Therefore it is hard for the attacker to predict and generate the same sequence of numbers. At line 3-4 the sequences that is generated through the G1 is passed through chunkformation. The sequence is divided into the chunk of 4 numbers.

At Line 5 the chunk along with the KS2, KS3 is passed to the system of Linear Equations which will solve equations simultaneously and return the RowSelected and AttributeSelected.

The System of Linear Equation is elaborated as follows

The simplest kind of linear system involves two equations and two variables:

2x+3y=6

4x+9y=15

First, solve the top equation for x in terms of y:

x = 3-3/2y

Now substitute this expression for x into the bottom equation:

4(3-3/2y) + 9y=15

This results in a single equation involving only the variable y. Solving gives y = 1, and substituting this back into the equation for x yields x = 3/2=1.5 decimal points will be ignored. Here x represents the rows and y represents the attribute which are candidate for watermarking procedure.

At Line 6-7 RowSelected and AttributeSelected is stored in the RowArray and AttributeArray respectively. At Line 8 the duplicate for the selected rows and attributes are ignored and will not be stored in the respective arrays.

4.1.2.2.3 Hidden Capacity Computation Routine

Algorithm HiddenCapacityComputation()

Input AttributeSelected(Asel)

Output E.H.C //existing hidden capacity

If(Asel.Startwith Space && Asel.Endswith space)

E.H.C=computespaces(Asel)

Else

pos=Mark start and End Position

E.H.C=computespaces(Asel, pos)

Endif

Return E.H.C

Fig 5 Hidden Capacity Computation Routine

4.1.2.2.3.1 Description of Hidden Capacity Computation Routine

Once the attribute is selected for watermarking the hidden capacity is computed by counting the number of positions where a space can be embedded as a watermark. At line 1-5 the Start and end positions of an attribute value is checked either they contain space or not if they do not contain spaces then these positions are marked and the space positions are calculated along the marked one which becomes the existing hidden capacity of an attribute to contain a watermark.

4.1.2.2.4 Watermark Embedding Routine

Algorithm Embedding()

Input E.H.C, Asel

Output Dw

L(Asel)=Length(Asel)

Tpos=(L(Asel)%E.H.C) // target position to embed watermark

Do=Embedd(Tpos, E)

Return Do as Dw

Fig 6 Watermark Embedding Routine

4.1.2.2.4.1 Description of Watermark Embedding

At line 1 the length of the selected attribute (Asel) is measured. At line 2 the target position (Tpos) to embed watermark is determined by taking the modulo of Length of attribute and existing hidden capacity. At line 3 the spaces (E) are embedded at the target position (Tpos).

4.1.2.2 Watermark Detection

Watermark detection identifies the existence of the embedded watermarks in the dataset. The detection routine starts similarly as mentioned in the insertion routine. Once the selected row and attribute are determined then its hidden capacity is calculated and the target positions of watermarks are calculated by computation subroutines. If the matching results are true and there is no change in the original watermark then the watermarks are extracted and the original database is attained otherwise pirated dataset is detected.

Fig 7 Graphical Model for Watermark Detection

4.1.2.2.1 Routines for Watermark Detection

The watermark Insertion process is summarized in the following four steps

Step-E1 Selection Routine: the rows and attributes selected for watermarks can be obtained by using the same Selection Routine as discussed in Section 4.1.2.1

Step-E2 Hidden Capacity Computation Routine: positions where spaces can exist in the selected attribute are calculated.

Step-E3 Watermark Computation Routine: target position where the watermarks are present are computed

Step-E4 Watermark Matching Routine: The number of watermark present is matched with the number of watermarks inserted. if the match result is true then the watermarks are extracted and original dataset is obtained otherwise the piracy is detected.

Watermark Detection Algorithm

Algorithm Detection()

Input Dw

Input E, Kseq, Krow, Ká, ÏŽ // secret parameters

Output Do // watermark database

1) Row Selected=Row Selection(ÏŽ,kseq,krow)

2) Attribute Selected=Attribute Selection(ÏŽ,Kseq,Ká)

3) For Each ( Rsel € Row Selected && Asel € Attribute Selected)

4) E.H.C= ComputeSpaces(Asel)

5) Tpos=targetpos(E.H.C % L(Asel))

6) Total_Count=Total_Count+1

7) Flag=Matching(Tpos,E) 

8) if Flag == True Then

9) Match_Count = Match_Count+1;

10) End if

11) Next Rsel, Asel

12) ƭ = Threshold (Total_count, α);

13) If ((Match_Count < Æ­) Or (Match_Count > Total_Count)) Then

14) Suspect Piracy

15) End if

16) Return Do

Fig 8 Algorithm for Watermark Detection

4.1.2.2.2.2 Description of Watermark Detection

The Selection Routine and the Secret Parameters are similar mentioned in the watermark Insertion subroutines. At line 4-5 the E.H.C and the target positions of watermark are computed. Line 6 determines the number of Rows and attribute which are tested (Total_Count). Line 9 determines the numbers of correct watermark found (Match_Count).

4.1.3 Advantages:

Imperceptible: The new watermarking technique is highly imperceptible as compare to the previous techniques because embedding a space as watermark is not visible.

Usability: This technique does not degrade the quality of the data. Because the content of the data remains almost same except number of spaces.

Primary key: The technique works in the presence as well as in the absence of the primary key

Data Distortion: it is distortion free watermarking technique.

Blind Watermarking: The detection process does not require the watermarked database.

Computational Complexity There is no computational complexity in this technique as compare to other techniques.

Watermark Concentration there is no watermark concentration at one place as the duplication is ignored in watermark embedding process

Robustness: It is robust against malicious attacks performed by the malicious users.

Error Tolerance highly vulnerable against errors.

No Preservation Overhead: the watermark embedding needs no preservation which makes the techniques less complicated.

Highly Secure: This technique is more secure because it makes use of three secret keys. If the attacker makes guess of one key then he can not proceed without getting the other two keys.

CHAPTER 5

DESIGN AND ANALYSIS

Analysis And Design

This chapter deals with the analysis and design of the proposed watermarking technique. This includes the system design, architectural design and procedural design. Flow charts of all the subroutines are elaborated in the procedural design.

System Design

5.1.1 System Requirements

System requirements are of two types:

Hardware Requirements

Software Requirements

5.1.1.1 Hardware Requirements

These requirements include

Pentium 4 computers

256 MB RAM

5.1.1.2 Software Requirements

These requirements include

Microsoft Windows XP Professional Version 2002 Service Pack2

Visual C#

Microsoft Office 2003(MS Access, MS Word, MS Visio)

Paint

Architectural Design

Figure 5.1 Architectural Design

5.3 Procedural Design

5.3.1 Flow Charts

Selection Routine

Hiding Capacity Computation Routine

Watermark Computation Routine

Embedding Routine

Detection Routine

Complete System

5.3.1.1 Selection Routine

Figure 5.2 Flow Chart for the Selection Routine

5.3.1.2 Hiding Capacity Computation Routine

Figure 5.3 Flow Chart for the Hiding Capacity Computation Routine

5.3.1.3 Watermark Computation Routine

Figure 5.4 Flow Chart for the Watermark Computation Routine

5.3.1.4 Embedding Routine

Figure 5.5 Flow Chart for the Watermark Embedding Routine

Figure 5.5 Flow Chart for Watermark Insertion

5.3.1.6 Complete System

Figure 5.6 Flow Chart for the Complete System

Refrences

[1] http://www.scisstudyguides.addr.com/papers/cwdiss880preliminary.htm

[2] Aihab Khan, Malik Sikandar Hayat Khiyal, Syed Afaq Hussain, Faiza Akther (2009) Design and

Implementation Of Watermarking Technique For Relational Databases And Analysis Of Robustness Against Bit Flippin Attacks. Dissertation. Departmen attacks and subsetting attacks of Software Engineering, Fatima

Jinnah Women University, Pakistan

[3] http://findarticles.com/p/articles/mi_m0VVT/is_12_4/ai_n39191897/

[4] Aihab Khan, Malik Sikandar Hayat Khiyal, Syed Afaq Hussain, Nida Zagham (2009) Design and

Implementation Of Watermarking Technique For Non Numeric Datasets using Pattern Generation and Row Association Schemes. Dissertation. Department of Software Engineering, Fatima

Jinnah Women University, Pakistan

[5] Agrawal R and Kiernan J (2003) Watermarking Relational Data: framework, algorithms and analysis, In

Proceedings of 28th International Conference on Very Large Data Bases, Hong Kong, China.

[6] Li Y, Guo H, and Jajodia S (2004) Tamper Detection and Localization for Categorical Data Using Fragile

Watermarks, School of Information Systems, Singapore Management University, Singapore 259756, Center for

Secure Information Systems, George Mason University, Fairfax, VA 22030.

[7] http://www.networkworld.com/newsletters/sec/0103sec1.html

Writing Services

Essay Writing
Service

Find out how the very best essay writing service can help you accomplish more and achieve higher marks today.

Assignment Writing Service

From complicated assignments to tricky tasks, our experts can tackle virtually any question thrown at them.

Dissertation Writing Service

A dissertation (also known as a thesis or research project) is probably the most important piece of work for any student! From full dissertations to individual chapters, we’re on hand to support you.

Coursework Writing Service

Our expert qualified writers can help you get your coursework right first time, every time.

Dissertation Proposal Service

The first step to completing a dissertation is to create a proposal that talks about what you wish to do. Our experts can design suitable methodologies - perfect to help you get started with a dissertation.

Report Writing
Service

Reports for any audience. Perfectly structured, professionally written, and tailored to suit your exact requirements.

Essay Skeleton Answer Service

If you’re just looking for some help to get started on an essay, our outline service provides you with a perfect essay plan.

Marking & Proofreading Service

Not sure if your work is hitting the mark? Struggling to get feedback from your lecturer? Our premium marking service was created just for you - get the feedback you deserve now.

Exam Revision
Service

Exams can be one of the most stressful experiences you’ll ever have! Revision is key, and we’re here to help. With custom created revision notes and exam answers, you’ll never feel underprepared again.