Anda di halaman 1dari 10

This article has been accepted for publication in a future issue of this journal, but has not been

fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 1

An Efficient Ranked Multi-Keyword Search for


Multiple Data Owners over Encrypted Cloud Data
Tianyue Peng, Student Member, IEEE, Yaping Lin, Member, IEEE, Xin Yao, Student Member, IEEE,
and Wei Zhang

Abstract—With the development of cloud storage, more data Searchable symmetric encryption (SSE) [2], [3], [4], [5],
owners are inclined to outsource their data to cloud services. [6], [7], [8], [9], [10], [11], [12], [13], [14], [15] is often
For privacy concerns, sensitive data should be encrypted before considered as a way to guarantee data privacy and data
outsourcing. There are various searchable encryption schemes to
ensure data availability. However, the existing search schemes pay efficiency. However, various data owners encrypt their data
little attention to the efficiency of data users’ queries, especially with different keys leading to the following two drawbacks:
for the multi-owner scenario. In this study, we proposed a tree- (1) data users need to manage multiple keys for different data
based ranked multi-keyword search scheme for multiple data owners; (2) data users need to generate multiple trapdoors for
owners (TBMSM). Specifically, by considering a large amount data owners’ data even for the same query condition. In this
of data in the cloud, we utilize the TF×IDF model to develop a
multi-keyword search and return the top-k ranked search results. paper, we focus on multiple data owners top-k query, whereby
To enable the cloud servers to perform a secure search without the cloud server can merge multiple data indexes encrypted
knowing any sensitive data (e.g. keywords and trapdoors), we with different keys and efficiently support top-k query.
construct a novel privacy-preserving search protocol based on Motivation. Data sharing is another crucial utility function,
the bilinear mapping. To achieve an efficient search, for each i.e., sharing data files with each other. In personal health
data owner, a tree-based index encrypted with an additive order
and privacy-preserving function family is constructed. The cloud record system, data user (e.g., a patient) should have the
server can then merge these indexes effectively, using the “Depth- ability to access his/her top-k data files about a specific case
first Search” algorithm to find the corresponding files. Finally, the from different data owners (e.g., health monitors, hospitals,
rigorous security analysis proves that our scheme is secure, and doctors). Similarly, the employees in an enterprise should have
the performance analysis demonstrates its efficacy and efficiency. the ability to search data files outsourced by other employees.
Recent work [16] proposed a privacy-preserving ranked
Index Terms—Multi-keyword ranked search, Multiple data multi-keyword search in a multi-user model (PRMSM), which
owners, Security, Cloud storage. addresses the multi-keyword search problem in the multiple
data owners model. However, PRMSM is inefficient and
I. I NTRODUCTION potentially expensive for frequent queries due to matching
various ciphertexts from different data owners even for the
LOUD storage enables ubiquitous, scalable, and on-
C demand network access to a shared pool of digital
data resources [1]. More enterprises and individuals tend to
same query.
Challenge. In contrast to the single-user scenario, developing
an efficient scheme for multiple data owners becomes a new
outsource their personal data to the cloud server, and utilize challenge. To implement privacy preservation and efficient
query services to easily access data anytime, anywhere and searches, we commonly build a tree-based index structure
on any device. As one exemplary popular cloud storage for each data owner’s encrypted data. For a specific query
services, Dropbox has 500 million users and 8 million business condition, data users need to generate a trapdoor for each
customers as of December 2017. The Cisco survey predicts data owner, and the cloud should also search each index.
that the global storage capacity would reach 1.1ZB, which This is obviously inefficient, due to the linear relationship of
is almost twice the space available in 2017. Besides, the the number of trapdoors and data owners. A simple way to
“Cloud Storage Market by Solution (Primary Storage, Disaster overcome this limitation is to let each data owner utilize the
Recovery & Backup Storage, Cloud Storage Gateway & same key to encrypt their data files. Nevertheless, any one of
Data Archiving), Service, Deployment Model (Public, Private the owners being compromised may lead to a system crash.
& Hybrid), Organization Size, Vertical & Region - Global Approach. In this paper, we consider a multi-source cloud sys-
Forecast to 2021” reports that the cloud storage market is tem, in which each data owner (viewed as a source) generates a
expected to grow from $23.76 billion in 2016 to $74.94 billion tree-based index for his/her data files and encrypts these data
by 2021, and reach $97.41 billion by 2022. with his/her corresponding key. To implement both privacy
preservation and efficiency searches, we propose an efficient
T. Peng, Y. Lin, X. Yao and W. Zhang are with the College of Computer tree-based ranked multi-keyword search scheme (TBMSM). In
Science and Electronic Engineering, Hunan University, and Hunan Provincial this scheme, the cloud server is allowed to effectively merge
Key Laboratory of Dependable Systems and Networks, Hunan, 410012, China. multiple encrypted indexes, and securely perform the multi-
(E-mail: {tianyuepeng, yplin, xinyao, weizhangdoc}@hnu.edu.cn)
keyword search without revealing the data owners’ sensitive
Corresponding author: Yaping Lin (e-mail: yplin@hnu.edu.cn). information, neither data files nor the queries. We construct a

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 2

