WO2012000898A1 - Method and device for 3d object protection by permutation of its points - Google Patents

Method and device for 3d object protection by permutation of its points Download PDF

Info

Publication number
WO2012000898A1
WO2012000898A1 PCT/EP2011/060608 EP2011060608W WO2012000898A1 WO 2012000898 A1 WO2012000898 A1 WO 2012000898A1 EP 2011060608 W EP2011060608 W EP 2011060608W WO 2012000898 A1 WO2012000898 A1 WO 2012000898A1
Authority
WO
WIPO (PCT)
Prior art keywords
points
graphical object
coordinate values
protected
permutation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/EP2011/060608
Other languages
French (fr)
Inventor
Sylvain Lelievre
Marc Eluard
Yves Maetz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of WO2012000898A1 publication Critical patent/WO2012000898A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C5/00Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]

Definitions

  • the present invention relates generally to 3-D models and in particular to the protection of graphical objects of such models.
  • 3D objects represent real money value.
  • players are selling virtual objects or avatars to other players for real money.
  • Building an experienced character within an online game is a very lengthy process that can require hundreds of hours behind the keyboard.
  • the 3D model of a real-world object from a simulation tool allows manufacturing the real (counterfeit) object and selling it. Leaking the 3D model for a scene of the next blockbuster from Hollywood studios may result in bad press for the studios.
  • 3D objects are assets of great value for their owner.
  • Strategies for content protection comprise confidentiality protection - intended to make it impossible for unauthorized users to access the content, e.g. by encryption - and watermarking - intended to make it possible to track a user who has disseminated the content without authorization to do so.
  • Basic methods of 3D content protection focus on the entire data, i.e. all the data is either encrypted or watermarked (or both), although these methods are somewhat crude.
  • 3D content More subtle ways of protecting 3D content is to protect one or more of its 3D objects. This is possible as 3D content often is made up of a number of distinct objects positioned in a setting. When each 3D object is coded as a separate entity, it becomes possible to protect each of these separately and it is not necessary to protect all of them.
  • US 2008/0022408 describes a method of 3D object protection by storing non-encrypted data in one file and encrypted data in a separate file. Any user may access the non-encrypted data, but only authorized users can access the encrypted data; non-authorized users see a basic representation thereof, such as a parallelepiped instead of a car.
  • this method was developed to be used with 3D rendering software and is less suited for multimedia content, such as video and film.
  • US 6678378 describes a solution for protecting a 3D Computer Aided Design (CAD) object by encryption.
  • the solution may encrypt one of the coordinate values of the nodes and the equations for the edges or the contours, by nonlinear or affine transformation, thereby distorting the 3D object or by 'normal' encryption such as RSA.
  • the calculations may be costly (in particular when using RSA) and that the distortions may not be sufficient to deter a malicious user from using the content nevertheless.
  • the 3D object may not be readable at all by a content consuming device - such as a computer or a television - which may be a drawback in some cases.
  • Li S et al. generally discuss permutation ciphers in "A General Quantitative Cryptanalysis of Permutation-Only Multimedia Ciphers against Plaintext Attacks", Signal Processing. Image Communication. Elsevier Publishers, Amsterdam, NL LNKD- DOI:10.1016/J.IMAGE.2008.01 .003, vol. 23, no. 3, 1 March 2008, pages 212- 223, XP022612134, ISSN: 0923-5965, pages 212-214.
  • the solution is limited to encryption of two-dimensional images with an extension to three dimensions being achieved through image per image encryption of three-dimensional images.
  • a digital rights enabled graphics processing system was proposed in 2006 by Shi, W., Lee, H., Yoo, R., and Boldyreva, A: A Digital Rights Enabled Graphics Processing System. In GH '06: Proceedings of the 21 st ACM SIGGRAPH/ EUROGRAPHICS symposium on Graphics hardware, ACM, 17-26.].
  • the data composing the 3D object (collection of vertices, textures) is encrypted. Their decryption is handled within the GPU, under control of licenses. It is proposed also to use multi resolution meshes to deliver simultaneously a protected and unprotected version of a 3D element.
  • VRML Virtual Reality Modelling Language
  • the invention is directed to a method of protecting a graphical object represented as a plurality of points having coordinate values and information on how to link the points together.
  • a device receives the representation of the graphical object; permutes the coordinate values of at least some of the points according to a deternnined permutation order, to obtain a representation of a protected graphical object, the permutation comprising iteratively exchanging the coordinate values of two points; and outputs the representation of the protected graphical object.
  • the coordinate values of all the points are permuted.
  • the coordinate values of the points are permuted using a key-based permutation.
  • the protected graphical object is visually different from the graphical object when rendered.
  • the invention is directed to a method of unprotecting a protected graphical object represented as a plurality of points having coordinate values and information on how to link the points together.
  • a device receives the representation of the protected graphical object, the graphical object being protected by a first permutation of the coordinate values of at least some of the points defining the graphical object according to a first determined permutation order, the permutation having iteratively exchanged the coordinate values of two points; permutes the coordinate values of the points of the protected graphical object according to a second determined permutation order that reverses the first permutation, to obtain a representation of an unprotected graphical object; and outputting the representation of the unprotected graphical object.
  • the graphical object is a three-dimensional object. It is advantageous that the points correspond to the vertices of the surfaces composing the graphical object and are expressed in 3D coordinates. It is alternatively advantageous that the points correspond to the mapping of textures on the surfaces composing the graphical object and are expressed in two-dimensional coordinates.
  • the coordinate values of all the points are permuted.
  • the coordinate values of the points are permuted using a key-based permutation.
  • the unprotected graphical object and the protected graphical object are visually difficult when rendered.
  • the invention is directed to a device for protecting a graphical object represented as a plurality of points having coordinate values and information on how to link the points together.
  • the device comprises means for receiving the representation of the graphical object; means for permuting the coordinate values of at least some of the points according to a determined permutation order, to obtain a representation of a protected graphical object, the permutation comprising iteratively exchanging the coordinate values of two points; and means for outputting the representation of the protected graphical object.
  • the invention is directed to a device for unprotecting a protected graphical object represented as a plurality of points having coordinate values and information on how to link the points together.
  • the device comprises means for receiving the representation of the protected graphical object, the graphical object being protected by a first permutation of the coordinate values of at least some of the points defining the graphical object according to a first determined permutation order, the permutation having iteratively exchanged the coordinate values of two points; means for permuting the coordinate values of the points of the protected graphical object according to a second determined permutation order that reverses the first permutation, to obtain a representation of an unprotected graphical object; and means for outputting the representation of the unprotected graphical object.
  • the invention is directed to a computable readable storage medium comprising stored instructions that when executed by a processor performs the method of any embodiment of the first aspect.
  • the invention is directed to a computable readable storage medium comprising stored instructions that when executed by a processor performs the method of any embodiment of the second aspect.
  • FIG. 1 illustrates a system for protecting a 3D object according to a preferred embodiment of the present invention
  • Figure 2 illustrates a method for protecting a 3D object according to a preferred embodiment of the present invention.
  • FIGS. 3 and 4 illustrate different aspects of 3D object protection according to a preferred embodiment of the present invention. DESCRIPTION OF EMBODIMENTS
  • a 3D graphical object (“3D object”) is represented as a first list (or array) of points and a second list with information on how to link the points together.
  • a salient inventive idea of the present invention is to protect a 3D object by performing a cryptographic algorithm, preferably a key-based permutation of the position of the points in the first list. The permutation results in a shuffling of the set of points so that the protected 3D object is still understood by any standard 3D model rendering application, but the resulting display becomes weird and hardly usable to a viewer.
  • Figure 1 illustrates a system 100 for protecting a 3D object according to a preferred embodiment of the present invention
  • Figure 2 illustrates a method for protecting a 3D object according to a preferred embodiment of the present invention
  • the points correspond to the vertices of the surfaces composing the graphical object and are expressed in 3D coordinates
  • the second list comprises information on how to link the vertices together to form lines and surfaces.
  • the permutation may be performed on the static part (Coordinate node in VRML syntax) or the animation part (Coordinatelnterpolator node in VRML syntax), or preferably both. In other words, it is the representation of the 3D object that is protected, which makes impossible the correct rendering of the object.
  • the system 100 comprises a sender 1 10 and a receiver 140, each comprising at least one processor 1 1 1 , 141 , memory 1 12, 142, preferably a user interface 1 13, 143, and at least one input/output unit 1 14, 144.
  • the sender 1 10 may for example be a personal computer or a workstation, while the receiver 120 for example may not only be a personal computer or a workstation, but also a television set, a video recorder, a set-top box or the like.
  • the sender 1 10 receives 210 a 3D object 120 to be protected, uses a key to permute 220 the points of the 3D object 120 to obtain a protected 3D object 130 that is stored or sent 230 to the receiver 140.
  • the receiver 120 receives 240 the protected 3D object 130, restores 250 the permuted points by permuting them using a key (which may be any secret number), and may then display or otherwise use 260 the unprotected 3D object 150.
  • a key which may be any secret number
  • a first computable readable storage medium 160 comprises stored instructions that when executed by the processor 1 1 1 of the sender 1 10 protects the 3D object as described.
  • a second computable readable storage medium 170 comprises stored instructions that when executed by the processor 141 of the receiver 140 unprotects the 3D object as described.
  • Figures 3 and 4 illustrate different aspects of 3D object protection according to a preferred embodiment of the present invention.
  • Figure 3 shows an unprotected list of points 310 - for example the static part of the object - that after permutation 320 becomes a protected list of points 330. It can be seen that the points do not occupy the same place in the two lists.
  • Figure 4 illustrates the rendering of 3D objects: a rendered unprotected 3D object 410 is shown next to a rendered protected 3D object 420 to enable comparison between them. As can be seen, the rendered protected 3D object 420 is practically completely incomprehensible, as only things like the general size may be deduced.
  • the points of the 3D graphical object correspond to the mapping of textures on the surfaces composing the graphical object and are expressed in two-dimensional coordinates.
  • the permutation used may be virtually any key-based permutation algorithm that permutes the points following a determined permutation order.
  • a basic example of such an algorithm is to move each point in the list at index / to the index /'.
  • i' (i+k) mod N with k being a secret and N the size of the list.
  • i -(i-k) mod N To unprotect the list, i -(i-k) mod N.
  • a further example of permutation algorithm has been described by Donald E. Knuth in "The Art of Computer Programming volume 2: Seminumerical algorithms", pp. 138-140.
  • one or more points may remain unpermuted without noticeably affecting the security, in particular if the ratio number of unpermuted points/number of permuted points remains small.
  • the 3D graphical object is animated and comprises a plurality of sets of points, each set of points corresponding to a 'part' of the animation, the parts succeeding each other in time (and possibly in space in case the object moves).
  • the points are only permuted.
  • a traditional approach would be to encrypt vertex data, which at best would result in having random points spread all over the 3D space and overlapping with the other objects of the complete scene; at worst, it would not at all be possible to render the 3D object.
  • the protected 3D object stays within the geometrical limits of the original, i.e. unprotected, 3D object. Therefore, when the user is not authorized to unprotect one object, the overall scene is not confused by the display of this unprotected object.
  • the present invention can provide a mechanism for ensuring the confidentiality of 3D models, and that the mechanism can visually differentiate protected and non-protected models for non-authorized users. It will also be appreciated that the protected 3D object (and the scene comprising the 3D object) can always be rendered, although it will not be recognizable.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

