A 3D ciphertext domain reversible information hiding method and system based on spatial clustering
By employing multi-level partitioning based on spatial clustering and prediction error detection techniques, the problem of limited embedding capacity in reversible information hiding of 3D encrypted domains is solved, achieving high-capacity, low-overhead reversible information hiding, which is suitable for secure data embedding of encrypted 3D models.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- WUHAN UNIV
- Filing Date
- 2025-01-22
- Publication Date
- 2026-04-17
AI Technical Summary
Existing 3D ciphertext domain reversible information hiding schemes fail to effectively utilize the global spatial correlation and local structural features of 3D models, resulting in limited embedding capacity and failing to meet the requirements for high-capacity reversible information hiding.
A multi-level partitioning model based on spatial clustering and prediction error detection technology are adopted. Nearly neighboring vertices are grouped into the same subspace through multi-level spatial clustering. The best reference vertex is identified by an adaptive optimal reference vertex search algorithm. The embedding length is calculated by predicting multiple most important bits. The tag graph is embedded into the encryption model by combining a bit substitution strategy.
It improves the embedding capacity of reversible information hiding in 3D ciphertext domains, reduces computational overhead, and ensures the reversibility and separability of embedding, making it suitable for large-scale 3D models.
Smart Images

Figure CN119996705B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of information security, specifically involving a 3D ciphertext domain reversible information hiding method that combines spatial clustering technology with prediction error detection technology, which can be used for reversible information hiding of encrypted 3D models. Background Technology
[0002] With the development of computer graphics and the improvement of computing performance in the era of big data, human digital perception and description of the physical world has gradually entered the three-dimensional era, and 3D data is widely used in various fields. For example, the medical industry uses 3D mesh models to create human organ models; the geographic information field uses 3D data to construct three-dimensional geological models and real-world 3D scenes, and so on. Considering the complex structure and large data volume of 3D models, outsourcing the storage of 3D models to cloud servers has become a trend.
[0003] While cloud service providers have improved the convenience for users to store and access 3D data resources, data stored on cloud servers also faces serious security issues. The confidentiality, authentication, and integrity of this data are constantly threatened by illegal activities such as hacking, theft, or malicious use. Therefore, to protect the security of 3D model data in the cloud, 3D models are encrypted during transmission to cloud servers to reduce the risk of 3D data privacy leaks. Simultaneously, data administrators need to embed data tags and annotation information into the encrypted data and extract the embedded information to achieve effective encrypted management, access control, and security protection of the massive amounts of encrypted data in the cloud. However, the data embedding and extraction process may cause distortion of the carrier data, making it unsuitable for applications such as medicine, law, and art that emphasize the accuracy of the carrier content.
[0004] Reversible data hiding in the encrypted domain has emerged in this context. It is a technique that embeds additional secret messages into an encrypted carrier without affecting its decryption, and it has potential applications in cloud encrypted storage and secure communication. Compared to the plaintext domain information hiding process, encryption operations mask redundancy in the data, resulting in a low payload capacity in the encrypted domain. Furthermore, the complex and redundant spatial relationships and structural information of 3D models make it difficult to reserve embedding space in the encrypted domain. To address these issues, most current 3D encrypted domain reversible information hiding schemes reserve embedding space by mining the correlation between adjacent vertices or local spatial correlations. However, these methods fail to consider the global spatial correlation and vertex spatial distribution characteristics of the 3D model, and cannot ensure that nearest neighbor vertices are included in the same space. This results in limited spatial redundancy between the embedded vertex and the reference vertex, limiting the embedding capacity of existing schemes. Therefore, achieving high-capacity reversible information hiding has become a major technical challenge for 3D encrypted domain reversible information hiding. Summary of the Invention
[0005] This invention aims to propose a reversible information hiding method for 3D encrypted domains based on spatial clustering. Combining multi-level spatial clustering and prediction error detection techniques, this method investigates a multi-level spatial partitioning model based on spatial clustering, mining the global spatial correlation and distribution characteristics of the model, and grouping nearby vertices into the same subspace to ensure the proximity of vertices within the subspace. An adaptive optimal reference vertex search algorithm is designed to mine the local spatial correlation of the model, identify the best reference vertex for each cluster space, and maximize the embedding space of the cluster space. Furthermore, the basic embedding length of the reference vertex is used as an additional embedding space to further improve the embedding capacity. Finally, in each cluster space, multi-MSB prediction is performed on the reference vertex and the embedded vertex to calculate the embeddable length of the embedded vertex, thereby obtaining the total embedding space embedding information. This scheme does not depend on the topological relationship of the model and can therefore also be applied to geometric models with vertex information (such as point clouds). This invention overcomes the bottlenecks of high computational overhead and limited embedding capacity in the field of 3D ciphertext domain reversible information hiding by constructing a computational framework for 3D ciphertext domain reversible information hiding based on multi-level spatial clustering and prediction of multiple most important bits. It creates a 3D ciphertext domain reversible information hiding technology path that is separable, reversible, has high embedding capacity, low computational overhead, and is scalable, providing technical support and innovative path for reversible information hiding in encrypted 3D.
[0006] The solution proposed in this plan is as follows:
[0007] The participants in this scheme include the model owner, the data hider, and the model receiver. The model owner applies spatial clustering and prediction error detection to reserve embedding space, encrypts the original model, and embeds a label graph into the encrypted model, generating an encrypted model with a label graph, which is then sent to the data hider. The data hider embeds a secret message into the reserved embedding space of the encrypted model. The model receiver can extract the secret message or recover the model using the provided key. Specifically, the model owner first normalizes and compresses the vertex coordinates of the model through coordinate transformation, converting them into integer coordinates. A multi-level spatial clustering model is then applied to divide the vertices in the model into mutually exclusive cluster spaces. Within each cluster space, an adaptive optimal reference vertex search algorithm is applied to identify the best reference vertex. Prediction error detection is performed on the best reference vertex and the embedded vertices to determine the embedding length of each embeddable vertex. The embedding length and the number of vertices in each cluster are represented in the label graph. Subsequently, the model owner encrypts the model and embeds the label graph into the reserved embedding space using a bit substitution strategy, generating an encrypted model with a label graph, which is then sent to the data hider. After receiving the encrypted model containing a labeled graph, the data hider extracts the labeled graph to identify the reserved embedding space and uses the data hiding key to embed the secret message into the remaining embeddable space, thereby generating a labeled encrypted model and sending it to the model receiver. The model receiver can use the corresponding key to extract the secret message or recover the model; this operation is separable. Furthermore, this scheme does not depend on the model's topological relationships, and therefore can also be applied to geometric models with vertex information (such as point clouds).
[0008] This invention provides a 3D ciphertext domain reversible information hiding method based on spatial clustering, comprising the following steps:
[0009] Step 1: The model owner (who is both the owner of the 3D model data and the owner of the encrypted model) performs coordinate transformation on the vertex coordinate values of the 3D model and compresses the model, converting the floating-point coordinate values into integer coordinate values.
[0010] Step 2: The model owner applies a multi-level spatial clustering algorithm to divide the vertices of the 3D model into mutually exclusive cluster spaces. In each cluster space, an adaptive optimal reference vertex search algorithm is applied to identify the best reference vertex and re-mesh the 3D model. Then, prediction error detection is performed on the best reference vertex and the embedded vertex to determine the embedding length of each embeddable vertex.
[0011] Step 3: The model owner uses the encryption key to encrypt the model, thus obtaining the encrypted model;
[0012] Step 4: The model owner represents the compression threshold, the embeddable length of the vertex, and the number of vertices in each cluster in the label graph, compresses it using compression coding technology, and embeds it into the encrypted model through a bit substitution strategy to obtain an encrypted model containing the label graph.
[0013] Step 5: The data hider extracts the label graph from the encrypted model containing the label graph to identify the reserved embedding space, and uses the data hiding key to embed the secret message into the remaining embeddable space, generating a labeled encrypted model and sending it to the model receiver.
[0014] Step 6: After obtaining the encrypted model with the tag, the model receiver can perform model decryption or data extraction based on the key they possess.
[0015] Furthermore, the specific implementation method of step 1 is as follows:
[0016] Step 1.1, Normalization: Represent the 3D model as M = {V, F}, where the vertex set V = {v1, v2, ..., v} N} and the face set F = {f(v i ,v j ,v k )|v i ,v j ,,v k ∈V}, where N is the number of vertices in the model, f(v i ,v j ,v k ) is vertex v i ,v j ,v k The resulting triangular faces. Determine the minimum boundary B of the model in the three coordinate dimensions. min The value is:
[0017]
[0018] Among them, [x m ,y m ,z m These are the minimum values of the model in the three coordinate dimensions. A coordinate transformation is performed on each vertex to convert the vertex coordinates of the 3D model to coordinate values in the 0-1 range. The calculation formula for the coordinate transformation process is as follows:
[0019]
[0020] Among them, R i It is the scaling ratio to the 0-1 range, and k is the number of integer digits of the maximum vertex coordinate value after the 3D model is translated. For example, the maximum number of integer digits of 12.345 is 2.
[0021] Step 1.2, Compression Model: Under the control of the compression threshold m, convert the floating-point coordinate values in the above 0-1 interval into integer coordinate value tuples J. i Calculate the compressed vertex integer coordinates J i The formula is shown below, where, It is a floor function. For example, when the compression threshold m = 4, R... i =0.123456, compressed integer coordinate value J i It is 1234;
[0022]
[0023] Step 1.3, Coordinate Transformation: Based on the compression threshold m, transform the integer coordinate values J of the compressed model. i The coordinate value j converted into a fixed-length L binary representation i,p To store compressed 3D models, where J i This refers to the compressed integer coordinates of the vertices, j i,p This refers to the coordinate value j in binary representation. i,p The conversion process and the formula for calculating the length L of the binary representation are as follows, for example, J i The integer 1234 is represented in binary as 0000010011010010.
[0024]
[0025] Furthermore, the specific implementation method of step 2 is as follows:
[0026] Step 2.1, Multi-level Spatial Clustering: A multi-level spatial clustering algorithm is used to divide the vertices in the 3D model space into non-overlapping subspaces. For example, the initial clustering of the model vertices results in k1 clusters, obtaining relatively compact subspaces. Then, each subspace is clustered again, with the number of clusters being k², to obtain the final compact subspace. The calculation formula is as follows:
[0027] S = Clustering(J,k1)(6)
[0028]
[0029] Where J represents the transformed integer coordinate values, Clustering represents existing clustering algorithms, which are not limited to a specific clustering algorithm and can be adapted to partition-based clustering algorithms such as k-means, k-medoids, spectral clustering, and density-based clustering. S refers to the set of k1 clusters obtained after clustering. i Let c represent the i-th cluster in set S. j Indicates the cluster si The cluster set obtained after further clustering.
[0030] Step 2.2, Search for the optimal reference point: Treat each cluster as an independent sub-unit, take each vertex in the cluster as a reference vertex in turn, and take the other vertices in the cluster as embedding vertices. Perform multi-MSB prediction on the reference vertex r and the embedding vertex e to calculate the embeddable length I of the embedding vertex. r,e This allows us to identify the reference vertex that maximizes the sum of the embeddable lengths of the subspace, which is then used as the optimal reference vertex.
[0031]
[0032] Step 2.3, Re-mesh: Group the vertices according to their cluster indices, and place the best reference point of each cluster at the beginning of the group. Update the indices of the vertices in the face set according to the reordered position indices.
[0033] Step 2.4, Prediction Error Detection: The basic embedding length of the reference vertex is used as the reserved embedding space to embed the data. For the embedded vertex, the embeddable length of the embedded vertex is calculated by multi-MSB prediction on the reference vertex and the embedded vertex.
[0034] Furthermore, the specific implementation method of step 3 is as follows:
[0035] Step 3.1, Generate a random sequence: using encryption key k E Generate a binary random sequence n;
[0036] Step 3.2, Encryption Model: Sampling L bits consecutively from the binary random sequence b, then performing an XOR operation with the binary representation of the vertex coordinates to obtain the encryption model. The calculation formula is as follows:
[0037]
[0038] Where j i,k The k-th bit of the binary representation of the coordinates of vertex i after transformation, b i,k It is the k-th bit message after continuous sampling of the binary random sequence b. It represents the XOR operation, and its encryption method is not limited to stream encryption. It can be adapted to symmetric encryption algorithms such as RC4, DES, AES, SM1 and SM4.
[0039] Furthermore, the specific implementation method of step 4 is as follows:
[0040] Step 4.1, Characterize the label graph: Treat the compression threshold m, the embeddable length I of each embedded vertex, and the number of vertices Num in each cluster as labels:
[0041] label={m,I,Num}(10)
[0042] Step 4.2, Compression Coding: Fixed-length coding is used for the compression threshold. For the embeddable length of each vertex and the number of vertices in each cluster, the symbol frequency of the embeddable length of each vertex and the symbol frequency of the number of vertices in each cluster are statistically analyzed. Huffman coding trees are then constructed based on these frequencies. By traversing the constructed Huffman coding trees, the encoding results for each embedding length and vertex number are obtained. The final label graph is represented as a binary sequence of length HL, which is determined by the compression threshold, the Huffman coding tree structure, and the encoding results.
[0043] Step 4.3, Embedding the Label Graph: Embed the label graph into the basic embedding length EL of each vertex (including the reference vertex) using a bit substitution strategy. B If the length HL exceeds 3×EL B ×N, where N is the number of vertices in the input model, then the predicted embedding length EL embedded into the embedded vertices. P In the binary bits, an encryption model E′(M) with an embedded tag graph is generated.
[0044] Furthermore, the specific implementation method of step 5 is as follows:
[0045] Step 5.1, Encrypt the secret message: Use the data hiding key k D Generate a binary random sequence s, then XOR it with the secret message AD to obtain the encrypted secret message ED. The calculation formula is as follows:
[0046]
[0047] Step 5.2, Embedding Data: The data hider extracts the label graph from the cryptographic model E′(M) with the embedded label graph, extracts the Huffman coding tree sequence from the label graph, reconstructs the Huffman coding tree and retrieves the encoding of each symbol, decodes the Huffman coding result, and thus determines the reserved embedding space. Finally, the encrypted secret message is embedded into the remaining available embedding space using a bit substitution strategy to generate a labeled cryptographic model, calculated as follows:
[0048]
[0049] Among them ED i It is the encrypted secret message, the i-th bit message, I. i is the embeddable length of the i-th vertex, and j represents the x, y, z coordinate axes.
[0050] Furthermore, the specific implementation method of step 6 is as follows:
[0051] Step 6.1, Secret Message Extraction: The model receiver can obtain the embedding length of each embedded vertex by extracting the label graph, extract the encrypted secret message from the embedding space of the labeled encrypted model vertex coordinates, and then combine it with the data hiding key k. D Generate a binary random sequence and perform an XOR operation to obtain the decrypted message.
[0052] Step 6.2, Model Recovery: The model receiver can obtain the embedding space of each embedded vertex by extracting the label graph, and then combine the coordinates of the labeled encrypted model vertices with the encryption key k. E The generated binary random sequence is XORed to obtain a preliminary decryption model. Then, the basic embedding length of the reference vertex coordinate values is set to 0 to recover the coordinates of the reference points, and the embedded vertex coordinates can be recovered from their corresponding reference vertices using prediction error detection.
[0053] Step 6.3, Secret Message Extraction and Recovery Model: The model receiver simultaneously possesses the encryption key k E and data hiding key k D The model can be recovered and the secret message extracted using the steps described above. The secret message extraction and model recovery operations can be performed in any order and are separable.
[0054] This invention also provides a 3D ciphertext domain reversible information hiding system based on spatial clustering, comprising:
[0055] The processor and memory are used to store program instructions, and the processor is used to call the stored instructions in the memory to execute a 3D ciphertext domain reversible information hiding method based on spatial clustering as described in the above technical solution.
[0056] Compared with other methods, the advantages of this invention are as follows: The proposed 3D ciphertext domain reversible information hiding method based on multi-level spatial clustering and multiple most important bit prediction systematically mines and utilizes the spatial correlation of the 3D model, ensuring the proximity between the embedded vertex and the reference vertex, thereby improving the prediction efficiency of the embedded vertex and significantly increasing the embedding capacity of the 3D model, overcoming the problem of insufficient embedding capacity in 3D ciphertext domain reversible information hiding. This method uses multi-level spatial clustering to divide the model vertices, ensuring the proximity of vertices in the cluster space while significantly reducing computational overhead, making it applicable to 3D models with a large number of vertices. Furthermore, by utilizing the optimal reference point search algorithm and using the basic embedding length of the reference vertex as additional embedding space, the embedding rate and embedding capacity of this scheme are further improved. This makes the scheme reversible, separable, scalable, with high embedding rate, high embedding capacity, and low computational overhead, breaking through the bottlenecks of high computational overhead and limited embedding capacity in the field of 3D ciphertext domain reversible information hiding, providing technical support and innovative paths for 3D ciphertext domain reversible information hiding. Attached Figure Description
[0057] Figure 1 This is a general schematic diagram of the 3D ciphertext field reversible information hiding method according to an embodiment of the present invention.
[0058] Figure 2 This is a flowchart illustrating the specific processing steps for prediction error detection in an embodiment of the present invention.
[0059] Figure 3 This is a flowchart illustrating the specific processing steps of the data embedding process in an embodiment of the present invention.
[0060] Figure 4 The figure shows the experimental results of an embodiment of the present invention. Detailed Implementation
[0061] The technical solution of the present invention will now be described in detail with reference to the accompanying drawings.
[0062] This invention provides a 3D ciphertext domain reversible information hiding method based on spatial clustering. Taking the Princeton segmentation benchmark (PSB) 3D dataset as an example, combined with the attached... Figure 1 2, 3, Detailed explanation of the implementation steps of the present invention:
[0063] I. Processing on the Model Owner's Side
[0064] Step 1a: First, normalize the vertex coordinates and represent the 3D model as M = {V, F}, where the vertex set V = {v1, v2, ..., v...} N} and the face set F = {f(v i ,vj ,v k )|v i ,v j ,,v k ∈V}. Where N is the number of vertices in the model, f(v i ,v j ,v k ) is vertex v i ,v j ,v k The triangular faces formed determine the minimum boundary B of the model in the three coordinate dimensions. min The value is:
[0065]
[0066] Among them, [x m ,y m ,z m These are the minimum values of the model in the three coordinate dimensions. A coordinate transformation is performed on each vertex to convert the vertex coordinates of the 3D model to coordinate values in the 0-1 range. The calculation formula for the coordinate transformation process is as follows:
[0067]
[0068] Among them, R i It is the scaling ratio to the 0-1 range, and k is the integer number of digits of the maximum vertex coordinate value after the 3D model is translated.
[0069] Step 1b: Compression model, under the control of the compression threshold m, convert the floating-point coordinate values in the above 0-1 interval into integer coordinate value tuples J. i Calculate the compressed vertex integer coordinates J i The formula is shown below, where, It is a floor function.
[0070]
[0071] Step 1c: Perform coordinate transformation, and convert the integer coordinate values J of the compressed model according to the compression threshold m. i The coordinate value j converted into a fixed-length L binary representation i,p To store compressed 3D models, where J i This refers to the compressed integer coordinates of the vertices, j i,p This refers to the coordinate value j in binary representation. i,p The conversion process and the formula for calculating the length L of the binary representation are as follows:
[0072]
[0073] Step 1d: Multi-level spatial clustering divides the 3D model space. A multi-level spatial clustering algorithm is used to divide the vertices in the 3D model space into non-overlapping subspaces. For example, the initial clustering of model vertices results in k1 clusters, obtaining relatively compact subspaces. Then, each subspace is clustered again, with the number of clusters being k², to obtain the final compact subspace. The calculation formula is as follows:
[0074] S = Clustering(J,k1)(6)
[0075]
[0076] Where J represents the transformed integer coordinates, Clustering represents the existing clustering algorithm; S refers to the set of k1 clusters obtained after clustering, s i Let c represent the i-th cluster in set S. j Indicates the cluster s i The cluster set obtained after further clustering;
[0077] Step 1e: Search for the optimal reference point. Treat each cluster as an independent sub-unit, take each vertex in the cluster as a reference vertex in turn, and take the other vertices in the cluster as embedding vertices. Perform multi-MSB prediction on the reference vertex r and the embedding vertex e to calculate the embeddable length I of the embedding vertex. r,e This allows us to identify the reference vertex that maximizes the sum of the embeddable lengths of the subspace, which is then used as the optimal reference vertex.
[0078]
[0079] Step 1f: Remesh the 3D model, group the vertices according to their cluster indices, place the best reference point of each cluster at the beginning of the group, and update the indices of the vertices in the face set according to the reordered position indices.
[0080] Step 1g: Perform prediction error detection, use the basic embedding length of the reference vertex as the reserved embedding space to embed data. For the embedded vertex, perform multi-MSB prediction on the reference vertex and the embedded vertex to calculate the embeddable length of the embedded vertex.
[0081] Step 1h: Generate a random sequence using encryption key k E Generate a binary random sequence b;
[0082] Step 1i: Encryption Model. Sampling L bits consecutively from the binary random sequence b, then performing an XOR operation with the binary representation of the vertex coordinates, yields the encryption model. The calculation formula is as follows:
[0083]
[0084] Where j i,p The k-th bit of the binary representation of the coordinates of vertex i after transformation, b i,k It is the message of the kth bit after continuous sampling of the binary random sequence b; its encryption method is not limited to stream encryption, and can be adapted to symmetric encryption algorithms such as RC4, DES, AES, SM1 and SM4.
[0085] Step 1j: Characterize the label graph, treating the compression threshold m, the embeddable length I of each embedded vertex, and the number of vertices Num in each cluster as labels:
[0086] label={m,I,Num}(10)
[0087] Step 1k: Compression coding. Fixed-length coding is used for the compression threshold. For the embeddable length of each vertex and the number of vertices in each cluster, the symbol frequency of the embeddable length of each vertex and the symbol frequency of the number of vertices in each cluster are statistically analyzed. Huffman coding trees are constructed based on these frequencies. By traversing the constructed Huffman coding trees, the coding results for each embedding length and vertex number are obtained. The final label graph is represented as a binary sequence of length HL, which is determined by the compression threshold, the Huffman coding tree structure, and the coding results.
[0088] Step 11: Embed the label graph by embedding the label graph into the basic embedding length EL of each vertex (including the reference vertex) using a bit substitution strategy. B If the length HL exceeds 3×EL N ×N, where N is the number of vertices in the input model, then the predicted embedding length EL embedded into the embedded vertices. P In the binary bits, an encryption model E′(M) with an embedded tag graph is generated.
[0089] II. Data Hider Side Processing
[0090] Step 2a: Use the data hiding key k D Generate a binary random sequence s, then XOR it with the secret message AD to obtain the encrypted secret message ED. The calculation formula is as follows:
[0091]
[0092] Step 2b: Data Embedding. The data hider extracts the label graph from the cryptographic model E′(M) with embedded label graphs, extracts the Huffman coding tree sequence from the label graphs, reconstructs the Huffman coding tree and retrieves the encoding of each symbol, decodes the Huffman coding result, and thus determines the reserved embedding space. Finally, the encrypted secret message is embedded into the remaining available embedding space using a bit substitution strategy to generate a labeled cryptographic model, calculated as follows:
[0093]
[0094] Among them ED i It is the encrypted secret message, the i-th bit message, I. i is the embeddable length of the i-th vertex, and j represents the x, y, z coordinate axes.
[0095] II. Processing at the Model Receiver End
[0096] Step 3a: Extract the secret message. The model receiver can obtain the embedding length of each embedded vertex by extracting the label graph. The encrypted secret message is then extracted from the embedding space of the labeled encrypted model vertex coordinates and combined with the data hiding key k. D Generate a binary random sequence and perform an XOR operation to obtain the decrypted message.
[0097] Step 3b: Recover the model. The model receiver can obtain the embedding space of each embedded vertex by extracting the label graph, and then combine the coordinates of the labeled encrypted model vertices with the encryption key k. E The generated binary random sequence is XORed to obtain a preliminary decryption model. Then, the basic embedding length of the reference vertex coordinate values is set to 0 to recover the coordinates of the reference points, and the embedded vertex coordinates can be recovered from their corresponding reference vertices using prediction error detection.
[0098] Step 3c: Secret Message Extraction and Recovery Model: The model receiver simultaneously possesses the encryption key k E and data hiding key k D The model can be recovered and the secret message extracted using the steps described above. The secret message extraction and model recovery operations can be performed in any order and are separable.
[0099] In summary, this invention proposes a reversible information hiding method for 3D encrypted domains based on spatial clustering, combining multi-level clustering algorithms and multi-MSB prediction technology. First, a multi-level spatial clustering algorithm groups nearest-neighbor vertices into the same cluster space, ensuring the proximity of vertices within the cluster space. Then, an optimal reference vertex search algorithm is used for each cluster space to identify the best reference vertex, maximizing the embedding space. Subsequently, in each cluster space, multi-MSB prediction is performed on the reference vertex and the embedded vertex to calculate the embeddable length of the embedded vertex. Furthermore, the basic embedding length of the reference vertex is used as additional embedding space to further improve the embedding capacity. Finally, a bit substitution strategy is used to embed the data into the reserved embedding space. This scheme utilizes multi-level spatial clustering and the optimal reference vertex search algorithm to ensure the proximity of vertices in the cluster space, fully leveraging the spatial coordinate redundancy between vertices to achieve higher embedding capacity and lower computational overhead, while supporting reversibility and separability. The proposed scheme provides a robust, high-capacity, and scalable solution for secure data embedding of encrypted 3D models, and can be widely applied to real-world 3D, computer graphics, and digital twin applications.
[0100] The above description, in conjunction with the preferred embodiments, provides a further detailed explanation of the present invention and should not be construed as limiting the specific implementation of the invention to these descriptions. Those skilled in the art should understand that various modifications to the details may be made without departing from the scope defined by the appended claims, and all such modifications should be considered to fall within the protection scope of the present invention.
[0101] To evaluate the embedding capacity of this method, the average net embedding capacity of this method and other related methods [1-7] was compared on 380 models provided by the Princeton ShapeSegmentationBenchmark model database [8]. The comparison results are as follows: Figure 4 As shown in the figure, the comparison reveals that the method proposed in this invention achieves the highest average embedding capacity on the PSB model database compared to other methods, improving upon the current state-of-the-art methods by nearly 9.7 bits per vertex. This fully demonstrates the superior performance of the spatial clustering-based reversible information hiding method for encrypted 3D models proposed in this invention.
[0102] [1]Y.-Y.Tsai,“Separable reversibledata hiding for encrypted three-dimensional models based on spatial subdivision and space encoding,”IEEETrans.Multimedia,vol.23,pp.2286-2296,2021,doi:10.1109 / TMM.2020.3009492.
[0103] [2]B.J.V.Rensburg,P.Puteaux,W.Puech,and J.P.Pedeboy,“Homomorphic two-tier reversible data hiding in encrypted 3D objects,”in Proc.IEEEInternational Conference Image Process,pp.3068-3072,2021,doi:10.1109 / ICIP42928.2021.9506320.
[0104] [3]Z.Yin,N.Xu,F.Wang,L.Cheng,and B.Luo,“Separable reversibledatahiding based on integer mapping and multi-MSB prediction for encrypted 3Dmesh models,”in Proc.Chin.Conf.Pattern Recognit.Comput.Vis.,2021,pp.336-348,doi:10.1007 / 978-3-030-88007-1_28.
[0105] [4]W.-L.Lyu,L.Cheng,and Z.Yin,“High-capacity reversibledata hiding inencrypted 3D mesh models based on multi-MSB prediction,”Signal Process.,vol.201,Dec.2022,Art no.108686,doi:10.1016 / j.sigpro.2022.108686.
[0106] [5]Y.Tang, L.Cheng, W.Lyu, and Z.Yin, "High-capacity reversibledatahiding for encrypted 3D mesh models based on topology," in Proc.21stInt.Workshop Digit.Forensics Watermarking,pp.205-218,2023,doi:10.1007 / 978-3-031-25115-3_14.
[0107] [6] Y.-Y.Tsai, and H.-L.Liu, “Integrating coordinate transformation and random sampling into high-capacity reversible data hiding in encryptedpolygonal models,” IEEE Trans.Depend.Sec.Comput., vol.20, no.4, pp.3508-3519, Jul. / Aug.2023, doi:10.1109 / TDSC.2022.3204291.
[0108] [7] G.Hou, B.Ou, M.Long, and F.Peng, "Separable reversibledata hiding forencrypted 3D mesh models based on octree subdivision and multi-MSBprediction," IEEE Trans.Multimedia., vol.26, pp.2395-2407, 2024, doi:10.1109 / TMM.2023.3295578.
[0109] [8]
[0110] On the other hand, embodiments of the present invention also provide a 3D ciphertext domain reversible information hiding system based on spatial clustering, comprising:
[0111] The processor and memory are used to store program instructions, and the processor is used to call the stored instructions in the memory to execute a 3D ciphertext domain reversible information hiding method based on spatial clustering as described in the above technical solution.
[0112] The specific embodiments described herein are merely illustrative of the spirit of the invention. Those skilled in the art to which this invention pertains may make various modifications or additions to the described specific embodiments or use similar methods to substitute them, without departing from the spirit of the invention or exceeding the scope defined by the appended claims.
Claims
1. A method for reversible information hiding in a 3D ciphertext domain based on spatial clustering, characterized in that, Includes the following steps: Step S1: The model owner performs coordinate transformation on the vertex coordinates of the 3D model, compresses the model, and converts the floating-point coordinates into integer coordinates. Step S2: The model owner applies a multi-level spatial clustering algorithm to divide the vertices of the 3D model into mutually exclusive cluster spaces. In each cluster space, an adaptive optimal reference vertex search algorithm is applied to identify the best reference vertex and re-mesh the 3D model. Then, prediction error detection is performed on the best reference vertex and the embedded vertex to determine the embedding length of each embedded vertex. The specific implementation method of step S2 is as follows: S21, Perform multi-level spatial clustering: Use a multi-level spatial clustering algorithm to divide the vertices in the 3D model space into non-overlapping subspaces; firstly, perform initial clustering on the model vertices, with the number of clusters being... This results in a relatively compact subspace. Then, clustering is performed again on each subspace, resulting in a cluster size of [number]. This yields the final compact subspace. The calculation formula is as follows: in These are the transformed integer coordinate values; This represents existing clustering algorithms; The result obtained after clustering A set of clusters, Represents a set The Middle cluster, Indicates cluster The cluster set obtained after further clustering; S22, Searching for the optimal reference point: Treat each cluster as an independent sub-unit, and take each vertex in the cluster as a reference vertex in turn. The other vertices in the cluster are then used as embedded vertices. and embedded vertices The embedding length of the embedding vertex is calculated by performing multiple most important bit prediction. This allows us to identify the reference vertex that maximizes the sum of the embedding lengths of the subspaces, which is then used as the optimal reference vertex. S23, Remesh the 3D model, group the vertices according to their cluster indices, place the best reference point of each cluster at the beginning of the group, and update the index of the vertices in the face set according to the reordered position index based on the vertex index; S24, perform prediction error detection, use the basic embedding length of the reference vertex as the reserved embedding space to embed the data, and for the embedded vertex, perform Multi-MSB prediction to calculate the embedding length of the embedded vertex. Step S3: The model owner uses the encryption key to encrypt the 3D model to obtain the encrypted model; Step S4: The model owner represents the compression threshold, vertex embedding length, and number of vertices in each cluster in the label graph, compresses it using compression coding technology, and embeds it into the encrypted model through a bit substitution strategy to obtain an encrypted model containing the label graph. Step S5: The data hider extracts the label graph from the encrypted model containing the label graph to identify the reserved embedding space, and uses the data hiding key to embed the secret message into the reserved embedding space, generating a labeled encrypted model and sending it to the model receiver. In step S6, after obtaining the encrypted model with the tag, the model receiver performs model decryption or data extraction based on the key it possesses.
2. The 3D ciphertext domain reversible information hiding method based on spatial clustering as described in claim 1, characterized in that: The specific implementation method of step S1 is as follows: S11, Normalization: Representing the 3D model as... , where the vertex set and face set ,in It refers to the number of vertices in a 3D model. It is the vertex The triangular faces formed determine the minimum boundary of the model in the three coordinate dimensions. The value is: in, These are the minimum values of all vertices of the model in the three coordinate dimensions. They are the first The coordinates of each vertex in three dimensions This means taking the minimum value; performing coordinate transformation on each vertex so that the vertex coordinates of the 3D model are transformed to coordinate values in the 0-1 range; S12, Compression Model: At the compression threshold Under the control of [the system / mechanism], the floating-point coordinate values in the above 0-1 interval are converted into integer coordinate values. Calculate the compressed vertex integer coordinates. The formula is shown below, where, It is a floor function; in, It is the scaling ratio to the 0-1 range; S13, Coordinate Transformation: Based on Compression Threshold Compress the integer coordinate values of the model Convert to fixed length coordinate values in binary representation To store compressed 3D models, where It refers to the compressed integer coordinate values of the vertices.
3. The 3D ciphertext domain reversible information hiding method based on spatial clustering as described in claim 2, characterized in that: In S11, the formula for calculating the vertex coordinates of the 3D model to be transformed into coordinate values in the 0-1 range is as follows: in, It is the integer number of digits of the maximum vertex coordinate value after the 3D model is translated.
4. The 3D ciphertext domain reversible information hiding method based on spatial clustering as described in claim 2, characterized in that: In S13, With the length of the binary representation The calculation formula is as follows:
5. The 3D ciphertext domain reversible information hiding method based on spatial clustering as described in claim 1, characterized in that: The specific implementation method of step S3 is as follows: S31, Generate a random sequence using the encryption key. Generate binary random sequences ; S32, an encryption model for binary random sequences. Continuous sampling The bits are then XORed with the binary representation of the vertex coordinates to obtain the encryption model; the calculation formula is as follows: in It is the vertex The transformed coordinate values are represented in binary as the first... Bit, For binary random sequences After continuous sampling, the first BitMessage, It is the bit length of the coordinate value in binary representation.
6. The 3D ciphertext domain reversible information hiding method based on spatial clustering as described in claim 1, characterized in that: The specific implementation method of step S4 is as follows: S41, Characterization Label Map: Compression Threshold Embedding length of each embedded vertex The number of vertices in each cluster Consider it a label: S42, Compression Coding: Fixed-length coding is used for the compression threshold. For the embedding length of each embedded vertex and the number of vertices in each cluster, the symbol frequency of the embedding length of each embedded vertex and the symbol frequency of the number of vertices in each cluster are statistically analyzed. Huffman coding trees are constructed based on these frequencies. By traversing the constructed Huffman coding trees, the coding results for each embedding length and the number of vertices are obtained. The final label graph is represented as a graph of length [missing information]. The length of the binary sequence is determined by the compression threshold, the Huffman coding tree structure, and the encoding result. S43, Embedding the Label Graph: Embedding the label graph into the basic embedding length of each vertex using a bit substitution strategy. In the middle, if the length Exceed ,in If the number of vertices in the input model is a given value, then the predicted embedding length is the length of the embedding vertices. Generate an encryption model with embedded tag graphs from the binary bits. .
7. The 3D ciphertext domain reversible information hiding method based on spatial clustering as described in claim 1, characterized in that: The specific implementation method of step S5 is as follows: S51, Encrypting Secret Messages: Using Data Hiding Keys Generate binary random sequences Then with secret messages Perform an XOR operation to obtain the encrypted secret message. The calculation formula is as follows: S52, Embedded Data: Data hiders from cryptographic models with embedded label graphs The process involves extracting a label graph, extracting a Huffman coding tree sequence from the label graph, reconstructing the Huffman coding tree and retrieving the encoding of each symbol, decoding the Huffman coding result to determine the reserved embedding space. Finally, the encrypted secret message is embedded into the remaining available embedding space using a bit substitution strategy to generate a labeled encryption model. The calculation formula is as follows: in It is an encrypted secret message. BitMessage, It is the first The embedding length of each vertex. express coordinate axes It refers to the number of vertices in a 3D model. Indicates taking the remainder. It is the bit length of the coordinate value in binary representation.
8. The 3D ciphertext domain reversible information hiding method based on spatial clustering as described in claim 1, characterized in that: The specific implementation method of step S6 is as follows: S61, Extracting the Secret Message: The model receiver obtains the embedding length of each embedded vertex by extracting the label graph, extracts the encrypted secret message from the embedding space of the labeled encrypted model vertex coordinates, and then combines it with the data hiding key. Generate a binary random sequence and perform an XOR operation to obtain the decrypted message; S62, Model Recovery: The model receiver obtains the embedding space of each embedded vertex by extracting the label graph, and then compares the coordinates of the labeled encrypted model vertices with the encryption key. The generated binary random sequence is XORed to obtain a preliminary decryption model; then the basic embedding length of the reference vertex coordinate values is set to 0 to recover the coordinates of the reference points, while the embedded vertex coordinates are recovered from their corresponding reference vertices by using prediction error detection; S63, Extracting Secret Messages and Recovering the Model: The model recipient simultaneously possesses the encryption key. and data hiding key The model is restored and the secret message is extracted through steps S62 and S61, respectively; the secret message extraction and model restoration operations are executed in any order and are separable.
9. A 3D ciphertext domain reversible information hiding system based on spatial clustering, characterized in that, include: The processor and memory, wherein the memory is used to store program instructions, and the processor is used to call the stored instructions in the memory to execute the 3D ciphertext domain reversible information hiding method based on spatial clustering as described in any one of claims 1-8.