Top Banner
A HIGH CAPACITY 3D STEGANOGRAPHY A PROJECT REPORT Submitted by BRINDHA.S (70206104013) JENIFER UDAYAKUMARI.M (70206104028) PARAMESWARI.P (70206104318) in partial fulfillment for the award of the degree of BACHELOR OF ENGINEERING in COMPUTER SCIENCE AND ENGINEERING BANNARI AMMAN INSTITUTE OF TECHNOLOGY SATHYAMANGALAM
87

A High Capacity 3d Steganography

Mar 11, 2015

Download

Documents

Poorni Babloo
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: A High Capacity 3d Steganography

A HIGH CAPACITY 3D STEGANOGRAPHY

A PROJECT REPORT

Submitted by

BRINDHA.S (70206104013)

JENIFER UDAYAKUMARI.M (70206104028)

PARAMESWARI.P (70206104318)

in partial fulfillment for the award of the degree

of

BACHELOR OF ENGINEERING

in

COMPUTER SCIENCE AND ENGINEERING

BANNARI AMMAN INSTITUTE OF TECHNOLOGY

SATHYAMANGALAM

ANNA UNIVERSITY :: CHENNAI 600 025

APRIL 2010

Page 2: A High Capacity 3d Steganography

ANNA UNIVERSITY :: CHENNAI 600 025

BONAFIDE CERTIFICATE

Certified that this project report “A High Capacity 3D Steganography” is the

bonafide work of

BRINDHA.S (70206104013)

JENIFER UDAYAKUMARI.M (70206104028)

PARAMESWARI.P (70206104318)

who carried out the project work under my supervision.

SIGNATURE SIGNATURE

Mr. P SAMPATH Mr. J VIJAY FRANKLIN

HEAD OF THE DEPARTMENT SUPERVISIOR

Associate Professor, Senior lecturer,

Computer Science & Engineering, Computer Science & Engineering,

Bannari Amman Institute of Technology, Bannari Amman Institute of Technology,

Sathyamangalam. Sathyamangalam.

INTERNAL EXAMINER EXTERNAL EXAMINER

Page 3: A High Capacity 3d Steganography

ACKNOWLEDGEMENT

We take this opportunity to thank our beloved Chairman

Dr.S.V.BALASUBRAMANIAM, for providing necessary facilities throughout the

course. We wish to express our heartfelt regards and sincere thanks to our director

Dr.S.K.SUNDARARAMAN, whose progressive ideas added with farsighted counsels

has shouldered us to reach the meritorious heights.

We wish to express our deep sense of gratitude to Dr.A.M.NATARAJAN,

Chief Executive, for his valuable support while doing the project. Our principal

Dr.A.SHANMUGAM has always inspired us ideals and character. We are thankful to

him for being a beacon of knowledge for us.

We wish to record our heartful thanks to our Head of the Department

Mr.P.SAMPATH, Associate Professor, Department of CSE, for their able guidance

and persistence encouragement extended by them throughout the project work.

We would like extend our esteemed thanks to our project coordinator and

project guide Mr.J.VIJAYFRANKLIN, Senior lecturer, Department of CSE, for his

inspiration, motivation, continuous guidance and much needed technical support

extended for us to complete the project.

We are equally thankful to all the faculty members of our department for their

support throughout this project. Finally we express our deepest gratitude and note of

thanks to all our friends who played a vital role in helping us to complete this project.

iii

Page 4: A High Capacity 3d Steganography

ABSTRACT

In our project “A high capacity 3D steganography”, we present a very high-

capacity and low-distortion 3D steganography scheme. Earlier techniques use a single

layer embedding and extracting procedure which does not provide much data hiding

capacity. So we are using multilayered embedding and extracting procedures.

Our steganography approach is based on a novel multilayered embedding

scheme to hide secret messages in the vertices of 3D polygon models where it can hide

much higher bit rates/vertex. Experimental results show that the cover model distortion

is very small as the number of hiding layers ranges from 7 to 13 layers.

To the best of our knowledge, this novel approach can provide much higher

hiding capacity than other state-of-the-art approaches, while obeying the low distortion

and security basic requirements for steganography on 3D models. It prefers to hide

information as much as possible and requires cover media with distortion as little as

possible.

Capacity and invisibility are more important than robustness in the

3steganography system. Therefore, we aim at maximizing data hiding capacity while

limiting distortion of cover models in a lower bounded value. The data to be transmitted

are hidden in lowest layers so as to provide invisibility. Since we are using 3D images

the capacity of hiding the data also increased.

iv

TABLE OF CONTENTS

Page 5: A High Capacity 3d Steganography

CHAPTER TITLE PAGE NO

NO

ABSTRACT iv

LIST OF FIGURES viii

LIST OF ABBREVIATIONS ix

LIST OF TABLES x

1. INTRODUCTION

1.1 Objective 1

1.2 Overview of the system 3

2. LITERATURE REVIEW 5

2.1System Analysis 11

2.1.1Existing System 11

2.1.1.1 Disadvantages 13

2.1.2Proposed System 13

2.1.2.1Advantages 14

3. SYSTEM REQUIREMENTS 15

3.1 Hardware Requirements 15

3.2 Software Requirements 15

3.3 Java Swing 15

4. SYSTEM DESIGN 16

4.1 Introduction 16

v

4.2 Calculation Of Changed And Unchanged

Page 6: A High Capacity 3d Steganography

Regions 17

4.3 Optimization Of State Regions 18

4.4 Steps For Multilayered Embedding 20

4.5 Overall Multilayered Embedding

Algorithm 21

4.6 Steps For Multilayered Extraction 22

4.7 Modules Description 23

4.7.1 Handling Image Processing Concept in

Java for Loading 23

4.7.2 Implement Steganography Algorithms of

Robustness and DCT 23

4.7.3 Embedded Hidden Data into 3D Image 25

4.7.4 Inverse Steganography Algorithms of

Robustness and DCT 26

4.7.5 Extract Hidden Data from Stegano 3D Image 26

5. SYSTEM IMPLEMENTATION 27

5.1Main form for selecting option 27

5.1.1 Embedding 27

5.1.1.1Load the image 28

5.1.1.2Load the text file 28

5.1.1.3Password for authentication 28

5.1.2 Extracting 28

vi

5.1.2.1 Load the embedded image 28