novel search protocol based on bilinear pairing, which enables Zhang et al. [16] proposed a secure ranked multi-keyword
different data owners to use different keys to encrypt their search scheme in a multi-owner model (PRMSM) that not only
keywords and trapdoors. In order to rank the search results, we allows the cloud server to perform a multi-keyword search
utilize the TF×IDF scheme to model relevance scores of data without knowing any sensitive information, but also enable
files and propose a “Depth-First Search”(DFS) algorithm to the data owner to flexibly change the encryption key. However,
obtain the ranked results. Finally, we confirm the security and these schemes rarely focus on query efficiency.
efficiency of our scheme through comprehensive theoretical Practically, query efficiency is one of the most important
analysis and extensive experiments with a real dataset. indicators of the user experience. Kamara et al. [17] proposed
Contributions. In summary, this paper makes the following a secure search scheme based on the tree-based index, which
contributions: can efficiently perform searches. However, it is designed only
1) We construct a novel privacy-preserving search protocol, for a single keyword search. Later, Xu et al. [18], [20] present-
which allows the cloud server to perform an efficient ed an efficient multi-keyword ranked search scheme (MKQE)
secure multi-keyword ranked search without knowing that enabled a dynamic keyword dictionary and improved the
data owners’ sensitive information. precision of the search. Sun et al. [19] created a privacy-
2) To achieve query efficiency, we introduce a consolida- preserving multi-keyword text search scheme. They divided
tion strategy to implement multiple index trees. With this the vector index into multiple layers and proposed a tree-
strategy, each data owner can encrypt their own tree- based index structure by applying the MD-algorithm [21] that
based index, and the cloud can be permitted to effec- realized more efficient search functionality, yet resulting in a
tively merge indexes without knowing index contents. loss of precision. Xia et al. [22] constructed a tree-based index
3) We perform extensive experiments to evaluate the effi- structure and proposed a greedy depth-first search (GDFS)
ciency of the TBMSM scheme on a real-world dataset algorithm that achieved higher search efficiency. Unfortunate-
and achieve a logarithmic search time. ly, these works don’t consider multiple data owners scenario.
Roadmap. The rest of the paper is organized as follows. First, Dong et al. [23] considered a practical scenario where multiple
we review the related work in section II. Then, we formulate users share data via an untrusted third party. To implement
the problem in section III and introduce the proposed scheme it, the authors proposed a novel multi-user searchable data
in section IV. Section V presents security and performance encryption scheme based on proxy cryptography. Different
analysis. Section VI presents the performance evaluation. from the existing searchable encryption schemes, their scheme
Finally, we conclude the paper in section VII. allowed the users to update the shared data set and each
user can be reader and writer simultaneouly. Furthermore, the
II. R ELATED W ORK rigious proof had been represented to prove the security of
their scheme. Popa et al. [24] focused on web applications
In this section, we review two categories of related work:
and proposed a new platform Mylar which is a combination of
searchable encryption and order-preserving encryption.
system techniques and novel cryptographic primitives, includ-
ing data sharing, computing over encrypted data and verifying
A. Searchable Encryption application code. The results with 6 applications showed that
Searchable encryption provides a secure search service over Mylar is a good multi-user web application with data sharing.
encrypted data. Song D et al. [2] proposed the searchable In [25], the authors proposed a secure and effective Near-
symmetric encryption(SSE) scheme that achieved ciphertext duplicate detection (NDD) system over encrypted in-network
search. Goh et al. [3] proposed a more secure SSE scheme storage which supported multi-user and multi-key searchable
using Bloom filter. However, a false positive may cause mis- encryption. However, those schemes cannot solve the multi-
judgment [4]. Later, Curtmola et al. proposed other schemes: keyword ranked search problem in the multi-user setting.
SSE-1 and SSE-2 [5]. In term of efficiency, SSE-1 was better Therefore, their schemes cannot directly be deployed for
than SSE-2. In term of security, SSE-2 was safer. However, addressing our problem. In [26], Yao et al. proposed a multi-
these works mostly focus on the single keyword or boolean source encrypted indexes merge (MEIM) mechanism, where
search and don’t support ranked search. Wang et al. [7] raised the cloud can merge the encrypted indexes from data owners
a secure ranked keyword search scheme which returned the without knowing the index content. They focused on personal
top-k relevant files and was only designed only for single- health records, and only considered a numerical “attribute
keyword search. value” for each attribute while ignoring queries on data files
The multi-keyword ranked search allows users to input mul- that must be built on vectors.
tiple query keywords for personalized queries. In [9], Cao et al.
proposed the first secure multi-keyword ranked search scheme
over encrypted cloud data (MRSE), and the documents are B. Order-Preserving Encryption
ranked by the “inner product” between file vectors and query The order-preserving encryption (OPE) is used to preserve
vectors. However, they do not consider the weight of different numerical order for plaintexts [27]. Boneh et al. [28], [29]
keywords. The work of [10], [11], [12] enriched the multi- proposed the order-revealing encryption (ORE) schemes to
keyword search. Wang et al. [13], Chuah et al. [14] proposed achieve the best-possible security. In [30], Chenette et al. built
multi-keyword fuzzy search scheme aimed at the tolerance of the first efficiently implementable order-revealing encryption.
both slight typos and format inconsistencies for users’ input. Yao et al. [31] proposed a novel multiple order-preserving

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 3

symmetric encryption (MOPSE) scheme to encrypt personal C. Design Goals


