You are on page 1of 14

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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 1

Efficient Regular Language Search for Secure


Cloud Storage
Yang Yang, Member, IEEE, Xianghan Zheng, Chunming Rong, Member, IEEE,
Wenzhong Guo, Member, IEEE

Abstract—Cloud computing provides flexible data management and ubiquitous data access. However, the storage service provided
by cloud server is not fully trusted by customers. Searchable encryption could simultaneously provide the functions of confidentiality
protection and privacy-preserving data retrieval, which is a vital tool for secure storage. In this paper, we propose an efficient large
universe regular language searchable encryption scheme for the cloud, which is privacy-preserving and secure against the off-line
keyword guessing attack (KGA). A notable highlight of the proposal over other existing schemes is that it supports the regular language
encryption and deterministic finite automata (DFA) based data retrieval. The large universe construction ensures the extendability of
the system, in which the symbol set does not need to be predefined. Multiple users are supported in the system, and the user could
generate a DFA token using his own private key without interacting with the key generation center. Furthermore, the concrete scheme
is efficient and formally proved secure in standard model. Extensive comparison and simulation show that this scheme has function and
performance superior than other schemes.

Index Terms—secure cloud storage, regular language, searchable encryption, resist keyword guessing attack

1 I NTRODUCTION

C L oud storage [1] is an emerging model of storage to


provide scalable, elastic and pay-as-you-use service
to cloud computing users. For individual usage, the sub-
unimaginable to ask the cloud subscriber to download all of
their stored information and then decrypt and search on the
recovered plaintext documents. No customer could tolerate
scribers enjoy the freedom to access to their data anywhere, the huge transmission overhead and the waiting time for
anytime with any device. When cloud storage [2] is utilized the data retrieval result.
by a group of users, it allows team members to synchronize Searchable encryption technology [7], [8], [9] not only
and manage all shared documents. Moreover, it also saves exerts encryption protection of the data, but also supports
the user a lot of capital investment of expensive storage efficient search function without undermining the data pri-
equipments [3]. vacy. The data user generates a token of the content that he
Cloud delivers convenience to the customers and at the wants to search using his private key. Receiving the token,
same time arouses many security and privacy problems [4], the cloud server searches on the encrypted data without
[5]. Since the data are physically stored on the multiple decrypting the ciphertext. The most important point is that
servers of the cloud service provider, the customers cannot the server learns nothing about the plaintext of the encrypt-
fully in charge of their data. They worry about the privacy ed data nor the searched content during the data retrieval
of the stored documents since the server may be intruded procedure. However, most of the available searchable en-
by hacker or the data could be misused by the internal staff cryption schemes only support some basic search patterns,
for commercial purpose [6]. The customers prefer to adopt such as single keyword search, conjunctive keyword search
the encryption technology to protect the data confidentiality, and boolean search. Since the cloud computing is a fierce
which meanwhile arouses another problem: how to execute competition industry, it is of vital importance to provide
data retrieval on the large volume of ciphertext. It is almost good user experience. It is urgent to design novel searchable
encryption schemes with expressive search pattern for cloud
Y. Yang is with College of Mathematics and Computer Science, Fuzhou storage.
University, Fuzhou, China; Fujian Provincial Key Laboratory of Net-
work Computing and Intelligent Information Processing, Fuzhou Univer-
sity, China; Key Laboratory of Spatial Data Mining & Information Shar-
ing, Ministry of Education, Fuzhou, China; University Key Laboratory
1.1 Related Work
of Information Security of Network Systems (Fuzhou University), Fujian 1.1.1 Cloud Security
Province, China; Fujian Provincial Key Laboratory of Information Process-
ing and Intelligent Control (Minjiang University), Fuzhou, China. E-mail: Although cloud computing is regarded as a promising ser-
yang.yang.research@gmail.com. vice mode for the next generation network, the security and
X. Zheng and W. Guo are with College of Mathematics and Computer Sci- privacy concerns are the major barrier that inhibits its wide
ence, Fuzhou University, Fuzhou, China; Fujian Provincial Key Laboratory of
Network Computing and Intelligent Information Processing, Fuzhou Univer- acceptance in real application. Chang et al. [10] investigated
sity, China; Key Laboratory of Spatial Data Mining & Information Sharing, multi-layered security of cloud computing, which includes
Ministry of Education, Fuzhou, China. E-mail: xianghan.zheng@fzu.edu.cn, firewall, access control, identity management, intrusion
guowenzhong@fzu.edu.cn. prevention and convergent encryption. Zheng et al. [11]
C. Rong is with Department of Electronic Engineering and Computer
Science, University of Stavanger, Norway. E-mail: chunming.rong@uis.no. proposed a mobile architecture to realize remote-resident
Corresponding authors: Xianghan Zheng, Wenzhong Guo. multimedia service secure access. The secure framework for

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 2

business clouds was studied in [12], which realizes that the Wang et al. [26] leveraged the statistical measure approach
cloud services are safe and secure and the large volume of and one-to-many order-preserving mapping technology to
data can be securely processed. realize a ranked keyword search scheme over encrypted
The provable data possession (PDP) provides a proba- files. Liu et al. [27] reduced the query overhead and clas-
bilistic proof method for cloud computing to prove the us- sified the queries into multiple ranks. Xu et al. [28] com-
er’s data integrity without downloading all the information. bined public key cryptography and fuzzy keyword search
The PDP problem was handled in [13], [14]. Barsoum et to design a framework of public key encryption with fuzzy
al. [13] studied the design principle of PDP constructions keyword search. However, no concrete scheme is proposed
and pointed out the limitations of the existing PDP models. in [28]. Li et al. [29] introduced relevance scores and pref-
Wang et al. [14] proposed an identity based PDP model for erence factors to enable precise keyword search and utilize
multi-cloud storage, which eliminates the troublesome cer- classified sub-dictionary to improve the efficiency.
tificate management and enables multiple types of verifica- Cui et al. [30] introduced the notion of key aggregate
tion. Li et al. [15] studied the proof of retrievability problem searchable encryption such that the data owner only sends
in cloud with resource-constrained devices. They reduced a single key to a user to share a huge quantity of files. Yang
the heavy computation cost of tag generation and realized et al. [31] designed a time-dependent searchable encryption
dynamic data operations. Combining proof of retrievability scheme, where the search right is delegated to others in
and revocation, Tiwari et al. [16] proposed a new secure a designated period of time. The mechanism of attribute
cloud storage architecture. Omojte et al. [17] put forth a based encryption is introduced to searchable encryption to
lightweight coding based scheme to accommodate multiple exert fine-grained access control of the search privilege in
users. [32], [33]. Chen et al. [34] put forth the security of public
key encryption with keyword search and proposed a dual-
1.1.2 DFA server model to resist keyword guessing attack (KGA) [40],
A finite automata has a set of states, and its “control” moves [41]. The quantum attack was also investigated in [35],
from state to state in response to external “inputs”. The term which leveraged lattice based cryptography to construct a
“deterministic” in “deterministic finite automata (DFA)” searchable encryption scheme for post-quantum age.
refers to the fact that on each input, there is one and only The searchable encryption in mobile applications are
one state to which the automata can transit from its current studied in [36] and [37]. Xia et al. [36] utilized a dynamic
state [18]. (The concrete definition of DFA is given out in asymmetric group key agreement protocol and proxy re-
Subsection 2.3.) In 2005, Lucas et al. [19] investigated an signature to update the ciphertext when the mobile group
evolutionary method for learning DFA that evolves only the changed. Li et al. [37] made a balance between quality
transition matrix and uses a simple deterministic procedure of protection and quality of experience in mobile storage.
to optimally assign state labels. In 2012, Kobayashi et al. [20] Secure channel free schemes to resist KGA were investigated
presented a new approach to representing a DFA as a linear in [38], [39]. Later, Liang et al. [9] proposed a searchable
state equation and linear inequalities with a relatively small encryption scheme supporting regular language search.
number of free binary variables. In 2013, Parga et al. [21]
showed that an automization operation can be implemented
on an DFA with polynomial time complexity, which leads 1.2 Motivation and Our Contributions
to a polynomial double reversal minimization algorithm. 1.2.1 Motivation
Later, Sarkar et al. [22] applied DFA to the e-learning to The research projects mentioned in Section 1.1.3 (except
enable adaptive learning. Different DFAs are designed for [9]) are traditional searchable encryption schemes, which
different chapters in the e-learning courses. Fernau et al. [23] cannot support regular language search. To the best of our
utilized the tools provided by “Parameterized Complexity” knowledge, Liang’s scheme [9] is the only research work
to study two NP-hard problems on DFA: the problem of that realizes regular language search in searchable encryp-
finding a short synchronizing word, and the problem of tion architecture. However, a careful inspection of Liang’s
finding a DFA on few states consistent with a given sample scheme [9] shows that it has several limitations, which are
of the intended language and its complement. It shows that analyzed below.
the simple FPT (fixed-parameter tractable) algorithms can
be optimal. In 2017, Farmanbar et al. [24] introduced DFA 1) Small Universe Construction. It has to predefine the
to the medical genomics domain, and modeled the clonal size of the symbol set when the system is setup. The
expansion of HTLV-a-infected cells in adult T-cell leukemia size of the master public key grows with the symbol
by DFA and high-throughput sequencing. Then, the biolog- set, which consumes a large storage space when the
ical data of clonal expansion is translated into the formal predefined symbol set is large. To add a new symbol
language of mathematics, and the observed clonality data is to the system, the KGC has to re-build the entire
represented with DFA, which provides a unique perspective system.
for clarifying the mechanisms of clonal expansion. 2) Low Efficiency. In the encryption and search token
generation algorithms, the data user has to execute
1.1.3 Searchable Encryption a lot of energy consuming exponentiation calcu-
Searchable encryption is a novel technique that could pro- lations, which incurs huge computation overhead.
tect the data privacy and meanwhile enable keyword query Besides, the transmission overhead is also very high.
over encrypted documents. It brings about increasing atten- 3) Dependent Trapdoor Generation. The data user has
tion since the concept was introduced by Song et al. [25]. to interact with the key generation center (KGC) to

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 3