Page 7: A High Capacity 3d Steganography

5.1.2.2 Password for authentication 29

5.2 Project flow diagram 29

6. RESULT AND ANALYSIS 30

6.1 SNAP SHOTS 30

6.2 COMPARISON TABLES 38

7. CONCLUSION 39

8. FUTURE ENHANCEMENT 40

9. REFERENCES 41

vii

LIST OF FIGURES

Page 8: A High Capacity 3d Steganography

FIGURE NO TITLE PAGE NO

2.2.1 System workflow 13

4.1.1 An illustration of a state region qi 16

4.2.1 Move the vertex to the neighboring

change region 18

4.3.1 Spaces of change and unchange regions 19

4.3.2 An illustration of the multilayered

embedding scheme 19

4.4.1 Output of the multilayered embedding 22

5.2.1 Project flow diagram 29

Viii

LIST OF ABBREVATIONS

Page 9: A High Capacity 3d Steganography

DFD Data Flow Diagram

DCT Discrete Cosine Transform

IDCT Inverse Discrete Cosine Transform

JPEG Join Photographic Experts Group

GUI Graphical User Interface

LSB Least Significant Bit

PCA Principal Component Analysis

ix

Page 10: A High Capacity 3d Steganography

LIST OF TABLES

TABLE NO TITLE PAGE NO

6.2.1 The Comparison between Our Approach

and the watermarking Approach 38

6.2.2 Comparison of cover model and

attacked model 38

X

Page 11: A High Capacity 3d Steganography

INTRODUCTION

Page 12: A High Capacity 3d Steganography

CHAPTER 1

INTRODUCTION

The art and science of writing hidden messages in such a way that no one, apart

from the sender and intended recipient, suspects the existence of the message, a form of

security through obscurity is Steganography. It is a technique to hide secret messages in

a host media called cover media. The advantage of steganography is that messages do

not attract attention to attackers and even receivers to ensure security of the secret

messages.

Many previous steganography approaches use the secret key to produce better

protection of the information if the stego object arouses suspicion. So, these approaches

can become more secure and can be potentially useful to some security-demanding

applications such as military intelligence.

In the past, most of the effort on steganography has been concentrated on various

media data types such as an image, an audio file, or even a video file. However, there is

relatively little steganography work on 3D models.

With the development of 3D hardware, 3D computing or visualization has

become much more efficient than ever. This leads to the widespread use of 3D models

in various applications such as digital archives, entertainment, Web3D, MPEG4, and

game industry. Therefore, 3D models are good candidates and rich resources to serve as

the innocuous looking hosts for hiding other types of digital content.

There have been many good 3D watermarking methods proposed Most of them

may be easily modified for the purpose of steganography. However, the data-hiding

capacity can be very low, since they are not originally designed for this purpose.

1

Page 13: A High Capacity 3d Steganography

The major contributions of our project are listed below:

To the best of our knowledge, our novel approach can hide much higher

bit rates/vertex (i.e., 21 to 39 bits) than other previous state-of-the-art methods in

steganography for 3D polygon models.

The vertex distortion of a covert model can be limited to an upper bound

I=2, where I is the width of a partitioning interval. The capacity and distortion of our

approach depends mainly on the number of partitioning intervals.

We optimize the number of partitioning intervals in terms of capacity and

distortion. In our project we exploit the geometric characteristics of 3D models to

provide high-capacity data hiding. Usually, there is a trade-off between capacity,

invisibility, and robustness in steganography techniques.

Capacity and invisibility are more important than robustness in the

steganography system. Therefore, we aim at maximizing data hiding capacity while

limiting distortion of cover models in a lower bounded value.

1.1 OBJECTIVE

The main objective of our project is to provide better data hiding capacity to hide

information as much as possible and requires cover media with distortion as little as

possible. Therefore, we aim at maximizing data hiding capacity while limiting

distortion of cover models in a lower bounded value.

2

3D models are good candidates and rich resources to serve as the innocuous

looking hosts for hiding other types of digital content. In this project, we exploit the

Page 14: A High Capacity 3d Steganography

geometric characteristics of 3D models to provide high-capacity data hiding. Capacity

and invisibility are more important than robustness in the steganography system.

1.2 OVERVIEW OF THE PROJECT WORK

In our project, we use a novel multilayered embedding scheme that offer up

to 3nlayers bits/vertex, where n layers ranged from 7 to 13 bits/vertex. Our approach

produces much higher hiding capacity than all of the previous works in steganography.

This scheme consists of two separate procedures: the embedding procedure and the

extraction procedure. Both procedures have two main steps: spatial analysis and

multilayered embedding/extraction.

In the embedding procedure, the spatial analysis is the first step that analyzes the

cover model for obtaining a vertex embedding order and three end vertices for the

payload embedding. The vertex traverse approach presented in and is adopted to

generate the vertex embedding order.

The basic idea is to represent a triangle as a pivot edge and two possible exit

edges. The traverse order starts with an initial triangle and the next visited triangle is

determined by the bit value in a selected password to take security into account. The

initial triangle is determined by the principal component analysis of the cover model.

Given the first principal axis obtained from the principal component analysis for

the cover model, the initial triangle is the one that intersects this axis and its position is

furthest from the cover model center of gravity. Once the initial triangle is determined,

the next visited triangle is selected depending on the next bit value in the password.

3

Page 15: A High Capacity 3d Steganography

If the next bit value is “1,” the traversal direction is the right exit edge. If the next

bit value is “0,” the traversal direction is the left exit edge. Once the vertex embedding

order is determined, the next step is to embed the payload on the vertices in that order.

In our project, a novel multilayered embedding scheme is proposed for enlarging

the hiding capacity. In the extraction procedure, the embedding order can also be

obtained using the password in the spatial analysis step. The payload can then be

correctly extracted in the reverse embedding order.

4

Page 16: A High Capacity 3d Steganography

LITERATURE REVIEW

Page 17: A High Capacity 3d Steganography

CHAPTER 2

LITERATURE REVIEW

Watermarking is a popular technique to hide messages and it is usually used for

providing ownership on copyrighted multimedia material and for detecting originators

of illegally made copies. Therefore, an effective watermarking method must be robust

against a variety of attacks.

Image watermarking is a term designating a technique that aims at embedding

and hiding secret information in an image according to an optional secret key. It is then

