Search

CN-121984688-A - Vector space data encryption method based on public key cryptosystem

CN121984688ACN 121984688 ACN121984688 ACN 121984688ACN-121984688-A

Abstract

The invention discloses a vector space data encryption method based on a public key cryptosystem. The method firstly carries out asymmetric encryption on integer parts of coordinate points of vector space data through an RSA principle. And secondly, carrying out scrambling encryption on the vector space data after asymmetric encryption through a chaotic sequence generated by a chaotic system to obtain final encrypted data. The invention combines the RSA and the chaotic system for the first time, realizes the non-pair encryption and the lossless decryption of the vector space data, and has wider application range and higher safety compared with the traditional vector space data encryption method. The method is not only suitable for vector space data, but also suitable for CAD data, three-dimensional point cloud, oblique photography three-dimensional model and other data.

Inventors

  • ZHANG LIMING
  • TAN TAO
  • YAN HAOWEN
  • Di Zhizhong
  • GAO LIMING

Assignees

  • 兰州交通大学

Dates

Publication Date
20260505
Application Date
20231107

Claims (2)

  1. 1. The vector space data encryption method based on the public key cryptosystem is characterized by comprising the following steps of: Reading vector space data to obtain X, Y coordinate sets of the vector space data; x, Y coordinates, wherein the encryption process is illustrated by taking the X coordinates as an illustration; Setting an identification number id, judging whether the coordinate value is negative, taking the coordinate value as an absolute value if the coordinate value is negative, and recording the identification number id=1 if the coordinate value is positive, and recording the identification number id=0; Shrinking X, Y coordinates by 10 to k times, and memorizing k; The reduced integer part of the coordinates is marked as X int , and the decimal part is marked as X float ; two large prime numbers are randomly selected by secret, and a public key (e, n) and a private key (d, n) are generated by using an RSA algorithm; performing asymmetric encryption on the reduced coordinates by using an RSA method, wherein X e is the result of integer asymmetric encryption; Updating the encrypted coordinate value X en , wherein X float is a scaled-down X coordinate fraction; X en =X e ×100+k×10+id+X float Carrying out hash operation on an initial key provided by a user by using an SHA-512 hash method, equally dividing the obtained 512-bit hash value as a key of the chaotic system into 64 groups, and respectively converting the 64 groups into decimal numbers to obtain 64 integers; Calculating an auxiliary parameter d by the formula d=mod ((sum×512), 63), comparing all values in the 64 integers with the d-th bit, setting 1 if d is larger than d, otherwise setting 0, wherein mod is a residual operator, sum is the total number of coordinates of the vector space data; The comparison result is equally divided into 8 groups and is represented by K' 1 ,K′ 2 ,K′ 3 ,…,K′ 8 , the two groups are combined, 4 parameters in the corresponding chaotic system are carried out, namely two chaotic variables X 0 ,Y 0 and two control variables beta 1 ,β 2 ;X 0 and beta 1 of the chaotic system are used for generating a chaotic sequence to encrypt an X coordinate, Y 0 and beta 2 are used for generating the chaotic sequence to encrypt a Y coordinate, decimal conversion is carried out respectively, the two chaotic sequences are used as initial values of the double chaotic system, the chaotic sequence is generated by iteration, a bin2dec function converts binary into decimal, For exclusive or operation, the calculation method is as follows: Performing N+S iterations according to the initial value of the chaotic system and the vertex coordinate number of a single vector geographic space element of the vector data, wherein S is the vertex coordinate number of the single element; The first N iterations are discarded, denoted as l= { L 1 ,l 2 ,…,l n }, the chaotic sequence in L is rounded up according to the following formula, where mod is the remainder operator, L i is the rounded up result, For the downward rounding operator, L i is the chaotic sequence in L, n is the number of vertex coordinates of a single element; And (3) scrambling and encrypting X, Y values of vertex coordinates of vector space data elements by using different chaotic sequences according to the sequence from n to 1, and then recombining the scrambled X, Y coordinate values.
  2. 2. A method of decrypting vector space data, comprising: Reading vector space data to be decrypted; The method for generating the chaotic sequence in the vector space data encryption method based on the public key cryptosystem according to claim 1, wherein the chaotic sequence is generated in the same way as the chaotic sequence during encryption; The method comprises the steps of (1) in the sequence from n to 1, firstly, carrying out unscrambling and decryption on X, Y values of vertex coordinates of vector space data elements by using a corresponding chaotic sequence, and then, recombining the unscrambled X, Y coordinate values; In asymmetric decryption, the decryption process of X, Y coordinates is consistent, and only the decryption process of X coordinates is described here; Reading the scrambled and decrypted coordinates, and recording the integer part of the coordinates as X ' int and the decimal part as X' float ; calculating the identification number id of the coordinate according to the following formula, wherein the original coordinate is reduced by 10 k times during encryption, and k is calculated according to the following formula; id=mod(X′ int ,10) k=(mod(X′ int ,100)-id)/10 Obtaining an encrypted integer X ' e by using the following formula, decrypting X ' e by using a private key (d, n), and obtaining a decryption result as X '; Restoring the original coordinate data using the following, wherein X is the restored coordinate value; and (5) ending.