A 3D object (120; 410) is protected by a first device (110) that receives (210) the 3D object (120; 410), permutes (220) the position of at least some of the points of the 3D object (120; 410) to obtain a protected 3D object (130; 420), and outputs (230) the protected 3D object (130; 420). The protected 3D object (130; 420) is unprotected by a second device (140) by receiving (240) the protected 3D object (130; 420), permuting (250) the position of at least some the points of the protected 3D object (130; 420) to obtain an unprotected 3D object (150; 410), and outputting (260) the unprotected 3D object (150; 410). Also provided are the first device (110), the second device (140) and computer readable storage media (160, 170).

Description

METHOD AND DEVICE FOR 3D OBJECT PROTECTION BY PERMUTATION OF
ITS POINTS
TECHNICAL FIELD
The present invention relates generally to 3-D models and in particular to the protection of graphical objects of such models.
BACKGROUND
This section is intended to introduce the reader to various aspects of art, which may be related to various aspects of the present invention that are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present invention. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.
The use of three-dimensional (3D) objects has been increasing in the last years, particularly with the emergence of metaverses. There are multiple usages for 3D objects: socializing worlds, games, mirroring worlds, simulation tools, but also 3D User interfaces, animation movies and visual effects for television. Generally, 3D virtual objects represent real money value. In socializing worlds and games, players are selling virtual objects or avatars to other players for real money. Building an experienced character within an online game is a very lengthy process that can require hundreds of hours behind the keyboard. The 3D model of a real-world object from a simulation tool allows manufacturing the real (counterfeit) object and selling it. Leaking the 3D model for a scene of the next blockbuster from Hollywood studios may result in bad press for the studios. As can be seen, in many cases, 3D objects are assets of great value for their owner. Strategies for content protection comprise confidentiality protection - intended to make it impossible for unauthorized users to access the content, e.g. by encryption - and watermarking - intended to make it possible to track a user who has disseminated the content without authorization to do so. Basic methods of 3D content protection focus on the entire data, i.e. all the data is either encrypted or watermarked (or both), although these methods are somewhat crude.
More subtle ways of protecting 3D content is to protect one or more of its 3D objects. This is possible as 3D content often is made up of a number of distinct objects positioned in a setting. When each 3D object is coded as a separate entity, it becomes possible to protect each of these separately and it is not necessary to protect all of them.
For example, US 2008/0022408 describes a method of 3D object protection by storing non-encrypted data in one file and encrypted data in a separate file. Any user may access the non-encrypted data, but only authorized users can access the encrypted data; non-authorized users see a basic representation thereof, such as a parallelepiped instead of a car. However, this method was developed to be used with 3D rendering software and is less suited for multimedia content, such as video and film.
US 6678378 describes a solution for protecting a 3D Computer Aided Design (CAD) object by encryption. The solution may encrypt one of the coordinate values of the nodes and the equations for the edges or the contours, by nonlinear or affine transformation, thereby distorting the 3D object or by 'normal' encryption such as RSA.
Problems with this solution is that the calculations may be costly (in particular when using RSA) and that the distortions may not be sufficient to deter a malicious user from using the content nevertheless. In addition, in the case of 'normal' encryption, the 3D object may not be readable at all by a content consuming device - such as a computer or a television - which may be a drawback in some cases.
Li S et al. generally discuss permutation ciphers in "A General Quantitative Cryptanalysis of Permutation-Only Multimedia Ciphers Against Plaintext Attacks", Signal Processing. Image Communication. Elsevier Publishers, Amsterdam, NL LNKD- DOI:10.1016/J.IMAGE.2008.01 .003, vol. 23, no. 3, 1 March 2008, pages 212- 223, XP022612134, ISSN: 0923-5965, pages 212-214. The solution is limited to encryption of two-dimensional images with an extension to three dimensions being achieved through image per image encryption of three-dimensional images.
Shuichi lchikawa et al. describe watermarking of 3D polygon models in "Redundancy in 3D Polygon Models and Its Application to Digital Signature", Conference in Central Europe on Computer Graphics, Visualization and Computer Vision 2002, WSCG 2002, 1 February 2002, pages 225-232, XP009140282. The watermark is calculated by hashing the numbering of vertices and faces. As with most watermarks, the watermarked object is indistinguishable from the non- watermarked object. The solution can make it possible to detect the identity of a user that spreads watermarked content, but cannot hinder access to the content.
A digital rights enabled graphics processing system was proposed in 2006 by Shi, W., Lee, H., Yoo, R., and Boldyreva, A: A Digital Rights Enabled Graphics Processing System. In GH '06: Proceedings of the 21 st ACM SIGGRAPH/ EUROGRAPHICS symposium on Graphics hardware, ACM, 17-26.]. With this system, the data composing the 3D object (collection of vertices, textures) is encrypted. Their decryption is handled within the GPU, under control of licenses. It is proposed also to use multi resolution meshes to deliver simultaneously a protected and unprotected version of a 3D element. Although the system itself is a real progress towards secure 3D environments, the use of protected scenes with other Virtual Reality Modelling Language (VRML) renderers will lead to interoperability issues.
It will therefore be appreciated that there is a need for a system that enables protection of 3D objects with quick calculations that still enables a content consuming device to read and display the 3D object, albeit in a manner that renders the viewing thereof unsatisfactory. The present invention provides such a system.
SUMMARY OF INVENTION
In a first aspect, the invention is directed to a method of protecting a graphical object represented as a plurality of points having coordinate values and information on how to link the points together. A device receives the representation of the graphical object; permutes the coordinate values of at least some of the points according to a deternnined permutation order, to obtain a representation of a protected graphical object, the permutation comprising iteratively exchanging the coordinate values of two points; and outputs the representation of the protected graphical object. In a first preferred embodiment, the coordinate values of all the points are permuted.
In a second preferred embodiment, the coordinate values of the points are permuted using a key-based permutation.
In a third preferred embodiment, the protected graphical object is visually different from the graphical object when rendered.
In a second aspect, the invention is directed to a method of unprotecting a protected graphical object represented as a plurality of points having coordinate values and information on how to link the points together. A device receives the representation of the protected graphical object, the graphical object being protected by a first permutation of the coordinate values of at least some of the points defining the graphical object according to a first determined permutation order, the permutation having iteratively exchanged the coordinate values of two points; permutes the coordinate values of the points of the protected graphical object according to a second determined permutation order that reverses the first permutation, to obtain a representation of an unprotected graphical object; and outputting the representation of the unprotected graphical object.
In a first preferred embodiment, the graphical object is a three-dimensional object. It is advantageous that the points correspond to the vertices of the surfaces composing the graphical object and are expressed in 3D coordinates. It is alternatively advantageous that the points correspond to the mapping of textures on the surfaces composing the graphical object and are expressed in two-dimensional coordinates.
In a second preferred embodiment, the coordinate values of all the points are permuted. In a third preferred embodiment, the coordinate values of the points are permuted using a key-based permutation.
In a fourth preferred embodiment, the unprotected graphical object and the protected graphical object are visually difficult when rendered. In a third aspect, the invention is directed to a device for protecting a graphical object represented as a plurality of points having coordinate values and information on how to link the points together. The device comprises means for receiving the representation of the graphical object; means for permuting the coordinate values of at least some of the points according to a determined permutation order, to obtain a representation of a protected graphical object, the permutation comprising iteratively exchanging the coordinate values of two points; and means for outputting the representation of the protected graphical object.
In a fourth aspect, the invention is directed to a device for unprotecting a protected graphical object represented as a plurality of points having coordinate values and information on how to link the points together. The device comprises means for receiving the representation of the protected graphical object, the graphical object being protected by a first permutation of the coordinate values of at least some of the points defining the graphical object according to a first determined permutation order, the permutation having iteratively exchanged the coordinate values of two points; means for permuting the coordinate values of the points of the protected graphical object according to a second determined permutation order that reverses the first permutation, to obtain a representation of an unprotected graphical object; and means for outputting the representation of the unprotected graphical object. In a fifth aspect, the invention is directed to a computable readable storage medium comprising stored instructions that when executed by a processor performs the method of any embodiment of the first aspect.
In a sixth aspect, the invention is directed to a computable readable storage medium comprising stored instructions that when executed by a processor performs the method of any embodiment of the second aspect. BRIEF DESCRIPTION OF DRAWINGS
Preferred features of the present invention will now be described, by way of non-limiting example, with reference to the accompanying drawings, in which Figure 1 illustrates a system for protecting a 3D object according to a preferred embodiment of the present invention;
Figure 2 illustrates a method for protecting a 3D object according to a preferred embodiment of the present invention; and
Figures 3 and 4 illustrate different aspects of 3D object protection according to a preferred embodiment of the present invention. DESCRIPTION OF EMBODIMENTS
In some 3D content formats, such as for example Virtual Reality Modelling Language (VRML) and X3D, a 3D graphical object ("3D object") is represented as a first list (or array) of points and a second list with information on how to link the points together. A salient inventive idea of the present invention is to protect a 3D object by performing a cryptographic algorithm, preferably a key-based permutation of the position of the points in the first list. The permutation results in a shuffling of the set of points so that the protected 3D object is still understood by any standard 3D model rendering application, but the resulting display becomes weird and hardly usable to a viewer.
Authorized users have the means to reverse the permutation and shuffle the points back to their original positions.
Figure 1 illustrates a system 100 for protecting a 3D object according to a preferred embodiment of the present invention and Figure 2 illustrates a method for protecting a 3D object according to a preferred embodiment of the present invention. As a non-limitative example, the points correspond to the vertices of the surfaces composing the graphical object and are expressed in 3D coordinates, and the second list comprises information on how to link the vertices together to form lines and surfaces. The permutation may be performed on the static part (Coordinate node in VRML syntax) or the animation part (Coordinatelnterpolator node in VRML syntax), or preferably both. In other words, it is the representation of the 3D object that is protected, which makes impossible the correct rendering of the object.
The system 100 comprises a sender 1 10 and a receiver 140, each comprising at least one processor 1 1 1 , 141 , memory 1 12, 142, preferably a user interface 1 13, 143, and at least one input/output unit 1 14, 144. The sender 1 10 may for example be a personal computer or a workstation, while the receiver 120 for example may not only be a personal computer or a workstation, but also a television set, a video recorder, a set-top box or the like.
The sender 1 10 receives 210 a 3D object 120 to be protected, uses a key to permute 220 the points of the 3D object 120 to obtain a protected 3D object 130 that is stored or sent 230 to the receiver 140. The receiver 120 receives 240 the protected 3D object 130, restores 250 the permuted points by permuting them using a key (which may be any secret number), and may then display or otherwise use 260 the unprotected 3D object 150. It should be noted that the initial 3D object 120 and the unprotected 3D object 150 normally are identical.
As a result, an authorized user will not notice anything out of the ordinary since all objects will be displayed correctly, while an unauthorized user will see the overall scene with the protected object or objects rendered in an incorrect way.
A first computable readable storage medium 160 comprises stored instructions that when executed by the processor 1 1 1 of the sender 1 10 protects the 3D object as described. A second computable readable storage medium 170 comprises stored instructions that when executed by the processor 141 of the receiver 140 unprotects the 3D object as described.
Figures 3 and 4 illustrate different aspects of 3D object protection according to a preferred embodiment of the present invention. Figure 3 shows an unprotected list of points 310 - for example the static part of the object - that after permutation 320 becomes a protected list of points 330. It can be seen that the points do not occupy the same place in the two lists. Figure 4 illustrates the rendering of 3D objects: a rendered unprotected 3D object 410 is shown next to a rendered protected 3D object 420 to enable comparison between them. As can be seen, the rendered protected 3D object 420 is practically completely incomprehensible, as only things like the general size may be deduced.
In an alternative embodiment, the points of the 3D graphical object correspond to the mapping of textures on the surfaces composing the graphical object and are expressed in two-dimensional coordinates.
The permutation used may be virtually any key-based permutation algorithm that permutes the points following a determined permutation order. A basic example of such an algorithm is to move each point in the list at index / to the index /'. To protect the list, i'=(i+k) mod N with k being a secret and N the size of the list. To unprotect the list, i -(i-k) mod N. A further example of permutation algorithm has been described by Donald E. Knuth in "The Art of Computer Programming volume 2: Seminumerical algorithms", pp. 138-140.
It should be noted that one or more points may remain unpermuted without noticeably affecting the security, in particular if the ratio number of unpermuted points/number of permuted points remains small.
In a variant embodiment the 3D graphical object is animated and comprises a plurality of sets of points, each set of points corresponding to a 'part' of the animation, the parts succeeding each other in time (and possibly in space in case the object moves). In this case it is advantageous to protect the 3D graphical object by protecting the points corresponding to each part separately.
The skilled person will appreciate that user authorization and key management are out of scope of the present invention.
It may thus be seen that the points are only permuted. A traditional approach would be to encrypt vertex data, which at best would result in having random points spread all over the 3D space and overlapping with the other objects of the complete scene; at worst, it would not at all be possible to render the 3D object. With the approach of the present invention, the protected 3D object stays within the geometrical limits of the original, i.e. unprotected, 3D object. Therefore, when the user is not authorized to unprotect one object, the overall scene is not confused by the display of this unprotected object.
It will thus be appreciated that the present invention can provide a mechanism for ensuring the confidentiality of 3D models, and that the mechanism can visually differentiate protected and non-protected models for non-authorized users. It will also be appreciated that the protected 3D object (and the scene comprising the 3D object) can always be rendered, although it will not be recognizable.
Each feature disclosed in the description and (where appropriate) the claims and drawings may be provided independently or in any appropriate combination. Features described as being implemented in hardware may also be implemented in software, and vice versa. Reference numerals appearing in the claims are by way of illustration only and shall have no limiting effect on the scope of the claims.