possible to check whether secret information has been embedded in the image or

whether some given information is actually embedded in the image, or to determine the

actual information that was embedded in the image.

By the sixteenth and seventeenth centuries, there had arisen a large literature on

steganography and many of the methods depended on novel means of encoding

information. In 1954, Emil Hembrooke of the Muzac Corporation filed a patent entitled

“Identification of sound and like signals” in which is described a method for

imperceptibly embedding an identification code into music. The system uses a notch

filter to block, with varying duration, the audio signal at 1kHz, encoded identification

information using Morse code.

Cryptography can only protect the distribution of content and that once a

customer decrypts it, all protection is lost. Watermarking can compliment cryptography,

providing protection after decryption, even after the content has entered the analog

world. The applications of watermarking are well known and can be broadly classified

as copyright control (owner identification, proof of ownership, transaction tracking and

copy control) broadcast monitoring and device control.

5

Page 18: A High Capacity 3d Steganography

Recently, much interest is being taken to protect the copyright of digital data and

prevent illegal duplication of it. This was discussed by Saad M. Saad Darwish in his

paper, ”Towards Robust and Flexible Blind Watermarking System for Copyright

Protection of 3D Models “

It presents a robust and flexible blind watermarking system suitable for proving

ownership claims for 3D models. The basic idea is to decompose the original model

into a series of details at different scales by using particular basis functions derived

from wavelet transform; the watermark is then inserted in different resolution levels by

modifying the norms of basis coefficients.

The robustness of the presented system is achieved by embedding the watermark

in a normalized and resampled version of the host mesh, which are quite insensible to

geometrical attacks. While, the flexibility is obtained by increasing embedding strength

on low frequency components, in which alterations are less visible for human eyes. It is

robust against a wide class of attacks.

In the paper ,“Watermarking 3D triangle meshes for authentication and integrity”

by François Cayre, Olivier Devillers, Francis Schmitt and Henri Maître, they discussed

about watermarking schemes for 3D meshes arise from the CAD community. It

describes a framework for fragile watermarking of 3D triangle meshes that enables

accurate assessment of its performances.

Experiments show the relevance of the method towards authentication and

integrity of heritage data purposes. Authentication may be performed using pure

cryptographic primitives. Watermarking is used to allow some non malicious

transformations of the mesh. Moreover, this technique enables visual inspection of the

mesh for integrity assessment.

6

Page 19: A High Capacity 3d Steganography

This method is based on alteration of geometrical invariants along a special

traversal of the mesh connectivity graph. It proves that traversal takes linear time for

maximizing the number of sites that can store a watermark bit. It also deduces several

watermarking properties, including the minimum watermark segment (MWS), the

security (in bits) of the embedding, the class of robustness and the probability of false

alarm. Such an accurate characterization of a watermarking scheme for 3D triangle

meshes is not trivial for other similar methods.

The paper, “Texture-Based Watermarking of 3-D Video Objects” by Emmanuel

Garcia and Jean-Luc Dugelay, describes a novel framework for watermarking three-

dimensional (3-D) video objects via their texture information. Unlike classical

algorithms dealing with 3-D objects that operate on meshes in order to protect the

object itself, the main goal is to retrieve information originally hidden in the texture

image of the object, from resulting images or videos having used the 3-D synthetic

object, thus protecting the visual representations of the object.

After developing the theory and practical details of this 3-D object watermarking

scheme, the results of several experiments are carried out in various conditions, ranging

from ideal conditions (known rendering parameters) to more realistic conditions

(unknown rendering parameters) or within the context of attacks).

In the works “Watermarking 3-D Polygonal Models Through Geometric and

Topological Modifications” by Ryutarou Ohbuchi, Hiroshi Masuda, and Masaki Aono

describes techniques for embedding data into 3-D polygonal models of geometry. Given

objects consisting of points, lines, polygons, or curved surfaces, the algorithms produce

polygonal models with data embedded into their vertex coordinates, vertex topology or

both. Such data embedding can be used, for example, for copyright notification,

copyright protection, theft deterrence, inventory of 3-D polygonal models.

7

Page 20: A High Capacity 3d Steganography

A description of the background and requirements is followed by a discussion of

where, and by what fundamental methods, data can be embedded into 3-D polygonal

models. It then presents several data-embedding algorithms, with examples, based on

these fundamental methods. By means of these algorithms and examples that show the

embedding of data into 3-D polygonal models is a practicable technique.

Y.-Q. Ni, B. Liu, and H.-B. Zhang, “A Blind Watermarking of 3D Triangular

Meshes Using Geometry Image”, The geometry image of the model is created with

parameterization and then is partitioned into several parts of equal size. The points in

the sub-images was normalized and permuted. The two-dimensional Haar wavelet is

used to decompose the sub-images and the low-frequency components of the wavelet

coefficients multiply an embedding factor and are rounded to the nearest integers.

Then the watermark is embedded with the LSB method. Other 2D image

watermark methods also can be used. The watermarked 3D object is reconstructed from

the watermarked geometry image. In the extraction procedure, the original model isn’t

required. The vertices of the watermarked model are arrayed as a square matrix which is

just the watermarked geometry image. The watermark could be extracted after the same

transformation as in the embedding procedure.

The overview of information hiding in general and steganography in particular is

described in F.A.P. Petitcolas, R.J. Anderson, and M.G. Kuhn, “Information Hiding—A

Survey,”. Various techniques have been placed in historical context in order to elucidate

the relationships between them. There have been a number of attacks on information

hiding systems, which between them demolish most of the current contenders in the

copyright marking business. A tool, StirMark, has been described which breaks many of

them by adding subperceptual distortion, and a custom attack on echo hiding.

8

Page 21: A High Capacity 3d Steganography

Also some of the problems in constructing a general theory and the practical

requirements that marking schemes and steganographic systems may have to meet. It is

impractical to demand that any one marking scheme satisfy all of these requirements

simultaneously, that is, that “the marking problem,” as sometimes described in the

literature, is overspecified. That does not, of course, mean that particular marking

problems are insoluble.

Both historical precedent and recent innovation provide us with a wide range of

tools, which if applied intelligently should be sufficient to solve most of the problems to

meet in practice. A reversible watermarking algorithm for authentication of 3D meshes

demonstrated that the proposed method is able to embed a considerable amount of