health record under the multi-user setting. However, these To enable an efficient ranked multi-keyword search for
schemes cannot support additive order-preserving. In addition, multiple data owners over encrypted cloud data, our scheme
Yi et al. [32] proposed an order-preserving function to encode aims to achieve the following goals:
data from different sensors in the sensor network. Neverthe-
less, it only considered range queries while ignoring the multi- 1) Multi-keyword Ranked Search for Multiple Data
keyword ranked search. Owners: This scheme not only allows multi-keyword
searches over encrypted cloud data (which are encrypted
with different keys for different data owners) but also al-
III. P ROBLEM F ORMULATION low the cloud server to return the ranked top-k encrypted
files.
A. System Model 2) Search Efficiency: We explore a tree-based index struc-
ture and an efficient search algorithm. The cloud serv-
er will merge encrypted indexes without knowing the
corresponding sensitive information. The authenticated
data user only needs to encrypt query keywords once to
Encry
pted efficiently retrieve all files of interest.
Files
Semi-trusted 3) Security: The scheme proposed should achieve the
Cloud Server following three security goals: (1) Keyword Semantic
Merged Security (Definition 1). We will prove that TBMSM is
semantically secure against the chosen keyword attack
es
index under the selective security model. (2) Keyword Security
pted
Encry Search request
Top-k ranked
result (Definition 2). We will prove that TBMSM realized key-
Data Owners (trapdoor)
word privacy in the random oracle model. (3) Relevance
Score Security. We need to ensure that the cloud server
cannot infer the actual value of the encoded relevance
Data decryption keys scores.
Data Users
Definition 1. Let A be a probability polynomial time adver-
Fig. 1: System Model. sary, he can ask the challenger C to return the ciphertext
with the corresponding keywords. The adversary A sends
In Fig. 1, three entities, i.e., data owners, the cloud server, two keywords w1 and w2 with equal length to C. Then the
and data users, make up this system model. Data owners have challenger C randomly sets ν ∈ {1, 2} and sends the ciphertext
a large collection of files F . To enable efficient multi-keyword cν to the adversary A, who continues to ask the challenger
w
search on the encrypted files, each data owner first builds C for the ciphertext of keyword w, such that w ∈ / {w1 , w2 }.
a secure searchable tree-based index I. Then, data owners Finally, the adversary A outputs the guess ν 0 ∈ {1, 2}. We
encrypt their data files F with their keys and outsource both define the probability that the adversary A breaks TBMSM
the encrypted tree-based index and data files to the cloud to be P [ν 0 = ν]. If P [ν 0 = ν] is negligible, TBMSM is
server. When receiving the tree-based indexes, the cloud server semantically secure against the chosen keyword attack under
merges multiple encrypted indexes without compromising data the selective security model.
owners’ privacy. When the data user searches t keywords
over the encrypted files and fetch k encrypted files, he first Definition 2. Let A be a probability polynomial time adver-
computes the trapdoors T , and submits T and k to the cloud sary, he can ask the challenger C to return the ciphertext of
server. When receiving the trapdoors T and k, the cloud server corresponding keywords. The challenger C randomly chooses
begins searching the merged index tree I and returns the a keyword w and sends the ciphertext w b to A. Finally, the
corresponding collection of the top-k ranked encrypted files. adversary A outputs the guess w0 . We define the probability
that A breaks the encrypted keyword to be P [w0 = w]. If
P [w0 = w] is negligible, TBMSM realized keyword privacy.
B. Threat Model
D. Notations
In the TBMSM, we assume both data owners and data
users are trusted. However, we consider the cloud server to For clarity, we introduce the main notations mentioned in
be “curious but honest”, which is the same as the previous this paper.
works [7], [9]. This means it follows the proposed protocol, • O - the collection of data owners, denoted as a set of m
but curious about the actual information of encrypted files, the data owners O = (O1 , O2 , ..., Om ).
trapdoor, and relevance scores. Preserving the access pattern • I - the collection of data owners’ index, denoted as a set
is too much expensive because the algorithm must access the of m indexes I = (I1 , I2 , ..., Im ).
entire file set [33]. For efficiency, we do not protect the access • U - data users collection, denoted as a set of n data users
pattern in our scheme. U = (U1 , U2 , ..., Un ).

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 4

• W - the collection of keywords, denoted as a set of η 4) Additive Order and Privacy Preserving Function
keywords W = (w1 , w2 , ..., wη ). (AOPPF): In [33], Yi et al. proposed an additive order and
• W
ci - the keyword collection encrypted by Oi , denoted as privacy preserving function, which helps data owners encrypt
W
ci = (w bi,1 , wbi,2 , ..., w
bi,η ). the relevance score using a different function. It allows the
• Fi - the plaintext file collection of Oi , denoted as a set cloud server to accurately rank the search result files.
of d files Fi = (Fi,1 , Fi,2 , ..., Fi,d ). y
X
Faoppf (x) = Aj,k .m(x, j).m(y, k) + raof (2)
• Ci - the encrypted file collection of Oi , denoted as a set
0≤j,k≤τ
of d files Ci = (Ci,1 , Ci,2 , ..., Ci,d ).
• Qi - a subset of W , indicating the keywords in a where Aj,k and τ denote the coefficient of m(x, j).m(y, k)
y
search request that are submitted by Ui , denoted as and the degree of Faoppf (x), respectively. The function
Qi = (qi,1 , qi,2 , ..., qi,t ). m(x, ·) is used as preserving the order of relevance score
• TQi - the trapdoor for Qi , denoted as TQi = x, the function m(y, ·) is deployed for processing the data
(Tqi,1 , Tqi,2 , ..., Tqi,t ). owner’s ID y, and raof is the disturbing part. The function
m(x, j) is defined as follows: m(x, 1) = x, m(x, 0) = 1 and
m(x, j) = (m(x, j − 1) + α · x) · (1 +Pλ) if j > 1, where α and
E. Preliminaries
λ are two constant numbers. Since 0≤j,k≤τ Aj,k · (m(x +
In this subsection, we introduce some necessary techniques 1, j) − m(x, j)) · m(y, k) ≥ 0≤j,k≤τ Aj,k · ((1 + λ)j−1 + α ·
P
used in the study. P
(1 + λ)), we let l to be an integer such that 2l−1 ≤
1) Bilinear Paring: Let G1 and G2 denote two cyclic groups P1≤i≤j−2 j−1
+ α · 1≤i≤j−2 (1 + λ)) ≤ 2l ,
P
of prime order p. We view G1 as an additive group and G2 0≤j,k≤τ Aj,k · ((1 + λ)
and the parameter r is an integer smaller than l −1. Therefore,
as a multiplicative group. A bilinear map e : G1 × G1 → G2
the disturbing part raof belong to {0, 1, · · · , 2l−1 }.
satisfies the following properties:
x y xy
5) Keyword Balanced Binary Tree (KBB-Tree): To improve
• Bilinear: ∀g, h ∈ G1 , ∀x, y ∈ Zp , e(g , h ) = e(g, h) .
the efficiency of the search, Xia et al. [22] first proposed the
• Computable: There is a polynomial time algorithm to
keyword balanced binary tree. However, it does not support the
compute e(g, h) ∈ G2 , for any g, h ∈ G1 . multiple data owners’ model. In our scheme, each data owner
• Non-degenrate: If g is a generator of G1 ,the e(g, g) is
builds a secure keyword balanced binary tree and outsource
a generator of G2 . them to the cloud server. The cloud server merges those index
2) Decisional Bilinear Diffie-Hellman (DBDH) trees and performs the efficiently multi-keyword search. Each
Assumption: The DBDH problem is as follows: given node in the index tree stores a vector D whose elements are
a, b, c, z ∈ Zq as input, whether we can distinguish the relevance scores. We define the node in the index tree as
the tuple (g, g a , g b , g c , e(g, g)abc ) from the tuple
(g, g a , g b , g c , e(g, g)z ). The DBDH assumption states unode =< ID, FID , D, Pl , Pr > (3)
that there is no polynomial-time algorithm that has a where ID, FID , and OID denote the id of node, file and data
non-negligible advantage in solving the DBDH problem. owner, respectively. Pr denotes the pointers to the right child
3) Vector Space Model: The vector space model along of the unode , and Pl denotes the pointers to the left child. The
with TF×IDF rule is a popular information retrieval model detailed construction of the KBB-tree and the merging method
[34], where TF denotes the frequency of a given keyword will be discussed in section IV.
appearing in the file and IDF is the logarithm of the total
number of files divided by the number of files containing the IV. T REE - BASED M ULTI -K EYWORD R ANKED S EARCH
keyword and get value obtained the logarithm. There are many S CHEME
variations of the TF×IDF weighting scheme. Without loss of
In this section, we detail our TBMSM scheme in the
generality, we choose a commonly used formula to calculate
following aspects: Overview, System Setup, Keyword Encryp-
the relevance score of the document [35]. Given a data file set
tion, Index Construction, Secure Indexes Merge, Trapdoor
F = {F1 , · · · , Fd } and a keyword set W = {w1 , · · · , wη },
Generation, Efficient Search.
we compute the relevance score between Fb (b ∈ [1, d]) and an
arbitrary keyword wj (j ∈ [1, η]) with the following method.
A. Overview
1 N
Score(Fb , wj ) = (1 + ln fFb ,wj ) ln (1 + ) (1) To meet the requirements of efficient multi-keyword ranked
|Fb | fwj
search in multiple data owners model, we propose a novel
, where |Fb | denotes the length of the file Fb , fFb ,wj denotes TBMSM mechanism. Fig. 2 shows the working processes of
the frequency of the keyword wj in the file Fb , fwj denotes TBMSM.
the number of files containing keyword wj , and N denotes Data Owners: (1) KeywordsEnc encrypts the keyword
the total number of files, i.e., |F |. Here, we denote the vector with data owners’ secret key koi,w ; (2) FilesEnc utilizes the
of the relevance score of the keywords in the file Fb by Db = traditional symmetric encryption algorithm to encrypt data
{Score(Fb , w1 ), Score(Fb , w2 ), · · · , Score(Fb , wη )} = owners’ files; (3) IndexesEnc builds the tree-based index for
{sb,1 , · · · , sb,η }. Note that the length of the vector of all files each data owner and encrypts the KBB-tree with AOPPF. (4)
is the same (i.e., η); if the file Fb does not have the keyword data owners upload encrypted keywords, files and KBB-trees
wj , the corresponding jth element in Db should be set as 0. to the cloud server.

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 5

