Several experiments were conducted to verify the effectiveness and versatility of the proposed algorithm. All experiments were implemented under Windows 10 64-bit PC with Intel(R) Core(TM) i5-10500, 3.10GHz CPU and 8GB RAM, running in the Python 3.7 platform. In the experiments, we downloaded the shapefile data of different sizes, regions and object types from OpenStreetMap (
http://download.geofabrik.de/, accessed on 10 January 2021) as original GIS vector maps, and selected a binary image with 32 × 64 pixels as the watermark image.
Figure 5a–c shows the original GIS vector maps, and the detailed information of these vector maps is listed in
Table 1.
Figure 6a,b shows the original watermark and the shuffled watermark. It is important to note that
,
,
are used as initial values of the 2D logistic chaotic map in the process of the watermark scrambling.
4.2. Commutativity Experiments
Commutativity refers to the mutual independence between the encryption and the watermarking algorithm, which is the key of a CEW algorithm. The commutativity requires that the operation order of encryption and watermark embedding has no impact on the final results, and the embedded watermark can be extracted before or after decryption.
To verify the commutativity between encryption and watermark embedding, Root-mean-square error (RMSE) is introduced to evaluate the difference between the E-Wed map and the W-Eed map. RMSE is calculated by Formula (17).
where
and
are the coordinates of two maps, respectively;
N is the number of vertices. The value of RMSE is closer to 0, the error between the two maps is smaller.
Table 2 displays the RMSE between the E-Wed maps and the W-Eed maps. Moreover, railways map is taken as an example, and the coordinates of some vertices in the E-Wed railways map and the W-Eed railways map are listed in
Table 3. It can be found from
Table 2 and
Table 3 that all vertices in both maps are identical, and their RMSEs are 0, which shows the E-Wed maps has the same content as the W-Eed maps. This is a good indication that the encryption operation and watermark embedding operation are commutative.
To verify the commutativity between decryption and watermark extraction, normalized correlation coefficient (
NC) is introduced to measure the difference between the original watermark and the extracted watermark. The definition of
NC is shown in Formula (18).
where
and
denote the original watermark image and the extracted watermark image respectively,
is the size of the watermark image, and
is the operator of exclusive
NOR. In this experiment, we extracted the watermark from the CEWed maps and the D-Wed maps respectively, and the
NC values are displayed in
Table 4. It is apparent that the
NC values are always 1, which shows that the decryption operation and the watermark extraction operation are commutative.
4.3. Encryption Security Analysis
- (1).
Key Space
The key space is an important evaluation indicator of key security. The key space should be large enough to resist exhaustive attacks, and the size of the key space should be greater than the standard requirement (i.e., 2
100) [
24]. The keys of proposed algorithm consist of the following two keys: the 512 bits hash value generated by user’s input key and the map file respectively. Therefore, the key length of proposed algorithm is 1024 bits, i.e., the size of key space is 2
1024, which is greater than 2
100. This shows that the proposed algorithm has strong resistance to exhaustive attacks.
- (2).
Key Sensitivity
Key sensitivity refers to the fact that the encrypted data will be changed dramatically and the decryption data cannot be obtained correctly when the key is modified even with minimal changes [
31]. The cypher data must be highly sensitive to the key.
To analyze the effect of key change on encryption results, the initial key
k1 and the modified key
k2 are used to encrypt the maps, respectively. The initial keys are
, and the modified keys are
.
Figure 9 shows the results of overlaying the encrypted maps with
k1 and the encrypted maps with
k2. It can be found that the encrypted maps with the modified keys are obviously different from the encrypted maps with the initial keys. Besides, to analyze the effect of different keys on the decryption results, we encrypted the original vector maps using
k1 and decrypted the maps using
k2.
Figure 10 shows the maps obtained by decrypting with
k2, and the correct decryption results have been given in
Figure 8a–c. It is apparent that the encrypted maps cannot be decrypted correctly even if the decryption key is slightly different from the encryption key. This shows that even a slight change of key can significantly affect the decryption result. Therefore, the proposed algorithm has strong key sensitivity.
4.4. Watermark Security Analysis
- (1).
Imperceptibility
Imperceptibility refers to the fact that the watermark information has no impact on the precision of the original vector maps, and it depends on the magnification of normalized coordinates (i.e.,
) and the quantization step (i.e.,
). In this experiment, the average distortion (
AveD) and the maximum distortion (
MaxD) are chosen to assess the imperceptibility of the watermarked maps. The
AveD and
MaxD are defined as follows:
where
N is the number of vertices,
is the maximum function,
and
are the coordinates of the original map and the watermarked map, respectively. In general, the accuracy of vector maps should not be lower than the minimum accuracy (10
−4 m) [
11].
Table 5 displays the relationship between
AveD,
MaxD,
NC and
when
, and
Table 6 lists the relationship between
AveD,
MaxD,
NC and
when
. It can be found from
Table 5 that the
NC values are 1 when n ranges from 4 to 8, and the
AveD is the lowest when
. Besides, as can be seen from
Table 6, the
NC values are always 1 when the value of
is between
and
. Thus, to balance the imperceptibility of the watermark and the data precision, we embedded the watermark information into the 8th decimal of the normalized coordinates (i.e.,
n = 8), and the quantification step is set to 5 × 10
−10 (i.e.,
).
- (2).
Watermark Robustness
Watermark robustness refers to the ability to reconstruct watermark information from the attacked vector maps. According to the practical application of the vector maps, the watermarked maps should be resistant to conventional attacks (e.g., vertex addition and deletion, reordering and data format conversion, etc.) and geometric attacks (e.g., rotation, scaling and translation, etc.). In this experiment, NC is used to verify the watermark robustness. In general, the NC value is closer to 1, the difference between the extracted watermark and the original watermark is smaller.
In the experiment of vertex attacks, vertex addition and deletion are performed on the watermarked maps, respectively. To ensure the reliability of the results, vertices are randomly added and deleted at certain ratios. we added the vertex from 10% to 100%, deleted the vertex from 10% to 60%, and the
NC value are displayed in
Table 7 and
Table 8. It can be clearly seen that the embedded watermark can still be extracted successfully, and the
NC values are still higher than the threshold of 0.8 even if the vertices are increased by 1× or 60% vertices are deleted. This shows that the proposed algorithm is highly resistant to vertex addition attack and vertex deletion attack.
Geometric attack is a common operation for vector map data. In the experiment, rotation, scaling and translation operation were performed on the watermarked maps. To ensure the reliability of the results, the watermarked maps were scaled from 0.2 to 6.0, translated from 10 to 100 m and rotated from 45° to 315°. The
NC results are listed in
Table 9,
Table 10 and
Table 11, respectively. The
NC values show the proposed algorithm has good robustness in resisting scaling and translation attacks, whereas it is not resistant to rotation attack.
To guarantee that the vector maps can be used in different GIS platforms, the proposed algorithm must be robust in resisting format conversion attack. In this experiment, the watermark information is embedded into the vector maps in the shapefile format, and then the watermarked maps are transformed into dwg format, e00 format or gdb format. It is worth noting that the vector maps need to be converted to shapefile format before extracting the watermark.
Table 12 reflects the results of watermark extraction, it is obvious that the watermark can be extracted successfully and that the NC values are always 1, which shows that the extracted watermark is not affected by data format conversion.
Reordering refers to rearrange the storage order of vector map data. The watermark embedding and extraction operations are implemented based on the coordinates of the vector maps, which is not affected by the storage order. In other words, the watermark embedding positions will not change if embedding occurs after the reordering of the vertices, and the embedded watermark can be correctly extracted by the original embedding positions. To further illustrate the reliability of the above theory, the storage order of objects was randomly disrupted and reordered in the watermarked maps. Results found that the NC values between the extracted watermark and the original watermark are always 1, which confirms that the reordering of objects has no effect on the extraction of the watermark information.
- (3).
Robustness comparisons
To further highlight the better performance of our method, the Railways map was used to implement the comparison with the existing methods [
2,
13,
24]. We compared their robustness in vertex attacks, geometric attacks and data format conversion attack.
Figure 11 displays the comparison results.
Figure 11a–b reflect that the proposed algorithm is more robust in resisting vertex addition attack and vertex deletion attack. As shown in
Figure 11c–f, the proposed algorithm has the same robustness as the existing methods [
2,
13,
24] in resisting data format conversion, scaling and translation attacks, whereas its robustness in resisting rotation attack is not as good as the existing methods [
2,
13,
24].
The above results show that the proposed algorithm is resistant to vertex attacks, scaling and translation attacks, data format conversion attack. However, the normalized coordinates are invariant to translation and scaling, but not to rotation. As a result, the proposed algorithm has no resistance to rotation attack.