information into the mesh. This was presented by H.-T. Wu and Y.-M. Cheung, in

paper, “A Reversible Data Hiding Approach to Mesh Authentication”

The embedded watermark can be extracted using some priori knowledge so that

the watermarked mesh can be authenticated by comparing the extracted watermark with

the original one, the recovered mesh centroid with the original mesh centroid

additionally. Therefore, modifications on the watermarked mesh can be efficiently

detected.

A robust watermarking algorithm for the 3D mesh models has been proposed. A

virtual 3D scanner is devised, and a range ROC curves for simplification attack and

Gaussian noise attack image of the object is obtained. Then, the DCT based 2D

watermarking algorithm for embedding the watermark to the range image is done. Other

2D watermarks may also be used.

The watermarked 3D object is reconstructed from the modified range data with

some weight functions. In the extraction procedure, the watermarked range image is

9

Page 22: A High Capacity 3d Steganography

obtained and the watermark is extracted with a little amount of additional information.

The attack that can cause watermark detection errors is the general affine

transformations. One way of compensating for this attack is to use nonblind detection

and calculate the principal axis in the original object. Another way is to calculate the

principal axis of the solid test 3D mesh object instead of using only the object’s

vertices. The solid 3D mesh object can be constructed by sampling the object’s interior

space.

Robust Watermarking of 3D Mesh Model is attacked by the mesh simplification,

addition of Gaussian noise and similarity transforms. The simplification method is

adopted. The simplification attack reduces the number of the faces of the model by half.

In Gaussian noise attack, we add the Gaussian random vector to the coordinates

of the vertices, where the amplitude of the random vector is 0.6% of the largest diagonal

length of the bounding box. For the similarity transforms, the watermark is always

detected. The result shows that the proposed algorithm is robust to the attacks such as

mesh simplification and Gaussian noise.

“Simplifying Surfaces with Color and Texture using Quadric Error Metrics” by Michael

Gar1 and Paul S. Heckbertt proposed an algorithm that can quickly produce good

quality approximations ofcolor and texture. It is one of the fastest algorithms available

for producing quality approximations. The fundamental algorithm works well for purely

geometric surfaces. It provides more detailed analysis of the nature of quadrics, and

demonstrated that it is capable of simplifying models of reasonably high complexity.

10

Page 23: A High Capacity 3d Steganography

2.1 SYSTEM ANALYSIS

2.1.1 EXISTING SYSTEM

Security is of major concern to hide messages. Not all watermarks need to be

secure. This is especially true for applications which there are no adversary, e.g. linking

media to the Web. And even weak security has value in many business environments.

Handling geometric/temporal distortions in a blind detector remains a difficult problem.

Sensitivity analysis and gradient descent attacks appear to threaten any watermarking

system in which the detector is publicly available.

It’s robust against the attacks such as translation, scaling, rotation and local

deformation and certain amplitude of noise. It lacks in the robustness against more

types of attacks like cutting. It needs changing the indices of the vertex and simplicity

should also be handled. Robust marking aims to embed information into a file which

cannot easily be destroyed. But this results in easy attacking of file. Moreover, when

considering small triangles, machine precision errors can occur.

Capacity-achieving methods exist within this class to achieve provably better

rate-distortion-robustness performance and generalized low-bit(s) modulation methods.

But it failed to ensure security of the image. It is easy to attack by hackers. This

algorithm is not sufficiently robust to polygonal line simplification (vertex removal).

Sufficient robustness to other attacks like noise addition and anisotropic scaling was

also showcased. It is totally immune to a number of geometric distortions.

In the case of spherical objects, the image will become more sensitive to attacks

that affect the principal component. It fails against cropping due to the fact that such an

attack can cause severe alteration to both the principal object axis and mass center.

11

Page 24: A High Capacity 3d Steganography

The cropping attack can be successfully handled if the center of the mass and the

principal object axis of the original 3D mesh object are available during watermark

detection. Another attack that can cause watermark detection errors is the general affine

transformations. Such an attack can cause alterations to the principal object axis and the

mass center and, additionally, disturb the entire object geometry.

If the mesh simplification is applied in a nonuniform manner, it may also affect

the calculation of the principal axis. That is, if different regions of the mesh are

simplified on purpose at different rates, it is quite likely that then principal axis will

change significantly and cause loss of synchronization.

The original mesh model can be recovered by performing the reverse process of

the watermark embedding if the watermarked mesh is intact. Future efforts are needed

to realize the on-line applications of mesh authentication.

A polygonal surface model was limited to surfaces without surface properties

such as color and texture. A new generalized error metric, which substantially expands

the set of models which can be simplified using this but it is not capable of rapidly

producing quality approximations that preserve both surface shape and associated

surface properties.

It needs further improvements that could be made. A more complete system

would also include support for multiple attribute values per vertex. This would, for

instance, help solve the problems posed by texture seams and by surface normal

discontinuities. This also believes that the memory usage of our implementation could

be reduced.

12

Page 25: A High Capacity 3d Steganography

2.1.1.1 DISADVANTAGES

It is used for the normal digital image which results in distortion

Data is not equally distributed throughout the image

Stealing a data is highly impossible in this existing steganographic technique

It results in the storage of limited data while embedding with the image

It is not Secured by password for protection

2.1.2 PROPOSED SYSTEM

Our proposed system uses multilayered embedding/extraction scheme. Fig.

2.2.1 schematically illustrates the proposed information hiding scheme is referred from

"A High Capacity 3D steganography Algorithm”. This scheme consists of two separate

procedures: the embedding procedure and the extraction procedure.

Fig. 2.2.1 System workflow

13

Page 26: A High Capacity 3d Steganography

Both procedures have two main steps: spatial analysis and multilayered

embedding/extraction. We briefly describe the embedding procedure. In the spatial

analysis step, we analyze the cover model for obtaining a vertex embedding order and

three end vertices for the payload embedding.

The basic idea is to represent a triangle as a pivot edge and two possible exit

edges. The traverse order starts with an initial triangle and the next visited triangle is

determined by the bit value in a selected secret key to take security into account. The

initial triangle is determined by the principal component analysis (PCA) of the cover

model.

Given the first principal axis obtained from the PCA for the cover model, the

initial triangle is the one that intersects this axis and its position is furthest from the