generate a search query. In another word, the data 3) Independent Trapdoor Generation. In this system,
user cannot independently issues a DFA query. the data user can independently generate the DFA
4) Vulnerable to KGA. Liang’s scheme [9] cannot resist trapdoor using his own secret key. The data user
off-line keyword guessing attack (KGA) [40], [41]. does not need to interactive with the KGC to com-
which is pointed out to be an unsolved open prob- plete the trapdoor generation procedure.
lem in [9]. In KGA, the attacker makes use of the low 4) Resist KGA. This system is secure against KGA,
entropy characteristic of the keyword to choose the which is formally proved in Section 5. In order
keyword in a much smaller space. Then, the attacker to resist KGA, the cloud server is equipped with
tests the correctness of the guessed keyword in an its own public/secret key pair in the proposed
off-line manner. Such attack severely impairs the system. The cloud server’s public key is involved
security of searchable encryption schemes [40], [41]. in the trapdoor generation algorithm, so that only
the cloud server is able to run the test algorithm
The above analysis shows that the limitations of Liang’s
using its own secret key. An attacker without cloud
scheme [9] make it not practical nor secure for cloud storage
server’s secret key cannot use the test algorithm to
application. It is urgent to design a new secure regular
verify the correctness of the guessed keyword in an
language search scheme to overcome all these limitations.
off-line manner. Thus, the attacker will not succeed
in launching KGA.
1.2.2 Our Contributions
In order to make a comprehensive performance analysis,
In this paper, we design a secure data storage system
the proposed scheme is simulated on laptop and compared
supporting regular language search, which is privacy p-
with other related works. The communication cost and
reserving and proved secure in standard model based on
computation cost are compared in detail. The experiment
decisional bilinear Diffie-Hellman hardness assumption.
result indicates that our proposal needs less transmission
A highlight of this proposal is that the regular language
bandwidth and computation overhead.
search is enabled, which provides much more flexible search
pattern compared with other available searchable encryp-
tion schemes. In our system, the encryption algorithm takes 2 P RELIMINARIES
as input a public key and regular language described string
2.1 Bilinear Group
with arbitrary length. Then, the generated ciphertext is
outsourced to cloud server. In the data retrieval phase, user Let Gp be an algorithm that on input the security parameter
defines a deterministic finite automata (DFA) and generates λ. It outputs the parameters of a prime order bilinear map
a search token of the DFA using his secret key. The DFA as (p, g, G, GT , e), where G and GT are multiplicative cyclic
defines a set of transitions, an initial state and an accept groups of prime order p and g is a random generator of G.
state. If and only if the regular language embedded in the The mapping e : G×G → GT is a bilinear map. The bilinear
ciphertext is acceptable by the DFA of the search token, the map e has three properties: (1) bilinearity: ∀u, v ∈ G and
file will be regarded as a match file. This test process is a, b ∈ Zp , we have e(ua , v b ) = e(uv)ab . (2) non-degeneracy:
executed by the cloud server without knowing any plaintext e(g, g) 6= 1. (3) computability: e can be efficiently computed.
of the regular language and the DFA.
Compared with Liang’s scheme [9], the improvements 2.2 Hardness Assumptions
and contributions of the proposed system are listed below. Assumption 1 (DBDH: decisional bilinear Diffie-Hellman
1) Large Universe Construction. The property of large assumption). Let G be a bilinear group of prime order p
universe enables that flexible number of symbols and g be a generator of G. Let a, b, s ∈ Zp∗ be chosen at
can be accommodated in the system, which greatly random. If an adversary A is given ~ y = (g, g a , g b , g s ), it is
widens the practical utility of the scheme. A notable hard for the attacker A to distinguish e(g, g)abs ∈ GT from
advantage is that the symbol number is not poly- an element Z that is randomly chosen from GT .
nomial bounded, which cannot be realized in [9].
Moreover, the storage space at user’s wireless ter- 2.3 Overview of Deterministic Finite Automata
minal with small memory space is reduced. Thirdly,
The term “deterministic finite automata (DFA)” is a termi-
the system can expand easily when it is necessary.
nology from the theory of computation. It accepts or rejects
2) High Efficiency. The proposed regular language finite strings of symbols and executes a unique operation
searchable encryption system is efficient. Our for each input string. A DFA [42], [43] M is a 5-tuple
scheme is constructed in symmetric prime order (Q, Σ, δ, q0 , F ).
paring group, which is more efficient than com-
posite order and asymmetric prime order pairing 1) Q is a set of states.
groups. Moreover, the encryption and token gen- 2) Σ is a set of symbols called the alphabet.
eration algorithms are efficient. The transmission 3) δ is a function known as a transition function.
overhead in the system is much lower than that 4) q0 ∈ Q is called the start state.
in [9]. The efficiency of this system and the other 5) F ⊆ Q is a set of accept states.
existing schemes [7], [8], [9] are comprehensively
For convenience, the notation T is used to denote the set
compared and evaluated in Section 6.
of transitions associated with the function δ . Each transition

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 4

Tt ∈ T is in the form Tt = {(qxt , qyt , wt )|t ∈ [1, m]} iff 3 S YSTEM AND S ECURITY M ODEL
δ(qxt , wt ) = qyt , where |T | = m. 3.1 System Architecture
Suppose that M = (Q, Σ, δ, q0 , F ). We say that M
In this system, we mainly focus on the secure data retrieval
accepts a string W = (w1 , w2 , · · · , wl ) ∈ Σ if there exists
function. As shown in Figure 2, the system comprises four
a sequence of states r0 , r1 , · · · , rn ∈ Q where:
entities: the KGC (key generation center), the data owner, a
cloud server and the data user.
1) r0 = q0
2) For i = 0 to n − 1 we have δ(ri , wi+1 ) = ri+1 • KGC is the abbreviation of key generation center,
3) rn ∈ F . who is fully trusted by all the entities in the system.
KGC is responsible to generate the public parame-
The notation ACCEP T (M, W ) is utilized to denote that ter for the whole system. Meanwhile, KGC creates
the machine M accepts W , and REJECT (M, W ) to denote public/private key pair for each legal user in the
that M does not accept W . A DFA M recognizes a language system. The private key is sent to the user via a secret
L if M accepts all W ∈ L and rejects all W ∈ / L; such a channel. Users’ public keys are made public and
language is called regular language. maintained by KGC utilizing a secure management
mechanism (such as PKI: public key infrastructure
[46]).
• Data Owner utilizes the cloud storage service to
store the personal sensitive data. The data owner
utilizes regular language to describe the file, and
encrypts the regular language and the file, which are
then outsourced to the cloud.
• Cloud Server provides cloud storage service for the
users. The digital data are usually stored in logical
Fig. 1: An Example of DFA pools and multiple physical servers. The cloud server
is responsible to keep the data ubiquitously available
and accessible by authorized users. Cloud server
Figure 1 depicts an example of DFA to illustrate the processes amazing data processing and computation
working process. In the example, there are 5 states with q0 ability. Cloud server responds on the search query
to be the start state and q4 the accept state. Suppose that from the data user and searches the match docu-
the automata is currently in state q0 . On input a symbol w1 , ments.
the state transfers from q0 to q1 . The states will continually
• Data user requests the cloud server to perform the
jump with the input of wi according to the predefined
test calculations over the encrypted data. The data
transmission set T . If the input symbol string is (w1 , w2 , w6 )
user generates a search token utilizing his private
or (w1 , w5 , w3 , w4 , w6 ), the DFA in Figure 1 will accept. If
key, which is sent to the cloud server to issue a
the input string is (w1 , w3 , w6 ), it will be reject.
query. The data user may utilize mobile device to
The DFA is sensitive to the order of the input symbol generate the search token such that the related algo-
string. For example, the input symbol string (w1 , w2 , w6 ) rithms should be efficient and have low transmission
is accepted by the DFA defined in Figure 1. However, the overhead.
symbol string (w1 , w6 , w2 ) is rejected by the DFA, since it
cannot lead the state of the DFA to transfer from the start
state q0 to the end state q4 . 3.2 Formal Definition
A regular language searchable encryption system resisting
off-line keyword guessing attack [9], [44] consists of the
2.4 Notations following algorithms that are depicted below.