Description

Vector space data encryption method based on public key cryptosystem Technical Field The invention belongs to the technical field of geographic information mapping safety, and relates to a vector space data encryption method based on a public key cryptosystem. Background Vector space data is widely applied to the fields of navigation, city planning and the like as one of novel infrastructures for national economy construction and national defense construction. With the development of information network technology, the transmission of vector space data becomes simpler, but the more frequent is the leakage and illegal copying thereof. In order to solve the increasingly serious problem of mapping geographic information safety, a series of laws and regulations are formulated at the national level, but the action of jeopardizing vector space data safety sometimes happens. Therefore, in order to better protect the security of vector space data, it needs to be protected from the technical layer. Encryption is a main technology for protecting the safety of vector space data, and the encryption technology can ensure the safety of the vector space data in a ciphertext state, and only an authorized user can decrypt and access the original vector space data after encryption. Wang Xiaolong in 2021, a double random scrambling vector space data encryption method is proposed, and the encryption method does not influence the precision of data and is suitable for high-precision vector space data. However, this method is only applicable to line data and plane data in vector space data, and is not applicable to point data. Yan Qingbo in 2023, a dynamic encryption method for DNA of vector space data is proposed, which can encrypt point data in vector space data. But there is a risk of leakage in its key distribution. Wu Baiyan in 2022, proposed an asymmetric encryption method for vector space data, but this method cannot achieve lossless decryption of data. The existing vector space data encryption method mainly has the defects that the existing method is mainly a symmetric encryption method and has the risk of key leakage, the existing lossless symmetric encryption method has application limitation and cannot encrypt all types of vector space data, and the existing asymmetric encryption method cannot realize lossless decryption. RSA is an asymmetric encryption technique in cryptography, commonly used for digital signature and key encryption. In RSA encryption, the encryption object needs to be converted into a positive integer. Thus, the integer part of the vector geospatial may be asymmetrically encrypted using RSA. And then, the spatial characteristics and the topological relation of the vector space data after asymmetric encryption are changed through the chaotic system, so that the encryption safety is improved. The invention combines the RSA and the chaotic system for the first time, realizes the non-pair encryption and lossless decryption of vector space data, and has higher safety. The method is not only suitable for vector space data, but also suitable for CAD data, three-dimensional point cloud, oblique photography three-dimensional model and other data. Disclosure of Invention The invention aims to provide a vector space data encryption method of a public key cryptosystem, which realizes the protection of various vector space data in the storage and transmission processes. In order to achieve the above object, the present invention provides the following solutions: an asymmetric encryption method for vector space data, comprising: Reading vector space data to obtain X, Y coordinate sets of the vector space data; the asymmetric encryption process of X, Y coordinates is completely consistent, and an X coordinate is taken as an example for detailed description; An identification number id is set to judge whether the coordinate value is negative. Taking absolute value of the coordinate value if the coordinate value is negative, and recording the identification number id=1, if the coordinate value is positive, recording id=0; Shrinking X, Y coordinates by 10 to k times, and memorizing k; the user secret randomly selects two large prime numbers, and generates a public key (e, n) and a private key (d, n) by using an RSA algorithm; Performing asymmetric encryption on the reduced coordinates by using an RSA method; Performing hash operation on an initial key provided by a user by using an SHA-512 hash method, taking the obtained 512-bit hash value as a key of the chaotic system, and uniformly dividing the 512-bit hash value into 64 groups and respectively converting the 64 groups into decimal numbers; calculating an auxiliary parameter d by the formula d=mod ((sum×512), 63), comparing all values in the 64 integers with the d-th bit, and setting 1 if d is larger than d, otherwise setting 0; The comparison result is divided into 8 groups and is represented by K' 1,K′2,K′3,...,K′8, the two groups are combined, 4 parameters in t