cover model center of gravity. Once the initial triangle is determined, the next visited

triangle is selected depending on the next bit value in the secret key. If the next bit

value is “1,” the traversal direction is the right exit edge. If the next bit value is “0,” the

traversal direction is the left exit edge.

Once the vertex embedding order is determined, the next step is to embed the

payload on the vertices in that order. In the extraction procedure, the embedding order

can also be obtained using the secret key in the spatial analysis step. The payload can

then be correctly extracted in the reverse embedding order.

2.1.2.1 ADVANTAGES

3D digital image is used for hiding the information in it.

The data in the image is Equally Distributed.

Stealing a data is highly possible and it provides security by password.

In this approach we can store large data

14

Page 27: A High Capacity 3d Steganography

SYSTEM REQUIREMENTS

Page 28: A High Capacity 3d Steganography

CHAPTER 3

SYSTEM REQUIREMENTS

3.1 HARDWARE SPECIFICATION:

Processor : Dual Core

Hard Disk : 10 GB

RAM : 256MB

Monitor : 15” Color Monitor

Keyboard : 104 Keys Standard Keyboard

Mouse : Standard 3 Button Mouse

3.2 SOFTWARE SPECIFICATION:

Operating System : Windows 9X/NT/XP

Language Used : Java(swing)

3.3 JAVA SWING:

Steganography is good with Java because Java is a highly secured language. 

If we use steganography with Java, it will enforce multiple levels of security of data.

A Java GUI application uses the standard Java components GUI component set,

Swing, and is deployed to the desktop. As with other Java applications, Java GUI

applications can be deployed to Microsoft Windows, Linux, Mac OS, Open Solaris

and any other system that contains the Java Runtime Environment.

15

Page 29: A High Capacity 3d Steganography

SYSTEM DESIGN

Page 30: A High Capacity 3d Steganography

CHAPTER 4

SYSTEM DESIGN

4.1 Introduction

In our project we first, take the three vertices of a cover model denoted as V a, Vb,

and Vc. These three end vertices are determined using the PCA of the cover model.

Given the first and second principal axes, we orthogonally project all vertices onto these

two axes. The vertices that fall on the two extreme ends of the first principal axis are

selected as the end vertices Va and Vb. The vertex that fall on the furthest extreme end

of the second principal axis is selected as the third end vertex Vc.

If an end vertex has multiple candidates, we simply select the nearest candidate

as the end vertex and slightly shift the other candidates in order to uniquely define an

end vertex. The next step is to transform the cover model to align the vectors

and with the x-axis and y-axis

Fig. 4.1.1 An illustration of a state region qi and its change and unchange

regions.

respectively, and to coincide vertex Va with the origin of the Cartesian coordinate

system. Next, we uniformly divide the line segment into two-state region subsets

in an interleaved manner (e.g., 010101. . . ), denoted as R0 and R1 in Fig. 4.1.1

16

Page 31: A High Capacity 3d Steganography

The suffix of R0 and R1 represents the binary feature states “0” and “1,”

respectively. The region in which a vertex vi falls into can be simply calculated using

where di represents the projected distance between vertex vi and the end vertex Va on

the x-axis, that is, di=Vi.X – Va.X (where Vi.X and Va.X represent the X component of

Vi and Va, respectively).

I represents the interval width of a state region, that is, I = D/n intervals, where nintervals

is the number of state regions and D is the distance of Va Vb. Qi then represents the state

region where a vertex vi falls into and ri represents the vertex position in the state region

qi, as shown in Fig. 4.1.1 “%” is the remainder operator.

4.2 Calculation of changed and unchanged regions

If qi R0, it implies that the bit value hidden in a vertex vi is “0.” Similarly, if qi

R1, it implies that the bit value hidden in this vertex is “1.” A vertex falls in the region

qi R0, but the hidden bit value may be “1.” To solve this problem, we further divide

each state region qi into two subregions, called the change region and the unchange

region, as shown in Fig. 4.1. 1

The purpose of the state region subdivision is to find an empty region, i.e., the

change region, over all state regions in order to proportionally move the mismatched

vertices (qi Rk but the hidden bit value is not equal to k, where k = 0 or 1) to the empty

region.These two subregions can be determined using a variable n that is the minimum

distance between all variables ri and its nearest state region boundary, that is, n = min i

(min(ri, I – ri )), for all vertices vi.

17

Page 32: A High Capacity 3d Steganography

We consider the following two cases:

Case 1. qi Rk and bit(i) = k, k = 0 or 1: No modification.

Case 2. qi Rk and bit(i) ≠ k, k = 0 or 1: Shift vertex vi to the neighbouring change

region in qi, i.e., if di%I ≤ I/2,

Fig. 4.2.1 Move the vertex to the neighboring change region

move vi to the change region [0,n] otherwise, move vi to the change region [I –n,I] as

shown in Fig. 4.2.1. In the cases above, bit(i) represents the bit value of payload hidden

in a vertex vi. In Case 2, the new position is calculated by adding a small offset δ i to di

(as shown in Fig. 4.2.1), that is,

Where δi = min(ri, I – ri)(1 - 2n/I).

4.3 optimization of state regions

To solve the problem of change region, that might be too small to precisely hide a

payload, two approaches are proposed as follows. The first is to optimize the number of

state regions nintervals . The goal of this optimization is to enlarge the change regions while

reducing the distortion. Another is to enlarge the change regions by simply shrinking

the unchange region to the range [I/4, 3I/4] and setting the change regions to be the

regions [0,I/4] and [3I/4, I], as shown in Fig. 4.3.1

18

Page 33: A High Capacity 3d Steganography

In this manner, the small offset δi in (2) must be redefined as

Therefore, in Fig. 4.3.1, when embedding 1 bit bit(i) to the vertex v i, the new position

d’i of this vertex can be calculated using

Where

In general, the offset |d-d’| must be small enough to avoid visual degradation of the

cover model but large enough to allow accurate payload detection.

Fig. 4.3.1 The spaces of change and unchange regions.

Fig. 4.3.2 An illustration of the multilayered embedding scheme.

19

Page 34: A High Capacity 3d Steganography

The single-layered embedding scheme is extended to the multilayered version by

directly adding more layers, i.e two-state region subsets are arranged in an interleaved

manner for each layer in our multilayered embedding scheme. However, we make a

