Вы находитесь на странице: 1из 62

A HIGH CAPACITY 3D STEGANOGRAPHY

A PROJECT REPORT

Submitted by

BRINDHA.S JENIFER UDAYAKUMARI.M PARAMESWARI.P

(70206104013) (70206104028) (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

ANNA UNIVERSITY :: CHENNAI 600 025


BONAFIDE CERTIFICATE

Certified that this project report A High Capacity 3D Steganography is the bonafide work of

BRINDHA.S JENIFER UDAYAKUMARI.M PARAMESWARI.P

(70206104013) (70206104028) (70206104318)

who carried out the project work under my supervision.

SIGNATURE Mr. P SAMPATH HEAD OF THE DEPARTMENT

SIGNATURE Mr. J VIJAY FRANKLIN SUPERVISIOR

Associate Professor, Computer Science & Engineering, Bannari Amman Institute of Technology, Sathyamangalam.

Senior lecturer, Computer Science & Engineering, Bannari Amman Institute of Technology, Sathyamangalam.

INTERNAL EXAMINER

EXTERNAL EXAMINER

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

ABSTRACT

In our project A high capacity 3D steganography, we present a very highcapacity 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

CHAPTER NO

TITLE

PAGE NO

ABSTRACT LIST OF FIGURES LIST OF ABBREVIATIONS LIST OF TABLES

iv viii ix x

1.

INTRODUCTION 1.1 Objective

1
3

1.2 Overview of the system 2.


LITERATURE REVIEW
2.1 System

5 11 11 13 13 14
15 15 15 15 16

Analysis System System

2.1.1 Existing

2.1.1.1 Disadvantages
2.1.2 Proposed

2.1.2.1Advantages
3. SYSTEM REQUIREMENTS 3.1 Hardware Requirements 3.2 Software Requirements 3.3 Java Swing 4. SYSTEM DESIGN

4.1 Introduction v 4.2 Calculation Of Changed And Unchanged

16

Regions 4.3 Optimization Of State Regions 4.4 Steps For Multilayered Embedding 4.5 Overall Multilayered Embedding Algorithm
4.6 4.7

17 18 20 21 22 23

Steps For Multilayered Extraction Modules Description 4.7.1 Handling Image Processing Concept in Java for Loading 4.7.2 Implement Steganography Algorithms of Robustness and DCT 4.7.3 Embedded Hidden Data into 3D Image 4.7.4 Inverse Steganography Algorithms of Robustness and DCT
4.7.5

23 23 25 26 26
27

Extract Hidden Data from Stegano 3D Image

5.

SYSTEM IMPLEMENTATION

5.1Main form for selecting option


5.1.1 Embedding

27 27 28 28 28 28

5.1.1.1Load the image 5.1.1.2Load the text file 5.1.1.3Password for authentication 5.1.2 Extracting

vi 5.1.2.1 Load the embedded image 28

5.1.2.2 Password for authentication 5.2 Project flow diagram 6.


RESULT AND ANALYSIS 6.1 SNAP SHOTS 6.2 COMPARISON TABLES

29 29 30
30 38

7. 8. 9.

CONCLUSION

39 40 41

FUTURE ENHANCEMENT REFERENCES

vii

LIST OF FIGURES

FIGURE NO

TITLE

PAGE NO

2.2.1 4.1.1 4.2.1

System workflow An illustration of a state region qi Move the vertex to the neighboring change region

13 16 18 19

4.3.1 4.3.2

Spaces of change and unchange regions An illustration of the multilayered embedding scheme

19 22 29

4.4.1 5.2.1

Output of the multilayered embedding Project flow diagram

Viii LIST OF ABBREVATIONS

DFD DCT IDCT JPEG GUI LSB PCA

Data Flow Diagram Discrete Cosine Transform Inverse Discrete Cosine Transform Join Photographic Experts Group Graphical User Interface Least Significant Bit Principal Component Analysis

ix

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

INTRODUCTION

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

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

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

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.

LITERATURE REVIEW

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

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 Franois Cayre, Olivier Devillers, Francis Schmitt and Henri Matre, they discussed about watermarking schemes for 3D meshes arise from the CAD 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 community. It describes a framework for fragile watermarking of 3D triangle meshes that enables

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 threedimensional (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

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 isnt 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 HidingA 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.

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

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 objects vertices. The solid 3D mesh object can be constructed by sampling the objects 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

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. Its 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

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

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 is not Secured by password for protection

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

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

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

SYSTEM REQUIREMENTS

CHAPTER 3 SYSTEM REQUIREMENTS 3.1 HARDWARE SPECIFICATION: Processor Hard Disk RAM Monitor Keyboard Mouse : : : : : : Dual Core 10 GB 256MB 15 Color Monitor 104 Keys Standard Keyboard Standard 3 Button Mouse

3.2 SOFTWARE SPECIFICATION: Operating System Language Used : : Windows 9X/NT/XP 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

SYSTEM DESIGN

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 16 into two-state region subsets in an interleaved manner (e.g., 010101. . . ), denoted as R0 and R1 in Fig. 4.1.1

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/nintervals, 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 = mini (min(ri, I ri )), for all vertices vi. 17

We consider the following two cases: Case 1. qi Case 2. qi Rk and bit(i) = k, k = 0 or 1: No modification. 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

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 vi, the new position di 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

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 didi, 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

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 di, 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

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

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 Inverse Steganography Algorithms of Robustness and DCT

Embedded hidden data into 3D image

Extract hidden data from Stegano 3D image

4.7

MODULES DESCRIPTION HANDLING IMAGE PROCESSING CONCEPT IN JAVA FOR LOADING In the process, they also learn how to program standard image-processing

4.7.1

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. 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

4.7.2

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

The following methods attempt to ensure a higher minimum capacity. A datahiding 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 88 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 44 blocks of pixels 25

to embed an altitude. Consequently each block of 3232 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. 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.

4.7.4

26

SYSTEM IMPLEMNTATION

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

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

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

Load 3D Image

Secret Message

Password

Embedded Procedure

3D Stegano Image

Extraction Procedure

Resoluti on 3D Image

Result Message

5.2.1 project flow diagram 29

Result and ANALYSIS

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

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

ORIGINAL TEXT FILE

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

32 PASSWORD FOR AUTHENTICATION

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

33 EMBEDDED IMAGE

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

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

35

LOAD THE EMBEDDED IMAGE

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

36

PASSWORD FOR AUTHENTICATION

OUTPUT TEXT FILE

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

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

CONCLUSION

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

FUTURE ENHANCEMENT

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

REFERENCES

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 Intl Conf. Web Intelligence (WI 05), pp. 774777, Sept. 2005 [6] O. Benedens, Robust Watermarking and Affine Registration of 3D Meshes, Proc. Fifth Intl Workshop Information Hiding (Information Hiding 03), pp. 177-195, 2003

41

[7] F.A.P. Petitcolas, R.J. Anderson, and M.G. Kuhn, Information HidingA 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 Intl 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 Intl 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

[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 Intl 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 Intl 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 Intl Workshop Geometric Modeling: Fundamentals and Applications (GEO-6 98), pp. 296307, Dec. 1998.

43

Вам также может понравиться