The main notations used in this paper are listed in Table 1. 1) Setup(1κ ): On input the security parameter 1κ , the
algorithm outputs the system parameter P P . We
TABLE 1: Notations omit P P in the expression of the following algo-
rithms.
Notation Description
1κ security parameter
2) KeyGenCS (P P, IDCS ): On input the system pub-
b ∈R B b is randomly chosen from B lic parameter P P and cloud server’s identity IDCS ,
[1, m] all integers from 1 to m the algorithm outputs the public/private key pair
KGC key generation center (P KCS , SKCS ) for cloud server.
PP public parameter
P KCS /SKCS public key/secret key of cloud server IDCS 3) KeyGenuser (P P, IDui ): On input the system pub-
P Ku /SKu public key/secret key of user IDu lic parameter P P and user’s identity IDui , the
CT ciphertext of keyword
TK search token
algorithm outputs the public/private key pair
W = (w1 , · · · , wl ) a keyword string with length l (P Kui , SKui ) for user IDui .
M a DFA description 4) Enc(P Kui , W = {w1 , · · · , wl }): On input the pub-
lic key P Kui of user IDui and string W used

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 5

Fig. 2: System Architecture

for keyword description, the algorithm outputs a • Query phase 2: The same as phase 1 with the con-
ciphertext CT . straint that the secret key of the challenge user IDu∗ ,
5) T okenGen(SKui , P KCS , M = (Q, Σ, δ, q0 , F )): On and the trapdoors of DFAs that contain the same
input the private key SKui of user IDui , the public keyword in W0∗ or W1∗ should not be queried.
key P KCS of the cloud server IDCS and a DFA • Guess: Adversary A outputs a guess θ0 ∈ {0, 1}. If
description M = (Q, Σ, δ, q0 , F ), the algorithm out- θ0 = θ, challenger C outputs 1 meaning that A wins
puts the search token T K . the game. Otherwise, C outputs 0.
6) T est(CT, T K, P Kui , SKCS ): On input the cipher- Following the security model in [44], [31], a regular
text CT , the search token T K , the public key P Kui language searchable encryption system is indistinguishable
of user IDui and the secret key SKCS of the cloud against keyword guessing attack (IND-KGA) if there is no
server IDCS , the algorithm outputs 1 if the DFA of polynomial time attacker A could win the following game.
the search token accepts the string W embedded in • Setup: The challenger C runs Setup algorithm to gen-
the ciphertext. Otherwise, it outputs 0. erate the public parameter P P for the system. The
challenger C runs KeyGenCS algorithm to generate
3.3 Security Model the public key P KCS for the cloud server. It sends
P P and P KCS to adversary A.
Following the security model in [9], a regular language
searchable encryption system is privacy-preserving if there • Query phase 1: The adversary A adaptively issues
is no polynomial time attacker A could win the following the following queries.
game. – OT okenGen : On the keyword trapdoor query
on DFA description M , the challenger outputs
• Setup: The challenger C runs Setup algorithm to gen-
T K ← T okenGen.
erate the public parameter P P for the system. The
challenger C runs KeyGenCS algorithm to generate • Challenge: The adversary A sends to C two challenge
the public key P KCS for the cloud server. It sends DFA descriptions M0∗ , M1∗ with equal length, and a
P P and P KCS to adversary A. challenge user identity IDu∗ . The requirement is that
• Query phase 1: The adversary A adaptively issues the secret key of the challenge user IDu∗ , and the
the following queries. trapdoors of DFAs that contain the same keyword in
W0∗ or W1∗ are not queried. C flips a coin to randomly
1) OKeyGenuser : On the secret key query select θ ∈ {0, 1}. C constructs a trapdoor for the DFA
for user IDui , the challenger outputs description Mθ∗ , which is then sent to adversary A.
(P Kui , SKui ) ← KeyGen. • Query phase 2: The same as phase 1 with the con-
2) OT okenGen : On the keyword trapdoor query straint that the secret key of the challenge user IDu∗ ,
on DFA description M , the challenger outputs and the trapdoors of DFAs that contain the same
T K ← T okenGen. keyword in W0∗ or W1∗ should not be queried.
• Guess: Adversary A outputs a guess θ0 ∈ {0, 1}. If
• Challenge: The adversary A sends to C two challenge
θ0 = θ, challenger C outputs 1 meaning that A wins
strings W0∗ , W1∗ with equal length, and a challenge
the game. Otherwise, C outputs 0.
user identity IDu∗ . The requirement is that the secret
key of the challenge user IDu∗ , and the trapdoors
of DFAs that contain the same keyword in W0∗ or
4 P ROPOSED S CHEME
W1∗ are not queried. C flips a coin to randomly select 4.1 Concrete Construction
θ ∈ {0, 1}. C constructs a ciphertext for the string Wθ∗ We now present our construction of efficient regular lan-
and user IDu∗ , which is then sent to adversary A. guage searchable encryption system over encrypted cloud

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 6

data. 4.1.5 Token Generation


In order to simplify the algorithm, we only consider DFA • T okenGen(SKu , P KCS , M = (Q, Σ, T , q0 , qn−1 )) →
representations with |F | = 1, i.e., it has only one accept T K : The token generation algorithm is run by the data user.
state. It has been proved in [45] that any (M, W ) can be It takes as input the user’s private key SKu , the public key
transformed to (M 0 , W 0 ), where M 0 has only one accept P KCS of the cloud server IDui and the DFA representation
state. M = (Q, Σ, T , q0 , qn−1 ).
Moreover, the proposed scheme can support large- In DFA representation, Q is a set of states {q0 , · · · , qn−1 },
universe alphabet set, i.e., |Σ| is of infinite size. Thus, the where q0 is the unique initial state and qn−1 is the unique
DFA representation is denoted as M = (Q, Σ, T , q0 , qn−1 ), accept state. T is a set of transitions, where each transition
where n = |Q|, m = |T | and Tt = {(qxt , qyt , σt )|t ∈ [1, m]}. of T is a triple (qxt , qyt , σt ) ∈ Q × Q × Σ and |T | = m.
The user randomly selects u, u0 ∈R Zp∗ and
4.1.1 System Setup {ri }i∈[0,l] , {ux }qx ∈Q\{qn−1 } ∈R Zp∗ . The user IDu randomly
• Setup(1κ ) → P P. The setup algorithm is run by KGC selects r, r0 ∈R Zp∗ and calculates un−1 = ϕ2 · r, which
and takes as input a security parameter 1κ . Let H be a hash indicates g un−1 = (φ2 )r . Then, the user constructs
function: H : {0, 1}∗ → G. Let G be a bilinear group of 0
prim order p. Let g ∈ G be the generator of group G. The T3 = g r , T30 = g r ,
algorithm randomly selects h0 , h1 , h2 , h3 , h4 , η ∈R G and
T1 = H(e(pkCS , T30 )r ) · g α φr1 η u , T2 = g u ,
ϕ1 , α ∈R Zp∗ . Compute φ1 = g ϕ1 and Y = e(g, g)α . The
public parameter is P P = (g, h0 , h1 , h2 , h3 , h4 , η, φ1 , Y ). T4 = g r0 , T5 = g −u0 hr00 ,

4.1.2 Cloud Server Registration T6,t = rt /s0 , T7,t = ut /s0 , T8,t = rt σt /s00 ,
When a cloud server with identity IDCS registers to the T K = (T1 , T2 , T3 , T30 , T4 , T5 , {T6,t , T7,t , T8,t }t∈[1,m] ).
system, the cloud server generates its public/secret key
P KCS /SKCS and sends the public key to KGC. Then, It outputs the token T K , which is sent to cloud server to
KGC authenticates the cloud server’s identity and publishes issue a query.
(IDCS , P KCS ) in the system.
4.1.6 Test
• KeyGenCS (P P, IDCS ) → (P KCS , SKCS ): The cloud
server IDCS randomly picks β ∈R Zp∗ and computes • T est(CT, T K, P Ku , SKCS ) → 1/0: This algorithm is
X = g β . Then, the cloud server sets the public key as run by cloud server. Taken as input the ciphertext CT , the
P KCS = X and the secret key as SKCS = β . search token T K , the public key P Kui of user IDui and the
secret key SKCS of the cloud server IDCS , the cloud server
computes
4.1.3 User Enrollment
When a user IDu registers to the system, the user IDu T1
Γ = e( , C1 ) · e(T2 , C2 )−1 · e(T3 , C3 )
generates his public/secret key P Ku /SKu and sends the H(T3 , T30 )SKCS
public key to KGC. Then, KGC authenticates the data us- ·e(T4 , C4 )−1 · e(T5 , Y0 )C5,0
er’s identity and publishes (IDu , P Ku ) in the system. The Y −T6,ti C C C C
public keys of the cloud server and the users are managed · [e(Y0 , Y1 5,i−1 Y2 6,i Y3 5,i Y5 7,i )
i∈[1,l]
by KGC using a secure mechanism, such as the public key
T7,xt T6,ti T8,ti C5,i−1
infrastructure (PKI) [46]. · e(Y0 i
Y1 Y2 , Y0 )
−T7,yt T6,t T8,t C
• KeyGenuser (P P, IDu ) → (P Ku , SKu ): The user IDu · e(Y0 i
Y3 i Y4 i , Y0 5,i )]
randomly picks s0 , s00 , s000 , ϕ2 ∈R Zp∗ and computes Y0 =
0 0 00 0 00
g s ,000Y1 = h1 s , Y2 = h2 s , Y3 = h3 s , Y4 = h4 s , Y5 = The algorithm outputs 1 if the equation H(Γ) = C0 holds,
which indicates that the trapdoor matches the encrypted
h4 s , φ2 = g ϕ2 . Then, the user IDu sets the public key
index. Otherwise, it outputs 0.
as P Ku = (Y0 , Y1 , Y2 , Y3 , Y4 , Y5 , φ2 ) and the secret key as
SKu = (s0 , s00 , s000 , ϕ2 ).
4.2 An Industrial Cloud Storage Example
4.1.4 Encryption Here we give out an industrial cloud storage example
• Enc(P Ku , W = (w1 , · · · , wl )) → CT : The encryption (shown in Figure 3) to illustrate how the proposed scheme
algorithm is run by data owner. Taken as input a string W works. An industrial entrepreneur plans to research and
and the public key P Ku , the data owner randomly selects develop a new product. The design process consists of the
s, s0 , s1 , · · · , sl ∈R Zp∗ and computes following steps:
C0 = H(Y s ), C1 = g s , C2 = η s , C3 = φ−s sl s0
1 φ2 , C4 = h0 , 1) Production Plan: Firstly, the company should make
0 00 000 a careful plan to design the product’s function,
C5,i = si /s , C6,i = wi si−1 /s , C7,i = wi si /s .
structure and material etc. Then, the design infor-
CT = (C0 , C1 , C2 , C3 , C4 , {C5,i }i∈[0,l] , {C6,i , C7,i }i∈[1,l] ) mation will be sent to the audit department.
2) Audit: The audit department is responsible to verify
Then, the algorithm outputs the ciphertext CT , which is
the scheme’s feasibility and cost of the fabrication. If
outsourced to public cloud.
it is not proper, the audit department disagrees the

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 7