Claims

1 . A method of protecting a graphical object (120; 410) represented as a plurality of points having coordinate values and information on how to link the points together, the method comprising the steps, in a device (1 10), of:
receiving (210) the representation of the graphical object (120; 410);
permuting (220) the coordinate values of at least some of the points according to a determined permutation order, to obtain a representation of a protected graphical object (130; 420), the permutation comprising iteratively exchanging the coordinate values of two points; and
outputting (230) the representation of the protected graphical object (130;
420).
2. The method of claim 1 , wherein the coordinate values of all the points are permuted.
3. The method of claim 1 or 2, wherein the coordinate values of the points are permuted using a key-based permutation.
4. The method of any one of claims 1 to 3, wherein the protected graphical object is visually different from the graphical object when rendered.
5. A method of unprotecting a protected graphical object (130; 420) represented as a plurality of points having coordinate values and information on how to link the points together, the method comprising the steps, in a device (140), of:
receiving (240) the representation of the protected graphical object (130; 420), the graphical object being protected by a first permutation of the coordinate values of at least some of the points defining the graphical object according to a first determined permutation order, the permutation having iteratively exchanged the coordinate values of two points;
permuting (250) the coordinate values of the points of the protected graphical object (130; 420) according to a second determined permutation order that reverses the first permutation, to obtain a representation of an unprotected graphical object (150; 410); and outputting (260) the representation of the unprotected graphical object (150;
410).
6. The method of claim 5, wherein the graphical object (150; 410) is a three- dimensional object.
7. The method of claim 6, wherein the points correspond to the vertices of the surfaces composing the graphical object and are expressed in 3D coordinates.
8. The method of claim 6, wherein the points correspond to the mapping of textures on the surfaces composing the graphical object and are expressed in two- dimensional coordinates.
9. The method of claim 5, wherein the coordinate values of all the points are permuted.
10. The method of any one of claims 5 to 9, wherein the coordinate values of the points are permuted using a key-based permutation.
1 1 . The method of claim 5, wherein the unprotected graphical object (150; 410) and the protected graphical object (130; 420) are visually difficult when rendered.
12. A device (1 10) for protecting a graphical object (120; 410) represented as a plurality of points having coordinate values and information on how to link the points together, the device (1 10) comprising:
means (1 14) for receiving the representation of the graphical object (120; 410);
means (1 1 1 ) for permuting the coordinate values of at least some of the points according to a determined permutation order, to obtain a representation of a protected graphical object (130; 420), the permutation comprising iteratively exchanging the coordinate values of two points; and
means (1 14) for outputting the representation of the protected graphical object
(130; 420).
13. A device (140) for unprotecting a protected graphical object (130; 420) represented as a plurality of points having coordinate values and information on how to link the points together, the device (140) comprising:
means (144) for receiving the representation of the protected graphical object (130; 420), the graphical object being protected by a first permutation of the coordinate values of at least some of the points defining the graphical object according to a first determined permutation order, the permutation having iteratively exchanged the coordinate values of two points;
means (141 ) for permuting the coordinate values of the points of the protected graphical object (130; 420) according to a second determined permutation order that reverses the first permutation, to obtain a representation of an unprotected graphical object (150; 410); and
means (144) for outputting the representation of the unprotected graphical object (150; 410).
14. A computable readable storage medium (160) comprising stored instructions that when executed by a processor performs the method of any one of claims 1 to 4.
15. A computable readable storage medium (170) comprising stored instructions that when executed by a processor performs the method of any one of claims 5 to 1 1 .
PCT/EP2011/060608 2010-06-28 2011-06-24 Method and device for 3d object protection by permutation of its points Ceased WO2012000898A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP10305692.5 2010-06-28
EP10305692A EP2400476A1 (en) 2010-06-28 2010-06-28 Method and device for 3D object protection by permutation of its points