Data Owners The Cloud Server Data Users ri


3
1
3.2 4.3 4.2 0.6

File Decryption keys

r1,1 r1,2
KeywordsEnc Encrypted Keywords
3
4 2 1
3.2 4.3 2.7 0.6 2.6 1.2 4.2 0.4

FilesEnc Encrypted Files


fi,1 fi,2 fi,3 fi,4

3.2 4.3 0.7 0.6 2.5 2.4 2.7 0.5 1.6 1.2 1.5 0.4 2.6 0.2 4.2 0.0
IndexesEnc Encrypted KBB-trees

IndexesMerg Fig. 3: Illustration of the DFS-algorithm on the KBB-tree.

Search Requests TrapdoorGen


D. Index Construction
Multi-keyword Encrypted
FilesDec Each data owner builds a KBB-tree for his/her data files.
Search top-k Files
Given a data file set F = {F1 , · · · , Fd }, data owner Oi first
utilizes the identical method in Sect. III-E3 to calculate the
Fig. 2: TBMSM working processes.
vector space Db for each file Fb , where b ∈ [1, d]. To guarantee
the security of the vector space Db , data owner Oi adopts the
H(ID )
Data Users: (1) TrapdoorGen generates trapdoors with data AOPPF Faoppf i (•) to encode each element in Db :
users’ secret key kui,w , and then submits trapdoors and the H(ID )
number of extracting files k to the cloud server; (2) FilesDec Vi,b,j = Faoppf i (Si,b,j ) (6)
decrypts encrypted files. where H(•) denotes a public hash function, Vi,b,j is the
The Cloud Server: (1) IndexesMerg merges multiple en- encoded data of Si,b,j . The vector Db will be encoded to
crypted KBB-trees; (2) Multi-keyword Search runs the DFS b b , where the jth element D
D b b (j) is equivalent to Vi,b,j .
algorithm to find out the corresponding files and returns the Besides, data owner Oi takes Si,b,j as the input of Eq. 7 to
corrected top-k encrypted files to data users. i
calculate the function Vb,j , and denotes the function vector as
b
i i
V = {V , · · · , V } (b ∈ [1, d], j ∈ [1, η]).
b
b,1 b,j
B. System Setup i i
Vb,j = Faoppf (Si,b,j ) (7)
Let k denote the security parameter. Both g and g1 are
the generators of cyclic groups G1 and G2 with prime order To build a KBB-tree for all data files, data owner
p. Our algorithm randomly produces kuj ,w ∈ Zp+ , koi ,f ∈ Oi generates a node for each data file Fb as ui,b =
Zp+ , koi ,w ∈ Zp+ ← (0, 1)∗ , where kuj ,w is the private key of hIDi , Fb , D b b , P l , P r i. Subsequently, the Algorithm 1 takes
b b, V
b b
data user Uj used to generate the trapdoor, koi ,f and koi ,w all nodes of each owner (linkedListi = {ui,1 , · · · , ui,d }) as
are the secret keys of data owner Oi for encrypting files and inputs1 , and outputs the root of the KBB tree.
keywords. In addition, let H(•) denote a public hash function Figure 3 takes four files (Fi = {fi,1 , fi,2 , fi,3 , fi,4 }) as an
whose output belongs to Zp+ . example to show how to construct the KBB tree.

E. Multi-source Indexes Merge