project. Otherwise, the plan is sent to the manufac- 5 S ECURITY A NALYSIS


turing department. Theorem 1. The proposed scheme is privacy-preserving
3) Manufacture: Receiving the new product design under the DBDH assumption.
proposal, the manufacturing department produces
a sample according to the plan. Then, the sample Proof : Assume that A is an adversary that can break the
is sent to the test department. If the manufacturing proposed scheme, then we can build an algorithm C to solve
fails, it will be sent back to the design department. the DBDH problem. Firstly, the challenger C receives the
4) Experimental Test: The test department tests the tuple (g, g a , g b , g s , T ) from the DBDH assumption.
physical properties, the function and practical utility • Setup. The challenger C will construct the param-
of the sample product. If the sample passes all eters for the system utilizing the DBDH tuple. C
the experimental tests, it is ready for large-scale randomly selects α0 ∈R Zp∗ , and implicitly sets
production. Otherwise, the product plan would be α = ab + α0 and ϕ1 = a, where a, b are the
sent back to the design department. elements in the DBDH assumption and unknown
5) Product: After a series of research and develop, the to C . Then, C sets φ1 = g a = g ϕ1 , and calculates
0
new product can be put forth to the market. Y = e(g, g)α = e(g a , g b )e(g, g)α . C randomly s-
elects h00 , h01 , h02 , h03 , h04 , η 0 , β ∈R Zp∗ and calculates
According to the above research and develop proce- 0 0 0 0
h00 = g h0 , h01 = g h1 , h2 = g h2 , h3 = g h3 , h4 =
dure, the keyword strings are defined as w1 = “Design”, h4 η β
g , η = g , X = g . C sends public parameter
w2 = “Agree”, w3 = “P roduce”, w4 = “P ass”, w5 =
P P = (g, h0 , h1 , h2 , h3 , h4 , η, φ1 , Y ) and the cloud
“Disagree”, w6 = “F ail”.
server’s public key P KCS = X to A.
In the system setup phase, the KGC generates public pa-
rameter for the whole system and distributes public/private • Query phase 1: The adversary A adaptively issues
key pair for each user. Then, the data generated by the the following queries.
entrepreneur are encrypted and outsourced to the cloud
1) OKeyGen : Receiving a key generation query
server. The keyword strings are also encrypted to describe
for user IDu , challenger C selects random
the files, such as (CT1 , CT2 , CT3 ) defined below.
s0 , s00 , s000 , ϕ2 ∈R Zp∗ and computes Y0 =
0 0 00 0
CT1 = Enc(pku , (w1 , w2 , w3 , w4 )), g s , Y1 = 00 h1 s , Y2 = 000h2 s , Y3 = h3 s ,
CT2 = Enc(pku , (w1 , w5 )), Y4 = h4 s , Y5 = h4 s , φ2 = g ϕ2 . Set
P Ku = (Y0 , Y1 , Y2 , Y3 , Y4 , Y5 , φ2 ) and SKu =
CT3 = Enc(pku , (w1 , w2 , w6 )). (s0 , s00 , s000 , ϕ2 ), which are then sent to A.
If the user wants to make a data retrieval query, he 2) OT okenGen : Receiving a token generation
firstly defines the DFA. Let q0 = “P roductionP lan” to query for M = (Q, Σ, T , q0 , qn−1 ) on us-
be the initial state and q4 = “P roduct” to be the unique er IDu , C firstly constructs the secret key
accept state. Let q1 = “Audit”, q2 = “M anuf acture”, for user IDu as in key generation query. C
q3 = “Experimental T est”. The transmission set T is randomly selects r00 ∈R Zp∗ and implicitly
defined as below. sets r = −r00 − b. Then, C randomly selects
u, r0 , r0 , rt , u0 , ut ∈R Zp∗ and calculates T2 =
00 0
T1 = (P roduction P lan, Audit, Design), g u , T3 = g −r (g b )−1 = g r , T30 = g r , T4 =
r
T2 = (Audit, M anuf acture, Agree), g r0 , T5 = g −u0 h00 , T6,t = rt /s0 , T7,t =
T3 = (M anuf acture, Experimental T est, Produce), ut /s0 , T8,t = rt σt /s00 . C calculates
0 00
T4 = (Experimental T est, P ass, Product), T1 = H(e(T3 , T30 )β ) · g α (g a )−r η u
0 00
T5 = (Audit, P roduction P lan, Disagree), = H(e(pkCS , T30 )r ) · g ab+α g −a(r +b) u
η
0
T6 = (M anuf acture, P roduction P lan, Fail), = H(e(pkCS , T30 )r ) ·g ab+α
g ηar u

T7 = (Experimental T est, P roductionP lan, Fail). = H(e(pkCS , T30 )r ) · g α φr1 η u .


Then, the defined DFA M is encrypted to search token Then, C sends the search token T K =
T K and sends to the cloud server. The cloud server executes (T1 , T2 , T3 , T30 , T4 , T5 , {T6,t , T7,t , T8,t }t∈[1,m] )
T est algorithm to find the match files. Then, the file F1 (cor- to the adversary A.
responding to CT1 ) is returned to user, which has keyword
strings acceptable by the DFA. • Challenge: The adversary A sends to C two challenge
keyword strings W0∗ , W1∗ with equal length l∗ , and a
challenge user identity IDu∗ . The requirement is that
the secret key of the challenge user IDu∗ , and the
trapdoors of DFAs that contain the same keyword in
W0∗ or W1∗ are not queried. C firstly constructs the se-
cret key of the challenge user IDu∗ . C selects random
s0∗ , s00∗ , s000∗ , ϕ02 ∈R Zp∗ , implicitly sets ϕ∗2 = a + ϕ02 ,
Fig. 3: An Industrial Example 0∗ 0∗ 00∗
and computes Y0∗ = g s , Y1∗ = h1 s , Y2∗ = h2 s ,
0∗ 00∗ 000∗ 0
Y3 = h3 s , Y4∗ = h4 s , Y5 = h4 s , φ∗2 = g a g ϕ2 =

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 8