slight modification: the state regions in the even layers are shifted to the right by I/2, as

shown in Fig. 4.3.2

Using this arrangement, the moving direction of a vertex is bidirectional. Vertices

are swung forward and backward in the half interval of a state region when

embedding payloads on them. In this manner, we can potentially hide more data on

each vertex in multilayers and do not enlarge the cover model distortion. The lower

bounded distortion is limited to I/2. In the multilayered embedding scheme, the variable

ri for vertex vi in (1) must be rewritten as

4.4 Steps for multilayered embedding

The overall multilayered embedding algorithm is processed as follows:

1. Calculate the variable di for each vertex vi.

2. Calculate the variable ri for vi using (5).

3. Embed a payload into vi by slightly shifting its position, i.e., variable di→d’i,

using (4) (i.e., so vi is shifted to a new position).

4. Repeat steps 2 and 3 for the next layer embedding until all payloads are

embedded entirely on vertices.

20

Page 35: A High Capacity 3d Steganography

4.5 Overall multilayered embedding algorithm

In this manner, we can embed data on x-, y-, z-components of a vertex

coordinate, respectively. In each layer, every vertex can hide 3 bits of information,

except for the end vertices Va, Vb, and Vc. As a result, the theoretical upper bounded

capacity of our hiding scheme is 3(|v|-3) nlayers, where nlayers represents the number of

embedding layers and |V | represents the number of vertices.

Therefore, the maximal distortion is limited to I/2. The hiding layers number up

to 10. The end vertices and initial triangle obtained from cover and stego models,

respectively, might not be identical if the distortion of the stego model is too large.

Fortunately, this case had been very rare since the offset of vertex position is extremely

small.

In the multilayered extraction processes, the payloads are extracted in a reverse

embedding order, i.e., from the last layer to the first layer, that is, extracting the bit

values in reverse vertex embedding order. First, the variables d i, qi, and ri for each

vertex vi can be calculated using (1) and (5). We then detect in which region (change or

unchanged region) the vertex lies using the following decision equation:

The bit value bit(i) embedded on the vertex vi can be extracted by checking its state

region:

To recover the vertex position in the previous layer, we subtract the small offset back from the variable di and then expand the state region from [I/4,3I/4] to [0, I], as

21

Page 36: A High Capacity 3d Steganography

shown in Fig. 4.4.1. The vertex position in the previous layer can then be

calculated using the following equation, i.e., proportionally moving back to the

previous layer. On the right side, we take a close look at the shaded interval of a state

region.

Fig 4.4.1. Output of the multilayered embedding scheme

where ri =min(ri, I -ri) and sgn is a sign function as defined in (4).

4.6 Steps for multilayered extraction

The overall multilayered extraction algorithm is processed as follows:

1. Calculate the variable di for each vertex vi.

2. Calculate the variable ri for each vertex using (5).

3. Extract a bit value from vi using (7).

4. Recover the vertex position on the previous layer using (8).

5. Repeat steps 1-4 for the previous layer extraction until all payloads are

completely extracted.

22

Page 37: A High Capacity 3d Steganography

We designed our entire project into five modules as follows

Handling Image Processing Concept in java for loading

Implement Steganography Algorithms of Robustness and DCT

Embedded hidden data into 3D image

Inverse Steganography Algorithms of Robustness and DCT

Extract hidden data from Stegano 3D image

4.7 MODULES DESCRIPTION

4.7.1 HANDLING IMAGE PROCESSING CONCEPT IN JAVA FOR

LOADING

In the process, they also learn how to program standard image-processing

algorithms in Java. This is made possible thanks to a programmer-friendly environment

and a software interface that greatly facilitates the developments of plug-in for Image.

4.7.2 IMPLEMENT STEGANOGRAPHY ALGORITHMS OF ROBUSTNESS

AND DCT

Data-hiding in the DC components is based on the knowledge of the influence of

the DC component over the spatial domain: it is directly related to the mean of the

intensity of the pixels. A secret bit is embedded in each DC component by substitution

of the less significant bit (LSB).

23

Page 38: A High Capacity 3d Steganography

This method presents two advantages: its simplicity and its robustness. The mean

intensity of a block is a global indicator and resists well pixel modifications. On the

opposite, this data-hiding method has a low capacity since only one bit is embedded in

each 8x8 blocks; the secret information cannot exceed 0.19% of the original image size.

The Jpeg method, 7 extends the idea of the previous one to all components of

absolute value greater than 1. One secret bit is embedded in each coefficient with

respect to this requirement. The restriction over the coefficients aims at preserving the

null coefficients and, thus, a good compression rate.

We can considerate that this method is content-based. Indeed, a homogeneous

block contains few non-null coefficients and will embed few secret bits whereas

heterogeneous one contains more non-null coefficients and will embed more

information.

This data-hiding agrees with an obvious Human Vision System (HVS) principle:

modifications are less visible in heterogeneous regions than in homogeneous ones.

Capacity, robustness and invisibility of data-hiding methods are very related and

opposed. So, the improvement of the capacity has negative incidence at least on the

robustness.

The secret information is more sensible to local modifications. Nevertheless the

real negative point is the unknown capacity. It can vary between 0% and 12, 5% of the

original image size. As it is designed to be applied on real image, the capacity remains

often better than for the previous method.

24

Page 39: A High Capacity 3d Steganography

The following methods attempt to ensure a higher minimum capacity. A data-

hiding by modification of the quantization matrix has been proposed by.8 Depending on

the quality factor selected for the JPEG compression, a quantized DCT coefficient

variation can lead to important changes in the image.

This data-hiding method proposes to choose coefficients which will not be

quantized and could embed secret bit without degrading the image too much. The

capacity is known in advance and depends on the selected number of non quantized

coefficients.

The original method proposes to select 26 coefficients corresponding to average

frequencies over the 64 of a block and to embed two secret bits in each by substitution

of the two LSBs.

So the fixed capacity is 10.16% of the original image size. The quantized matrix

is present in the JPEG file in order to rebuild the information. Consequently, it is easy

to detect the presence of hidden data. So, the invisibility provided by this method is not

very satisfactory.

4.7.3 EMBEDDED HIDDEN DATA INTO 3D IMAGE

We propose to use data-hiding method in the DC components of a 3D image.

We embed the information of the luminance component of the color image. The method