C. Keyword Encryption
When having received the index tree set I =
To meet the security search requirements, keyword encryp- {I1 , I2 , · · · , Im } from different data owners, the cloud server
tion should satisfy the following conditions. First, different merges them into one index tree Imerged according to the
data owners can encrypt the same keyword with different following steps.
private keys, and don’t need to share the keys with others. First, the cloud server initializes an empty linkedList and
Second, the same keyword should be encrypted to different inserts ui,root (ui,root denotes the root of Ii , i ∈ [1, m]) to
ciphertext at different times. linkedList. Second, the cloud server takes the linkedList as
We assume that data owner Oi wants to encrypt the ath inputs of the Algorithm 1 and gets the root of merged tree.
keyword wi,a As data owners utilize different encoding functions to
encode their relevance scores, the cloud server therefore cannot
bi,a = (g koi ,w ·H(wi,a )·ro , g koi ,w ·ro )
w (4)
directly compare the size of the encoded scores from different
where ro is a random number. For clarity, we let EK1 = data owners. In what follows, we take two files (F1 and F2 )
g koi ,w ·H(wi,a )·ro and EK2 = g koi ,w ·ro , so and the h-th keyword wh as an example to explain how to
1 Note that if the number of nodes is not power of two, some dummy nodes
w
bi,a = (EK1 , EK2 ) (5) (e.g., u = NULL) need be introduced for constructing the KBB tree.

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 6

Algorithm 1: BuildIndex G. Efficient Search


Input: linkedList When the cloud server receives a search request, it first
Output: Encrypted index tree I converts the trapdoor into a search vector and then calls the
if linkedList.size() == 1 then DFS-algorithm described in algorithm 2 and returns the top-k
return the element of linkedList; related files. We assume the cloud server received a trapdoor
else Twt , and for every encrypted keyword in the keyword set Wci ,
Initialize an empty list tempNodeList; it first computes
i ← 1;
for each pair hui , ui+1 i in linkedList do e(EK1 , T2 ) = e(g koi ,w ·H(wi,a )·ro , g kui ,w ·ru )
Initialize an empty parent node u; = e(g, g)koi ,w ·H(wi,a )·ro ·kui ,w ·ru
u.ID ← IDi,i+1 ;
u.F ← NULL; The cloud can judge whether wt belongs to the keyword set
l
u.Pi,i+1 ← ui ; if the following equation is true and set the ath dimension of
r
u.Pi,i+1 ← ui+1 ; the query vector to 1:
for j in [1, · · · , η] do e(EK2 , T1 ) = e(g koi ,w ·ro , g kui ,w ·H(wt )·ru )
b i (j) > D
if D b i+1 (j) then
= e(g, g)koi ,w ·ro ·kui ,w .H(wt )·ru
u.Di,i+1 (j) ← D
b b i (j);
i,i+1
b i (j); = e(EK1 , T2 )
u.V b (j) ← V
else
u.D b i,i+1 (j) ← Db i+1 (j); Algorithm 2: DFS
i,i+1
u.V b (j) ← Vb i+1 (j); Input: The IndexTree’s node u, query vector q and
end returned file number k
end Output: The list RList of top-k ranked encrypted files
Insert u to tempNodeList; if the node u is not a leaf node then
i ← i + 2; if getRScore(u, q) > minScore then
end DFS(u.getLef tN ode(), q, k);
Replace linkedList with tempNodeList; DFS(u.getRightN ode(), q, k);
BuildIndex(linkedList) end
end else
if getRScore(u, q) > minScore then
if RList.size() == k then
compare the size of the encoded scores with different encoding Delete the element with the smallest encoded
functions. score from RList;
end
Assume the F1 of data owner O1 and F2 of data owner
Insert a new element and sort the element of
O2 contain the hth keyword wh . The relevance score S1,1,h
RList;
and S2,2,h are encoded to V1,1,h and V2,2,h . First, the cloud
i i Set minSocre to be equal to the smallest
server chooses the function V2,h = Faoppf (S2,2,h ) (The cloud
i i encoded score in RList;
server can also choose V1,h = Faoppf (S1,1,h )) and substitutes end
ID1 ID1
ID1 for the variable i and get V2,h . If V1,1,h > V2,h , end
the relevance score of F1 is bigger than F2 , otherwise, the
relevance score of F2 is bigger than F1 .
Fig. 3 shows an example of a search process with query
vector q = (0, 0, 1, 1), and the parameter k = 3. The search
F. Trapdoor Generation starts at the root node, and reaches the first leaf node fi,4 with
In the multi-owner model, it is not advisable for the data the query relevance score 4.2. Then, the leaf node fi,3 and fi,2
user to communicate with each data owner to generate the are reached with relevance scores 1.9 and 4.5 respectively.
trapdoor, so we should satisfy the following two conditions. Next, the DFS-algorithm will reach the leaf node fi,1 with the
First, the data user can generate the trapdoor without commu- relevance score 1.3, which is smaller than the smallest score in
nicating with others. Second, the same search keyword should RList. Finally, the elements of RList are sorted by relevance
generate different trapdoors at different times. score.
We assume data user Ui wants to search keyword wt , and
then computes the trapdoor as V. S ECURITY AND P ERFORMANCE A NALYSIS
Twt = (g kui ,w ·H(wt )·ru , g kui ,w ·ru ) (8) A. Security Analysis
where ru is a random number. For clarity, we let T1 = Data files are encrypted by a symmetric encryption algo-
g kui ,w ·H(wt )·ru and T2 = g kui ,w ·ru , so Twt = (T1 , T2 ) and rithm before uploading. As long as the algorithm is safe, the
submits it to the cloud server. cloud server will not know the contents of files.

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 7

9
300 500
TBMSM TBMSM 8 TBMSM
450

Time of building index (s)


Time of building index(s)

PRMSM PRMSM

Time of merge index (s)


250 7
400
200 350 6
300 5
150 250 4
200
100 3
150
2
50 100
50 1
0 0
5 10 15 20 25 30 1 2 3 4 5 6 7 8 9 10 5 10 15 20 25 30
2 3
Number of files in the dataset(×10 ) Number of keywords in dictionary (×10 ) Number of users(×10 2 )
(a) keyword dictionary u=4000. (b) data set d=1000. (c) keyword dictionary u=4000.

