An Effective Authentication Algorithm for Polygonal Models with High Embedding Capacity

Fragile watermarking algorithms for 3D models has attracted extensive research attention in recent years. Although many literatures have proposed lots of solutions on this issue, low embedding capacity and inaccurate located tampered region are still presented. Higher embedding capacity can reduce the probability of false alarms for authentication, while accurate tamper localization can detect all the modified vertices with fewer unaltered ones. This study proposes three strategies to enhance the embedding capacity and the detection accuracy of our previous algorithm. First, the modified message-digit substitution table can increase the embedding capacity by 11.5%. Second, the modified embedding ratio generation method can be integrated to raise the embedding capacity by about 47.74%. Finally, the strategy adopting a reduced number of reference vertices for authentication code generation accompanying the above two ones improves the embedding capacity up to 123.74%. Extensive experiments show that the proposed algorithm can achieve superior performance in terms of embedding capacity and tamper localization accuracy. Further, the model distortion between the original and the marked ones is small.


Introduction
The rise of Internet changes human behavior significantly. Multimedia content can be rapidly shared and dispersed all over the world with the advanced network technology. However, Internet also breeds new information security problems, such as piracy, reproduction, and tampering. Copyright marking algorithms [1] can prevent the above problems from occurring, and robust watermarking and fragile watermarking are two main branches according to their different applications.
Robust watermarking algorithms [2][3][4] can detect copyright information and protect intellectual property rights even when the protected multimedia content is under different malicious attacks. However, fragile watermarking algorithms [5][6][7] can effectively detect and locate the tampered locations even if the protected multimedia content has minimum modifications. Some fragile watermarking algorithms even have the capacity for self-recovery. Recently, some authors [8] proposed a distributed and tamper-proof media transaction framework. The unique watermark information contains a cryptographic hash of the transaction histories in the blockchain and an image hash preserving retrievable original media content. The first part of the watermark is to retrieve the historical transaction trail and the latter part is used to identify the tampered regions. Consequently, copyright marking is still a research topic that deserves our attention.
Whereas fragile watermarking has been extensively studied in images [9][10][11][12][13][14], videos [15,16], and audio [17,18], there are still few studies discussing its application in 3D models. According to the size of the tampered region localization, 3D fragile watermarking algorithms can be classified as either vertex-based or region-based ones. A vertex-based algorithm can exactly locate a modified vertex, whereas a region-based one can only locate a rough region with some unaltered vertices inside. However, a region-based fragile watermarking algorithm has the ability to detect the modification of the topological relationship between vertices.
The first fragile watermarking algorithm on 3D polygonal models was proposed by Yeo and Yeung [19]. They iteratively moved the vertices to new positions to make the location and value indexes, calculated from pre-defined hash functions, consistent. Lin et al. [20] proposed a local mesh parametrization approach to perturb the coordinates of invalid vertices to eliminate the causality problem caused by Yeo and Yeung. Molaei et al. [21] proposed a QIM-based fragile watermarking for 3D triangular mesh models. Watermark data is embedded into the middles of three sides of a marked triangle in the spherical coordinate system. The recognition accuracy and the embedding capacity can be enhanced by increasing the number of marked triangles. To solve the problem of low embedding capacity, Tsai et al. [6] proposed a low-complexity, high-capacity, distortion-controllable, region-based fragile watermarking algorithm with a high embedding rate for 3D polygonal models. A vertex traversal scheme subdivides the input polygonal model into several overlapping embedding blocks, each with one embeddable vertex and its reference vertices. The authentication code is generated by feeding the local geometrical properties of each block into a hash function. The embeddable vertex is then embedded with the authentication code and its vertex coordinates are modified based on a simple message-digit substitution scheme.
Tsai et al.'s proposed algorithm had a higher embedding rate and higher embedding capacity than up-to-date literature. However, the problems of low embedding capacity and inaccurately located tampered regions have not been resolved. The proposed algorithm comprehensively considers three issues that are not discussed in our previous scheme. Thus, the proposed algorithm offers three advantages over the previous method, including higher embedding capacity, higher embedding rate, and accurate tamper localization. In this paper, we employ modified message grabbing and modified embedding ratio generation methods to resolve the problem of low embedding capacity. In addition, we adopt a reduced number of reference vertices for authentication code generation, providing a significant improvement on embedding capacity and embedding rate. Furthermore, the accuracy of tamper localization is consequently raised. Finally, extensive experimental results demonstrate the feasibility of the proposed algorithm.
The rest of paper is organized as follows. In Section 2, Tsai et al.'s proposed algorithm is introduced. In Section 3, we give detailed descriptions of our three strategies to improve the embedding capacity. Section 4 shows the experimental evaluations; finally, conclusions and future studies are made in Section 5.