consists of dividing this component into square (of 8×8 pixels) blocks and applying the

DCT to each block.

Each altitude is coded on 2 bytes, and then we need 16 blocks to embed the information of an altitude of the DEM. So we have chosen to use 4×4 blocks of pixels

25

Page 40: A High Capacity 3d Steganography

to embed an altitude. Consequently each block of 32×32 pixels of the original

image will be synchronized with an altitude coded on 2 bytes. Then if we crop the

image with a multiple of 32 pixels we are still able to extract the embedded message.

With this proposed method the texture is in color and we can compress the 3D

image with a chosen quality factor. The embedded message is extracted before the

inverse quantization of JPEG.

4.7.4 INVERSE STEGANOGRAPHY ALGORITHMS OF ROBUSTNESS AND

DCT

Similar to the embedding process for inverse Steganography Algorithms of

Robustness and DCT, the image is partitioned into 8x8 blocks. The basic extraction

method uses the coefficient relationships from the represent embedded bits. The

coefficient sequences determined by hashing a user-entered pass phrase. Each triplet

of DCT coefficients (Va, Vb, Vc) is determined by this coefficient sequence.

4.7.5 EXTRACT HIDDEN DATA FROM STEGANO 3D IMAGE

For each block in the embedding sequence and bit in the embed message, data is

extracted from these coefficients. The message is first reconstructed by extracting

binary strings of length 10 from the fixed locations in the embedding sequence to

determine the length n of the embedded message.

Each of the strings will be assigned a score, and passed to a heuristic function.

The heuristic function assigns weights to each bit of the string based upon the score

function and uses this to reconstruct the embedded string.

Page 41: A High Capacity 3d Steganography

26

SYSTEM IMPLEMNTATION

Page 42: A High Capacity 3d Steganography

CHAPTER 5

SYSTEM IMPLEMENTATION

The implementation part of the system is divided into six categories as follows.

Main form for selecting option

Embedding

o Load the image

o Load the text file

o Password for authentication

Extracting

o Load the embedded image

o Password for authentication

5.1 MAIN FORM

The host shows the main form that contains two options for processing the image

either embedding the text in the image called as embedding and the other is extracting

the text from the image called as extracting.

5.1.1 EMBEDDING

Embedding option loads the image and does the process of hiding the secret

information in the image and produces a stego image. The image is loaded and the text

file is made hidden in the image by the following steps.

27

Page 43: A High Capacity 3d Steganography

5.1.1.1 LOAD THE IMAGE

The image is loaded from the particular location in the system. The image is

adjusted to fit in the particular area in the form so that the image is processed. The

secret message is hidden based on the vertices of the image.

5.1.1.2 LOAD THE TEXT FILE

The text file path is given in order to embed the text file into the image. The text file

is the secret message that is hidden into the image. The target is given to store the stego

image.

5.1.1.3 PASSWORD FOR AUTHENTICATION

The password is given as characters or numbers to ensure security of the stego

image. Only the legitimate user will be able to log in to the system to extract the text

file from the stego image. Hackers will not be able to log in to the system. If the

password is given wrong the original message will not be extracted. Only the correct

password processes the image and produces the output file.

5.1.2 EXTRACTING

Extracting option loads the stego image and does the process of extracting the

information from the image. The stego image is loaded from the particular location and

the hidden text file is extracted from the image by the following steps.

5.1.2.1 LOAD THE EMBEDDED IMAGE

The stego image is loaded from the particular location in the system. It is loaded for

extracting the original message hidden in the stego image.

28

Page 44: A High Capacity 3d Steganography

5.1.2.2 PASSWORD FOR AUTHENTICATION

When the extract button is pressed the password is asked for ensuring the

authenticated users. If wrong password is given the text file is not extracted. The

extracted file is stored as text file.

5.2PROJECT FLOW DIAGRAM

5.2.1 project flow diagram

29

Load 3D Image

Secret Message

Password

Embedded Procedure

Extraction Procedure

3D Stegano Image

Resolution 3D Image

Result Message

Page 45: A High Capacity 3d Steganography

Result and ANALYSIS

Page 46: A High Capacity 3d Steganography

CHAPTER 6

RESULT AND ANALYSIS

6.1 SNAP SHOTS

MAIN FORM

This is the main form for selecting the option for either embedding or extraction.

30

EMBEDDING

Page 47: A High Capacity 3d Steganography

LOAD THE IMAGE

The form shows the image that has to be loaded from the particular location for embedding using the option “add image”.

31

LOAD THE TEXT FILE

Page 48: A High Capacity 3d Steganography

ORIGINAL TEXT FILE

The figure shows the original text file that has to be embedded in the selected image.

32

PASSWORD FOR AUTHENTICATION

Page 49: A High Capacity 3d Steganography

The password is given for authenticated users to embed the text into the image.

33

EMBEDDED IMAGE

Page 50: A High Capacity 3d Steganography

This figure shows the encrypted image in the right side. It shows both the original image and embedded image resembles the same so that the text that is embedded in the image is not visible to anyone.

34

EXTRACTION

Page 51: A High Capacity 3d Steganography

This is the main form for selecting the option for either embedding or extraction.

35

LOAD THE EMBEDDED IMAGE

Page 52: A High Capacity 3d Steganography

The embedded image is loaded to extract the original text file from it.

36

Page 53: A High Capacity 3d Steganography

PASSWORD FOR AUTHENTICATION

OUTPUT TEXT FILE

Thus the original text file is extracted from the embedded image.

37

Page 54: A High Capacity 3d Steganography

6.2 COMPARISON TABLES

Table 6.2.1 The Comparison between Our Approach and the watermarking Approach

Here, |V| represents the number of vertices; m represents the size of watermark, and |V|

» m; symbols “χ,” “√,” and “∆” indicate that this approach cannot withstand, can

withstand, or can weakly withstand attacks, respectively.

Table 6.2.2 comparison of cover model and attacked model

The second and third columns convey the number of vertices in the Cover Model (C.

M.) and Attacked Model (A. M.), respectively; the fourth column indicates the size of

the embedded data; the fifth column relays the extracted data size.

38

Page 55: A High Capacity 3d Steganography

CONCLUSION

Page 56: A High Capacity 3d Steganography

CHAPTER 7

CONCLUSION

In our project we have introduced a novel multilayered information hiding