Publications (1)

Publication Number Publication Date
WO2012000898A1 true WO2012000898A1 (en) 2012-01-05

Family

ID=42938325

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2011/060608 Ceased WO2012000898A1 (en) 2010-06-28 2011-06-24 Method and device for 3d object protection by permutation of its points

Country Status (2)

Country Link
EP (1) EP2400476A1 (en)
WO (1) WO2012000898A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2502837C2 (en) * 2008-01-11 2013-12-27 Эдванс Нонвавен А/С Forming head for dry forming of fibrous web
EP2725554A1 (en) 2012-10-23 2014-04-30 Thomson Licensing Methods and devices for optimising rendering of an encrypted 3d graphical object
EP3076579A1 (en) 2015-04-02 2016-10-05 Thomson Licensing Devices and methods for encryption and decryption of graphical 3d objects
EP3182396A1 (en) 2015-12-15 2017-06-21 Thomson Licensing Devices and methods for encryption and decryption of graphical 3d objects

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2665032A1 (en) 2012-05-14 2013-11-20 Thomson Licensing Methods and devices for 3d object protection using surface subdivision

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6678378B1 (en) 1998-06-09 2004-01-13 Monolith Co., Ltd. 3-dimensional shape data encryption and decryption
US20080022408A1 (en) 2006-07-21 2008-01-24 Nicholas Phelps Method for exchanging a 3D view between a first and a second user

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6678378B1 (en) 1998-06-09 2004-01-13 Monolith Co., Ltd. 3-dimensional shape data encryption and decryption
US20080022408A1 (en) 2006-07-21 2008-01-24 Nicholas Phelps Method for exchanging a 3D view between a first and a second user

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
"Redundancy in 3D Polygon Models and Its Application to Digital Signature", CONFERENCE IN CENTRAL EUROPE ON COMPUTER GRAPHICS, VISUALIZATION AND COMPUTER VISION 2002, WSCG 2002, 1 February 2002 (2002-02-01), pages 225 - 232
"Signal Processing. Image Communication", vol. 23, 1 March 2008, ELSEVIER PUBLISHERS, article "A General Quantitative Cryptanalysis of Permutation-Only Multimedia Ciphers Against Plaintext Attacks", pages: 212 - 223
DONALD E. KNUTH, THE ART OF COMPUTER PROGRAMMING VOLUME 2: SEMINUMERICAL ALGORITHMS, vol. 2, pages 138 - 140
KONG XIANGZENG ET AL: "A Novel Double 3D Digital Watermarking Scheme", MULTIMEDIA INFORMATION NETWORKING AND SECURITY, 2009. MINES '09. INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 18 November 2009 (2009-11-18), pages 553 - 556, XP031592280, ISBN: 978-0-7695-3843-3 *
LI S ET AL: "A general quantitative cryptanalysis of permutation-only multimedia ciphers against plaintext attacks", SIGNAL PROCESSING. IMAGE COMMUNICATION, ELSEVIER SCIENCE PUBLISHERS, AMSTERDAM, NL LNKD- DOI:10.1016/J.IMAGE.2008.01.003, vol. 23, no. 3, 1 March 2008 (2008-03-01), pages 212 - 223, XP022612134, ISSN: 0923-5965, [retrieved on 20080214] *
SHI, W., LEE, H., YOO, R., BOLDYREVA, A: "GH '06: Proceedings of the 21st ACM SIGGRAPH/ EUROGRAPHICS symposium on Graphics hardware", 2006, ACM, article "A Digital Rights Enabled Graphics Processing System", pages: 17 - 26
SHIH-CHUN TU ET AL: "An improved data hiding approach for polygon meshes", VISUAL COMPUTER, SPRINGER, BERLIN, DE, vol. 26, no. 9, 1 January 2009 (2009-01-01), pages 1177 - 1181, XP009140285, ISSN: 0178-2789 *
SHUICHI ICHIKAWA ET AL: "Redundancy in 3D Polygon Models and Its Application to Digital Signature", CONFERENCE IN CENTRAL EUROPE ON COMPUTER GRAPHICS, VISUALIZATION AND COMPUTER VISION'2002, WSCG 2002,, 1 February 2002 (2002-02-01), pages 225 - 232, XP009140282 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2502837C2 (en) * 2008-01-11 2013-12-27 Эдванс Нонвавен А/С Forming head for dry forming of fibrous web
EP2725554A1 (en) 2012-10-23 2014-04-30 Thomson Licensing Methods and devices for optimising rendering of an encrypted 3d graphical object
EP2725555A1 (en) 2012-10-23 2014-04-30 Thomson Licensing Methods and devices for optimising rendering of an encrypted 3D graphical object
CN103778849A (en) * 2012-10-23 2014-05-07 汤姆逊许可公司 Methods and devices for optimising rendering of an encrypted 3D graphical object
US9230119B2 (en) 2012-10-23 2016-01-05 Thomson Licensing Methods and devices for optimizing rendering of an encrypted 3D graphical object
EP3076579A1 (en) 2015-04-02 2016-10-05 Thomson Licensing Devices and methods for encryption and decryption of graphical 3d objects
US10229278B2 (en) 2015-04-02 2019-03-12 Interdigital Ce Patent Holdings Devices and methods for encryption and decryption of graphical 3D objects
EP3182396A1 (en) 2015-12-15 2017-06-21 Thomson Licensing Devices and methods for encryption and decryption of graphical 3d objects