Tsai et al.'s Proposed Algorithm
This section provides a review of Tsai et al.'s proposed algorithm, and its flowchart is shown in Figure 1. The proposed algorithm inputs a polygonal model with vertices and its topological information and then constructs a vertex neighboring table in the preprocessing process. The polygonal model is subdivided into lots of overlapping embedding blocks, each with one embeddable vertex and its reference vertices, based on an iterative vertex traversal mechanism. Each block is the basic element for the authentication code generation, embedding, reconstruction, and tamper localization processes. Taking the embedding block shown in Figure 2 for example, V 1 is the embeddable vertex and R 1 , R 2 , R 3 , and R 4 are the reference vertices of V 1 . G 1 is the center of the reference vertices of V 1 .
For each embedding block, the local geometrical property concerning the topological relationship is fed into the hash function to obtain the authentication code. Thereafter, the authors calculated the embedding ratio between the length of the embeddable vertex to the center of its reference vertices and the summation of all sides of the reference vertices for message embedding. Continuing the example in Figure 2, the embedding ratio A V 1 is shown in (1), where S V 1 is the summation of all sides R 1 R 2 , R 2 R 3 , R 3 R 4 , and R 4 R 1 .
Finally, the authors select parts of the authentication code to embed into above ratio. The data-embedded ratio A V 1 is derived by modifying the next few decimal digits after the first non-zero one of A V 1 using a simple message-digit substitution mechanism shown in Table 1.
The data-embedded vertex can be then obtained following the direction of −− V 1 G 1 with a data-embedded ratio. Figure 3 shows the modification example, where V 1 is the vertex with the authentication code embedded. Experimental results demonstrate the feasibility of the proposed algorithm.  For each embedding block, the local geometrical property concerning the topological relationship is fed into the hash function to obtain the authentication code. Thereafter, the authors calculated the embedding ratio between the length of the embeddable vertex to the center of its reference vertices and the summation of all sides of the reference vertices for message embedding. Continuing the example in Figure 2, the embedding ratio is shown in (1), where is the summation of all sides , , , and .
Finally, the authors select parts of the authentication code to embed into above ratio. The dataembedded ratio is derived by modifying the next few decimal digits after the first non-zero one of using a simple message-digit substitution mechanism shown in Table 1. The data-embedded vertex can be then obtained following the direction of with a data-embedded ratio. Figure 3 shows the modification example, where ′ is the vertex with the authentication code embedded. Experimental results demonstrate the feasibility of the proposed algorithm.  For each embedding block, the local geometrical property concerning the topological relationship is fed into the hash function to obtain the authentication code. Thereafter, the authors calculated the embedding ratio between the length of the embeddable vertex to the center of its reference vertices and the summation of all sides of the reference vertices for message embedding. Continuing the example in Figure 2, the embedding ratio is shown in (1), where is the summation of all sides , , , and .
Finally, the authors select parts of the authentication code to embed into above ratio. The dataembedded ratio is derived by modifying the next few decimal digits after the first non-zero one of using a simple message-digit substitution mechanism shown in Table 1. The data-embedded vertex can be then obtained following the direction of with a data-embedded ratio. Figure 3 shows the modification example, where ′ is the vertex with the authentication code embedded. Experimental results demonstrate the feasibility of the proposed algorithm.  Finally, the authors select parts of the authentication code to embed into above ratio. The dataembedded ratio is derived by modifying the next few decimal digits after the first non-zero one of using a simple message-digit substitution mechanism shown in Table 1. The data-embedded vertex can be then obtained following the direction of with a data-embedded ratio. Figure 3 shows the modification example, where ′ is the vertex with the authentication code embedded. Experimental results demonstrate the feasibility of the proposed algorithm.

The Proposed Algorithm
This section shows three improvement methods to provide higher embedding capacity than Tsai et al.'s proposed algorithm, including modified message grabbing, modified embedding ratio generation [22], and a reduced number of reference vertices for message embedding. The proposed algorithm can also support higher embedding rate and accurate tamper localization.

