Abstract
With the wide use of mobile sensing application, more and more location-embedded data are collected and stored in mobile clouds, such as iCloud, Samsung cloud, etc. Using these data, the cloud service provider (CSP) can provide location-based service (LBS) for users. However, the mobile cloud is untrustworthy. The privacy concerns force the sensitive locations to be stored on the mobile cloud in an encrypted form. However, this brings a great challenge to utilize these data to provide efficient LBS. To solve this problem, we propose a privacy-preserving LBS scheme for mobile sensing data, based on the RSA (for Rivest, Shamir and Adleman) algorithm and ciphertext policy attribute-based encryption (CP-ABE) scheme. The mobile cloud can perform location distance computing and comparison efficiently for authorized users, without location privacy leakage. In the end, theoretical security analysis and experimental evaluation demonstrate that our scheme is secure against the chosen plaintext attack (CPA) and efficient enough for practical applications in terms of user side computation overhead.
Keywords: mobile sensing, mobile cloud, location-based service, privacy preservation
1. Introduction
Recently, mobile sensing devices have been widely used in data sensing [1,2], including location data [3,4]. For example, when a person takes photos by a smart phone, the equipped location sensor (GPS modules) can always acquire the locations where the photos are taken [5]. Additionally, the locations are embedded into the photos for remembrance. Then, these location-embedded data will be published in the mobile cloud automatically [1,2,6], such as iCloud, Samsung cloud, etc. These location-embedded data bring great convenience for cloud service providers (CSP) to provide location-based services (LBS) for users [3,7].
However, the mobile cloud is untrustworthy. Additionally, the location itself contains much personal information [8,9,10]. CSP is curious to infer and analyze location data to harvest additional information to gain illegal profits. Thus, the publisher (i.e., data owner) requires a solution that can protect location privacy from unauthorized users and CSP. As shown in Figure 1, Alice takes some food photos by iPhone, and the photos are embedded with location information. She stores them in iCloud and shares them with her friends. Since the location where the photos are taken is her home, she hopes that the embedded location is visible only to her friends, while invisible to strangers.
A naive solution is to store the location data on the mobile cloud in an encrypted format. To achieve secure sharing on encrypted data, some researchers have studied the attribute-based encryption (ABE) scheme [4,11,12,13,14]. In this scheme, the publisher encrypts the confidential location information using a symmetric encryption scheme (AES or DES) and defines the access policies, then uploads the encrypted location and access polices into the cloud for storage. Only authorized queriers (whose attributes satisfy the access policies) can read the location data. During the whole procedure, the cloud undertakes only storage overhead. However, in LBS, the queriers also require the CSP to provide the services of location distance compute and compare. By applying ABE directly, the authorized queriers cannot process the location until downloading and decrypting the encrypted location data. It takes the queriers too much local storage and computation cost, which is unacceptable considering the weak power of smart phones.
To support functional processing over encrypted data, homomorphic encryption (HE) [15,16,17,18] was proposed. Xie and Wang [4] applied the RSA (for Rivest, Shamir and Adleman) algorithm to achieve computational functions on encrypted location data. In addition, Paillier’s cryptosystem [19,20,21,22,23] is widely used as HE, due to its high efficiency and simplicity. It involves only one multiplication for each homomorphic addition and one exponentiation for each homomorphic multiplication. Li and Jung [5] combined the ciphertext-policy attribute-based encryption (CP-ABE) with Paillier’s cryptosystem to exert fine-grained access control over LBS. One cannot gain any information from the query if his/her identity attributes do not satisfy the access policy defined by the data publisher. In addition, the location distance computed over encrypted location is supported. However, the publisher must stay online to interact with queriers once requested. This is not practical, considering the limited power of smart phone.
To overcome the above problems, we propose a privacy-preserving LBS scheme for mobile sensing data. Here, a new encryption method on the basis of the RSA algorithm (The RSA algorithm is a commonly adopted public key cryptography algorithm. It is named after the three mathematicians who developed it: Rivest, Shamir and Adleman. The security of this encryption algorithm is based on the hardness of the factoring problem. We will present this algorithm in Section 3.2.) and CP-ABE scheme is designed. Our proposed scheme has two advantages as follows:
Secure sharing over location information with certain queriers. Our scheme achieves that location information is visible to specific queriers, while kept secret from others.
Efficient and privacy-preserving location distance compute and compare. The location distance compute and compare are two of the most common functions in LBQ, i.e., what is the distance between the publisher’s and querier’s locations, or whether the distance is less than 100 m. Compared with the privacy-preserving location query protocol (PLQP) scheme [5], we make better use of the powerful energy in the mobile cloud, by the mobile cloud undertaking most of the computing overhead, such that the computation cost at the querier is very low.
The main contributions of our paper are outlined as follows:
A novel mobile sensing service system is constructed for privacy-preserving LBS.
This paper designs a novel encryption method on the basis of the RSA algorithm and CP-ABE scheme, so that the mobile cloud can process LBS over encrypted location information and only authorized queriers can get the query results.
The rest of this paper is organized as follows. Section 2 discusses the related work. Section 3 presents some preliminaries. Section 4 describes our system models. Section 5 gives the detailed design of our privacy-preserving LBS scheme for mobile sensing data. Section 6 analyzes the security of our proposed scheme. Section 7 shows the performance evaluation by experiments. Finally, Section 8 concludes this paper.
2. Related Work
Our paper designs a privacy-preserving LBS scheme for mobile sensing data. The related work mainly includes two aspects, i.e., privacy-preserving LBS and the access control technique.
2.1. Privacy-Preserving LBS
The k-anonymity technique has been widely used to achieve user location privacy in LBS. The basic idea is to remove some features, such that each item is not distinguishable among other items. It can ensure that a user can be identified with a probability of at most .
Kido et al. [24] proposed an anonymous communication technique for LBS to protect location privacy using dummies. Duckham and Kulik [25] presented a privacy-preserving location query algorithm by using the obfuscation method and vague location information of the user. Chow et al. [26] proposed a distributed k-anonymity model and a peer-to-peer spatial cloaking algorithm for the anonymous location-based services. Mokbel [27] proposed a location-obfuscation method that allows the server to record the real identifier of the user, but decreases the precision of the location information to protect the location privacy. Bamba et al. [28] proposed fast and effective location cloaking algorithms for location k-anonymity and location l-diversity in a mobile environment. Gedik and Liu [29] applied the personalized k-anonymity model to protect the location privacy of the user. Shankar et al. [30] proposed a fully-decentralized and autonomous k-anonymity-based system for location-based queries. Xue et al. [31] introduced the concept of location diversity, which improves spatial k-anonymity by ensuring that each query can be associated with at least l different semantic locations.
All of the above solutions can be applied to LBS. However, their techniques do not allow the cloud to search encrypted data. Therefore, they cannot be used for outsourced LBS where LBS data in the cloud are encrypted.
Li and Jung [5] designed a suite of fine-grained privacy-preserving location query protocols (PLQP) by applying Paillier’s cryptosystem [32,33]. It can solve the privacy issues in existing LBS applications. However, once there is an LBS request, the PLQP needs very frequent interaction between the publisher and the querier and much computation cost. In mobile sensing service systems, most queriers access the social networks via smart phones. The smart phones have weak power. Hence, it is unacceptable for the publishers to stay online always.
Shao, Lu and Lin [8] proposed a FINEframework based on the CP-ABE scheme. In this framework, LBS data are outsourced to a cloud server after encryption. Although the framework can ensure the confidentiality of LBS data, their search patterns will lead to the leakage of user location privacy, because their trapdoors generated from the locations are steady, which means trapdoors are always the same for the same location. It is easy for an attacker to count the frequency of a specific trapdoor and identify the known locations. In addition, this method is not efficient due to the low efficiency of the public encryption.
2.2. Access Control
Recently, the ABE scheme has been widely used to exert access control for LBS in the mobile cloud. Li and Jung [5] introduced CP-ABE to exert fine-grained access control over the location queries. One cannot gain any information from the query if his/her identity attributes do not satisfy the access policy defined by the data publisher. Shao, Lu and Lin [8] also employed CP-ABE in designing their FINE framework to achieve fine-grained access control over location-based service data.
The ABE scheme enables fine-grained access control over encrypted data using access policies and associates attributes with private keys and ciphertexts [34,35,36,37]. It was first proposed by Sahai and Waters [38], later extended to the key-policy ABE (KP-ABE) by Goyal et al. [39] and the CP-ABE by Bethencourt et al. [40]. In KP-ABE, the ciphertext is associated with an attribute set, and the user secret key is associated with an access policy over attributes. The user can decrypt the ciphertext if and only if the attribute set of the ciphertext satisfies the access policy specified in his/her secret key. The encryptor exerts no control over who has access to the data that he/she encrypts. In CP-ABE, the ciphertext is associated with an access policy over attributes, and the user secret key is associated with an attribute set. The user can decrypt the ciphertext if and only if the attribute set of his/her secret key satisfies the access policy specified in the ciphertext. The encryptor is able to decide who should or should not have access to the data that he/she encrypts. In our system model, CP-ABE is more suitable than KP-ABE because it enables the data publishers to determine an access policy over the outsourced location data, as studied by Li and Jung in [5].
3. Preliminaries
This section briefly describes some preliminaries used in our work, including the bilinear map, the RSA algorithm, CP-ABE and the access tree.
3.1. Bilinear Map
Let be a multiplicative cyclic group of prime order p and be its generator. The bilinear map e is defined as: , where is the codomain of e. The bilinear map e has the following properties:
Bilinearity: and ,
Symmetry: , .
Non-degeneracy: .
Definition 1
(discrete logarithm assumption). The discrete logarithm assumption in group of prime order p with generator is defined as follows: for any probabilistic polynomial-time (PPT) algorithm , the probability that is negligible, where , and .
Definition 2
(decisional Diffie–Hellman (DDH) problem). The decisional Diffie–Hellman (DDH) problem in group of prime order p with generator is defined as follows: on input , where , decide whether or c is a random element.
Definition 3
(decisional bilinear Diffie–Hellman (DBDH) problem). The decisional bilinear Diffie–Hellman (DBDH) problem in group of prime order p with generator is defined as follows: on input and , where , decide whether or z is a random element.
The security of many ABE schemes relies on the discrete logarithm assumption. The research also assumes that no PPT algorithm can solve the DDH and DBDH problems with non-negligible advantage. This assumption is reasonable since in a large number field, it is widely recognized that discrete logarithm problems (DLP) are as hard as described in Definition 1. Therefore, a is not deducible from , even if is publicly known.
3.2. RSA: Public Key Cryptography Algorithm
RSA is a commonly-adopted public key cryptography algorithm [41]. It is the first and still most widely-used asymmetric algorithm. RSA is named after the three mathematicians who developed it, Rivest, Shamir and Adleman. The public/private key pair of RSA is computed in Algorithm 1, where is a function used to output a composite modulus n along with its two N-bit prime factors; is Euler’s totient function; is a function used to compute the greatest common divisor for two numbers.
The RSA encryption scheme includes three algorithms as follows:
: takes security parameter as input and outputs a public/private key pair, denoted as and , respectively, by executing Algorithm 1.
: on input, a public key and a message compute the ciphertext as .
: on input, a private key and a ciphertext compute the message as .
The security of the RSA encryption scheme relies on the hardness of the factoring problem. If an adversary can factorize n, then he/she can compute and obtain the secret key d by utilizing the Euclidean algorithm. However, factoring a large number is still a hard problem. The proper choice of the modulus can guarantee the security of RSA encryption scheme.
Algorithm 1 KeyGen. |
Input: |
: security parameter; |
Output: |
: a public/private key pair; |
1: ; |
2: ; |
3: Find e, such that , where ; |
4: Compute |
return , . |
3.3. CP-ABE
In the CP-ABE, the private key is distributed to users by the trusted authority (TA) only once. The keys are identified with a set of descriptive attributes, and the encryptor specifies an encryption policy using an access tree, so that those with private keys the satisfy it can decrypt the ciphertext.
3.4. Access Tree
In CP-ABE, the encryption policy is described with a tree called access tree . Each non-leaf node of the tree is a threshold gate, and each leaf node is described by an attribute. An example is shown in Figure 2.
In this paper, a publisher’s location information is set visible to certain kinds of users. For example, in Figure 1, Alice’s location information is only accessible to her friends. If a user’s attributes satisfy , he/she is granted with the access privilege. Simultaneously, he/she also can obtain the results of LBS provided by the mobile cloud. By doing so, we can control the visibility of the publisher’s location information.
Given a node u in the , is the number of the node u’s children nodes, and is its threshold value . The node u is assigned a true value if at least child nodes have been assigned a true value. Specially, the node becomes an gate when or an gate when .
The access tree is described by a set of polynomials, as shown in Algorithm 2. In the access tree , the node value of the gate is recovered if and only if the values of at least child nodes are recovered, which is performed in a recursive manner. The notations for the access tree is explained in Table 1.
Table 1.
Notation | Description |
---|---|
u | a node in |
the set of leaf nodes in | |
the set of all the child nodes of u | |
the number of the node u’s child nodes | |
the threshold value of node u | |
the polynomial equation of node u, where are the coefficients | |
u’s parent node | |
the index of node u |
Algorithm 2 Access Tree Description. | |
Input: | |
: an access tree; | |
Output: | |
: is a randomly-picked secret integer; | |
1: for all u in do | |
2: define a polynomial , where the coefficients are undetermined; | |
3: end for | |
4: Pick a random integer s | |
5: Set , where R is the root node of ; | |
6: Set other coefficients of , i.e., , by randomly-picked secret integers; | |
7: From top to bottom, set all of the coefficients of other nodes (except for the root node) that satisfy the following equation;
| |
return . |
4. System Model, Threat Model, Location Assumption and Problem Formulation
4.1. System Model
Our mobile sensing service system mainly consists of four entities, as shown in Figure 3: mobile cloud, a publisher, many queriers and TA.
The mobile cloud provides LBS via mobile applications or social network applications based on the collected location data. Its main work is to store and process ciphertext.
A publisher contributes his/her location data to the mobile cloud, via smart phone, iPad, etc. Before uploading the data, the publisher first obtains the public key from the TA and determines the access tree. Then, he/she uses the public key and access tree to encrypt his/her location information. Afterwards, the encrypted location information is uploaded to the mobile cloud for storage and sharing. In addition, we assume the origin of a packet is successfully hidden, which is out of this paper’s scope, and can be trivially prevented by employing anonymized network protocols [42].
Many queriers submit LBS query requests to the mobile cloud over the collected cloud data. However, only authorized queriers can obtain plain query results.
TA is assumed to have powerful computation abilities. At the setup phase, the TA computes its own master key and the system-wide public parameter. The master key is used to generate the private key for the queriers, and the public key is used to process system-wide operations.
4.2. Threat Model
We assume that the mobile cloud is “honest but curious”. Specifically, it acts in an “honest” fashion and correctly follows the designated protocol specification. However, it is “curious” to infer and analyze the stored data and queriers’ query requests to harvest additional information to gain illegal profits.
The queriers are curious about the confidential information, which is outside of their privileges. They may also collude with the mobile cloud.
4.3. Location Assumption
As described in [5], the ground surface can be assumed to be a plane, and every user’s location is mapped to an Euclidean space with integer coordinates (with meters as the unit). The Euclidean distance between two locations and is computed as:
As for a real location on the surface of the Earth, we know that the relationship between the surface distance and the Euclidean distance is as follows:
where the Earth is assume to be a sphere with radius R meters. Hence, it is easy to compute from . To check if the surface distance satisfies certain conditions, we can convert it to check if the Euclidean distance is satisfying the corresponding conditions. For example, is equivalent as:
For brevity, in this paper, we will focus on the Euclidean distance instead of the surface distance.
4.4. Problem Formulation
Assume that the querier ’s location information is , and the publisher ’s location information is embedded in the published data. According to Q’s attributes set , the publisher determines whether the querier can enjoy the LBS related to ’s location. Afterwards, the authorized querier will obtain the corresponding LBS results provided by the mobile cloud.
In this paper, we design a privacy-preserving LBS scheme for mobile sensing data, where the location publisher can determine who can decrypt the ciphered LBS results provided by the mobile cloud. Moreover, no confidential location information is leaked to the mobile cloud and unauthorized users during the LBS processing. Here, the LBS mainly includes two basic types: location distance compute and compare. The proposed scheme includes five main algorithms, as follows:
-
This algorithm takes a security parameter as input. The TA executes this algorithm to compute its own master key and a system-wide public parameter .
-
This algorithm takes as input the public parameter , the publisher’s location information , an access tree determined by the publisher and an encryption key . It will encrypt the location Y, so that a querier can enjoy the LBS over location Y if and only if his/her attributes satisfy the access tree .
-
This algorithm takes as input the TA’s master key , the public parameter and a querier’s attribute set . It enables the querier to interact with the TA and to obtain a secret key .
-
or ⊥
This algorithm enables an authorized querier to obtain a critical secret parameter , which is the key to decrypt the ciphered query results provided by the mobile cloud.
-
In this protocol, firstly, a querier encrypts his/her location X as using , then the mobile cloud operates over the encrypted locations and to compute a ciphered query result. In the end, the querier uses to decrypt the ciphered result as .
5. Our Proposed Scheme
In this section, we will present the scheme design in detail.
A.
This algorithm takes a security parameter as the input, and gives the TA’s master key and a system-wide public parameter as the output, as shown in Algorithm 3.
By Algorithm 3, the TA chooses and publishes a bilinear group of prime order p with generator , then randomly and secretly picks . Finally, the TA computes the master key and the public key .
B.
Before uploading the location data, the publisher executes this algorithm to encrypt the sensitive location information . In addition, she/he determines the access tree to exert access control on the location information. The ciphertext includes two parts: and . The encryption procedure consists of three main steps.
Pick a symmetric encryption key , where , n is generated by , as shown in Section 3.2.
- Compute:
Here, g is co-prime with n; is Euler’s totient function of n. We will omit “” in the following expressions with an assumption that the exponent of the above formula is computed in modular .(1) - Execute Algorithm 2, and obtain . Then, and are computed by Equations (2) and (3). In , and represent the attribute values in the specified access tree.
(2) (3)
Finally, the publisher stores in the mobile cloud for sharing them with some queriers. In this system, can be downloaded by every querier. However, only authorized queriers can obtain the plain location information Y, and the query results of location distance compute and compare.
Algorithm 3 Setup. |
Input: |
: security parameter; |
Output: |
: TA’s master key; |
: public parameter; |
1: Choose a bilinear group of prime order p with generator ; |
2: Pick randomly and secretly; |
3: Compute the master key ; |
4: Compute ; |
5: Set ; |
return . |
C.
When a new querier , with attribute set , requests to join the system, TA executes this algorithm to generate Q’s secret key. This algorithm is composed of two steps, as follows:
- Attribute key generate: TA randomly picks and computes:
For any attribute , TA randomly picks and computes the partial private key as:(4) (5)
where is the hash value of attribute i.(6) - Key aggregate: The secret key is generated by aggregating D, , and as:
The above procedures are described in Algorithm 4.(7)
Algorithm 4 KeyGenerate. |
Input: |
: TA’s master key; |
: the public parameter; |
: a querier’s attribute set; |
Output: |
: a secret key; |
1: Compute , where ; |
2: for all do |
3: Compute , , where ; |
4: end for |
return . |
D. or ⊥
By executing this algorithm, only authorized querier can obtain the secret parameter , which will be used to decrypt the ciphered query results. Otherwise, it will output ⊥. Figure 4 shows the main overview of this algorithm.
Firstly, a recursive algorithm is defined as Algorithm 5, where u stands for a node in the access tree .
Then, the querier recursively calls from the root node R, and obtains . At last, he/she can get the secret output by computing Equation (8).
(8) |
E.
In this protocol, firstly, the authorized querier uses to encrypt his/her location X as , then the mobile cloud operates over and to compute a ciphered location distance or to test whether the distance between these two locations is far or not. If necessary, the querier will use to decrypt the ciphered result as .
In our scheme, we consider these two types of operations: location distance compute and location distance compare, i.e., what the distance between these two locations is or whether the distance is far or not. They are two basic LBS.
Algorithm 5 DecryptNode. | |
Input: | |
: defined in Equation (3) | |
: the querier ’s secret key; | |
: the querier ’s attribute set; | |
u: a node in the access tree ; | |
Output: | |
: a secret parameter; | |
or ⊥ | |
1: if u is a leaf node then | |
2: Set ; | |
3: if then | |
4: Compute
| |
5: else return ; | |
6: end if | |
7: else | |
8: Define ; | |
9: for all do | |
10: Compute ; | |
11: if then | |
12: Update ; | |
13: end if | |
14: end for | |
15: if then return ; | |
16: else | |
17: Compute using by polynomial interpolation method; | |
18: end if | |
19: end if | |
return . |
Here, the locations of the publisher and the querier are and , respectively. Additionally, the publisher’s location data have been encrypted as by Equations (2) and (3) and stored in the mobile cloud. The querier encrypts his/her location X using Equation (9).
(9) |
Next, we will present how to perform these two operations.
1. Location distance compute:
We know that the distance between the publisher and the querier can be computed as:
(10) |
The querier encrypts his/her location as by Equation (9) and sends to the mobile cloud. Then, the mobile cloud executes Algorithm 6 to compute the ciphered location distance between and . For simplicity and convenience of presentation, we will denote as Δ in the following.
Algorithm 6 DistanceCompute. |
Input: |
: the ciphertext of a querier’s location X; |
: the ciphertext of a publisher’s location Y; |
Output: |
: the ciphertext of the distance between X and Y; |
1: Obtain and from the ; |
2: Compute ; |
3: Compute ; |
return ; |
From Algorithm 6 and Equation (1), we know that for ,
Thus,
(11) |
After executing Algorithm 6, the mobile cloud sends to the querier. Finally, the querier can get the plain distance by computing Equation (12).
(12) |
During the execution, all that the mobile cloud processes is the ciphertext.
2. Location distance compare:
The querier wants to know whether the location distance is within a threshold value τ. He/she encrypts the τ as , using Equation (13):
(13) |
Then, the querier sends and to the mobile cloud. The mobile cloud executes Algorithm 7 to compute whether the distance between X and Y is less than τ.
From Equation (11), we know that . Since Δ is always positive, it will not change the compare result between and τ. Thus, the mobile cloud can give out the comparison results through Algorithm 7 directly.
Algorithm 7 DistanceCompare. |
Input: |
: the ciphertext of a querier’s location X; |
: the ciphertext of a publisher’s location Y; |
: the ciphered compare parameter τ; |
Output: |
or ; |
1: Execute ; |
2: if then return ; |
3: end if |
return ; |
6. Security Analysis
In our system, the publisher can authorize the queriers that he/she knows or not, such as his/her friends or someone who has similar interests. Hence, the queries may include attackers. If so, it is easy for the attacker to get a certain plaintext/ciphertext pair. Thus, our scheme has to be secure against the chosen plaintext attack. Next, we will prove it.
Theorem 1.
Our scheme is secure against CPA.
Proof of Theorem 1.
Assume an attacker obtains and its ciphertext . From Equation (1), we get that:
(14)
Assume that . It is easy to compute B. However, it is difficult to get the proper from B. If m is the power of g, it comes down obviously to the discrete logarithm problem. If m is not the power of g, i.e., , where is co-prime with g and , then . Even though the attacker can solve this equation, there are multiple solutions for . Let alone, it is even hard to solve from B, which is as intractable as the discrete logarithm problem. As a consequence, the attacker cannot deduce the encryption key, as well as the secret parameter from . As described in Section 5, we know that secret parameter is the key to decrypt the query result. Thus, the attacker cannot decrypt extra confidential information apart from the already known . In conclusion, our scheme is secure against CPA. ☐
7. Experiment
As described in Section 2.1, the PLQP [5] is a suit of protocols supporting privacy-preserving LBS in mobile application. It has high efficiency and achieves fine-grained control by exerting the CP-ABE scheme, which is similar to our work. Thus, in this section, we will compare our scheme with the PLQP scheme [5] for evaluating the performance of our proposed scheme. The algorithms are implemented using the BigInteger library on a Windows 8.1 system with Intel CORE i7-4500U CPU@2.40 GHz and 8.00 G RAM. We have 10 tests in this experiment. Additionally, in each test, we use 1000 pairs of random locations for the publisher and the querier, respectively. We present the average results for each test in the following figures.
7.1. The Time Cost in Our Scheme
Figure 5 shows the detailed time cost for once location distance compute and location distance compare, respectively. It is obvious that the time cost at the publisher is always zero, which meets the algorithm in Section 5. The query processing work can be done with no need for the publisher’s help.
7.2. The Comparison of The Time Cost between Our Scheme and the PLQP Scheme
In Figure 6, we show the comparison results of the total time cost for the aforementioned two operations, respectively. It can be seen that our scheme is much more efficient than PLQP. Figure 7 shows the comparison results of the detailed time cost for the aforementioned two operations at the publisher, querier and mobile cloud, respectively. To be more clear, we also present the comparison results in Figure 8 and Figure 9. From these figures, we get three points:
At the querier, the time cost in our scheme is much less that that in PLQP.
At the publisher, the time cost in our scheme is zero.
At the mobile cloud, the time cost in PLQP is zero.
In sum, our scheme takes better advantage of the mobile cloud than PLQP and outperforms the PLQP scheme in terms of query efficiency. Numerical information about the computation cost is also shown in Table 2.
Table 2.
Queries | Average Computation Time at the Querier (ms) |
Average Computation Time at the Publisher (ms) |
Average Computation Time at the Mobile Cloud (ms) |
|||
---|---|---|---|---|---|---|
Ours | PLQP | Ours | PLQP | Ours | PLQP | |
Distance Compute | 0 | 0 | ||||
Distance Compare | 0 | 0 |
8. Conclusions
In this paper, we propose a privacy-preserving LBS scheme for mobile sensing data, by exerting the RSA algorithm and CP-ABE scheme. Our proposed scheme can support the mobile cloud to perform efficient and privacy-preserving queries of location distance compute and compare on encrypted locations. Moreover, due to the application of CP-ABE, our scheme achieves fine-grained control over the sensitive location data, where only authorized queriers, whose attributes satisfy the corresponding access tree, can decrypt the ciphered query results provided by the mobile cloud. As a consequence, both the publisher’s and querier’s location information are kept secret from the mobile cloud and unauthorized users. Finally, the security analysis proves that it is secure against CPA, and the performance evaluation demonstrates its efficiency with experiments compared with the efficient PLQP.
Acknowledgments
The work is supported by the National Natural Science Foundation of China under Grant No. 61472001 and No. U1405255, the project of Academic Leaders Funding of Anhui University and the Key Research and Development Project of Jiangsu Province under Grant No. BE2015136.
Abbreviations
The following abbreviations are used in this manuscript:
GPS | Global Positioning System |
LBS | Location-based service |
HE | Homomorphic encryption |
ABE | Attribute-based encryption |
CP-ABE | Ciphertext-policy attribute-based encryption |
KP-ABE | Key-policy attribute-based encryption |
AES | Advanced encryption standard |
DES | Data encryption standard |
PLQP | Privacy-preserving location query protocol |
DLP | Discrete logarithm problem |
PPT | Probabilistic polynomial-time |
DDH | Decisional Diffie–Hellman |
DBDH | Decisional Bilinear Diffie–Hellman |
CPA | Chosen plaintext attack |
TA | Trusted authority |
Author Contributions
Qingqing Xie proposed the idea of the research, conceived of, designed and performed the experiments. Liangmin Wang designed the structure and instructed Qingqing Xie to write the paper.
Conflicts of Interest
The authors declare no conflict of interest.
References
- 1.Kos A., Tomažič S., Umek A. Evaluation of Smartphone Inertial Sensor Performance for Cross-Platform Mobile Applications. Sensors. 2016;16:477. doi: 10.3390/s16040477. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 2.Liu Z., Niu X., Lin X., Huang T., Wu Y., Li H. A Task-Centric Cooperative Sensing Scheme for Mobile Crowdsourcing Systems. Sensors. 2016;16:746. doi: 10.3390/s16050746. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 3.Dinh T., Kim Y. A Novel Location-Centric IoT-Cloud Based on-Street Car Parking Violation Management System in Smart Cities. Sensors. 2016;16:810. doi: 10.3390/s16060810. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 4.Xie Q., Wang L. Efficient privacy-preserving processing scheme for location-based queries in mobile cloud; Proceedings of the IEEE International Conference on Data Science in Cyberspace; Changsha, China. 13–16 June 2016. [Google Scholar]
- 5.Li X.Y., Jung T. Search me if you can: Privacy-preserving location query service; Proceedings of the IEEE INFOCOM; Turin, Italy. 14–19 April 2013; pp. 2760–2768. [Google Scholar]
- 6.Ahn J., Han R. MyBlackBox: Blackbox Mobile Cloud Systems for Personalized Unusual Event Detection. Sensors. 2016;16:753. doi: 10.3390/s16050753. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 7.Zou H., Jiang H., Luo Y., Zhu J., Lu X., Xie L. BlueDetect: An iBeacon-Enabled Scheme for Accurate and Energy-Efficient Indoor-Outdoor Detection and Seamless Location-Based Service. Sensors. 2016;16:268. doi: 10.3390/s16020268. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 8.Shao J., Lu R., Lin X. FINE: A fine-grained privacy-preserving location-based service framework for mobile devices; Proceedings of the IEEE INFOCOM; Toronto, ON, Canada. 27 April–2 May 2014; pp. 244–252. [Google Scholar]
- 9.Zhang B., Liu C.H., Lu J., Song Z., Ren Z., Ma J., Wang W. Privacy-Preserving QoI-Aware Participant Coordination for Mobile Crowdsourcing. Comput. Netw. 2016;101:29–41. doi: 10.1016/j.comnet.2015.12.022. [DOI] [Google Scholar]
- 10.Shao J., Lu R., Lin X. Fine-grained data sharing in cloud computing for mobile devices; Proceedings of the IEEE INFOCOM; Hong Kong, China. 26–30 April 2015; pp. 2677–2685. [Google Scholar]
- 11.Gorbunov S., Vaikuntanathan V., Wee H. Attribute-based encryption for circuits. J. ACM (JACM) 2015;62:45. doi: 10.1145/2824233. [DOI] [Google Scholar]
- 12.Zhang K., Gong J., Tang S., Chen J., Li X., Qian H., Cao Z. Practical and Efficient Attribute-Based Encryption with Constant-Size Ciphertexts in Outsourced Verifiable Computation; Proceedings of the 11th ACM on Asia Conference on Computer and Communications Security; Xi’an, China. 30 May–3 June 2016; pp. 269–279. [Google Scholar]
- 13.Jung T., Li X.Y., Wan Z., Wan M. Rebuttal to “Comments on ’Control Cloud Data Access Privilege and Anonymity With Fully Anonymous Attribute-Based Encryption’”. IEEE Trans. Inf. Forensics Secur. 2016;11:868. doi: 10.1109/TIFS.2015.2509946. [DOI] [Google Scholar]
- 14.Kitagawa T., Kojima H., Attrapadung N., Imai H. Information Security. Springer; New York, NY, USA: 2015. Efficient and Fully Secure Forward Secure Ciphertext-Policy Attribute-Based Encryption; pp. 87–99. [Google Scholar]
- 15.Doröz Y., Sunar B. Flattening NTRU for Evaluation Key Free Homomorphic Encryption. Cryptology ePrint Archive; Worcester, MA, USA: May 31, 2016. Technical Report, Report 2016/315. [Google Scholar]
- 16.Gentry C., Groth J., Ishai Y., Peikert C., Sahai A., Smith A. Using fully homomorphic hybrid encryption to minimize non-interative zero-knowledge proofs. J. Cryptol. 2015;28:820–843. doi: 10.1007/s00145-014-9184-y. [DOI] [Google Scholar]
- 17.Ducas L., Micciancio D. Advances in Cryptology–EUROCRYPT 2015. Springer; New York, NY, USA: 2015. FHEW: Bootstrapping homomorphic encryption in less than a second; pp. 617–640. [Google Scholar]
- 18.Wang W., Hu Y., Chen L., Huang X., Sunar B. Exploring the feasibility of fully homomorphic encryption. IEEE Trans. Comput. 2015;64:698–706. doi: 10.1109/TC.2013.154. [DOI] [Google Scholar]
- 19.Paillier P. Advances in Cryptology-EUROCRYPT’99. Springer; New York, NY, USA: 1999. Public-key cryptosystems based on composite degree residuosity classes; pp. 223–238. [Google Scholar]
- 20.Nishide T., Sakurai K. Information Security Applications. Springer; New York, NY, USA: 2010. Distributed paillier cryptosystem without trusted dealer; pp. 44–60. [Google Scholar]
- 21.Pan M., Sun J., Fang Y. Purging the back-room dealing: Secure spectrum auction leveraging paillier cryptosystem. IEEE J. Sel. Areas Commun. 2011;29:866–876. [Google Scholar]
- 22.Xu D., Wang R., Shi Y.Q. Data hiding in encrypted H. 264/AVC video streams by codeword substitution. IEEE Trans. Inf. Forensics Sec. 2014;9:596–606. doi: 10.1109/TIFS.2014.2302899. [DOI] [Google Scholar]
- 23.Dou Y., Zeng K.C., Yang Y. Poster: Privacy-Preserving Server-Driven Dynamic Spectrum Access System; Proceedings of the 21st Annual International Conference on Mobile Computing and Networking; Paris, France. 7–11 September 2015; pp. 218–220. [Google Scholar]
- 24.Kido H., Yanagisawa Y., Satoh T. Protection of location privacy using dummies for location-based services; Proceedings of the 21st International Conference on Data Engineering Workshops; Tokyo, Japan. 5–8 April 2005; p. 1248. [Google Scholar]
- 25.Duckham M., Kulik L. Pervasive Computing. Springer; New York, NY, USA: 2005. A formal model of obfuscation and negotiation for location privacy; pp. 152–170. [Google Scholar]
- 26.Chow C.Y., Mokbel M.F., Liu X. A peer-to-peer spatial cloaking algorithm for anonymous location-based service; Proceedings of the 14th annual ACM International Symposium on Advances in Geographic Information Systems; Arlington, VA, USA. 5–11 November 2006; pp. 171–178. [Google Scholar]
- 27.Mokbel M.F. Towards privacy-aware location-based database servers; Proceedings of the 22nd International Conference on Data Engineering Workshops; Atlanta, GA, USA. 3–7 April 2006; p. 93. [Google Scholar]
- 28.Bamba B., Liu L., Pesti P., Wang T. Supporting anonymous location queries in mobile environments with privacygrid; Proceedings of the 17th International Conference on World Wide Web; Beijing, China. 21–25 April 2008; pp. 237–246. [Google Scholar]
- 29.Gedik B., Liu L. Protecting location privacy with personalized k-anonymity: Architecture and algorithms. IEEE Trans. Mob. Comput. 2008;7:1–18. doi: 10.1109/TMC.2007.1062. [DOI] [Google Scholar]
- 30.Shankar P., Ganapathy V., Iftode L. Privately querying location-based services with SybilQuery; Proceedings of the 11th International Conference on Ubiquitous Computing; Orlando, FL, USA. 30 September–3 October 2009; pp. 31–40. [Google Scholar]
- 31.Xue M., Kalnis P., Pung H.K. Location and Context Awareness. Springer; New York, NY, USA: 2009. Location diversity: Enhanced privacy protection in location based services; pp. 70–87. [Google Scholar]
- 32.Catalano D., Gennaro R., Howgrave-Graham N., Nguyen P.Q. Paillier’s cryptosystem revisited; Proceedings of the 8th ACM Conference on Computer and Communications Security; Philadelphia, PA, USA. 5–8 November 2001; pp. 206–214. [Google Scholar]
- 33.San I., At N., Yakut I., Polat H. Efficient paillier cryptoprocessor for privacy-preserving data mining. Secur. Commun. Netw. 2016;9:1535–1546. doi: 10.1002/sec.1442. [DOI] [Google Scholar]
- 34.Jung T., Li X.Y., Wan Z., Wan M. Control Cloud Data Access Privilege and Anonymity With Fully Anonymous Attribute-Based Encryption. IEEE Trans. Inf. Forensics Secur. 2015;10:190–199. doi: 10.1109/TIFS.2014.2368352. [DOI] [Google Scholar]
- 35.Han J., Susilo W., Mu Y., Zhou J., Au M.H.A. Improving privacy and security in decentralized ciphertext-policy attribute-based encryption. IEEE Trans. Inf. Forensics Secur. 2015;10:665–678. [Google Scholar]
- 36.Qin B., Deng R.H., Liu S., Ma S. Attribute-Based Encryption with Efficient Verifiable Outsourced Decryption. IEEE Trans. Inf. Forensics Secur. 2015;10:1384–1393. [Google Scholar]
- 37.Xu J., Wen Q., Li W., Jin Z. Circuit Ciphertext-Policy Attribute-Based Hybrid Encryption with Verifiable Delegation in Cloud Computing. IEEE Trans. Parallel Distrib. Syst. 2016;27:119–129. doi: 10.1109/TPDS.2015.2392752. [DOI] [Google Scholar]
- 38.Sahai A., Waters B. Advances in Cryptology–EUROCRYPT 2005. Volume 3494. Springer; Berlin/Heidelberg, Germany: 2005. Fuzzy identity-based encryption; pp. 457–473. [Google Scholar]
- 39.Goyal V., Pandey O., Sahai A., Waters B. Attribute-based encryption for fine-grained access control of encrypted data; Proceedings of the 13th ACM Conference Computer and Communications Security; Alexandria, VA, USA. 30 October–3 November 2006; pp. 89–98. [Google Scholar]
- 40.Bethencourt J., Sahai A., Waters B. Ciphertext-policy attribute-based encryption; Proceedings of the IEEE Symposium on Security and Privacy; Oakland, CA, USA. 20–23 May 2007; pp. 321–334. [Google Scholar]
- 41.Rivest R.L., Shamir A., Adleman L. A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM. 1978;21:120–126. doi: 10.1145/359340.359342. [DOI] [Google Scholar]
- 42.Liu Y., Han J., Wang J. Rumor riding: Anonymizing unstructured peer-to-peer systems. IEEE Trans. Parall. Distrib. Syst. 2011;22:464–475. doi: 10.1109/TPDS.2010.98. [DOI] [Google Scholar]