ϕ∗ h04 0
ϕ01
g . Set P Ku∗ = (Y0∗ , Y1∗ , Y2∗ , Y3∗ , Y4∗ , Y5∗ , φ∗2 ) and
2 g , η = g η , φ1 = g . C sends public parameter
SKu∗ = (s0∗ , s00∗ , s000∗ , ϕ∗2 ). P P = (g, h0 , h1 , h2 , h3 , h4 , η, φ1 , Y ) and the cloud
Then, C flips a coin to randomly select θ ∈ {0, 1}. server’s public key P KCS = X to A.
C randomly selects s0 , s1 , · · · , s0l ∈R Zp∗ , sets sl =
• Query phase 1: The adversary A adaptively issues
s + s0l , and constructs the ciphertext CT ∗ for Wθ∗ =
the following queries.
(w1∗ , · · · , wl∗ ).
0 – OT okenGen : Receiving a token generation
C0∗ = H(T · e(g s , g α )) query for M = (Q, Σ, T , q0 , qn−1 ). C random-
0
= H(e(g, g)abs · e(g s , g α ) ly selects s0 , s00 , r, r0 , r0 , rt , u, u0 , ut ∈R Zp∗
0
= H(e(g, g)αs ) = H(Y s ), and calculates T3 = g r , T30 = g r ,
0 T1 = H(e(g a , T30 )r ) · g α φr1 η u , T2 = g u ,
C1∗ = g s , C2∗ = (g s )η , C4∗ = hs00 ,
0 0 0 0 T4 = g r0 , T5 = g −u0 hr00 , T6,t = rt /s0 ,
C3∗ = (g a )sl (g s )ϕ2 g ϕ2 sl T7,t = ut /s0 , T8,t = rt σt /s00 . Then,
0 0
= g −as (g a+ϕ2 )s+sl = φ−s ∗ sl
1 (φ2 ) ,
C sends the search token T K =

C5,i 0 ∗ ∗
= si /s , C6,i = wi si−1 /s , C7,i00 ∗
= wi∗ si /s000 , (T1 , T2 , T3 , T30 , T4 , T5 , {T6,t , T7,t , T8,t }t∈[1,m] )
to the adversary A.
CT ∗ = (C0∗ , C1∗ , C2∗ , C3∗ , C4∗ , {C5,i

}i∈[0,l] ,
∗ ∗ Challenge: The adversary A sends to C two
{C6,i , C7,i }i∈[1,l] ). •
challenge DFA descriptions M0∗ , M1∗ with equal
Then, C sends the ciphertext CT ∗ to adversary A. length. The requirement is that the secret key of the
• Query phase 2: The same as phase 1 with the con- challenge user IDu∗ , and the trapdoors of DFAs
straint that the secret key of the challenge user IDu∗ , that contain the same keyword in W0∗ or W1∗ are
and the trapdoors of DFAs that contain the same not queried. C implicitly sets r∗ = b, r0∗ = s,
∗ 0∗
keyword in W0∗ or W1∗ should not be queried. T3∗ = g b = g r and T30∗ = g s = g r , where
b, s are the elements in the DBDH assumption
• Guess: Adversary A outputs a guess θ0 ∈ {0, 1}. If
and unknown to C . Then, C randomly selects
θ0 = θ, challenger C outputs 1 meaning that T =
s0∗ , s00∗ , r0∗ , rt∗ , u∗ , u∗0 , u∗t ∈R Zp∗ and calculates
e(g, g)abs . Otherwise, C outputs 0 meaning that T is 0 ∗ ∗ ∗

a random element in GT . T1∗ = H(T ) · g α (g b )ϕ1 η u = H(T ) · g α φr1 η u ,


∗ ∗ ∗ r∗

• Probability Analysis. Suppose A has advantage ε in


T2∗ = g u , T4∗ = g r0 , T5∗ = g −u0 h00 , T6,t ∗
= rt∗ /s0∗ ,
∗ ∗ 0∗ ∗ ∗ 00∗
attacking DBDH assumption and C has advantage ε0
T7,t = ut /s , T8,t = rt σt /s . Then, C
sends the challenge search token T K ∗ =
in winning this game. Then, it is easy to know that
ε0 = ε.

(T1∗ , T2∗ , T3∗ , T30∗ , T4∗ , T5∗ , {T6,t ∗
, T7,t ∗
, T8,t }t∈[1,m] )
to the adversary A.
• Time Analysis.
• Query phase 2: The same as phase 1 with the con-
The execution time of the simulation is dominated
straint that the secret key of the challenge user IDu∗ ,
by the exponent operations in the query phase. Then
and the trapdoors of DFAs that contain the same
the running time t̃0 of C is bounded by
keyword in W0∗ or W1∗ should not be queried.
t̃0 ≥ t̃ + te1 [7qKeyGen + 9qT okenGen ] • Guess: Adversary A outputs a guess θ0 ∈ {0, 1}. If
+te2 · qT okenGen , θ0 = θ, challenger C outputs 1 meaning that T =
e(g, g)abs . Otherwise, C outputs 0 meaning that T is
where t̃ is the running time of A, te1 is the running a random element in GT .
time of an exponentiation in G, te2 is the running
• Probability Analysis. Suppose A has advantage ε in
time of an exponentiation in GT , qKeyGen is the
attacking DBDH assumption and C has advantage ε0
number of OKeyGen queries and qT okenGen is the
in winning this game. Then, it is easy to know that
number of OT okenGen queries.
ε0 = ε.
Theorem 2. The proposed scheme is IND-KGA under the • Time Analysis.
DBDH assumption. The execution time of the simulation is dominated
Proof : Assume that A is an adversary that can break the by the exponent operations in the query phase. Then
proposed scheme, then we can build an algorithm C to solve the running time t̃0 of C is bounded by
the DBDH problem. Firstly, the challenger C receives the
t̃0 ≥ t̃ + (9te1 + te2 )qT okenGen ,
tuple (g, g a , g b , g s , T ) from the DBDH assumption.
where t̃ is the running time of A, te1 is the running
• Setup. The challenger C will construct the param-
time of an exponentiation in G, te2 is the running
eters for the system utilizing the DBDH tuple. C
time of an exponentiation in GT and qT okenGen is
implicitly sets β = a and X = g a = g β , where
the number of OT okenGen queries.
a is the element in the DBDH assumption and
unknown to C . Then, C randomly selects α ∈R
Zp∗ and calculates Y = e(g, g)α . C randomly se- 6 P ERFORMANCE A NALYSIS
lects h00 , h01 , h02 , h03 , h04 , η 0 , ϕ01 ∈R Zp∗ and calculates In this section, we compare the proposed scheme with
0 0 0 0
h0 = g h0 , h1 = g h1 , h2 = g h2 , h3 = g h3 , h4 = other searchable encryption schemes that supports subset

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 9

keyword search [7], single keyword search [8] and regular • Resist KGA: Due to the natural characteristic of
language search [9] to evaluate the performance. public key encryption with keyword search (PEKS),
many PEKS schemes are vulnerable to KGA, in-
cluding the schemes in [7], [8], [9]. In PEKS, the
6.1 Comparison
trapdoors are subject to KGA. The attacker may
Boneh and Waters [7] put forth a public key system that discover the keyword embedded in the trapdoor by
allows arbitrary conjunctive keyword search, subset queries launching exhaustive keyword guessing attacks on
and comparison queries. Zheng et al. [8] proposed a ver- the keyword values. Since the keyword are always
ifiable attribute-based keyword search function. Liang et selected from a relatively smaller space, the KGA is
al. [9] introduced a privacy-preserving regular language an effective way to attack PEKS. In order to resist
search scheme based on Water’s regular language encryp- KGA, our system equips the cloud server with a
tion scheme [42]. This proposal will be compared with public/secret key pair, and the cloud server’s public
these schemes [7], [8], [9] in aspects of feature, transmission key is used in the trapdoor generation algorithm.
overhead and computation overhead. In this way, the test algorithm cannot be executed
without the secret key of the cloud server. Thus, it is
6.1.1 Feature Comparison computationally infeasible for the attacker to derive
Table 2 compares the features of these schemes, which are the keyword information from the trapdoor through
comprehensively analyzed as following. running the test algorithm without knowledge of
the cloud server’s secret key. Thus, our system is
• Search Function: The scheme in [7] could support superior in resisting KGA than the schemes in [7],
functional search patterns. The scheme in [9] and [8], [9].
our proposal allows regular language query on en-
crypted indexes, which is very useful in different It is obvious that the proposed scheme supports versa-
applications. However, the scheme in [8] only allows tile search pattern, has good system extendability, stronger
single keyword search. security and more efficient pairing group computation.
• Universe: The ”universe” means that whether the
system has to predefine the characters when it is been 6.1.2 Transmission Overhead Comparison
built. It is an important factor that influences on the In Table 3, we compare the transmission overhead among
system extendability. The ”small universe” indicates these schemes. Before the comparison, the notations in the
that all supported symbols or attributes have to be table should be defined. Let |G| and |GT | denote the element
pre-determined. The ”large universe” scheme do not size in group G and GT . Let |Zp | denote the element size
have to predefine these symbols. It is obvious that the of Zp . l represents the length of keyword string. m is the
feature of ”large universe” is more suitable for a large number of transitions in DFA. |Σ| denotes the size of the
system that could continually add new characters. predefined symbol set and |F | represents the number of
Although [9] could realize regular language search, accept states of DFA in scheme [9]. Typically speaking, |Zp |
it is a small unverse construction. On the contrary, is smaller than |G| and |G| is half of |GT |. To simplify the
our scheme is a large universe design. comparison, the groups G1 and G2 of the asymmetric pair-
• Hardness Assumption: The hardness assumption is ing group in scheme [9] are denoted as G. The subgroups
the basis of the scheme security proof. Boneh and Gp and Gq of the composite order pairing group in scheme
Waters’ scheme [7] is built based on Composite 3- [7] are also represented as G.
party Diffie-Hellman assumption; Zheng’s scheme • Public Parameter Size: The sizes of public param-
[8] is proved under the Decisional Linear assump- eter in [7] and [9] linearly grow with the number
tion; Liang’s scheme [9] is constructed under the of keyword string and the size of the symbol set,
l-Expanded BDHE assumption. Among these as- respectively. Especially, when the system predefines
sumptions in Table 2, the DBDH assumption is the a large number of symbols, the scheme [9] will have
simplest one and well studied [47], which is our a huge public parameter size. On the contrary, the
scheme’s hardness assumption. scheme in [8] and our scheme has constant public
• Standard Model: The security model of the securi- parameter size.
ty proof can be classified to standard model and • Ciphertext Size: The schemes in [7], [8], [9] have
random oracle model. The scheme that is proved ciphertext size linearly proportional to l|G|. The ci-
based on the standard model is more secure than phertext size of our scheme is (3l + 1)|Zp | + 5|G|.
the random oracle model. Zheng’s scheme [8] has Since |Zp | is typically one sixth of |G|, this proposal
its security based on random oracle model. has much smaller ciphertext size compared with the
• Pairing Group: There are three types of pairing others.
groups in Table 2: composite order group, symmet- • Token Size: The token sizes of he schemes in [7], [8],
ric prime order group, and asymmetric prime or- [9] are (2l + 1)|G|, (2l + 2)|G| and (3m + 2|F | + 3)|G|,
der group. Among these pairing groups, symmetric respectively. Our proposal requires 3m elements in
prime order group is the most efficient one, which is Zp and 6 elements in group G to issue a search query.
the algebraic foundation that our proposal based on. If the value of l is set equal to m, it is easy to find that
this scheme has the least token size.

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 10

TABLE 2: Feature Comparison


Scheme Search Universe Hardness Standard Pairing Resist
Function Assumption Model Group KGA
[7] Subset, range Small Composite Yes Composite No
Conjunctive Universe 3-party Diffie-Hellman order

[8] Single Large Decisional No Symmetric No


Keyword Universe Linear prime order

[9] Regular Small Asymmetric Yes Asymmetric No


Language Universe l-Expanded BDHE prime order

Ours Regular Large DBDH Yes Symmetric Yes


Language Universe prime order

Compared with the schemes in [7], [8], [9], our proposal Fq finite field and has 160-bit group order. The parameters p
has constant public parameter size and the least ciphertext and q are 160 bits and 512 bits numbers. Thus, Zp =160 bits,
and token size. Thus, this scheme has fewer storage and |G|=1024 bits and |GT |=2048 bits. As mentioned before, we
communication overhead in the comparison. also set |G1 |, |G2 |, |Gp |, |Gq | to be equal to |G|=1024 bits.
In order to make a fair comparison, we define a common
6.1.3 Computation Overhead Comparison search query to test the performance of these schemes,
Table 4 compares the computation overhead among schemes which have diverse search functions. The following simula-
in [7], [8], [9] and this suggested scheme. Let te1 and te2 be tions are based on single equality keyword search. To make
the computation time of an exponentiation in groups G and a unified performance evaluation, we set the number of
GT , respectively. Let tp be the computation time of a bilin- predefined symbols |Σ| to be l and the number of transitions
ear pairing operation. For convenience, the exponentiation m in DFA to be l. We assume that the number of accept state
computations time in groups G1 , G2 , Gp and Gq is denoted |F | to be 1, which means that only one state is accepted. To
as te1 . The computation overhead comparison is analyzed provide a concrete simulation comparison, four simulation
in detail as below. samples are shown in Tables 5-6: test 1 has l = 10, test 2 has
l = 30, test 3 has l = 60 and test 4 has l = 100.
• Encryption: The encryption computation overhead of
the schemes in [7], [8], [9] are (3l+1)te1 +te2 , (l+3)te1 6.2.1 Communication Cost Simulation
and (4l+4)te1 +te2 , respectively. These computations We compare the communication cost of these schemes in
grows linearly with the number of l. However, our Table 5 and Figures 4-6. Table 5 shows the concrete bit length
scheme only needs 5te1 +te2 to generate a ciphertext, of the sizes of public parameter, ciphertext and token when
which is a constant computation cost and much the experiment is executed using type A ecliptic curve. The
smaller than the other schemes. simulation results are analyzed in detail as below.
• Token Generation: Boneh and Water’s scheme re-
quires 5l + 1 exponentiation calculations on group G TABLE 5: Communication Cost in bit length
to generate a search token. Zheng et al. [8] and Liang Scheme Components Length (Kb)
et al. [9] needs 2l + 4 and 7m + 15 exponentiation Public Parameter Ciphertext Token
computations, respectively. On the contrary, in our [7] Test 1: 34.816 23.552 21.504
Test 2: 96.256 64.512 62.464
system, only 9 exponentiation in G and 1 exponenti-
Test 3: 188.416 125.952 123.904
ation in GT calculations are required to issue a search Test 4: 311.296 207.872 205.824
query. [8] Test 1: 4.096 13.312 22.528
Test 2: 4.096 33.792 63.488
• Test: The schemes in [7], [9] and our scheme has Test 3: 4.096 64.512 124.928
test computation overhead linearly increases with Test 4: 4.096 105.472 206.848
the number of l. However, [8]’s scheme requires as [9] Test 1: 21.504 35.840 35.840
much as (2l2 + 2)tp + lte1 to execute a test operation. Test 2: 41.984 97.280 97.280
Test 3: 72.704 189.440 189.440
Thus, the proposed scheme has much lower encryption Test 4: 113.664 312.320 312.320
Ours Test 1: 10.240 10.080 10.944
and token generation computation overhead compared with Test 2: 10.240 19.680 20.544
other schemes [7], [8], [9]. Test 3: 10.240 34.080 34.944
Test 4: 10.240 53.280 54.144

6.2 Simulation Figure 4 describes the size of public parameter in bit


The PBC (Pairing Based Cryptography) library [48] is u- length, which varies with the value of l. We can see that
tilized to test the performance of the schemes in [7], [8], the lines of schemes in [7] and [9] grows faster with the
[9] and our scheme. The experiments are run on personal increasing of l. When l = 100, the public parameter sizes of
laptop with the following parameters: Intel CoreT M i3-2120 [7] and [9] are 311.296 Kb and 113.664 Kb, respectively. On
CPU @ 3.3 GHz, 4 GB RAM and Windows 7 64-bit operation the contrary, the scheme in [8] and our proposal has constant
system. We select type A elliptic curve for the performance public parameter size, which are 4.096 Kb and 10.240 Kb,
evaluation, which has the expression E : y 2 = x3 + x over respectively. Although the value of |P P | in our scheme is

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 11

TABLE 3: Transmission Overhead Comparison


Scheme Size/Length
Public Parameter Ciphertext Token
[7] (3l + 2)|G| + |GT | (2l + 1)|G| + |GT | (2l + 1)|G|
[8] 4|G| (l + 3)|G| (2l + 2)|G|
[9] (|Σ| + 9)|G| + |GT | (3l + 5)|G| (3m + 2|F | + 3)|G|
Ours 8|G| + |GT | (3l + 1)|Zp | + 5|G| 3m|Zp | + 6|G|

TABLE 4: Computation Overhead Comparison


Scheme Computation Cost
Enc T okenGen T est
[7] (3l + 1)te1 + te2 (5l + 1)te1 (2l + 1)tp
[8] (l + 3)te1 (2l + 4)te1 (2l2 + 2)tp + lte1
[9] (4l + 4)te1 + te2 (7m + 15)te1 (3l + 5)tp
Ours 5te1 + te2 9te1 + te2 (3l + 5)tp + (13l + 1)te1 + te2

Public Parameter Size Token Size


350 350

Ours
300 20 300
[7]
15
10 [8]

250 5 250 [9]

0
20 40 60 80 100
200 200

Size (Kb)
Size (Kb)

150 150

100 100
Ours

[7]
50 [8]
50
[9]

0 0
10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100
Length of Search Keyword (Character) Length of Search Keyword (Character)

Fig. 4: Comparison of Public Parameter Size Fig. 6: Comparison of Token Size

Ciphertext Size
350 in [7], [8], [9] are 207.872 Kb, 105.472 Kb and 312.320 Kb,
respectively. Thus, the system users’ terminals save a lot
Ours
300 transmission overhead in this scheme.
[7]

250
[8]
Figure 6 shows the token size comparison among these
[9]
schemes. It seems that there are only three lines for four
200 schemes. The reason is that the lines for schemes [7] and [8]
Size (Kb)

look like overlapping. Table 5 indicates that the difference of


150
the token sizes of these two schemes is 1.024 Kb. Similarly,
100 it can be easily found that the proposed scheme has the
least token size. In the keyword token transmission phase,
50
the user’s terminal can use less energy to transmit a search
0 query.
10 20 30 40 50 60 70 80 90 100
Length of Search Keyword (Character)

6.2.2 Computation Cost Simulation


Fig. 5: Comparison of Ciphertext Size
Table 6 and Figures 7-9 depict the running time test results
of Enc, T okenGen and T est algorithms. Table 6 shows
the concrete running time (in millisecond) of individual
not as small as that in [8], the public parameter size of this algorithms. The experimental results of the execution time
scheme is 1/30 of that in [7] and 1/11 of that in [9] when are explained as following.
l = 100. The subgraph on the top left corner of Figure 3 is In Figure 7, it is easy to find that the encryption com-
an enlarged figure to show the public parameter sizes of the putation overheads in schemes [7], [8], [9] have a noticeable
scheme in [8] and our scheme. climbing trend with the growth of l. On the other hand,
In Figure 5, all these three lines linearly increase with this proposal has constant encryption time, which is 48 ms.
the value of l. It is obvious that our scheme has the lowest When l = 100, the encryption time of the schemes in [7],
ciphertext size all the time. When l grows to 100, our [8], [9] are 2,763 ms, 945 ms and 3,711 ms, respectively.
ciphertext size is 53.280 Kb and that size of the schemes Their encryption cost are 57 times, 19 times and 77 times of

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 12

Test Time

TABLE 6: Computation Cost in Running Time


18
Scheme Algorithms (Running Time ms)

log 2 (Running Time (ms))


Enc T okenGen T est 16
[7] Test 1: 287.009 470.509 378.525
Test 2: 835.842 1383.394 1092.349
Test 3: 1661.392 2762.425 2185.432 14
Test 4: 2763.394 4596.342 3627.743
[8] Test 1: 121.859 220.200 3732.836
12
Test 2: 303.384 586.394 32495.234
Test 3: 582.342 1139.734 129829.341 Ours
Test 4: 945.892 1875.372 360542.385 10 [7]

[9] Test 1: 406.238 782.473 630.369 [8]

Test 2: 1148.381 2068.932 1716.328 [9]


8
Test 3: 2249.757 3991.736 3332.742 10 20 30 40 50 60 70 80 90 100
Test 4: 3711.742 6567.375 5499.591
Length of Search Keyword (Character)
Ours Test 1: 48.349 85.473 1835.180
Test 2: 46.536 85.590 5302.285
Test 3: 48.601 84.962 10502.152 Fig. 9: Running Time Comparison in Test
Test 4: 48.348 85.196 17436.364

ours, respectively. Thus, our proposal has great superiority


in encryption performance.
Figure 8 indicates that the schemes in [7], [8], [9] have
Encryption Time to spend a lot of time to generate a search token, which
12
increase with the length of searched keyword. Our scheme
11
consumes constant time 85 ms to create a search query.
When l = 10, the token generation times of [7], [8], [9] are
log 2 (Running Time (ms))

10 470.509 ms, 220.200 ms and 782.473 ms, respectively. They


are 5.5 times, 2.6 times and 9.2 times of our token generation
9
time. If the keyword length l increases to 100, the token
8 generation time of [7], [8], [9] are 4596.342 ms, 1875.372 ms
Ours
and 6567.375 ms, respectively. They are 54 times, 22 times
[7]
7
[8] and 77 times of our query generation time. Needless to
6
[9]
say, this suggested scheme has greatly decreased the token
generation cost.
5 The test algorithm is always executed by the cloud
10 20 30 40 50 60 70 80 90 100
Length of Search Keyword (Character)
server, who processes powerful calculation capability and
endless energy supply. Figure 9 indicates that all these
Fig. 7: Running Time Comparison in Encryption schemes experience an increasing trend with the growth
of l. Our proposal has medium performance among these
schemes in test algorithm, which is better than that in [8]
and poorer than [7], [9]. Our design principle is to alleviate
the computation burden (Enc and T okenGen algorithms)
on user’s resource limited terminals and offload the heavy
Token Generation Time computations (T est algorithm) to the cloud server.
13

12
6.3 Analysis
log 2 (Running Time (ms))

11
The comparisons and simulations shown in Subsections 6.1
10 and 6.2 indicate that the proposed system has much smaller
public parameter size, ciphertext size and token size. In
9 addition, the encryption time and token generation time are
Ours

8
[7] much shorter than the compared schemes [7], [8], [9]. The
[8]
reasons of the high efficiency in our system are analyzed
[9]
7 below.
The design principle of this system is to reduce the
6
10 20 30 40 50 60 70 80 90 100 transmission, storage and computation burdens of the data
Length of Search Keyword (Character) owners and the data users. Since the cloud server has
powerful computation resources, it is acceptable to offload
Fig. 8: Running Time Comparison in Token Generation a part of the users’ computation burden to the cloud server.
To realize this principle, we use the large universe
construction in the system setup phase, so that the public

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 13

parameter is short to save the users’ storage space. Be- [3] Sookhak M, Gani A, Khan M K, et al. Dynamic remote data auditing
sides, the system is flexible for extension when the new for securing big data storage in cloud computing[J]. Information
Sciences, 2017, 380: 101-116.
features are to be added to the system. In the encryption [4] Zhang Q, Yang L T, Chen Z, Li P. Privacy-preserving double-
algorithm that is executed by the data owner, the elements projection deep computation model with crowdsourcing on cloud
({C5,i }i∈[0,l] , {C6,i , C7,i }i∈[1,l] ) are constructed in Zp rather for big data feature learning[J]. IEEE Internet of Things Journal,
than G, which reduces the transmission overheads and 2017, DOI: 10.1109/JIOT.2017.2732735.
[5] Zhang Q, Yang L T, Chen Z, Li P. PPHOPCM: Privacy-preserving
avoids a large amount of exponentiations in group G. The High-order Possibilistic c-Means Algorithm for Big Data Clustering
confidentiality of the keywords wi (for 1 ≤ i ≤ l) is with Cloud Computing[J]. IEEE Transactions on Big Data, 2017,
protected by the random numbers s, s0 , s1 , · · · , sl . In the DOI: 10.1109/TBDATA.2017.2701816.
token generation algorithm that is executed by the data user, [6] Liu J K, Liang K, Susilo W, et al. Two-factor data security protec-
tion mechanism for cloud storage system[J]. IEEE Transactions on
the elements ({T6,t , T7,t , T8,t }t∈[1,m] ) are also constructed Computers, 2016, 65(6): 1992-2004.
in Zp rather than G, to avoid the large computation and [7] Boneh D, Waters B. Conjunctive, subset, and range queries on
transmission overheads. encrypted data[C]//Theory of Cryptography Conference. Springer
Berlin Heidelberg, 2007: 535-554.
In the test algorithm that is executed by the cloud
[8] Q. Zheng, S. Xu, and G. Ateniese. VABKS: verifiable attribute-based
server, the elements ({C5,i }i∈[0,l] , {C6,i , C7,i }i∈[1,l] ) and keyword search over outsourced encrypted data. In INFOCOM, pp.
({T6,t , T7,t , T8,t }t∈[1,m] ) are computed in the index position, 522C530. IEEE, 2014.
and the base numbers are the public parameters or the [9] Liang K, Huang X, Guo F, et al. Privacy-Preserving and Regular
Language Search Over Encrypted Cloud Data[J]. IEEE Transactions
public key. It indicates that the exponentiation computations on Information Forensics and Security, 2016, 11(10): 2365-2376.
are offloaded to the cloud server. Thus, the performance of [10] Chang V, Ramachandran M. Towards achieving data security with
the test algorithm is in the medium level rather than the the cloud computing adoption framework [J]. IEEE Transactions on
most efficient. Services Computing, 2016, 9(1): 138-151.
[11] Zheng X H, Chen N, Chen Z, et al. Mobile cloud based framework
for remote-resident multimedia discovery and access[J]. Journal of
7 C ONCLUSION Internet Technology, 2014, 15(6): 1043-1050.
[12] Chang V, Kuo Y H, Ramachandran M. Cloud computing adoption
In this paper, we introduce a large universe searchable framework: A security framework for business clouds [J]. Future
encryption scheme to protect the security of cloud storage Generation Computer Systems, 2016, 57: 24-41.
system, which realizes regular language encryption and [13] Barsoum A. Provable data possession in single cloud server: A
survey, classification and comparative study[J]. International Jour-
DFA search function. The cloud service provider could test nal of Computer Applications, 2015, 123(9).
whether the encrypted regular language in the encrypt- [14] Wang H. Identity-based distributed provable data possession in
ed ciphertext is acceptable by the DFA embedded in the multicloud storage[J]. IEEE Transactions on Services Computing,
2015, 8(2): 328-340.
submitted search token. In the test procedure, no plaintext [15] J, Tan X, Chen X, et al. Opor: Enabling proof of retrievability
of the regular language or the DFA will be leaked to the in cloud computing with resource-constrained devices[J]. IEEE
cloud server. We also put forth a concrete construction with Transactions on cloud computing, 2015, 3(2): 195-205.
lightweight encryption and token generation algorithms. [16] Tiwari D, Gangadharan G R. A novel secure cloud stor-
age architecture combining proof of retrievability and revoca-
An example is given to show how the system works. The tion[C]//Advances in Computing, Communications and Informat-
proposed scheme is privacy-preserving and indistinguish- ics (ICACCI), 2015 International Conference on. IEEE, 2015: 438-445.
able against KGA, which are proved in standard model. [17] Omote K, Thao T P. MD-POR: multisource and direct repair
The comparison and experiment result confirm the low for network coding-based proof of retrievability[J]. International
Journal of Distributed Sensor Networks, 2015, 2015: 3.
transmission and computation overhead of the scheme. [18] Hopcroft JE, Motwani R, Ullman JD. Automata theory, languages,
and computation. International Edition 24 (2006).
[19] Lucas SM, Reynolds TJ. Learning deterministic finite automa-
ACKNOWLEDGMENTS ta with a smart state labeling evolutionary algorithm. IEEE
The authors thank the editor-in-chief, associate editor and Transactions on Pattern Analysis and Machine Intelligence. 2005
Jul;27(7):1063-74.
reviewers for their constructive and generous feedback. This [20] Kobayashi K, Imura JI. Deterministic finite automata represen-
work is supported by National Natural Science Foundation tation for model predictive control of hybrid systems. Journal of
of China (No. 61402112, 61672159); Technology Innovation Process Control. 2012 Oct 31;22(9):1670-80.
Platform Project of Fujian Province (No. 2014H2005); Fujian [21] de Parga MV, Garcła P, Lpez D. A polynomial double reversal
minimization algorithm for deterministic finite automata. Theoret-
Major Project of Regional Industry (No. 2014H4015); Major ical Computer Science. 2013 May 27;487:17-22.
Science and Technology Project of Fujian Province (No. [22] Sarkar P, Kar C. Adaptive E-learning using Deterministic Finite
2015H6013); Fujian Provincial Key Laboratory of Informa- Automata[J]. International Journal of Computer Applications, 2014,
tion Processing and Intelligent Control (Minjiang Univer- 97(21).
[23] Fernau H, Heggernes P, Villanger Y. A multi-parameter analysis
sity) (No. MJUKF201734); Fujian Collaborative Innovation of hard problems on deterministic finite automata[J]. Journal of
Center for Big Data Application in Governments; Fujian Computer and System Sciences, 2015, 81(4): 747-765.
Engineering Research Center of Big Data Analysis and [24] Farmanbar A, Firouzi S, Park S J, et al. Multidisciplinary insight
Processing. into clonal expansion of HTLV-1Cinfected cells in adult T-cell
leukemia via modeling by deterministic finite automata coupled
with high-throughput sequencing[J]. BMC medical genomics, 2017,
10(1): 4.
R EFERENCES [25] D.X. Song, D. Wagner, A. Perrig, ”Practical techniques for searches
[1] Erl T, Cope R, Naserpour A. Cloud computing design patterns[M]. on encrypted data”, in: IEEE Symposium on Security and Privacy,
Prentice Hall Press, 2015. 2000, pp. 44-55.
[2] Li Z, Dai Y, Chen G, et al. Toward network-level efficiency for cloud [26] Wang C, Cao N, Ren K, et al. Enabling secure and efficient ranked
storage services[M]//Content Distribution for Mobile Internet: A keyword search over outsourced cloud data[J]. IEEE Transactions
Cloud-based Approach. Springer Singapore, 2016: 167-196. on parallel and distributed systems, 2012, 23(8): 1467-1479.

2168-7161 (c) 2018 IEEE. Personal use is 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/TCC.2018.2814594, IEEE
Transactions on Cloud Computing
IEEE TRANSACTIONS ON CLOUD COMPUTING 14

[27] Liu Q, Tan C C, Wu J, et al. Towards differential query services in Yang Yang (M’16) received the B.Sc. degree
cost-efficient clouds[J]. IEEE Transactions on parallel and Distribut- from Xidian University, Xi’an, China, in 2006
ed Systems, 2014, 25(6): 1648-1658. and Ph.D. degrees from Xidian University, China,
[28] Xu P, Jin H, Wu Q, et al. Public-key encryption with fuzzy key- in 2012. She is an associate professor in the
word search: A provably secure scheme under keyword guessing college of mathematics and computer science,
attack[J]. IEEE Transactions on computers, 2013, 62(11): 2266-2277. Fuzhou University. She has published over 40
[29] Li H, Yang Y, Luan T H, et al. Enabling fine-grained multi-keyword research articles include IEEE TIFS, IEEE TD-
search supporting classified sub-dictionaries over encrypted cloud SC and IEEE TSC. Her research interests are in
data[J]. IEEE Transactions on Dependable and Secure Computing, the area of cloud, IoT and big data security, and
2016, 13(3): 312-325. privacy protection.
[30] Cui B, Liu Z, Wang L. Key-Aggregate Searchable Encryption
(KASE) for Group Data Sharing via Cloud Storage[J]. IEEE TRANS-
ACTIONS ON COMPUTERS, 2014, 6(1): 1.
[31] Yang Y, Ma M. Conjunctive Keyword Search With Designated
Tester and Timing Enabled Proxy Re-Encryption Function for E-
Health Clouds[J]. IEEE Transactions on Information Forensics and
Security, 2016, 11(4):746-759.
[32] Yang Y. Attribute-based data retrieval with semantic keyword
search for e-health cloud[J]. Journal of Cloud Computing, 2015, 4(1):
1.
[33] Liang K, Susilo W. Searchable attribute-based mechanism with
Xianghan Zheng is an associate professor
efficient data sharing for secure cloud storage[J]. IEEE Transactions
in the College of Mathematics and Comput-
on Information Forensics and Security, 2015, 10(9): 1981-1992.
er Sciences, Fuzhou University, China. He re-
[34] Chen R, Mu Y, Yang G, et al. Dual-server public-key encryption
ceived his MSc of Distributed System (2007) and
with keyword search for secure cloud storage[J]. IEEE Transactions
Ph.D of Information Communication Technology
on Information Forensics and Security, 2016, 11(4): 789-798.
(2011) from University of Agder, Norway. His cur-
[35] Yang Y, Ma M. Semantic Searchable Encryption Scheme Based
rent research interests include New Generation
on Lattice in Quantum-Era[J]. Journal of Information Science and
Network with special focus on Cloud Computing
Engineering, 2016, 32(2).
Services and Applications, Big Data Processing
[36] Xia Q, Ni J, Kanpogninge A J B A, et al. Searchable Public-
and Security.
Key Encryption with Data Sharing in Dynamic Groups for Mobile
Cloud Storage[J]. J. UCS, 2015, 21(3): 440-453.
[37] Li H, Liu D, Dai Y, et al. Engineering searchable encryption of
mobile cloud networks: when qoe meets qop[J]. IEEE Wireless
Communications, 2015, 22(4): 74-80.
[38] Yang Y, Ma M, Lin B. Proxy re-encryption conjunctive keyword
search against keyword guessing attack[C]//Computing, Com-
munications and IT Applications Conference (ComComAp), 2013.
IEEE, 2013: 125-130.
[39] Wu Y, Lu X, Su J, et al. An Efficient Searchable Encryption Against
Keyword Guessing Attacks for Sharable Electronic Medical Records
in Cloud-based System[J]. Journal of medical systems, 2016, 40(12): Chunming Rong is a professor and head of
258. the Center for IP-based Service Innovation at
[40] J. W. Byun, H. S. Rhee, H.-A. Park, and D. H. Lee, Offline keyword University of Stavanger in Norway. His research
guessing attacks on recent keyword search schemes over encrypted interests include cloud computing, big data anal-
data, in Proc. 3rd VLDB Workshop Secure Data Manage. (SDM), ysis, security and privacy. He is co-founder and
vol. 4165. Seoul, Korea, Sep. 2006, pp. 75C83. chairman of the Cloud Computing Association
[41] W. C. Yau, R. C. W. Phan, S. H. Heng, and B. M. Goi, Key- (CloudCom.org) and its associated conference
word guessing attacks on secure searchable public key encryption and workshop series. He is a member of the
schemes with a designated tester, Int. J. Comput. Math., vol. 90, no. IEEE Cloud Computing Initiative, and co-Editor-
12, pp. 2581C2587, 2013. in-Chief of the Springer Journal of Cloud Com-
[42] B. Waters. Functional encryption for regular languages. In CRYP- puting.
TO, vol. 7417 of LNCS, pp. 218C235. Springer, 2012.
[43] Sipser, M.: Introduction to the theory of computation. Thomson
Course Technology (2006)
[44] Fang, L., Susilo, W., Ge, C. Wang, J. Public key encryption with
keyword search secure against keyword guessing attacks without
random oracle. Information Sciences 238 (2013): 221-241.
[45] Attrapadung N. Dual system encryption via doubly selective
security: Framework, fully secure functional encryption for regular
languages, and more[C]//Annual International Conference on the
Theory and Applications of Cryptographic Techniques. Springer
Wenzhong Guo (M’15) received the BS and MS
Berlin Heidelberg, 2014: 557-577.
degrees in computer science, and the PhD de-
[46] Myers, M., Ankney, R., Malpani, A., Galperin, S., Adams, C. X. 509
gree in communication and information system
Internet public key infrastructure online certificate status protocol-
from Fuzhou University, Fuzhou, China, in 2000,
OCSP. No. RFC 2560. 1999.
2003, and 2010, respectively. He is currently a
[47] Chow S S M, Dodis Y, Rouselakis Y, et al. Practical leakage-
full professor with the College of Mathematics
resilient identity-based encryption from simple assumption-
and Computer Science at Fuzhou University. His
s[C]//Proceedings of the 17th ACM conference on Computer and
research interests include intelligent information
communications security. ACM, 2010: 152-161.
processing, sensor networks, network comput-
[48] B. Lynn. The Stanford Pairing Based Crypto Library. [Online].
ing and network performance evaluation.
Available: http://crypto.stanford.edu/pbc, accessed Dec 31, 2017.

2168-7161 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

You might also like