Modified Message Grabbing Method
The authentication code embedding process in Tsai et al.'s proposed algorithm used a simple message-digit substitution scheme shown in Table 1 to modify the embedded ratio. The distance with the center of its reference vertices for each embeddable vertex is consequently modified. Three-bit authentication code is grabbed one time and one more bit can be grabbed again if the above three-bit code equals 110 or 111. In our test, the embedding capacity rises effectively if a four-bit authentication code is firstly grabbed and the last bit is left for the next iteration if the grabbed four-bit binary code is larger than one-bit decimal digit. Table 2 shows our message-digit substitution table. The bit with a strikeout sign means that the bit should be left for next iteration because the decimal value for the grabbed four-bit binary code is larger than nine.

Modified Embedding Ratio Generation Method
From the above message-digit substitution table, we can know one decimal digit can have a three-to four-bit authentication code embedded. However, from the experimental results in Tsai et al.'s proposed algorithm, the number of most used decimal digits is three. It means most embedding ratios equal to 0.0XEEEN, where X is the first non-zero digit, E is the decimal digit that can have the authentication code embedded, and N is the digit without a message embedded for avoiding extraction error. If we can change the embedding ratio with the value of 0.0XEEEN to 0.XEEEEN, one more decimal digit can be used to further raise the embedding capacity.
We then modify the embedding ratio generation method shown in (1) from the summation of all sides of the reference vertices S V 1 to maximum, minimum, and average side length (see blue line in Figure 4) between the reference vertices for each embeddable vertex. The experimental results show that the embedding ratio using minimum side length can achieve highest embedding capacity.
Symmetry 2018, 10, x FOR PEER REVIEW 5 of 14 extraction error. If we can change the embedding ratio with the value of 0.0XEEEN to 0.XEEEEN, one more decimal digit can be used to further raise the embedding capacity. We then modify the embedding ratio generation method shown in (1) from the summation of all sides of the reference vertices to maximum, minimum, and average side length (see blue line in Figure 4) between the reference vertices for each embeddable vertex. The experimental results show that the embedding ratio using minimum side length can achieve highest embedding capacity.

Reduced Number of Reference Vertices for Authentication Code Generation
Tsai et al.'s proposed algorithm uses all the reference vertices for authentication code generation. Therefore, only 24 to 30 percent of vertices [6] can be message-embedded. This improvement adopts a user-defined embedding parameter within 0 and 1 to control the ratio of used reference vertices for each embeddable vertex. Equation (2) shows the controlling mechanism, where and are the original and final number of used reference vertices for the embeddable vertex . We then randomly obtain reference vertices for the remaining process.

= ×
However, not each vertex pair in the original input model has one edge to connect them. For the example shown in Figure 2, assume that , , and are the selected reference vertices for the embeddable vertex . Comparing Figure 2 with Figure 5, no edges are presented to connect the vertices and . To make the following processes correctly performed, we construct the 'virtual' edge to connect the corresponding two unconnected vertices.
becomes the center of the used reference vertices , , and . Further, the minimum number of used reference vertices is set as 3.

Experimental Evaluations
This section presents the experimental results obtained from twenty-five 3D polygonal models shown in Figure 6, where and mean the number of vertices and faces separately. Microsoft Visual C++ programming language was used to implement the proposed algorithm on a personal

Reduced Number of Reference Vertices for Authentication Code Generation
Tsai et al.'s proposed algorithm uses all the reference vertices for authentication code generation. Therefore, only 24 to 30 percent of vertices [6] can be message-embedded. This improvement adopts a user-defined embedding parameter p within 0 and 1 to control the ratio of used reference vertices for each embeddable vertex. Equation (2) shows the controlling mechanism, where ON V i and FN V i are the original and final number of used reference vertices for the embeddable vertex V i . We then randomly obtain FN V i reference vertices for the remaining process. extraction error. If we can change the embedding ratio with the value of 0.0XEEEN to 0.XEEEEN, one more decimal digit can be used to further raise the embedding capacity. We then modify the embedding ratio generation method shown in (1) from the summation of all sides of the reference vertices to maximum, minimum, and average side length (see blue line in Figure 4) between the reference vertices for each embeddable vertex. The experimental results show that the embedding ratio using minimum side length can achieve highest embedding capacity.