Fig. 4: Time cost of index construction.

1) Keywords and Trapdoors: We give the security analysis generate corresponding keyword ciphertext w. b If w ∈ W , C
of keywords and trapdoors according to the following two just sends w b to A; Otherwise, C adds w to W and sends w b to
theorems. A.
Theorem 1. Based on the DBDH assumption, TBMSM is Challenge: After A has submitted t search requests, C
semantically secure against the chosen keyword attack under randomly chooses keyword w0 and returns encrypted key-
word w c0 = (g k1 ·H(w0 )·r1 , g k1 ·r1 ) and trapdoor Tw0 =
the selective security model. 0
(g k2 ·H(w )·r2 , g k2 ·r2 ) to A.
Proof. We first consider a game played between adversary Guess: A outputs the guess w00 for w0 and sends it to C. C
A and challenger C. We assume adversary A has a non- returns the encrypted keyword w c00 to A. If Tw0 matches wc00 ,
negligible advantage  as the attacker in this game. In the then A wins the game.
initialization phase, challenger C sets µ randomly. If µ = 0, C
Before outputting the guess w0 , A already has t keywords
sends (A, B, C, Z) = (g a , g b , g c , g abc ) to A; If µ = 1, C sends
and their encrypted keywords. Therefore, the remaining key-
(A, B, C, Z) = (g a , g b , g c , g z ) to A, where a, b, c, z ∈ Zp are
word set is η − t, where η is the size of keywords. In addition,
randomly generated.
because the discrete logarithm problem is hard in polynomial
Setup: Challenger C sends public keys (g, g a , g b , g c , Z) to
time, the probability that A guess the correct w0 from w c0 or
the adversary A.
Tw0 is a negligible probability . Therefore, A can win the
Phase 1: C initializes a set of keywords W and sets it to 1
game with probability η−t + .
an empty value. A can choose any keyword w and ask C to
generate corresponding keyword ciphertext w. b If w ∈ W , C
just sends w b to A; Otherwise, C adds w to W and sends w b to 2) Relevance scores: We encode relevance scores with the
A. AOP P F proposed in [33]. We assume the data owner inputs
Challenge: A sends two keywords w1 and w2 with equal H(ID )
score s and IDi , and sends the encoded score Faoppf i (s) to
length to C, where w1 , w2 ∈ / W , C randomly sets ν ∈ {1, 2} the cloud server. When the cloud server collects m encoded
and sends the ciphertext w cν = (Z H(wν ) , Z) to A. scores for the same score s, it can construct m equations.
Phase 2: A repeats phase 1 and the only limit is w ∈ / However, there are m + 1 unknown variables, so the AOP P F
{w1 , w2 }. cannot be broken based on those information. Therefore, the
Guess: A outputs the guess ν 0 ∈ {1, 2}. If ν 0 = ν, then w cν privacy of the relevance scores has also been protected.
is the ciphertext of wν , and A outputs µ = 0; Otherwise it
outputs µ = 1.
Evidently, A will output ν 0 = ν with probability 1/2 + 
and output ν 0 6= ν with probability 1/2. Therefore, A can win 600
TBMSM
500
TBMSM

the game with probability 1/2 + /2. In other words, TBMSM PRMSM PRMSM
Size of index (×10 3 KB)

Size of index (×10 3 KB)

500
400

is secure against the chosen keyword attack. 400


300
300
Theorem 2. Based on the discrete logarithm assumption, 200
200

TBMSM realized keyword privacy in the random oracle model. 100


100

Proof. We consider a game played between the adversary A 0 0


5 10 15 20 25 30 1 2 3 4 5 6 7 8 9 10
and the challenger C as follows. Number of files in the dataset(×10 2 ) Number of keywords in dictionary (×103 )

Setup: The challenger C sends public keys (g, g k1 , g k2 ) to (a) keyword dictionary u=4000. (b) data set d=1000.
the adversary A.
Fig. 5: Index size.
Phase 1: C initializes a set of keywords W and sets it to
an empty value. A can choose any keyword w and ask C to

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 8

B. Performance Analysis of users. When the number of data owners belongs to {500,
Index Encryption: Assume that the keyword dictionary and 3000}, the time cost values within {1.403s, 8.399s}, which is
file numbers for each index are defined as u and d. O(d) nodes acceptable. On the other hand, as shown in Fig. 5 (due to the
are generated during the index tree construction, and for each use of balanced binary tree), the TBMSM needs more storage
node it takes O(u) time to encrypt it. The time complexity of space for the index. However, this is not a problem for the
building an index is O(ud). cloud platform.
2) Trapdoor Generation: Fig. 6a shows that both the
TBMSM and PRMSM are unaffected by the keyword dic-
5
tionary size for the same number of queried keywords. The
40
TBMSM requires approximately 2.769s to generate trapdoors,
Time of generating trapdoor (s)

Time of generating trapdoor (s)


