Paper 1 Searchable Symmetric Encryption With Forward Search Privacy
Paper 1 Searchable Symmetric Encryption With Forward Search Privacy
1, JANUARY/FEBRUARY 2021
Abstract—Searchable symmetric encryption (SSE) has been widely applied in the encrypted database for queries in practice.
Although SSE is powerful and feature-rich, it is always plagued by information leaks. Some recent attacks point out that forward privacy
which disallows leakage from update operations, now becomes a basic requirement for any newly designed SSE schemes. However,
the subsequent search operations can still leak a significant amount of information. To further strengthen security, we extend the
definition of forward privacy and propose the notion of “forward search privacy”. Intuitively, it requires search operations over newly
added documents do not leak any information about past queries. The enhanced security notion poses new challenges to the design of
SSE. We address the challenges by developing the hidden pointer technique (HPT) and propose a new SSE scheme called Khons,
which satisfies our security notion (with the original forward privacy notion) and is also efficient. We implemented Khons and our
experiment results on large dataset (wikipedia) show that it is more efficient than existing SSE schemes with forward privacy.
Index Terms—Searchable encryption, forward search privacy, forward privacy, data privacy
1 INTRODUCTION
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
LI ET AL.: SEARCHABLE SYMMETRIC ENCRYPTION WITH FORWARD SEARCH PRIVACY 461
and makes forward privacy the baseline for newly devel- efficiency, most of SSE schemes leverage inverted index so
oped SSE schemes. that maps a keyword to a set of documents containing this
Forward privacy (FP) requires that the update (addition keyword. Conceptually, for each keyword w, there is a list
and deletion) operations cannot be linked to previous Lw such that each element in Lw is a pair (index, ind), where
search queries. From a practical point of view, it is impor- ind is the identifier of a document that contains w, and index
tant for users to securely and dynamically build the is a pointer to the previous (or next) element in Lw . To
encrypted database [34], [35], [36], [37]. Since 2016 several achieve forward privacy, all the Lw s are merged into a sin-
schemes have been proposed to achieve this goal using dif- gle list L, and some cryptographic primitives are used so
ferent cryptographic primitives, including Sophos [20] (uses that when a new element is added into L, one cannot link it
trapdoor permutation (TDP)), Diana [24] (uses Constrained to a specific Lw (until the next search query for w). A search
Pseudorandom Function (CPRF)), and Dual [25] (uses query for w can be easily answered by giving the index of
keyed hash function). Among them, Diana [24] and latest element in Lw , and decrypting the previous element’s
Dual [25] only use symmetric primitives and are more effi- index one by one to recover all identifiers. However, it is
cient. Backward privacy (BP) is a related security notion not suitable for the goal of forward search privacy, because
that prevents search operations from leaking the matching it is hard to get a part of elements without leaking which list
elements after they have been deleted. It was showed in [24] they belong to and the relation with other elements in the
that a two-roundtrip backward-private SSE can be obtained same list. How to achieve the highest possible level of secu-
from any forward private SSE scheme by applying the rity while preserving the efficiency of SSE can be a huge
generic transformation. challenge.
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
462 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 18, NO. 1, JANUARY/FEBRUARY 2021
TABLE 1
Comparison with Prior Forward Private SSE Schemes
K is the number of keywords, m is the number of sub keywords, D is the number of documents in EDB. The nw is the size of the search result set matching keyword
w, aw is the total number of entries matching keyword w, dw is the number of deleted entries matching w. RT denotes round trip, BP denotes backward-private,
PT denotes Partition-based technique, Fu P denotes forward update privacy and Fs P denotes forward search privacy.
indi is a document identifier and Wi is a set of keywords any string x 2 f0; 1g , and outputs a string H s ðxÞ 2
matching document S D indi . The keyword set of the database f0; 1glðnÞ . It is not much more difficult to see that a ran-
DB S is W ¼ i¼1 Wi and the document set is dom oracle acts like a hash function.The success probabil-
D
D¼ i¼1 find i g. We define the number of search results for ity of any polynomial-time adversary A in the following
keyword w as nw and the set of documents containing a key- game is negligible:
word w as DB(w) = (indi jw 2 DB(indi )} where jDBðwÞj is aw .
A keyword w can be divided into a set of sub keywords A random function H is chosen.
Sw ¼ fwi jEKs ðw; iÞ; 1 i xg where Ks is the encryption A succeeds if it outputs x; x0 with HðxÞ ¼ Hðx0 Þ but
key and x is a constant. Let D ¼ jDj denotes the number of x 6¼ x0 .
documents in DB, W = jWj the total number of keywords, We refer the reader to [30] for formal definitions of CPA-
and N be the number of document/keyword pairs (we security, PRFs and Hash functions.
identify documents Pwith their identifier).
P Note that N can
2.3 Searchable Symmetric Encryption
be written as N ¼ ni¼1 jDBðindi Þj ¼ w2W jDBðwÞj.
Initially, SSE is proposed to protect static data and thus does
not support update operations. Recently, most research
2.2 Cryptographic Primitives
focuses on constructing dynamic searchable symmetric
A private-key encryption scheme [26], [30] is a set of three encryption (DSSE) [6], [21], [22], [23] that offers search capa-
polynomial-time algorithms SK ¼ (Gen, Enc, Dec) where bility and allows dynamically adding and deleting docu-
Gen is a probabilistic algorithm that takes as a input a
ments. We review the definition of dynamic SSE in [20]. A
security parameter and returns a secret key Ks , Enc is a
DSSE scheme P ¼ ðSetup, Search, Update) contains a
probabilistic algorithm takes as inputs a key Ks and a mes-
Setup algorithm, and two protocols Search and Update:
sage m and returns a ciphertext c and Dec is a deter-
ministic algorithm that takes as inputs a key Ks and a Setup(DB) ! (EDB, sk, s) is an algorithm for setting
ciphertext c and returns m if Ks was the key under which up the encrypted database supporting keyword
c was encrypted. Informally, a private-key encryption search. It takes as input a database DB and outputs
scheme is CPA-secure if for any probabilistic polynomial- (EDB, sk, s) where EDB is the encrypted database,
time adversary A, there exists a negligible function negl sk is a secret key, and s is the client’s state.
such that Search(sk; q; s; EDBÞ ¼ ðSearchC ðsk; q; sÞ, SearchS
ðEDB)) is a client-server protocol supporting search
1 operation of a document. The client takes as inputs
A;SK ðÞ ¼ 14 þ neglðÞ:
Pr½PrivKCPA the key sk, its state s, and a search query q. The
2
server takes as input EDB, outputs the results as doc-
For encryption schemes, we employ pseudo-random ument identifiers matching the query q.
functions (PRF), which is a polynomial-time comput- Update(sk, s, op, in; EDB) = (UpdateC ðsk; s; op, in),
able functions. PRF cannot be distinguished from random UpdateS (EDB)) is a client-server protocol supporting
functions by any probabilistic polynomial-time adversary. update operation of a document. The client takes as
A hash function is a pair of probabilistic polynomial- inputs the key sk, an operator op which is taken
time algorithms ðGen; HÞ where Gen is a probabilistic from the set {add, del}, client’s state s and an input in
algorithm which takes as input a security parameter 1n parsed as the document ind and a set W of keywords.
and outputs a key s. We assume that 1n is included in s. The server takes as input the EDB.
There exists a polynomial l such that H is (deterministic) Adaptive Security of SSE. The standard security definition
polynomial-time algorithm that takes as input a key s and of a DSSE scheme follows the ideal/real simulation
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
LI ET AL.: SEARCHABLE SYMMETRIC ENCRYPTION WITH FORWARD SEARCH PRIVACY 463
paradigm [20], [24]. It requires the server to know as little as initially sets to 0, and which is incremented at each query.
possible about the content of database and queries. More Let sp(x) and qp(x) denote the search and query patterns
specifically, we wish the adversary will learn nothing except respectively which are defined as
for some obvious leakages. We use a stateful leakage func-
tions to express the information leaked to the adversary by spðxÞ ¼ fj : ðj; xÞ 2 Qgðonly matches search queriesÞ
each SSE operation, which is L ¼ ðLSetup , LSearch , LUpdate ), qpðxÞ ¼ fj : ðj; xÞ 2 Qg or ðj; op; inÞ 2 Q and x appears in in:
whose components correspond respectively to the informa-
tion leaked to the adversary by Setup, Search and Update
In this paper, TimeDBðwÞ is the list of all documents
operations. The definition ensures that the scheme will
matching w, excluding the deleted ones, together with the
reveal no information beyond what is inferred from the leak-
timestamp of when they were inserted in the database.
age functions.
UpdatesðwÞ is the list of timestamps of updates on w. Dele-
The adversary aims to distinguish between a real world
tion history DelHistðwÞ is the list of timestamps for all dele-
SSEREAL and an ideal world SSEIDEAL. In these worlds, the
tion operations, together with the timestamp of the inserted
adversary can trigger Setup, Search and Update operations
entry it removes.
with parameters which are chosen by herself. Then, she can
observe the execution of the scheme like what the server
3.1 Forward Update Privacy
does. We describe what the adversary A does in real world
The traditional forward privacy [20] is that the server can-
and ideal world specifically as follows.
not learn whether the newly updated documents match a
In the SSEReal world, the DSSE scheme is executed previously searched keyword or not. In this paper, we
honestly. The adversary A chooses a database DB. define it as forward update privacy.
The experiment runs Setup(DB) and returns EDB to
Definition 2 (Forward update privacy): A L-adaptively-secure
A. Then, A adaptively chooses queries qi . The experi-
SSE scheme is forward-update-private iff the update leakage
ment runs Search(sk; qi ; s i ; EDBi ) or Update(sk; s i ,
function LUpdate can be written as
op, ini ; EDBi ) depending on the protocol of query qi
and returns (s iþ1 ,DB(wi ) EDBiþ1 ) or (s iþ1 , EDBiþ1 ). 0
Finally, the adversary A outputs a bit b 2 f0; 1g. LUpdate ðop; ind; W Þ ¼ L ðind; jW jÞ;
In the SSEIdeal world, the adversary sees messages
where ind denotes the identifiers of the newly added documents,
generated by a PPT algorithm S, known as the simula-
jW j denotes the number of keywords of the newly added docu-
tor, that has access to only the leakage functions but 0
ment and L is stateless.
not the database or queries. The adversary A chooses
a database DB. The simulator returns an encryption As shown in Definition 2, forward update privacy
database EDB SðLSetup ðDBÞÞ to A. Then, A adap- requires that the information leaked in update operation
tively chooses queries qi . The experiment runs should not be more than the identifier and the number of
SðLSearch ðqi ÞÞ or SðLUpdate ðqi ÞÞ to answer the query qi . keywords of newly updated document.
Finally, the adversary A outputs a bit b 2 f0; 1g.
If an adversary can distinguish the real game and the 3.2 Forward Search Privacy
ideal game of DSSE with only a negligible probability, we In existing SSE schemes, a search token leaks a significant
say that DSSE achieves adaptive security, which is defined amount of information. This is captured by the leakage
0 0
as follows. function LSearch ðwÞ ¼ L ðTimeDBðwÞÞ, where L is stateless.
Definition 1 (Adaptive security). A DSSE scheme P with a Forward search privacy is defined on the basis of for-
collection of leakage functions L is L-adaptively-secure, if for ward update privacy. It further prevents the server to know
any polynomial-time adversary A issuing a polynomial number whether a search over newly updated documents matches a
of queries qðÞ, there exists a PPT simulator S such that previously searched keyword. We first introduced the
notion of strong forward search privacy. An SSE scheme
satisfies strong forward search privacy if the search token
jPr SSERealP A ð; qÞ¼1 Pr½SSEIdealS;A;L ð; qÞ¼1j neglðÞ:
leaks no information. We define it as follows:
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
464 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 18, NO. 1, JANUARY/FEBRUARY 2021
0 00
where L and L are stateless and jTimeDBðwÞj ¼ aw for aw is
a constant.
Definition 7 (BP-III): A Ladaptively secure SSE scheme
is weakly backward-private iff leakage functions LSearch can be
written as
0
LUpdate ðop; w; indÞ ¼ L ðop; wÞ;
00
LSearch ðwÞ ¼ L ðTimeDBðwÞ; DelHistðwÞÞ;
0 00
where L and L are stateless and jTimeDBðwÞj ¼ aw for aw is
a constant.
Fig. 1. An example of HPT. There are four data blocks, whose identifiers The difference between weak forward search and back-
and encryption keys are (id1 , key1 ), (id2 , key2 ), (id3 , key3 ) and (id4 , key4 ). ward privacy is that weak forward search privacy only
The head block in the target list is the id1 , whose encryption key is main-
tained in the client; the id2 is an inner block and its key is stored in the pre-
leaks partial query pattern. Note that in the Defintion 4, the
fix block id1 ; the tail block is the id4 , whose encryption key is stored in the leakage function is based on TimeDBðwi Þ where wi is a sub-
prefix block id2 . The ptr value of id4 is ? because it is the end of this list. keyword of keyword w, while in Definitions 5, 6, and 7, the
leakage function is based on TimeDBðwÞ, i.e., it exposes the
Definition 4 (Weak forward search privacy). Let Sw ¼ whole query pattern.
fw1 ; . . . ; wx g denote a set of sub keywords for a keyword w
where x is a constant. A L-adaptive-secure SSE scheme is 4 OVERVIEW OF TECHNIQUES
weak forward-search-private, iff the leakage functions LSearch
can be written as In this section, we will introduce two techniques to help
achieve the forward search privacy and then describe a toy
0 construction.
LSearch ðwi Þ ¼ L ðTimeDBðwi ÞÞ;
0
where L is stateless and jTimeDBðwi Þj ¼ aw for aw is a 4.1 Partitioning Technique
constant. In SSE schemes, indexes are used widely. In our construc-
tion, inverted index is used to facilitate search queries in the
3.3 Backward Privacy form of a pair (key, value), where key is a keyword and
An SSE scheme satisfies backward privacy if after deleting a value is a list of identifiers of documents containing this
document ind matching keyword w, the server cannot reveal keyword. Given a keyword, we can retrieve all the docu-
the deleted document ind from the subsequent search of key- ments that contains the keyword efficiently.
word w. We partition the inverted index into disjoint partitions and
In 2017, Bost et al. [24] have defined backward privacy at generate a sub-keyword for each partition to reduce informa-
three levels: BP-I, BP-II and BP-III. They all leak the docu- tion leakage in SSE. In this way, a search token of a keyword
ments currently matching w, when they were inserted. As will become multiple search tokens, each for a different parti-
for other leakages: BP-I only allows the leakage of “the total tion. More specifically, we add the identifier of the document
number of updates on w”; BP-II further allows the leakage of to a partition using a sub-keyword derived from w as the key
“when all the updates on w happened”; and BP-III further when adding a document that contains a keyword w. When
allows the leakage of “which deletion update canceled which performing a search query, we allow the client to submit a
insertion update”. We review these definitions as follows. search token of a sub-keyword to search over a subset of docu-
ments in this partition. If we set only one partition for a key-
Definition 5 (BP-I): A L-adaptively-secure SSE scheme is word, it will be the traditional inverted index.
insertion pattern revealing backward-private iff leakage func-
tions LSearch can be written as 4.2 Hidden Pointer Technique (HPT)
0 To use the partitioning technique in SSE, we need to build
LUpdate ðop; w; indÞ ¼ L ðopÞ; encrypted lists so that we can store all indexes at the server
00
LSearch ðwÞ ¼ L ðTimeDBðwÞÞ; securely.
0 00
We first define the data structure. A data block is a four-
where L and L are stateless and jTimeDBðwÞj ¼ aw for aw is tuple (id, data, key, ptr), where id is the block identifier, data
a constant. is a piece of data, key and ptr are the encryption key and
Definition 6 (BP-II). A L-adaptively-secure SSE scheme is identifier of another block (suffix block). If a block has no
update pattern revealing backward-private iff leakage func- suffix block, key is set to ?. In a data block b, data, ptr and
tions LSearch can be written as key fields should be encrypted. We denote b:id as the id of
block b and b:value as all the other contents of b including
0 b:data, b:key and b:ptr.
LUpdate ðop; w; indÞ ¼ L ðop; wÞ;
00
As shown in Fig. 1, HPT allows us to add data blocks into
LSearch ðwÞ ¼ L ðTimeDBðwÞ; UpdatesðwÞÞ; an encrypted linked list. Let L be a list of data blocks. Let the
head block be the latest block being added to L and the tail
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
LI ET AL.: SEARCHABLE SYMMETRIC ENCRYPTION WITH FORWARD SEARCH PRIVACY 465
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
466 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 18, NO. 1, JANUARY/FEBRUARY 2021
into list Lwi . The block Btail stores the identify and encryp-
tion key of the head block of list Lwi1 and encryption key of
the tail block of list Lwi1 . The prefix block of Btail in list Lwi
only stores the identifier of Btail but does not store its
encryption key. The details are shown in Algorithm 2.
forward index
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
LI ET AL.: SEARCHABLE SYMMETRIC ENCRYPTION WITH FORWARD SEARCH PRIVACY 467
Khons achieves backward privacy with two round trips. 5.4 Analysis
After receiving the search token, the server retrieves data In Khons, all the states of documents, keywords and sub-
from either a single partition or all the partitions. For each keywords are stored in the client. Thus its client storage
block b in the list associated with the keyword w, it contains overhead is Oðmlog D þ Dlog KÞ, where m, D and K denote
a block identifier. With this block identifier, the server can the number of sub-keywords, documents and keywords
access the corresponding block in the list associated with a respectively. Khons supports parallel query which is more
document and get its value (the encrypted document identi- efficient when performing full query. Because the server
fier and keyword). Then, the server returns all the can get the pointer information of head block of each parti-
encrypted information to the client. The client finally tion by retrieving the list Lw .
decrypts them, removes the element whose keyword is not The computation complexities in Khons are Oðnw Þ and
w and downloads the documents from the server. The Oð1Þ in Search and Update process respectively, where nw
remove operation is caused by the immediate deletion of is the size of the search result set matching keyword w. And
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
468 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 18, NO. 1, JANUARY/FEBRUARY 2021
the communication complexities in Khons are also Oðnw Þ Game G1 . In G1 , we pick random strings as identifiers
and Oð1Þ in Search and Update process respectively. Khons in Update protocol instead of calling H1 to generate a
achieves backward privacy with two round trips. new encryption key. The algorithm of G1 is described in
In Search operation, each partition which has been que- Fig. 4. In Search protocol, the random oracle H2 is pro-
ried will be updated so that there is no sub-keyword will be grammed so that H2 ðkey; idÞ ¼ mask. Note that in G1 ,
repeatedly queried. Except that, the number of elements in the generation of key is as same as in G0 , so that mask
each partition is the same, which prevents the server from can be treated as a random string. For convenience, we
identifying sub-keyword by the number of elements con- ignore the generation and application of tail block in G1 .
tained in the partition. We remove the code which is useless with the security
Adaptive Security. Khons is the first forward search pri- analysis. Furthermore, compared with G0 , we do not con-
vacy SSE scheme with partial pattern when. It can also sider the reuse of blocks and the partition mechanism in
achieve weak backward privacy as the server learns when G1 . Hence, we have
the deletions occurred. The adaptive security of Khons is
proven in Theorem 1. Pr½G0 ¼ 1 Pr½G1 ¼ 1 ¼ 0:
0
Theorem 1. Let denotes the security parameter. Assume L is Game G2 . In G2 , the same argument of H2 can be
Update
stateless. Define LKhon ¼ ðLSearch
Khon ; LKhon Þ, where reused. Thus the only difference between G1 and G2 is
0
H2 . Hence, we have
LUpdate
Khon ðop; w; indÞ ¼ L ðop; wÞ;
00 Pr½G1 ¼ 1 Pr½G2 ¼ 1 ¼ 0:
Khon ðwÞ ¼ L ðspðwÞ; TimeDBðwÞ; UpdatesðwÞÞ;
LSearch
Game G3 . In G3 , the same argument of H3 can be
Then Khons is LK adaptivelysecure with forward reused. Thus the only difference between G2 and G3 is
update privacy and backward privacy(BP-II). H. Hence, we have
Proof. We derive some games from real world game to
Pr½G2 ¼ 1 Pr½G3 ¼ 1 ¼ 0:
prove the theorem.
Game G0 . G0 is the real world SSE security game SSER- Simulator. The algorithm of simulator is shown in
EAL. That is to say,
Fig. 5 and the leakage function is LKhons . We generate a
new block whose identifier is picked randomly
Pr½SSERealKhons
A ðÞ ¼ 1 ¼ Pr½G0 ¼ 1:
when performing update operation. When performing
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
LI ET AL.: SEARCHABLE SYMMETRIC ENCRYPTION WITH FORWARD SEARCH PRIVACY 469
Khons:UpdateðaddÞ, we use the random oracle and store security analysis of Khons-f is similar to Khons, so that
the relationship between timestamp u and document we will not repeat the analysis.
identifier in table Update. Therefore, when perform
Khons:UpdateðdeleteÞ, simulator can get the document Algorithm 5. Khons.Search( w; s; EDB)
identifier through Update. Hence, we have
Client:
1: ðkeyw ; nump Þ ðMb ½w:key; Mb ½w:nump Þ
Pr½G3 ¼ 1 Pr½SSEIdealKhons
A;S;LKhons ðÞ ¼ 1 ¼ 0: 2: wi Hðkeyh ; wknump Þ
3: ðid; keyÞ ðMb ½wi :id; Mb ½wi :keyÞ
Conclusion. By combining all the contributions from all 4: Mb ½wi :flag true
the games, there exists an adversary A such that 5: Send token ðid; key; keyw Þ to the server.
jPr½SSERealKhons
A ðÞ¼1 Pr½SSEIdealKhons
A;S;LKhons ðÞ¼1j
Server:
6: S empty set, j 0
Advprf
F;A ðÞ: 7: REPEAT
8: b D½id
We conclude that the probability of result is negl() by 9: mask2 H2 ðkey; idÞ
assuming that PRF is secure. u
t 10: b:value b:value mask2
11: S ¼ S [ D½b:idf
12: ðid; keyÞ ðb:idb ; b:keyÞ
6 KHONS-F: SSE SCHEME SUPPORTING
13: IF (key ¼ ? )
FULL QUERY 14: IF ( keyw ¼ ? ) id ?
To support full query, we propose a forward security SSE 15: ELSE b D½id
scheme named Khons-f. It satisfies backward privacy(BP- 16: mask3 H3 ðkeyw ; wÞ
II). The Setup and Update operation in Khons-f is almost 17: b :value b :value mask3
as the same as Khons, so that we will not repeat these 18: ðid; key; keyw Þ ðb :id; b :key; b :keyw Þ
algorithms. The only difference between Khons-f and 19: UNTIL (id ¼?)
Khons is Search operation, which is shown in Algorithm 5. 20: Send S to the Client.
In Khons-f, we leverage tail blocks to link all elements
in Lwi . As mentioned before, the tail block in Lwi stores the Client:
21: S DecryptKs ðSÞ
id and key of head block in Lwi and key of the tail block
of Lwi 1 . To perform full query, the client issues token =
(Mb ½wnump :id, Mb ½wnump :key, Mb ½w:keyw ). The server can
trace all Lwi in order of Lnump to L0 . First, the server retrieves 7 APPLICATIONS
the blocks in Lnump one after another. Second, the tail block As a special type of SSE, Khons can be applied to typical
of Lnump can be retrieved to get the pointer information of ciphertext retrieval scenarios to reduce information leakage
the head block and the encryption key of the tail block in or improve the efficiency.
Lnump1 . Therefore, the server can continue to retrieve all the Build Secure Encrypted Applications. The two most popular
blocks in Lnump1 . And so on in a similar fashion, all the ele- applications supporting keyword search are mail system
ments belong to keyword w can be sent to the client. The and cloud storage system. In encrypted mail system (such
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
470 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 18, NO. 1, JANUARY/FEBRUARY 2021
TABLE 2 TABLE 3
Dataset Overall Comparison with Creation using Enron Dataset
Small dataset Large dataset Implementation Time(s) Pairs per sec(s) storage(MB)
name Enron email wikipedia-20150602 Client Server
tar.gz file size 0.432 GB 11.9 GB Khons 406 85,000 11 3,418
key-value pair number 34510k 445505k Fides 39,653 870 16 803
file number 517k 5078k Dual 469 73,582 11 2,352
key number 20k 70k
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
LI ET AL.: SEARCHABLE SYMMETRIC ENCRYPTION WITH FORWARD SEARCH PRIVACY 471
TABLE 4
Comparison of Main Operations Per Search
cryptographic database
computation operation
T H F E insert delete update
Fides 1aw 3aw aw aw aw nw 0
Dual - 5aw - 1aw 2aw 2aw 0
Khons - 1aw aw 2aw 0 0 0
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
472 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 18, NO. 1, JANUARY/FEBRUARY 2021
9 CONCLUSIONS
In this paper, we proposed the notion “forward search
privacy”, which ensures search operation over newly added
Fig. 10. Comparison with search time on RocksDB (Small Dataset).
documents doesn’t leak the past query information. To
achieve this security goal, we developed the new forward
experiments, we chose RocksDB as storage structure and set private technique, hidden pointer technique (HPT). Finally,
the maximum number of documents in a partition to 20, we constructed the Khons scheme achieving both forward
which is reasonable in applications supporting pagination search privacy and backward privacy. Experiment results
query. show that Khons is efficient and practical.
Khons can support partial query, but the application sce-
narios of our solutions may be relatively limited. And our
8.5.1 EDB Creation scheme can only achieve weak forward search security.
The average throughput of each scheme is close to the per- How to achieve strong forward search security can be our
formance testing on small datasets. Through experiments, key point in the future work.
we report that the update throughput of Khons is around
83,500 keyword-document pairs per second in average. ACKNOWLEDGMENTS
Dual is around 73,000 keyword-document pairs per second
and Fides is around 920 keyword-document pairs per This work was supported by National Natural Science
second. Foundation Projects (No. 61472091, No. 61672300), for Out-
standing Youth Foundation (No. 61722203), Guangzhou
scholars project for universities of Guangzhou (No.
8.5.2 EDB Search 1201561613) and National Natural Science Foundation of
From Fig. 11, we can conclude that Khons is at least 3× faster Tianjin (No. 16JCYBJC15500).
than Dual [25] and 2× faster than Fides [24] for the cases of
medium and large result set. For the case of small result set, REFERENCES
however, it is slower than Dual [25] and Fides [24].
[1] CipherCloud, “Cloud data encryption”, [Online]. Available:
In these experiments, we mainly take two factors into https://www.ciphercloud.com/encryption
considerations: storage accesses and cryptographic com- [2] M. Bellare, A. Boldyreva, and A. O’Neill, “Deterministic and effi-
putation. For the first, because it is impossible to load full ciently searchable encryption,” in Proc. 27th Annu. Int. Cryptology
EDB in the case of the large dataset, accessing data on dif- Conf. Advances Cryptology, 2007, pp. 535–552.
[3] S. Tu, M. F. Kaashoek, S. Madden, and N. Zeldovich, “Processing
ferent hierarchies of memory is unavoidable and becomes analytical queries over encrypted data,” Proc. VLDB Endowment,
a bottleneck. Furthermore, since SSE is not optimized for vol. 6, no. 5, pp. 289–300, 2013.
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
LI ET AL.: SEARCHABLE SYMMETRIC ENCRYPTION WITH FORWARD SEARCH PRIVACY 473
[4] R. A. Popa, C. Redfield, N. Zeldovich, and H. Balakrishnan, [28] D. S. Roche, A. Aviv, and S. G. Choi, “A practical oblivious map
“CryptDB: Protecting confidentiality with encrypted query proc- data structure with secure deletion and history independence,” in
essing,” in Proc. 23rd ACM Symp. Operating Syst. Principles, 2011, Proc. IEEE Symp. Secur. Privacy, 2016, pp. 178–197.
pp. 85–100. [29] M. Naveed, S. Kamara, and C. V. Wright, “Inference attacks on
[5] S. Faber, S. Jarecki, H. Krawczyk, N. Quan, M. Rosu, and M. Steiner, property-preserving encrypted databases,” in Proc. ACM SIGSAC
“Rich queries on encrypted data: Beyond exact matches,” in Proc. Conf. Comput. Commun. Secur., 2015, pp. 644–655.
20th Eur. Symp. Res. Comput. Secur., 2015, pp. 123–145. [30] J. Katz and Y. Lindell, Introduction to Modern Cryptography. Boca
[6] D. Cash, J. Jaeger, S. Jarecki, C. S. Jutla, H. Krawczyk, M. C. Rosu, Raton, FL, USA: Chapman & Hall/CRC, 2008.
and M. Steiner, “Dynamic searchable encryption in very-large [31] Google.2011.cpp-btree, [Online]. Available: https://code.google.
databases: Data structures and implementation,” in Proc. Netw. com/arch-ive/p/cpp-btree/
Distrib. Syst. Secur. Symp., 2014, pp. 23–26. [32] Enron Email Dataset, [Online]. Available: https://www.cs.cmu.
[7] I. Demertzis, D. Papadopoulos, and C. Papamanthou, “Searchable edu/enron
encryption with optimal locality: Achieving sublogarithmic read [33] Wikimedia Foundation, [Online]. Available: https://dumps.
efficiency,” in Proc. Annu. Int. Cryptology Conf. Advances Cryptol- wikimedia.org
ogy, 2018, pp. 371–406. [34] S Navathe, “Vertical partitioning algorithms for database design,”
[8] W. He, D. Akhawe, S. Jain, E. Shi, and D. Song, “ShadowCrypt: ACM Trans. Database Syst., vol. 9, no. 4, pp. 680–710, 1984.
Encrypted web applications for everyone,” in Proc. ACM SIGSAC [35] C. Curino, E. Jones, Y. Zhang, and S. Madden, “Schism: A work-
Conf. Comput. Commun. Secur., 2014, pp. 1028–1039. load-driven approach to database replication and partitioning,”
[9] R. Li and A. X. Liu, “Adaptively secure conjunctive query process- Proc. VLDB Endowment, vol. 3, no. 1, pp. 48–57, 2010.
ing over encrypted data for cloud computing,” in Proc. IEEE 33rd [36] M. Stonebraker, A. Aboulnaga, A. Pavlo, A. J. Elamore, R. Taft,
Int. Conf. Data Eng., 2017, pp. 697–708. and M. Serafini, “Clay: Fine-grained adaptive partitioning for gen-
[10] S. Garg, P. Mohassel, and C. Papamanthou, “TWORAM: Efficient eral database schemas,” Proc. VLDB Endowment, vol. 10, no. 4,
oblivious RAM in two rounds with applications to searchable pp. 445–456, 2016.
encryption,” in Proc. 36th Annu. Int. Cryptology Conf. Advances [37] Y. Lu, A. Shanbhag, A. Jindal, and S. Madden, “AdaptDB: Adap-
Cryptology, 2016, pp. 563–592. tive partitioning for distributed joins,” Proc. VLDB Endowment,
[11] D. X. Song, D. Wagner, and A. Perrig, “Practical techniques for vol. 10, no. 5, pp. 589–600, 2017.
searches on encrypted data,” in Proc. IEEE Symp. Secur. Privacy, [38] Q. Wang, M. He, M. Du, S. Chow, R. Lai, and Q. Zou, “Searchable
2000, pp. 44–55. encryption over feature-rich data,” IEEE Trans. Depend. Sec. Com-
[12] I. Demertzis, S. Papadopoulos, O. Papapetrou, A. Deligiannakis, put., vol. 15, no. 3, pp. 496–510, May/Jun. 2018.
and M. Garofalakis, “Practical private range search revisited,” in [39] M. Du, Q. Wang, M. He, and J. Weng, “Privacy-preserving index-
Proc. Int. Conf. Manage. Data, 2016, pp. 185–198. ing and query processing for secure dynamic cloud storage,”
[13] E. Stefanov, C. Papamanthou, and E. Shi, “Practical dynamic IEEE Trans. Inf. Forensics Secur., vol. 13, no. 9, pp. 2320–2332, Sep.
searchable encryption with small leakage,” in Proc. Netw. Distrib. 2018.
Syst. Secur. Symp., 2014, pp. 72–75.
[14] M. S. Islam, M. Kuzu, and M. Kantarcioglu, “Access pattern dis- Jin Li received the BS degree in mathematics
closure on searchable encryption: Ramification, attack and miti- from Southwest University, 2002, the MS degree
gation,” in Proc. Netw. Distrib. Syst. Secur. Symp., 2012, pp. 12–27. in mathematics from Sun Yat-sen University,
[15] D. Cash, P. Grubbs, J. Perry, and T. Ristenpart, “Leakage-abuse 2004, and the PhD degree in information security
attacks against searchable encryption,” in Proc. ACM SIGSAC from Sun Yat-sen University, 2007. He is cur-
Conf. Comput. Commun. Secur., 2015, pp. 668–679. rently a professor and vice dean of School of
[16] Y. Zhang, J. Katz, and C. Papamanthou, “All your queries are belong Computer Science, Guangzhou University. His
to us: The power of file-injection attacks on searchable encryption,” research interests include design of secure proto-
in Proc. 25th USENIX Conf. Secur. Symp., 2016, pp. 707–720. cols in cloud computing and cryptographic proto-
[17] G. Kellaris, G. Kollios, K. Nissim, and A. O’Neill, “Generic attacks cols. He has published more than 100 papers in
on secure outsourced databases,” in Proc. ACM SIGSAC Conf. international conferences and journals, including
Comput. Commun. Secur., 2016, pp. 1329–1340. IEEE INFOCOM, IEEE TIFS, IEEE TPDS, IEEE TOC and ESORICS
[18] L. Ren, C. Fletcher, A. Kwon, E. Stefanov, E. Shi, M. V. Dijk, and etc. His work has been cited more than 10000 times at Google Scholar
S. Devadas, “Constants count: Practical improvements to oblivious and the H-Index is 34. He also served as program chairs and committee
RAM,” in Proc. 24th USENIX Conf. Secur. Symp., 2015, pp. 415–430. for many international conferences. He received NSFC Outstanding
[19] X. Wang, H. Chan, and E. Shi, “Circuit ORAM: On tightness of the Youth Foundation in 2017.
goldreich-ostrovsky lower bound,” in Proc. ACM SIGSAC Conf.
Comput. Commun. Secur., 2015, pp. 850–861.
[20] R. Bost, “Sofo&forward secure searchable encryption,” in Proc. Yanyu Huang received the bachelor’s degree of
ACM SIGSAC Conf. Comput. Commun. Secur., 2016, pp. 1143–1154. information security from the China University of
[21] S. Kamara, C. Papamanthou, and T. Roeder, “Dynamic searchable Geosciences, Wuhan, China, in 2016. Currently,
symmetric encryption,” in Proc. ACM SIGSAC Conf. Comput. Com- she is working toward the doctor degree in com-
mun. Secur., 2012, pp. 965–976. puter science at Nankai University. Her research
[22] K. Kurosawa and Y. Ohtaki, “UC-secure searchable symmetric interests include applied cryptography, data pri-
encryption,” in Proc. Int. Conf. Financial Cryptography Data Secur., vacy protection.
2012, pp. 285–298.
[23] M. Naveed, M. Prabhakaran, and C. A. Gunter, “Dynamic search-
able encryption via blind storage,” in Proc. IEEE Symp. Secur. Pri-
vacy, 2014, pp. 639–654.
[24] R. Bost, B. Minaudy, and O. Ohrimenko, “Forward and backward
private searchable encryption from constrained cryptographic Yu Wei received the bachelor’s degree of infor-
primitives,” in Proc. ACM SIGSAC Conf. Comput. Commun. Secur., mation security and law from Nankai University,
2017, pp. 1465–1482. Tianjin, China, in 2018. Currently, he is working
[25] K. S. Kim, M. Kim, D. Lee, J. H. Park, and W. H. Kim, “Forward toward the master’s degree in computer science at
secure dynamic searchable symmetric encryption with efficient Nankai University. His research interests include
updates,” in Proc. ACM SIGSAC Conf. Comput. Commun. Secur., applied cryptography, data privacy protection.
2017, pp. 1449–1463.
[26] O. Goldreich, S. Goldwasser, and S. Micali, “How to construct
random functions (extended abstract),” in Proc. Annu. Symp.
Found. Comput. Sci., 1984, pp. 464–479.
[27] X. S. Wang, K. Nayak, C. Liu, T. H. Chan, E. Shi, E. Stefanov, and
Y. Huang, “Oblivious data structures,” in Proc. ACM SIGSAC
Conf. Comput. Commun. Secur., 2014, pp. 215–226.
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.
474 IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, VOL. 18, NO. 1, JANUARY/FEBRUARY 2021
Siyi Lv received the bachelor’s degree of infor- Wenjing Lou received the PhD degree in Electri-
mation security and law from Nankai University, cal and Computer Engineering from the Univer-
Tianjin, China, in 2016. Currently, she is working sity of Florida. She joined the Electrical and
toward the master’s degree in computer science Computer Engineering Department at Worcester
at Nankai University. Her research interests Polytechnic Institute as an assistant professor, in
include applied cryptography, data privacy pro- 2003, where she was promoted to associate pro-
tection. fessor with tenure, in 2009. In 2011, she joined
the Computer Science Department at Virginia
Tech as an associate professor with tenure. Her
current research interests are in the area of cyber
security, with emphases on wireless network
security, security and privacy in cloud computing and cyber physical sys-
Zheli Liu received the BSc and MSc degrees in tems. She is also interested in network protocols. She is currently serv-
computer science from Jilin University, China, in ing on the editorial board of five journals: the IEEE Transactions on
2002 and 2005, respectively, and the PhD degree Wireless Communications, the IEEE Transactions on Smart Grid, the
in computer application from Jilin University, in IEEE Wireless Communications Letter, the Elsevier Computer Net-
2009. After a postdoctoral fellowship in Nankai works, and the Springer Wireless Networks. She has served as TPC co-
University, he joined the College of Cyber Sci- chair for the security symposium of several leading IEEE conferences,
ence of Nankai University, in 2011. Currently, he including General Symposium at IEEE Globecom 2007, Network Secu-
works at Nankai University as a associate profes- rity and Privacy Track at IEEE ICCCN 2009, Security Symposium at
sor. His current research interests include applied IEEE ICC 2010, Security and Localization Track at IEEE PIMRC 2011,
cryptography and data privacy protection. and Security Symposium at IEEE Globecom 2012. She serves as TPC
member regularly for many premier IEEE and ACM conferences. She
was named Joseph Samuel Satin Distinguished fellow in 2006 by WPI.
Changyu Dong received the PhD degree from She was a recipient of the U.S. National Science Foundation Faculty
Imperial College London. He is currently a senior Early Career Development (CAREER) award in 2008. She received the
lecturer with the School of Computing, Newcastle Sigma Xi Junior Faculty Research Award at WPI in 2009. She is a fellow
University. He has authored more than 30 publica- of the IEEE.
tions in international journals and conferences.
His research interests include applied cryptogra-
phy, trust management, data privacy, and security
policies. His recent work focuses mostly on " For more information on this or any other computing topic,
designing practical secure computation protocols.
please visit our Digital Library at www.computer.org/csdl.
The application domains include secure cloud
computing and privacy preserving data mining.
Authorized licensed use limited to: Monash University. Downloaded on March 15,2023 at 08:57:04 UTC from IEEE Xplore. Restrictions apply.