Reduced Number of Reference Vertices for Authentication Code Generation
Tsai et al.'s proposed algorithm uses all the reference vertices for authentication code generation. Therefore, only 24 to 30 percent of vertices [6] can be message-embedded. This improvement adopts a user-defined embedding parameter within 0 and 1 to control the ratio of used reference vertices for each embeddable vertex. Equation (2) shows the controlling mechanism, where and are the original and final number of used reference vertices for the embeddable vertex . We then randomly obtain reference vertices for the remaining process.

= ×
However, not each vertex pair in the original input model has one edge to connect them. For the example shown in Figure 2, assume that , , and are the selected reference vertices for the embeddable vertex . Comparing Figure 2 with Figure 5, no edges are presented to connect the vertices and . To make the following processes correctly performed, we construct the 'virtual' edge to connect the corresponding two unconnected vertices.
becomes the center of the used reference vertices , , and . Further, the minimum number of used reference vertices is set as 3.

Experimental Evaluations
This section presents the experimental results obtained from twenty-five 3D polygonal models shown in Figure 6, where and mean the number of vertices and faces separately. Microsoft Visual C++ programming language was used to implement the proposed algorithm on a personal (2) However, not each vertex pair in the original input model has one edge to connect them. For the example shown in Figure 2, assume that R 2 , R 3 , and R 4 are the selected reference vertices for the embeddable vertex V 1 . Comparing Figure 2 with Figure 5, no edges are presented to connect the vertices R 2 and R 4 . To make the following processes correctly performed, we construct the 'virtual' edge to connect the corresponding two unconnected vertices. G 1 becomes the center of the used reference vertices R 2 , R 3 , and R 4 . Further, the minimum number of used reference vertices is set as 3.
Symmetry 2018, 10, x FOR PEER REVIEW 5 of 14 extraction error. If we can change the embedding ratio with the value of 0.0XEEEN to 0.XEEEEN, one more decimal digit can be used to further raise the embedding capacity. We then modify the embedding ratio generation method shown in (1) from the summation of all sides of the reference vertices to maximum, minimum, and average side length (see blue line in Figure 4) between the reference vertices for each embeddable vertex. The experimental results show that the embedding ratio using minimum side length can achieve highest embedding capacity.

Reduced Number of Reference Vertices for Authentication Code Generation
Tsai et al.'s proposed algorithm uses all the reference vertices for authentication code generation. Therefore, only 24 to 30 percent of vertices [6] can be message-embedded. This improvement adopts a user-defined embedding parameter within 0 and 1 to control the ratio of used reference vertices for each embeddable vertex. Equation (2) shows the controlling mechanism, where and are the original and final number of used reference vertices for the embeddable vertex . We then randomly obtain reference vertices for the remaining process.

= ×
However, not each vertex pair in the original input model has one edge to connect them. For the example shown in Figure 2, assume that , , and are the selected reference vertices for the embeddable vertex . Comparing Figure 2 with Figure 5, no edges are presented to connect the vertices and . To make the following processes correctly performed, we construct the 'virtual' edge to connect the corresponding two unconnected vertices.
becomes the center of the used reference vertices , , and . Further, the minimum number of used reference vertices is set as 3.

Experimental Evaluations
This section presents the experimental results obtained from twenty-five 3D polygonal models shown in Figure 6, where and mean the number of vertices and faces separately. Microsoft Visual C++ programming language was used to implement the proposed algorithm on a personal