TBMSM
36 PRMSM
4
32
28
while the PRMSM requires 4.618s. In Fig. 6b, given the same
3 24 number of keyword dictionary sizes (u = 4000), the trap-
20
2 16
door generation time for the TBMSM ranges from 2.769s to
1
12 23.588s, while it ranges from 4.618s to 41.044s for PRMSM.
TBMSM 8
PRMSM 4 3) Search: Fig. 7 shows that our proposed scheme con-
0 0
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 sumes less time search compared to PRMSM, which matches
Number of keywords in dictionary(×103 ) Number of queried keywords (×10 2 )
our search analysis. Fig. 7a shows that given d=2000 and
(a) queried keywords t=100. (b) keyword dictionary u=4000.
u=100, when the number of queried keywords belongs to {1,
Fig. 6: Time cost of generating trapdoors. 10}, the search time in the PRMSM ranges from 4.992s to
46.932s, while our method’s search time ranges from 0.572s
Index Merge: Assume that there are m index trees to to 0.72s. Fig. 7b shows that the number of files in the dataset
merge. Merging m indexes is equivalent to merging their roots. has little effect on the search. Fig. 7c shows that given the
It takes O(um) to merge these encrypted indexes. Therefore, same size of queried keywords (t=5), and the same dataset
the time complexity of the merging index is O(um). (d=2000), when the size of the keyword dictionary increases
Query: We assume that the number of leaf nodes containing from 100 to 1000, the TBMSM’s search time ranges from
at least one query keyword is n. The time cost to calculate 0.63s to 0.834s, only an average of 0.02s, while the PRMSM
the relevance score is O(u), and the height of the merged ranges from 23.31s to 92.947s.
index is log d+log m. The search time complexity is less than
O(un(log d+log m)), as the top-k queries of n are larger than VII. C ONCLUSION
the number of required files k.
In this study, we consider a multiple data owners model
in cloud computing and propose an efficient ranked multi-
VI. P ERFORMANCE E VALUATION
keyword search scheme over encrypted data. First, we propose
In this section, we evaluate the efficiency of the TBMSM. a novel secure search protocol that allows different data owners
First, we introduce the evaluation settings, then compare our to encrypt the files and indexes with different keys. Then, we
proposed scheme with the PRMSM. construct a tree-based index structure for each data owner
and encrypt with AOPPF. Meanwhile, the TBMSM allows
A. Evaluation Settings the cloud server to merge encrypted indexes without knowing
any information. The experiment results obtained using the
Our experiments are conducted using the Java programming
RFC dataset demonstrate that the TBMSM is an efficient
language on a PC with a 3.3 GHz Intel Core CPU and 8
mechanism.
GB memory. We use the real datasets, the Internet Request
For Comments (RFC) [36] for simulation experiments. This
dataset contains 7875 plain text files with a total size of ACKNOWLEDGMENT
approximately 393MB. Then we extract keywords from the This work is supported in part by the National Natural
RFC files. Science Foundation of China (Project No. 61472125), and the
Foundation of CERNET in China(Grant No. NGII20150407).
B. Evaluation Results
1) Index Construction: Fig. 4 shows the time cost of index R EFERENCES
construction. Fig. 4a shows the time cost of index construction
[1] P. Mell, T. Grance, “The nist definition of cloud computing,” COMMUN
for the same size of keyword dictionary, which is almost ACM., vol. 53, no. 6, pp. 50 – 50, 2010.
linear with the number of files. This is consistent with our [2] D. Song, D. Wagner, A. Perrig, “Practical techniques for searches on
performance analysis. The TBMSM consumes much less time encrypted data,” in: SP’00, Berkeley, CA, 2000.
[3] E. Goh, “Secure indexes,” Cryptology ePrint Archive, pp. 216 – 216,
than PRMSM. Fig. 4b shows that, given the same number 2003.
of files (d = 1000), TBMSM grew by an average of 29.16s, [4] A. Broder, M. Mitzenmacher, “Network applications of bloom filters: A
while PRMSM grew by an average of 45.12s. Fig. 4c shows survey,” Internet Math., vol. 1, no. 4, pp. 485 – 509, 2002.
[5] R. Curtmola, J. Garay, S. Kamara, R. Ostrovsky, “Searchable symmetric
the time cost of the merging operation with the same keyword encryption: improved definitions and efficient constructions,” Journal of
dictionary (u = 4000) and grows linearly with the number Computer Security, vol. 19, no. 5, pp. 895 – 934, 2011.

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 9

50 100
28
45 TBMSM 90 TBMSM
PRMSM PRMSM
40 24 80

Time of query (s)

Time of query (s)


Time of query (s)

35 70
20
30 60
16 TBMSM
25 PRMSM
50
20 12 40
15 30
8
10 20
4
5 10
0 0 0
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 1 2 3 4 5 6 7 8 9 10
3
Number of queried keywords Number of files in the dataset(×10 ) Number of keywords in dictionary(×102 )
(a) data set d=2000 and keyword dictionary u=100.(b) queried keywords t=5 and keyword dictionary (c) queried keywords t=5 and date set d=2000.
u=100.

Fig. 7: Time cost of search.

