A privacy protection method for indoor positioning based on inner product function encryption in cloud environment
Through the combination of internal product function encryption and efficient retrieval structure, the privacy protection problem of indoor positioning services in the cloud environment is solved, and efficient and secure indoor positioning services in the cloud environment are realized, maintaining positioning accuracy and reducing computing overhead.
Patent Information
- Application Number
- CN202211431955.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-16
- Publication Date
- 2025-08-19
- Estimated Expiration
- 2042-11-16
AI Technical Summary
In the cloud environment, the existing indoor positioning services have problems with user location privacy and location service provider data leakage, and the existing encryption methods have insufficient computing efficiency and data availability, which cannot meet the efficient and secure positioning requirements in the cloud environment.
The WiFi fingerprint database and user measurement information are encrypted using the internal product function encryption mechanism, and an efficient graph-based search structure is used to realize privacy-protected indoor positioning services through internal product calculation. Combining local sensitive hash and Bloom Filter to generate index vectors, building a hierarchical navigable small world graph search structure to reduce positioning calculation overhead.
It realizes privacy protection for users and positioning service providers in an untrusted cloud environment, maintains positioning accuracy while significantly reducing computing overhead, meets the real-time requirements of online positioning, and provides safe and efficient indoor positioning services.
Smart Images

Figure CN115767722B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of information security protection, and specifically relates to an indoor positioning privacy protection method based on inner product function encryption, which can be used to provide secure and efficient indoor positioning services in a cloud environment. Background Art
[0002] Indoor positioning technology has entered a period of rapid development. Indoor positioning services in cloud environments can integrate positioning resources, fuse positioning algorithms, provide continuous and seamless positioning services, and have outstanding advantages in terms of service scalability, reliability, flexibility, and deployment costs. Therefore, indoor positioning service (IPS) providers outsource positioning resource information and positioning algorithms to cloud service providers (CSPs) to provide positioning services to users. However, as a semi-trusted third party, CSPs may passively or actively leak users' location privacy and IPS data information, resulting in the leakage of more personal privacy information such as users' age, hobbies, and income levels, reducing users' willingness to accept indoor positioning services and restricting the promotion and application of indoor positioning services in cloud environments. Therefore, it is necessary to solve the problem of privacy protection of indoor positioning services in cloud environments.
[0003] In cloud-based indoor positioning services, it's crucial to protect not only the user's location and measurement information but also the positioning service provider's positioning resource information. Encryption is an effective method for ensuring data security. Even if an attacker illegally steals private data in the cloud, they cannot decrypt it to obtain the plaintext information. However, encryption compromises data availability, preventing the CSP from performing positioning calculations on the encrypted data. Current research on indoor positioning privacy protection primarily focuses on the traditional two-party architecture of user and positioning service provider, often employing methods such as homomorphic encryption and secure multi-party computation. These methods suffer from relatively low computational efficiency and are unsuitable for indoor positioning scenarios in cloud environments. Inner Product Encryption (IPE) is a novel encryption scheme that better balances data availability, security, and computational efficiency. It precisely controls the amount of information revealed to the decryptor in ciphertext, preventing the leakage of sensitive plaintext information. Decrypting ciphertext only yields the inner product of the plaintext, ensuring data security while maintaining a certain level of availability. It also offers high computational efficiency, making it suitable for providing efficient and secure positioning services in untrusted cloud environments. Currently, there is no research on indoor positioning privacy protection based on inner product function encryption in a cloud environment. To address the above technical issues, this patent proposes a method for indoor positioning privacy protection in a cloud environment based on inner product function encryption. The method converts the indoor positioning solution into a calculation process with inner product calculation as the core, and uses inner product function encryption to achieve comprehensive privacy protection that is fully integrated with positioning services in the cloud environment, while meeting the requirements of indoor positioning for accuracy, security and computational efficiency. Summary of the Invention
[0004] This paper proposes a privacy-preserving WiFi positioning method based on inner product encryption, enabling privacy-preserving indoor positioning services in cloud environments. This method utilizes an inner product encryption mechanism to encrypt the IPS provider's WiFi fingerprint database and user measurement information. The CSP then calculates the similarity between the measurement information and the database on the encrypted data, and utilizes an efficient graph-based retrieval structure to reduce the positioning computation overhead. This allows users and positioning service providers to complete positioning in an untrusted cloud environment without leaking any of their privacy information, while meeting the real-time requirements of online positioning.
[0005] The solution of the present invention is a method for protecting indoor positioning privacy in a cloud environment based on inner product function encryption. The method involves three parties: the user, the positioning service provider (IPS), and the cloud service provider (CSP), and includes an initialization phase, an offline phase, and an online phase.
[0006] In the offline phase, the positioning service provider first uses a Bloom filter based on Locality Sensitive Hashing (LSH) to generate an efficient index vector for the fingerprint database. The index vector is further constructed into a retrieval structure of a Hierarchical Navigable Small World (HNSW) and encrypted using an inner product function encryption mechanism. The location data is encrypted using the efficient AES symmetric encryption algorithm, and the encrypted fingerprint database and encrypted retrieval structure are uploaded to the CSP. In the online phase, the mobile terminal user also uses an LSH-based Bloom filter mapping to generate a positioning query trapdoor for the real-time fingerprint measurement information. The inner product function encryption mechanism is used to encrypt the information and send it to the CSP. The CSP executes a retrieval algorithm for the query trapdoor on the encrypted retrieval structure, obtains the index vector closest to the query trapdoor, and returns the corresponding encrypted location information in the database. The mobile terminal user performs lightweight AES symmetric decryption to obtain the positioning result. Due to the local sensitivity of the LSH function, the vectors generated after data is mapped into different spaces have the property of preserving distance. Therefore, the LSH-based Bloom filter achieves this distance-preserving effect. The inner product of two mapped index vectors indicates the degree of similarity between the original vectors, so using the mapped index vectors for positioning has a minimal impact on accuracy. The efficient retrieval structure built on HNSW significantly reduces computational overhead without significantly affecting positioning accuracy. Therefore, this solution achieves privacy-preserving positioning calculations while maintaining high positioning accuracy and computational efficiency.
[0007] Furthermore, the specific implementation of the initialization phase is as follows;
[0008] Step 1.1: The positioning service provider generates the public parameters pp and master private key msk of the inner product function encryption mechanism, as well as the key pk of the symmetric encryption algorithm;
[0009] The positioning service provider generates a bilinear group (G1, G2, G T ,q,e), where G1,G2,G T is a cyclic group of order q, g1 and g2 are generators of G1 and G2 respectively, and e represents the number of groups from G1 and G2 to G T Bilinear mapping; randomly sample the reversible matrix B from the universal linear group and calculate the adjoint matrix B of B * Finally, we get the public parameter pp=(G1,G2,G T ,q,e) and master key msk(pp,g1,g2,B,B *); In addition, the positioning service provider generates an AES key pk for encrypting the location information in the positioning database;
[0010] Step 1.2: The positioning service provider generates the LSH function family H = {H1, H2, ..., H l}, which contains l hash functions;
[0011] The positioning service provider sets the parameter w in LSH according to the characteristics of WiFi fingerprint, and then randomly samples from the standard normal distribution X~N(0,1) to obtain l groups of d-dimensional vectors {a i |i=1,2,…,l} and l random real numbers in [0,w] {b i |i=1,2,…,l}, thus obtaining a set of LSH functions
[0012] Furthermore, the specific implementation of the offline phase is as follows;
[0013] The positioning service provider maps, encrypts and deploys the positioning database. Assume that the positioning service provider has a WiFi fingerprint database. The database contains m records, each of which consists of an n-dimensional WiFi fingerprint vector RSS and the corresponding location coordinate loc;
[0014] Step 2.1: The positioning service provider uses the LSH function family H = {H1, H2, ..., H l Map each WiFi fingerprint vector and obtain l mapped subscript values:
[0015]
[0016] The positioning service provider generates m b-bit arrays I with an initial value of 0 i ,1≤i≤m, then I i The d ij The bit is set to 1, resulting in the index vector I F ={I1,I2,…,I m};
[0017] Step 2.2: The positioning service provider uses the index vector I F ={I1,I2,…,I m}, using the HNSW construction algorithm to build an efficient graph-based retrieval structure, where the index vector corresponds to the "node" in HNSW, and the neighbor relationship between nodes based on the inner product distance corresponds to the "edge" between nodes;
[0018] Step 2.3, the positioning service provider for each node I in HNSW i, i=1,2,…,m, use the secret key generation algorithm IPE.Keygen in the inner product function encryption mechanism to obtain the key sk after the index vector is encrypted i , that is, sk i =IPE.Keygen(I i ,pp), thus obtaining the encrypted retrieval structure E(hnsw);
[0019] Step 2.4: The positioning service provider uses the AES algorithm to encrypt the location coordinate information in the WiFi fingerprint database to obtain an encrypted location database.
[0020] In step 2.5, the positioning service provider uploads the encrypted retrieval structure E(hnsw), the encrypted location database E(loc), and the master private key msk encrypted by the inner product function to the CSP.
[0021] Furthermore, the calculation formula of the secret key generation algorithm IPE.Keygen in step 2.3 is as follows;
[0022]
[0023] The output of the algorithm sk i Contains two parts, namely K1 and K2, where K1 = g1 α·det(B) , Where det(B) represents the rank of matrix B, α is Z q The random number in, that is, α∈{1,2,…,q-1}, q is the group G1, G2 and G T The order of .
[0024] Furthermore, the specific implementation of the online stage is as follows;
[0025] The user requests online positioning services from the cloud service provider, including mapping and encryption of measurement information, positioning calculation by the cloud server, and user decryption operations;
[0026] Step 3.1: The user requests a location service from the location service provider. After being authenticated by the location service provider, the user obtains the LSH function family H, the public parameter pp of the inner product encryption mechanism, and the decryption key pk parameter of the location database.
[0027] Step 3.2, the user measures the information RSS based on the real-time fingerprint Q Generate Query Trapdoor I Q ;
[0028] Step 3.3, the user queries trap door I Q Use the encryption algorithm IPE.Encrypt in the inner product function encryption mechanism to obtain the encryption trapdoor ct Q=IPE.Encrypt(I Q ,pp), and ct Q Send to CSP to request online positioning service;
[0029] Step 3.4, CSP performs an encrypted trapdoor ct on the encrypted retrieval structure E(hnsw) Q To perform a query, the inner product between the query trapdoor and the index vector is calculated by running the decryption algorithm IPE.Decrypt of the inner product function encryption mechanism, that is, i ,I Q >=IPE.Drctypt(msk,ct Q ,sk i ), using the inner product as the distance metric in the HNSW search algorithm, obtain the k index vectors closest to the query trapdoor and return the corresponding encrypted position coordinates to the user;
[0030] In step 3.5, the positioning user uses pk decryption to obtain the plaintext location coordinates, and the user calculates the average value of these location coordinates as the final positioning result.
[0031] Furthermore, in step 3.2, the LSH function family H is used to calculate the RSS Q Mapping
[0032] d j =H j (RSS Q ),1≤j≤l
[0033] The user generates an array I containing b binary numbers Q , that is, a bloom filter of b bits, each element in the array is initialized to 0, and then I Q The d j Position 1, thus obtaining query trapdoor I q .
[0034] Furthermore, the calculation formula of the inner product function encryption algorithm IPE.Encrypt in step 3.3 is:
[0035]
[0036] The output of the algorithm ct Q Contains C1 and C2, where Where β is the user's q A random number selected from .
[0037] Furthermore, the decryption algorithm used in step 3.4 is:
[0038]
[0039]
[0040] Q ,I i >=dlog(D1,D2)
[0041] Where e(g1,g2) represents the bilinear mapping operation, dlog(D1,D2) represents the discrete logarithm of the bilinear mapping results D1,D2, that is, to find the integer z such that Established, mod represents the modular operation, the larger the calculated inner product value, the greater the similarity between the query trapdoor and the index vector, CSP searches for the encrypted position coordinates corresponding to the first k encrypted indexes closest to the encrypted trapdoor Return to the user.
[0042] Furthermore, the final positioning result in step 5 is
[0043]
[0044] Compared with other methods, the present invention has the following advantages:
[0045] First, the present invention designs a privacy-preserving indoor positioning solution in a cloud environment. Compared to traditional user-server-based positioning solutions, the present invention effectively leverages the cloud environment's abundant computing resources and its ability to integrate positioning resources and information, providing continuous and seamless positioning services while enjoying the advantages of the cloud environment in terms of scalability, reliability, deployment cost, and flexibility. Second, the present invention proposes a WiFi fingerprint mapping method based on locality-sensitive hashing and Bloom filters. This method maps the original WiFi fingerprint into an index vector in an inner product space, converting the original positioning calculation into a calculation process centered around the inner product while maintaining distance relationships. The scheme utilizes an inner product function encryption mechanism to encrypt the mapped index vector and query trapdoor, and performs the positioning calculation on the ciphertext. This ensures that the CSP and external attackers can only obtain the inner product result, without obtaining any information related to the user's location or the positioning service provider's database. Compared to methods such as homomorphic encryption and secure multi-party computation, the inner product function encryption mechanism ensures security while reducing computational and communication overhead. In addition, the solution builds an efficient retrieval structure based on HNSW, which greatly reduces the online positioning calculation overhead without significantly reducing the positioning accuracy, realizing a safe and efficient indoor positioning solution in a cloud environment. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Figure 1 This is a general schematic diagram of privacy-preserving indoor positioning according to an embodiment of the present invention;
[0047] Figure 2 This is a specific processing flow chart of the offline phase of an embodiment of the present invention;
[0048] Figure 3 is a schematic diagram of fingerprint vector mapping according to an embodiment of the present invention;
[0049] Figure 4 This is a specific processing flow chart of the online stage of an embodiment of the present invention. DETAILED DESCRIPTION
[0050] The embodiment of the present invention provides an indoor positioning method based on inner product function encryption in a cloud environment. The specific implementation is divided into three stages. The overall schematic diagram of the scheme is as follows: Figure 1 shown.
[0051] The present invention provides an indoor positioning privacy protection method based on inner product function encryption in a cloud environment, involving three parties: users, positioning service providers (IPS) and CSPs, and specifically includes the following three phases: initialization phase, offline phase and online phase;
[0052] During the offline phase, the positioning service provider first uses a BloomFilter based on locality-sensitive hashing to generate an efficient index vector for the fingerprint database. The index vector is further constructed into a retrieval structure of a hierarchical navigable small-world graph and encrypted using an inner product function encryption mechanism for protection. The location data is encrypted using the efficient AES symmetric encryption algorithm and the encrypted fingerprint database and encrypted retrieval structure are uploaded to the CSP.
[0053] In the online phase, mobile terminal users use the same LSH-based BloomFilter mapping to generate a positioning query trapdoor for the fingerprint measurement information collected in real time. This is then encrypted using the inner product function encryption mechanism and sent to the CSP. The CSP executes a retrieval algorithm for the query trapdoor on the encrypted retrieval structure, obtains the index vector closest to the query trapdoor, and returns the corresponding encrypted location information in the database. The mobile terminal user then performs lightweight AES symmetric decryption to obtain the positioning result.
[0054] Phase 1: Initialization phase.
[0055] In step 1.1, the positioning service provider generates the public parameters pp and master private key msk of the inner product function encryption mechanism, as well as the key pk of the symmetric encryption algorithm.
[0056] Step 1.2: The positioning service provider generates the LSH function family H = {H1, H2, ..., H l}, which contains l hash functions.
[0057] Phase 2: Offline phase. Assume that IPS has a WiFi fingerprint database Where m represents the size of the database, that is, the number of records contained in the database. Each record consists of an n-dimensional WiFi fingerprint vector RSS i and the corresponding position coordinates loc i composition.
[0058] Step 2.1: The positioning service provider uses the LSH function family H = {H1, H2, ..., H l}For each WiFi fingerprint vector RSS i Mapping, we get:
[0059] d ij =H j (RSS i ),1≤j≤l,1≤i≤m (1)
[0060] The positioning service provider generates an array I containing b binary bits i , initialize the array to 0, and then I i The d ij Position 1; after mapping all fingerprint vectors in the database, the index vector I can be obtained F ={I1,I2,…,I m}.
[0061] Step 2.2: The positioning service provider uses the index vector I F ={I1,I2,…,I m}Build an efficient graph-based retrieval structure, where the index vector corresponds to the "node" in HNSW, and the neighbor relationship between nodes based on the inner product distance corresponds to the "edge" between nodes. F The HNSW construction algorithm is called on it to obtain an efficient retrieval structure hnsw.
[0062] Step 2.3, the positioning service provider for each node I in HNSW i , i=1,2,…,m, use the secret key generation algorithm IPE.Keygen in the inner product function encryption mechanism to obtain the key sk after the index vector is encrypted i , that is, sk i =IPE.Keygen(I i ,pp), thus obtaining the encrypted retrieval structure E(hnsw).
[0063] Step 2.4: The positioning service provider uses the AES symmetric encryption algorithm Enc to encrypt the location coordinate information in the WiFi fingerprint database to obtain an encrypted location database.
[0064] In step 2.5, the positioning service provider uploads the encrypted retrieval structure E(hnsw), the encrypted location database E(loc), and the master private key msk encrypted by the inner product function to the CSP.
[0065] Phase 3: Online phase.
[0066] In step 3.1, the user requests positioning services from the positioning service provider. After being authenticated by the positioning service provider, the user obtains parameters such as the LSH function family H, the public parameter pp of the inner product encryption mechanism, and the decryption key pk of the location database.
[0067] Step 3.2, the user measures the information RSS based on the real-time fingerprint Q Generate Query Trapdoor I Q The method is similar to the method of constructing the encrypted index vector, that is, using the LSH function family H to calculate the RSS Q Mapping yields:
[0068] d j =H j (RSS Q ),1≤j≤l (2)
[0069] The user generates an array I containing b binary numbers Q , that is, a bloom filter of b bits. Each element in the array is initialized to 0, and then I Q The d j Position 1, thus obtaining query trapdoor I q .
[0070] Step 3.3, the user queries Trapdoor I Q Use the encryption algorithm IPE.Encrypt in the inner product function encryption mechanism to obtain the encryption trapdoor ct Q =IPE.Encrypt(I Q ,pp), and ct Q Sent to CSP to request online positioning service.
[0071] Step 3.4, CSP performs an encrypted trapdoor ct on the encrypted retrieval structure E(hnsw) Q To perform a query, the inner product between the query trapdoor and the index vector is calculated by running the decryption algorithm IPE.Decrypt of the inner product function encryption mechanism, that is, i ,I Q >=IPE.Decrypt(msk,ct Q ,sk i ), use the inner product as the distance metric in the HNSW search algorithm, obtain the k index vectors closest to the query trapdoor, and return the corresponding encrypted location coordinates to the user.
[0072] In step 3.5, the positioning user uses pk decryption to obtain the plaintext location coordinates, and the user calculates the average value of these location coordinates as the final positioning result.
[0073] Furthermore, the implementation of the stage 1 is as follows:
[0074] Step 1.1: The positioning service provider can generate the required public and private key pairs based on any symmetric encryption algorithm, such as DES, AES, etc. The public parameter pp and the master private key msk of the inner product function encryption mechanism are generated by the positioning service provider according to the security parameter λ to generate a bilinear group (G1, G2, G T ,q,e), where G1,G2,G T is a cyclic group of order q, g1 and g2 are generators of G1 and G1 respectively, and e represents the number of groups from G1 and G2 to G T A bilinear map. Randomly sample the reversible matrix B from the universal linear group and calculate the adjoint matrix B of B. * , and finally get the public parameters pp and master key msk:
[0075] pp=(G1,G2,G T ,q,e) (3)
[0076] msk=(pp,g1,g2,B,B * ) (4)
[0077] Step 1.2: The positioning service provider generates a set of LSH functions based on p-stable to map the n-dimensional real vector v to natural numbers, that is, The definition is as follows:
[0078]
[0079] Where n is the dimension of the WiFi fingerprint, a is an n-dimensional random vector randomly sampled from the standard normal distribution X~N(0,1); b is a real number uniformly selected from the interval [0,w], and w is a manually set real number. The positioning service provider generates l independent LSH functions according to formula (5), thus forming an LSH function family H={H1,H2,…H l},in
[0080] Furthermore, the specific implementation of the stage 2 is as follows:
[0081] Step 2.2, after generating an index for each fingerprint vector in the positioning database, use the HNSW construction algorithm to generate an efficient graph-based retrieval structure. Among them, the index vector corresponds to the "node" in the graph, and the neighbor relationship between the nodes based on the inner product distance corresponds to the "edge" between the nodes. The HNSW construction process uses the insertion algorithm to insert each node into the layer. During each insertion, the search algorithm is executed to find the nodes in each layer of the graph that are the nearest neighbors to the node to be inserted, and establish "edges" between these nodes and the node to be inserted. During the search process, CSP calculates the inner product distance between the search trap and the node of that layer, and uses the node with the smallest distance as the entry node of the next layer, and repeats the above operation until the bottom layer of the graph. The hierarchical structure allows HNSW to obtain the node closest to the retrieval trap with only a few distance calculations at the bottom entry node. The HNSW construction process is based on the continuous insertion of the database index vector.
[0082] Step 2.3: Use the key generation algorithm of the inner product function encryption mechanism to encrypt each node in the HNSW retrieval structure. The key generation algorithm IPE.KeyGen is as follows, where det(B) represents the rank of the matrix B and α is Z. q The random number in, that is, α∈{1,2,…,q-1}, q is the group G1, G2 and G T The order of .
[0083]
[0084] The output of the algorithm sk i It consists of two parts, namely K1 and K2. K1=g1 α·det(B) ,
[0085] Furthermore, the specific implementation of the stage 3 is as follows:
[0086] The same hash function family is used to locate the user and map the real-time WiFi fingerprint vector into the query trapdoor I Q Then use the inner product function encryption algorithm IPE.Encrypt to encrypt and obtain the encryption trapdoor. The encryption algorithm formula used is:
[0087]
[0088] The output of the algorithm ct Q Contains C1 and C2, where
[0089] Where β is the user's qThe user sends the encrypted trapdoor to the CSP to request the location service. The CSP searches for the encrypted trapdoor in the encrypted HNSW search structure and obtains the encrypted location corresponding to the encrypted index closest to the encrypted trapdoor. The search in the encrypted HNSW search structure is based on the inner product between the encrypted node and the encrypted trapdoor. The inner product between the encrypted node and the encrypted trapdoor is obtained through the decryption algorithm of the inner product function encryption mechanism without leaking any other information. The decryption algorithm used is:
[0090]
[0091] Where e(g1,g2) represents the bilinear mapping operation, dlog(D1,D2) represents the discrete logarithm of the bilinear mapping results D1,D2, that is, to find the integer z such that holds, where mod represents the modular operation. The larger the calculated inner product value, the greater the similarity between the query trapdoor and the index vector. CSP returns the encrypted positions corresponding to the first k closest index vectors to the user, who performs the decryption calculation and calculates the center of these positions as the final positioning result.
[0092]
[0093] The above content is a further detailed description of the present invention in conjunction with the preferred embodiment, and the specific implementation of the present invention should not be considered to be limited to these descriptions. Those skilled in the art should understand that various modifications can be made to the details without departing from the scope of the appended claims, and all should be considered to fall within the scope of protection of the present invention.
Claims
1. A method for protecting indoor positioning privacy based on inner product function encryption in a cloud environment, characterized by: The method involves three parties: users, positioning service providers (IPS) and cloud service providers (CSP), and includes an initialization phase, an offline phase and an online phase. During the offline phase, the positioning service provider first uses a Bloom filter based on locality-sensitive hashing to generate an efficient index vector for the fingerprint database. The index vector is further constructed into a retrieval structure of a hierarchical navigable small-world graph and encrypted using an inner product function encryption mechanism for protection. The location data is encrypted using the efficient AES symmetric encryption algorithm and the encrypted fingerprint database and encrypted retrieval structure are uploaded to the CSP. In the online phase, the mobile terminal user also uses LSH-based BloomFilter mapping to generate a positioning query trapdoor for the fingerprint measurement information collected in real time. This is then encrypted using the inner product function encryption mechanism and sent to the CSP. The CSP executes a retrieval algorithm for the query trapdoor on the encrypted retrieval structure, obtains the index vector closest to the query trapdoor, and returns the corresponding encrypted location information in the database. The mobile terminal user then performs lightweight AES symmetric decryption to obtain the positioning result. The specific implementation of the online stage is as follows; The user requests online positioning services from the cloud service provider, including mapping and encryption of measurement information, positioning calculation by the cloud server, and user decryption operations; Step 3.1: The user requests a location service from the location service provider. After being authenticated by the location service provider, the user obtains the LSH function family H, the public parameter pp of the inner product encryption mechanism, and the decryption key pk parameter of the location database. Step 3.2, the user measures the information RSS based on the real-time fingerprint Q Generate Query Trapdoor I Q ; Step 3.3, the user queries Trapdoor I Q Use the encryption algorithm IPE.Encrypt in the inner product function encryption mechanism to obtain the encryption trapdoor ct Q =IPE.Encrypt(I Q ,pp), and ct Q Send to CSP to request online positioning service; Step 3.4, CSP performs an encrypted trapdoor ct on the encrypted retrieval structure E(hnsw) Q To perform a query, the inner product between the query trapdoor and the index vector is calculated by running the decryption algorithm IPE.Decrypt of the inner product function encryption mechanism, that is, i ,I Q >=IPE.Decrypt(msk,ct Q ,sk i ), using the inner product as the distance metric in the HNSW search algorithm, obtain the k index vectors closest to the query trapdoor and return the corresponding encrypted position coordinates to the user; In step 3.5, the positioning user uses pk decryption to obtain the plaintext location coordinates, and the user calculates the average value of these location coordinates as the final positioning result.
2. The method for protecting indoor positioning privacy based on inner product function encryption in a cloud environment according to claim 1, characterized in that: The specific implementation of the initialization phase is as follows; Step 1.1: The positioning service provider generates the public parameters pp and master private key msk of the inner product function encryption mechanism, as well as the key pk of the symmetric encryption algorithm; The positioning service provider generates a bilinear group (G1, G2, G T ,q,e), where G1,G2,G T is a cyclic group of order q, g1 and g2 are generators of G1 and G2 respectively, and e represents the number of groups from G1 and G2 to G T Bilinear mapping; randomly sample the reversible matrix B from the universal linear group and calculate the adjoint matrix B of B * Finally, we get the public parameter pp=(G1,G2,G T ,q,e) and master key msk(pp,g1,g2,B,B * ); In addition, the positioning service provider generates an AES key pk for encrypting the location information in the positioning database; Step 1.2: The positioning service provider generates the LSH function family H = {H1, H2, ..., H l }, which contains l hash functions; The positioning service provider sets the parameter w in LSH according to the characteristics of WiFi fingerprint, and then randomly samples from the standard normal distribution X~N(0,1) to obtain l groups of d-dimensional vectors {a i |i=1,2,…,l} and l random real numbers in [0,w] {b i |i=1,2,…,l}, thus obtaining a set of LSH functions 3. The indoor positioning privacy protection method based on inner product function encryption in a cloud environment according to claim 2, characterized in that: The specific implementation of the offline phase is as follows; The positioning service provider maps, encrypts and deploys the positioning database. Assume that the positioning service provider has a WiFi fingerprint database. The database contains m records, each of which consists of an n-dimensional WiFi fingerprint vector RSS and the corresponding location coordinate loc; Step 2.1: The positioning service provider uses the LSH function family H = {H1, H2, ..., H l Map each WiFi fingerprint vector and obtain l mapped subscript values: The positioning service provider generates m b-bit arrays I with an initial value of 0 i ,1≤i≤m, then I i The d ij The bit is set to 1, resulting in the index vector I F ={I1,I2,…,I m }; Step 2.2: The positioning service provider uses the index vector I F ={I1,I2,…,I m }, using the HNSW construction algorithm to build an efficient graph-based retrieval structure, where the index vector corresponds to the "node" in HNSW, and the neighbor relationship between nodes based on the inner product distance corresponds to the "edge" between nodes; Step 2.3, the positioning service provider for each node I in HNSW i , i=1,2,…,m, use the secret key generation algorithm IPE.Keygen in the inner product function encryption mechanism to obtain the key sk after the index vector is encrypted i , that is, sk i =IPE.Keygen(I i ,pp), thus obtaining the encrypted retrieval structure E(hnsw); Step 2.4: The positioning service provider uses the AES algorithm to encrypt the location coordinate information in the WiFi fingerprint database to obtain an encrypted location database. In step 2.5, the positioning service provider uploads the encrypted retrieval structure E(hnsw), the encrypted location database E(loc), and the master private key msk encrypted by the inner product function to the CSP.
4. The method for protecting indoor positioning privacy based on inner product function encryption in a cloud environment according to claim 3, characterized in that: The calculation formula of the secret key generation algorithm IPE.Keygen in step 2.3 is as follows; The output of the algorithm sk i Contains two parts, namely K1 and K2, where K1 = g1 α·det(B) , Where det(B) represents the rank of matrix B, α is Z q The random number in, that is, α∈{1,2,…,q-1}, q is the group G1, G2 and G T The order of .
5. The indoor positioning privacy protection method based on inner product function encryption in a cloud environment according to claim 1, characterized in that: In step 3.2, use the LSH function family H to calculate RSS Q Mapping d j =H j (RSS Q ),1≤j≤l The user generates an array I containing b binary numbers Q , that is, a bloom filter of b bits, each element in the array is initialized to 0, and then I Q The d j Position 1, thus obtaining query trapdoor I q .
6. The method for protecting indoor positioning privacy based on inner product function encryption in a cloud environment according to claim 5, characterized in that: The calculation formula of the inner product function encryption algorithm IPE.Encrypt in step 3.3 is: The output of the algorithm ct Q Contains C1 and C2, where C1 = g2 β , Where β is the user's q A random number selected from .
7. The method for protecting indoor positioning privacy based on inner product function encryption in a cloud environment according to claim 6, characterized in that: The decryption algorithm used in step 3.4 is: Q ,I i >=dlog(D1,D2) Where e(g1,g2) represents the bilinear mapping operation, dlog(D1,D2) represents the discrete logarithm of the bilinear mapping results D1,D2, that is, to find the integer z such that Established, mod represents the modular operation, the larger the calculated inner product value, the greater the similarity between the query trapdoor and the index vector, CSP searches for the encrypted position coordinates corresponding to the first k encrypted indexes closest to the encrypted trapdoor Return to the user.
8. The method for protecting indoor positioning privacy based on inner product function encryption in a cloud environment according to claim 7, characterized in that: The final positioning result in step 5 is:
Citation Information
Patent Citations
Efficient cryptograph image retrieval method capable of supporting privacy protection under cloud environment
CN107480163A
Inner product function encryption method and system with privacy protection and without central mechanism
CN114139187A