Experimental Evaluations
This section presents the experimental results obtained from twenty-five 3D polygonal models shown in Figure 6, where N V and N F mean the number of vertices and faces separately. Microsoft Visual C++ programming language was used to implement the proposed algorithm on a personal computer with an Intel Core i7-6700K 4.00 GHz processor and 16 GB RAM. The distortion between the original and marked models was measured by normalized root-mean-squared error, which is derived from dividing the root-mean-squared error by the model size. computer with an Intel Core i7-6700K 4.00 GHz processor and 16 GB RAM. The distortion between the original and marked models was measured by normalized root-mean-squared error, which is derived from dividing the root-mean-squared error by the model size. First, this section presents the embedding capacity comparison for each improved strategy with Tsai et al.'s proposed algorithm. We also show the model distortion for different embedding ratio generation methods. Finally, we present the experimental results for tamper detection to demonstrate the feasibility of our proposed algorithm. Table 3 shows the embedding capacity comparison under different embedding thresholds between Tsai et al.'s and our message grabbing method. The experimental results show that our message grabbing method can effectively raise the embedding capacity, exceeding 11.5% on average for all embedding thresholds. First, this section presents the embedding capacity comparison for each improved strategy with Tsai et al.'s proposed algorithm. We also show the model distortion for different embedding ratio generation methods. Finally, we present the experimental results for tamper detection to demonstrate the feasibility of our proposed algorithm. Table 3 shows the embedding capacity comparison under different embedding thresholds between Tsai et al.'s and our message grabbing method. The experimental results show that our message grabbing method can effectively raise the embedding capacity, exceeding 11.5% on average for all embedding thresholds.  Table 3. Experimental results for our message grabbing method. Average Improvement 11.56% 11.56% 11.53% Table 4 shows the embedding capacity comparison for different embedding ratio generation methods, including maximum (MAX), minimum (MIN), and average (AVE) of all the side lengths with the embedding threshold T = 1. The embedding capacity using the summation (SUM) method for each model is shown in Table 3. Obviously, the embedding ratio generation method using the minimum side length can have the maximum embedding capacity, improving by about 47.74% on average, with our modified message grabbing method. From the experimental results, we also found that the highest embedding capacity for each embeddable vertex in each 3D polygonal model is between 14 and 16. Four decimal digits of the calculated embedding ratio are used for data embedding, each with three or four bits. Table 5 shows the model distortion for each test model under different embedding ratio generation methods. The model distortion using the MIN method is only 0.009% of the model size, on average. This section shows the experimental results for adopting a reduced number of reference vertices during the authentication code generation. When not all reference vertices are used, the residual unused reference vertices may be the embeddable ones in some iterations. Because the number of embedded vertices is increased, and the total embedding capacity can be effectively raised. Table 6 shows the embedding rate under different embedding parameters for each test model. Obviously, the embedding rate can be effectively raised from 23.93~31.25% to 35.32~42.80%. Tables 7-9 show the embedding capacity comparison for each model under different embedding parameters. When the value of the embedding parameter p is smaller, it means the ratio of used reference vertices is decreased. The total embedding capacity is increased with more embeddable vertices. The improved ratio, on average, can be improved from 47.74% (see Table 4), 94.13%, or 121.37%, to 123.74% with different embedding parameters p using the minimum side length for authentication code generation.   Finally, Table 10 shows the number of detected suspicious vertices for each model under different embedding parameters. We randomly add or subtract 0.01% of the length, width, and height of the bounding volume of input model from the x, y, and z coordinate values of 50 vertices separately. The proposed algorithm is then used to perform tamper localization. Recall that a region-based tamper detection algorithm can only locate a rough region with some unaltered vertices inside. Therefore, any one vertex that is altered in the embedding block may lead to all the vertices within the block being regarded as suspicious. As the value of embedding parameter is decreased, the embedding block is smaller with fewer vertices. Thus, the number of suspicious vertices is decreased and the accuracy of the located tampered region is higher. The only exception is the results of embedding parameter 0.50 and 0.25 because their numbers of reference vertices for each embeddable vertex are similar.  Cow  636  367  257  272  Dinosaur  565  414  353  353  Dragon  1011  714  545  488  DragonFusion  553  419  346  339  Elephant  532  356  274  268  Gear  592  373  284  293  Golfball  706  411  247  249  Hand  587  398  311  303  HappyBuddha  685  488  418  429  Hippo  613  426  274  251  Horse  543  356  277  277  Lion  578  418  282  276  Lucy  570  375  271  277  Maxplanck  553  385  267  263  Rabbit  583  393  330  321  RockerArm  586  369  279  283  Screw  500  329  288  275  Teeth  513  368  295  289  VenusBody  498  356  290  290  VenusHead  594  379 286 286

Conclusions and Future Studies
This paper proposes three strategies to improve Tsai et al.'s proposed algorithm. We firstly modified the message grabbing method to raise the embedding capacity above 11.5%. Further, we also modified Tsai et al.'s embedding ratio generation method, increasing the embedding capacity to 47.74%. Finally, the strategy adopting a reduced number of reference vertices for message embedding accompanying the above two ones improves the embedding capacity up to 123.74%. The experimental results demonstrate the feasibility of the proposed algorithm with higher embedding capacity, higher embedding rate, and accurate tamper localization. Further, the model distortion between the original and the marked ones is small.
Future studies could fruitfully explore the proposed algorithm further for point geometries without topological relationship between vertices. Thereafter, providing self-recovery ability is another important research issue to be discussed.