[6] Q. Liu, G. Wang, J. Wu, “Secure and privacy preserving keyword H. Balakrishnan, “Building web applications on top of encrypted data
searching for cloud storage services,” J NETW COMPUT APPL., vol. 35, using Mylar,” in: NSDI’14, Seattle, WA, 2014.
no. 3, pp. 927 – 933, 2012. [25] H. Cui, X. Yuan, Y. Zheng, C. Wang, “Enabling secure and effective
[7] C. Wang, N. Cao, J. Li, K. Ren, W. Lou, “Secure ranked keyword search near-duplicate detection over encrypted in-network storage,” in: INFO-
over encrypted cloud data,” in: ICDCS’10, Genoa, Italy, 2010. COM’16, San Francisco, CA, 2016.
[8] C. Liu, L. Zhu, J. Chen, “Efficient searchable symmetric encryption [26] X. Yao, Y. Lin, Q. Liu, S. Long, “Efficient and privacy-preserving search
for storing multiple source dynamic social data on cloud,” J NETW in multi-source personal health record clouds,” in: ISCC’15, Larnaca,
COMPUT APPL., vol. 86, pp. 3 – 14, 2017. Cyprus, 2015.
[9] N. Cao, C. Wang, M. Li, K. Ren, W. Lou, “Privacy-preserving multi- [27] R. Agrawal, J. Kiernan, R. Srikant, Y. Xu, “Order preserving encryption
keyword ranked search over encrypted cloud data,” in: INFOCOM’11, for numeric data,” in: SIGMOD’04, Paris, France, 2004.
Shanghai, China, 2011. [28] D. Boneh, K. Lewi, M. Raykova, H. Hollert, A. Sahai, M. Zhandry,
[10] A. Ibrahim, H. Jin, A. Yassin, D. Zou, “Secure rank-ordered search J. Zimmerman, “Semantically Secure Order-Revealing Encryption: Multi-
of multi-keyword trapdoor over encrypted cloud data,” in: APSCC’12, input Functional Encryption Without Obfuscation,” in:EUROCRYPT’15,
Guilin, China, 2012. Sofia, Bulgaria, 2015.
[29] K. Lewi, D. Wu, “Order-Revealing Encryption: New Constructions,
[11] C. Orencik, M. Kantarcioglu, E. Savas, “A practical and secure multi-
Applications, and Lower Bounds,” in: CCS’16, Hofburg Palace, Austria,
keyword search method over encrypted cloud data,” in: CLOUD’13, Santa
2016.
Clara Marriott, CA, 2013.
[30] N. Chenette, K. Lewi, S. Weis, D. Wu, “Practical Order-Revealing
[12] Z. Shen, J. Shu, W. Xue, “Preferred keyword search over encrypted data Encryption with Limited Leakage,” in: FSE’16, Seattle, WA, 2016.
in cloud computing,” in: IWQoS’13, Montreal, Canada, 2013. [31] X. Yao, Y. Lin, Q. Liu, J. Zhang, “Privacy-preserving Search over
[13] B. Wang, S. Yu, W. Lou, Y. Hou, “Privacy-preserving multi-keyword Encrypted Personal Health Record in Multi-Source Cloud,” IEEE Access,
fuzzy search over encrypted data in the cloud,” in: INFOCOM’14, vol. 6, pp. 3809 – 3823, 2018.
Toronto, Canada, 2014. [32] Y. Yi, R. Li, F. Chen, A. Liu, Y. Lin, “A digital watermarking approach
[14] M. Chuah, W. Hu, “Privacy-aware bedtree based solution for fuzzy to secure and precise range query processing in sensor networks,” in:
multi-keyword search over encrypted data,” in: ICDCS’11, Minneapolis, INFOCOM’13, Turin, Italy, 2013.
MN, 2011. [33] B. Chor, E. Kushilevitz, O. Goldreich, M. Sudan, “Private information
[15] S. Pasupuleti, S. Ramalingam, R. Buyya, “An efficient and secure retrieval,” Eurocrypt., pp. 41 – 50, 1995.
privacy-preserving approach for outsourced data of resource constrained [34] C. Manning, P. Raghavan, H. Schütze, “Introduction to information
mobile devices in cloud computing,” J NETW COMPUT APPL., vol. 64, retrieval,” J AM SOC INF SCI TEC., vol. 43, no. 3, pp. 824 – 825,
pp. 12 – 22, 2016. 2009.
[16] W. Zhang, Y. Lin, S. Xiao, J. Wu, S. Zhou, “Privacy preserving ranked [35] I. Witten, A. Moffat, T. Bell, “Managing Gigabytes: Compressing and
multi-keyword search for multiple data owners in cloud computing,” IEEE indexing documents and images,” Computer Bulletin, vol. 41, no. 6,
Trans Comput., vol. 65, no. 5, pp. 1566 – 1577, 2016. pp. 2101 – 2101, 1995.
[17] S. Kamara, C. Papamanthou, “Parallel and dynamic searchable symmet- [36] Request for comments database.https://www.ietf.org/rfc.html.
ric encryption,” in: FC’13, Okinawa, Japan, 2013.
[18] Z. Xu, W. Kang, R. Li, K. Yow, C. Xu, “Efficient multi-keyword ranked
query on encrypted data in the cloud,” in: ICPADS’12, Nanyang Executive
Center, Singapore, 2012.
[19] W. Sun, B. Wang, N. Cao, H. Li, W. Lou, Y. Hou, H. Li, “Privacy-
preserving multi-keyword text search in the cloud supporting similarity-
based ranking,” IEEE T Parall Distr., vol. 25, no. 11, pp. 3025 – 3035,
2014. Tianyue Peng received the B.S. degree in software
[20] R. Li, Z. Xu, W. Kang, K. Yow, C. Xu, “Efficient multi-keyword ranked engineering from Hunan University, China, in 2015.
query over encrypted data in cloud computing,” FUTURE GENER COMP Since 2015, he has been a M.S. candidate in Soft-
SY., vol. 30, pp. 179 – 190, 2014. ware Engineering at Hunan University, China. His
[21] M. Ondreička, J. Pokornỳ, “Extending fagins algorithm for more users research interests include security and privacy issues
based on multidimensional b-tree,” in: ADBIS’08, Pori, Finland, 2008. in cloud and big data.
[22] Z. Xia, X. Wang, X. Sun, Q. Wang, “A secure and dynamic multi-
keyword ranked search scheme over encrypted cloud data,” IEEE T Parall
Distr., vol. 27, no. 2, pp. 340 – 352, 2016.
[23] C. Dong, G. Russello, N. Dulay, “Shared and searchable encrypted
data for untrusted servers,” Journal of Computer Security, vol. 19, no. 3,
pp. 367 – 397, 2011.
[24] R. Popa, E. Stark, J. Helfer, S. Valdez, N. Zeldovich, M. Kaashoek,

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2018.2828404, IEEE Access

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 10

Yaping Lin received his B.S. degree in Computer


Application from Hunan University, China, in 1982,
and his M.S. degree in Computer Application from
National University of Defense Technology, China
in 1985. He received his Ph.D. degree in Control
Theory and Application from Hunan University in
2000. He has been a professor and Ph.D supervisor
in Hunan University since 1996. From 2004-2005,
he worked as a visiting researcher at the University
of Texas at Arlington. His research interests include
machine learning, network security and wireless
sensor networks.

Xin Yao received his B.S. degree in Computer


Science from Xidian University, China, in 2011, and
his M.S. degree in Software Engineering at Hunan
University, China, in 2013. Since 2013, he has been
a Ph.D. candidate in College of Computer Science
and Electronic Engineering, Hunan University. He
is currently a Visiting Student at Arizona State
University, Tempe, AZ, USA. His research interests
include security and privacy issues in social network,
cloud and big data.

Wei Zhang received the B.S. degree in computer


science from Hunan University, China, in 2011.
Since 2011, he has been working toward the PhD
degree in the College of Computer Science and Elec-
tronic Engineering, Hunan University. Since 2014,
he has been a visiting student in Department of
Computer and Information Sciences, Temple Univer-
sity. His research interests include cloud computing,
network security, and data mining.

2169-3536 (c) 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

Anda mungkin juga menyukai