Also Published As

Publication number Publication date
EP2400476A1 (en) 2011-12-28

Similar Documents

Publication Publication Date Title
US8869292B2 (en) Method and device for 3D object protection by transformation of its points
JP5875835B2 (en) Method and apparatus for protecting a three-dimensional object by replacing coordinate points of the three-dimensional object
EP2665033B1 (en) Methods and devices for 3d object protection using surface subdivision
EP2743903A2 (en) Method and device for 3d object encryption by application of a function modified using a secret key
EP2725555B1 (en) Methods and devices for optimising rendering of an encrypted 3D graphical object
US20140119538A1 (en) Method and device for 3d object encryption by application of a function modified using a secret key
US20140229742A1 (en) Methods and devices for protecting digital objects through format preserving coding
EP2400476A1 (en) Method and device for 3D object protection by permutation of its points
Wang et al. An ofb-based fragile watermarking scheme for 3D polygonal meshes
Atown Hide and Encryption Fingerprint Image by using LSB and Transposition pixel by Spiral Method
Nagaty Digital Rights Management of Images via LSB Embedding Square Numbers Sequence
Abdallah et al. Designing a Secure Architecture for Web-Based 3D Shape Modelling
KR20120131121A (en) Method and device for 3d object protection by transformation of its points

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11727185

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11727185

Country of ref document: EP

Kind code of ref document: A1