scheme for 3D polygon models. The capacity and distortion of the proposed approach

depends mainly on the number of partitioning intervals. We optimized the number of

partitioning intervals to obtain a good balance between distortion and capacity.

To further increase capacity, we proposed a multilayered embedding scheme that

can embed data on many layers. . It shows that the number of layers ranges from 7 to 13

resulting in high data hiding capacity. The proposed approach offers a significant

improvement in capacity compared to the previous 3D steganography methods, while

the distortion is extreme small.

Finally, we discuss our approach on the issue of security as follows: In all

experiments, the distortion of the cover models suffered from our approach is very

small. The visual difference between the stego and the cover models is imperceptible.

Therefore, it is difficult to sense/determine whether the stego model contains any

hidden messages.

Furthermore, combining the password with our approach makes it harder to

extract the hidden information. Therefore, we can produce better protection of the

information if the stego object arouses suspicion.

39

Page 57: A High Capacity 3d Steganography

FUTURE ENHANCEMENT

Page 58: A High Capacity 3d Steganography

CHAPTER 8

FUTURE ENHANCEMENT

Currently, the proposed approach has the following limitations that will be solved

in the near future. Perfectly smooth (i.e., sphere) or extremely small-size models are not

suitable for selection as cover models because the hidden data might be easily observed

after even a very small modification by any embedding method. A better approach for

determining vertex traverse list is required in the near future.

Another limitation is that proposed approach cannot withstand certain malicious

attacks such as smoothing, additional noise, non uniform scaling, simplification, and

vertices resampling. As a result, the proposed approach is not suitable for the

applications of digital content protection and authentication.

40

Page 59: A High Capacity 3d Steganography

REFERENCES

Page 60: A High Capacity 3d Steganography

CHAPTER 9

REFERENCES

[1] S. Katzenbeisser and F.A.P. Petitcolas, eds., Information Hiding Techniques for

Steganography and Digital Watermarking, Artech House, 2000

[2] I.J. Cox, M.L. Miller, and J.A. Bloom, Digital Watermarking. Morgan Kaufmann,

2002

[3] S. Zafeiriou, T. Anastasios, and I. Pitas, “Blind Robust Watermarking Schemes for

Copyright Protection of 3D Mesh Objects,” IEEE Trans. Visualization and Computer

Graphics, vol. 11, no. 5, Sept./Oct. 2005

[4] V.R. Doncel, N. Nikolaidis, and I. Pitas, “An Optimal Detector Structure for the

Fourier Descriptors Domain Watermarking of 2D Vector Graphics,” IEEE Trans.

Visualization and Computer Graphics, vol. 13, no. 5, Sept./Oct. 2007

[5] H.-T. Wu and Y.-M. Cheung, “A Reversible Data Hiding Approach to Mesh

Authentication,” Proc. IEEE/WIC/ACM Int’l Conf. Web Intelligence (WI ’05), pp. 774-

777, Sept. 2005

[6] O. Benedens, “Robust Watermarking and Affine Registration of 3D Meshes,” Proc.

Fifth Int’l Workshop Information Hiding (Information Hiding ’03), pp. 177-195, 2003

41

Page 61: A High Capacity 3d Steganography

[7] F.A.P. Petitcolas, R.J. Anderson, and M.G. Kuhn, “Information Hiding—A

Survey,” Proc. IEEE, special issue on protection of multimedia content, vol. 87, no. 7,

pp. 1062-1078, 1999

[8] Y.-Q. Ni, B. Liu, and H.-B. Zhang, “A Blind Watermarking of 3D Triangular

Meshes Using Geometry Image,” Proc. Fourth Int’l Conf. Computer Graphics, Imaging

and Visualization (CGIV ’07), pp. 335-340, 2007.

[9] C.-M. Wang and Y.-M. Cheng, “An Efficient Information Hiding Algorithm for

Polygon Models,” Proc. Eurographics ’05, vol. 24, no. 3, pp. 591-600, 2005

[10] B. Chen and G.W. Wornell, “Quantization Index Modulation: A Class of Provably

Good Methods for Digital Watermarking and Information Embedding,” IEEE Trans.

Information Theory, vol. 47, no. 4, pp. 1423-1443, May 2001.

[11] F. Perez-Gonzalez and F. Balado, “Quantized Projection Data Hiding,” Proc. IEEE

Int’l Conf. Image Processing (ICIP ’02), vol. 2, pp. 889-892, Sept. 2002.

[12] M. Garland and P.S. Heckbert, “Surface Simplification Using Quadric Error

Metrics,” Proc. ACM SIGGRAPH ’97, pp. 209-216, 1997.

[13] The Wiki www Site, http://en.wikipedia.org/wiki/Steganography, 2008.

[14] L. Marvel, C. Boncelet, and J. Retter, “Spread Spectrum Image Steganography,”

IEEE Trans. Image Processing, pp. 1075-1083, Aug. 1999.

42

Page 62: A High Capacity 3d Steganography

[15] R. Ohbuchi, S. Takahashi, T. Miyasawa, and A. Mukaiyama, “Watermarking 3-D

Polygonal Meshes in the Mesh Spectral Domain,” Proc. Computer Graphics Interface,

pp. 9-17, June 2001.

[16] H. Song, N. Cho, and J. Kim, “Robust Watermarking of 3D Mesh Models,” Proc.

IEEE Int’l Workshop Multimedia Signal Processing (MMSP ’02), pp. 332-335, Dec.

2002.

[17] A. Kalivas, A. Tefas, and I. Pitas, “Watermarking of 3D Models Using Principal

Component Analysis,” Proc. IEEE Int’l Conf. Acoustics, Speech, and Signal Processing

(ICASSP ’03), vol. 5, pp. 676-679, Apr. 2003.

[19] F. Cayre and B. Macq, “Data Hiding on 3-D Triangle Meshes,” IEEE Trans.

Signal Processing, vol. 51, no. 4, pp. 939-949, 2003.

[20] H. Date, S. Kanai, and T. Kishinami, “Digital Watermarking for 3D Polygons

Model Using Multiresolutional Wavelet Decomposition,” Proc. Sixth IFIP WG 5.2 Int’l

Workshop Geometric Modeling: Fundamentals and Applications (GEO-6 ’98), pp. 296-

307, Dec. 1998.

43