<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>The Italian Conference on CyberSecurity, May</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>How (Not) to Index Order Revealing Encrypted Databases</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Luca Ferretti</string-name>
          <email>luca.ferretti@unimore.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mattia Trabucco</string-name>
          <email>mattia.trabucco@unimore.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mauro Andreolini</string-name>
          <email>mauro.andreolini@unimore.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mirco Marchetti</string-name>
          <email>mirco.marchetti@unimore.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Modena and Reggio Emilia, Department of Engineering “Enzo Ferrari”</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Modena and Reggio Emilia, Department of Physics</institution>
          ,
          <addr-line>Informatics, Mathematics</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2023</year>
      </pub-date>
      <volume>0</volume>
      <fpage>3</fpage>
      <lpage>05</lpage>
      <abstract>
        <p>Order Reveling Encryption (ORE) enables eficient range queries on encrypted databases, but may leak information that could be exploited by inference attacks. State-of-the-art ORE schemes claim diferent security guarantees depending on the adversary attack surface. Intuitively, online adversaries who access the database server at runtime may access information leakage; ofline adversaries who access only a snapshot of the database data should not be able to gain useful information. We focus on ofline security of the ORE scheme proposed by Lewi and Wu (LW-ORE, CCS 2016), which guarantees semantic security of ciphertexts stored in the database, but requires that ciphertexts are maintained sorted with regard to the corresponding plaintexts to support sublinear time queries. The design of LW-ORE does not discuss how to build indexing data structures to maintain sorting. The risk is that practitioners consider indexes as a technicality whose design does not afect security. We show that indexes can afect ofline security of LW-ORE because they may leak duplicate plaintext values, and statistical information on plaintexts distribution and on transactions history. As a real-world demonstration, we found two open source implementations related to academic research (JISA 2018, VLDB 2019), and both adopt standard search trees which may introduce such vulnerabilities. We discuss necessary conditions for indexing data structures to be secure for ORE databases, and we outline practical solutions. Our analyses could represent an insightful lesson in the context of security failures due to gaps between theoretical modeling and actual implementation, and may also apply to other cryptographic techniques for securing outsourced databases.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Encrypted Database</kwd>
        <kwd>Order Revealing Encryption</kwd>
        <kwd>Property Preserving Encryption</kwd>
        <kwd>Secure Indexes</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Standard encryption solutions for databases protect data at rest [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], but require database
servers to decrypt data at runtime to execute queries. Two decades ago, research began
investigating how to encrypt data in use to execute database queries without decrypting
data at the server side, such that only (trusted) clients which possess secret keys only
decrypt queries results [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. First motivated by the advent of database outsourcing and
then by public Cloud computing services, encryption of data in use would increase data
privacy against potentially curious service providers [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Nowadays, encryption of data in
use is also relevant for improving security of on-premise solutions in case of data breaches
caused by cyber attacks that subvert the database systems or software applications
running on top of them [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        Research eforts for encryption of data in use include multifold approaches [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], such as
new cryptographic primitives and schemes [
        <xref ref-type="bibr" rid="ref6 ref7 ref8">6, 7, 8</xref>
        ], techniques for aggregating and
indexing encrypted data for eficient confidential retrieval [
        <xref ref-type="bibr" rid="ref10 ref2 ref9">2, 9, 10</xref>
        ], key management strategies
to support cryptographic access control [
        <xref ref-type="bibr" rid="ref11 ref12">11, 12</xref>
        ], and data distribution strategies based
on secret sharing techniques [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Practitioners, including researchers and companies,
are proposing implementations which combine a mixture of techniques and additional
specialized strategies for supporting specific database environments and improving
performance for popular workloads [
        <xref ref-type="bibr" rid="ref14 ref15 ref16">14, 15, 16</xref>
        ]. Parallel research eforts focus on analyzing
security, and include novel attack techniques such as inference of statistical information,
correlation among multiple data, and analyses of query patterns [
        <xref ref-type="bibr" rid="ref17 ref18 ref19 ref20 ref21 ref22 ref23">17, 18, 19, 20, 21, 22, 23</xref>
        ].
Alternative proposals rely on trusted enclave technologies for fully fledged computation,
which theoretically achieve better performance and flexibility [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], but in practice showed
to sufer from side-channel attacks [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ].
      </p>
      <p>
        We are interested in Property Preserving Encryption (PPE) [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ], which is a family
of cryptographic schemes where ciphertexts support the evaluation of some properties
related to their corresponding plaintexts, at the cost of exposing “limited” information
leakage, such as the result of the evaluation and potentially additional information that
is specific for each scheme. The advantage over homomorphic encryption [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], which
produces ciphertexts supporting the execution of computation while guaranteeing at least
semantic (IND-CPA) security, is enabling practical performance even for quite complex
properties. The disadvantage is that information leakage may allow practical attacks on
encrypted data, which may also depend on the characteristics of the datasets [
        <xref ref-type="bibr" rid="ref19 ref20">19, 20</xref>
        ]
and on query workloads [
        <xref ref-type="bibr" rid="ref18 ref23">18, 23</xref>
        ]. Thus, PPE should be carefully adopted or considered
as a hardening technique that should not be relied upon as a first defense layer.
      </p>
      <p>
        We focus on Order Revealing Encryption (ORE) [
        <xref ref-type="bibr" rid="ref27 ref28 ref8">27, 28, 8</xref>
        ], which denotes a family of
PPE schemes specialized on comparison of numerical data (e.g., “greater than” operators),
with consequential support for other derived operations of great interest for many database
workloads, such as sorting and substring prefix/sufix match. We analyze the ORE scheme
proposed by Lewi and Wu (LW-ORE) [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], which is one of the most important schemes
due to good security-performance trade-ofs. The peculiar trait of LW-ORE is to include
two types of encryption functions denoted as right encryption and left encryption, each
generating a diferent type of ciphertext from the same plaintext: semantically-secure right
ciphertexts which are stored in the encrypted database, and deterministic left ciphertexts
which are sent when querying the database. LW-ORE uses an evaluation function that
compares left and right ciphertexts and output the result (e.g., 0 or 1 if the plaintext
used to generate the left ciphertext is equal or greater than that used to generate the
right ciphertext). This approach allows to distinguish information leakage against two
security models: ofline security , where adversaries only access a snapshot of the database
including right ciphertexts, and online security, where adversaries also access queries
including left ciphertexts. While an ofline attacker should not learn any information
(except for the size of the database and of each plaintext) because right ciphertexts are
semantically (IND-CPA) secure, an online attacker could get more information because
left ciphertexts are deterministic.
      </p>
      <p>
        In this paper, we reconsider ofline security of LW-ORE when deployed in real database
systems. Although right ciphertexts are proved semantically secure, they have to be
maintained sorted to enable sublinear query times via binary search. However, LW-ORE
does not describe indexing data structures or other mechanisms. Thus, the scheme can be
straightforwardly applied only to a handful of use cases or should be adopted with only
support for linear time queries. In any other scenario, LW-ORE must be integrated with
indexing data structures, and the risk is to consider this integration a technicality, that is,
something that cannot afect the original security guarantees of the scheme. As already
experienced many times in applied cryptography and cryptographic engineering, details
left open in theoretical designs may open to security vulnerabilities when implemented in
real systems. We found relevant literature associated with open source implementations
of LW-ORE that indeed adopt standard database indexing techniques based on AVL
trees [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] and B+trees [30]. We also found an additional open implementation of the
client-side LW-ORE, which however do not describe indexing techniques at the server
side [31].
      </p>
      <p>In this paper, we show that using standard indexing techniques for ORE may introduce
at least two classes of vulnerabilities:
• the first class of vulnerability is the simpler but also the most severe, and is related
to the disclosure of duplicate values: standard indexes store pointers to all duplicate
values within the same data structure node, thus ofline security guarantees of
the encrypted database fall back to that of a deterministic encryption scheme,
reenabling powerful inference attacks. This vulnerability thus breaks one of the major
contributions of LW-ORE, that is, of guaranteeing semantic security of ciphertexts.
Ad-hoc variants of standard indexing techniques must be implemented to avoid
storing duplicate value within the same data structure node while maintaining the
data structure eficient.
• the second class of vulnerability is related to the disclosure of information regarding
the history of the transactions executed on the database. This vulnerability may
also cause disclosure of information related to the plaintext distribution if such
distribution is not independent of the insertion order (or on derived information,
such as insertion time). This requirement has been outlined by literature which
denote as history independent the data structure that do not leak any information
about the transactions history that generated the data structure [32, 33]. However,
to the best of our knowledge, it is not considered by literature related to database
outsourcing and PPE.</p>
      <p>The two classes of vulnerabilities may not apply depending on the characteristics of
the database and of the query workload, but protecting against both may require the
design of ad-hoc indexing data structures. The last contribution of the paper is to outline
such design, leaving further analyses and evaluations as future work.</p>
      <p>The rest of the paper is organized as follows. Section 2 outlines ORE schemes and
databases. Section 3 discusses possible information leakage due indexing data structures.
Section 4 outlines necessary design choices for secure indexes on ORE databases. Section 5
concludes the paper and discusses future work.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Analysis of Order Revealing Encryption</title>
      <p>
        The Order Revealing Encryption scheme by Lewi and Wu [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] (LW-ORE) is a symmetric
encryption scheme for supporting comparison between encrypted data. First, we describe
the operations framework of LW-ORE and outline the range query protocol built on top
of it as defined in the original paper [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Then, we discuss the limitations of the original
models for real database systems and outline better variants.
      </p>
      <p>LW-ORE scheme operations framework. The LW-ORE scheme includes four
algorithms: setup (ORE.Setup), left encrypt (ORE.EncryptL), right encrypt (ORE.EncryptR),
and compare (ORE.Compare):
• sk $ ORE.Setup(1 ) is a probabilistic algorithm which takes security parameter 1
and outputs secret key sk;
• cL ORE.EncryptL(sk; p) is a deterministic algorithm which takes key sk and
plaintext p and outputs left ciphertext cL;
• cR $ ORE.EncryptR(sk; p) is a probabilistic algorithm which takes key sk and
plaintext p and outputs right ciphertext cR;
• f 1; 0; 1g ORE.Compare(c1L; c2R) is a deterministic algorithm which takes left and
right ciphertexts c1L and c2R, and outputs 1, 0, 1 if p1 is less then, equal, or greater
than p2, where c1L ORE.EncryptL(sk; p1) and c2R $ ORE.EncryptR(sk; p2), for any
sk $ ORE.Setup(1 ).</p>
      <p>LW-ORE does not expose a native decryption routine, but decryption can be implemented
as a binary search over the plaintext domain via encryption and compare (see [8, Remark
2.1]). In the context of encrypted databases, ORE ciphertexts can be associated with
ciphertexts computed with any standard symmetric schemes to enable more eficient
decryption.</p>
      <p>LW-ORE range query protocol for encrypted databases. LW-ORE scheme allows
designing a stateless and single round Range Query protocol (RQ) [8, Section 5.2] among
a client and a database server that includes four operations: database setup (RQ.Setup),
range query (RQ.Range), insert (RQ.Insert), and delete (RQ.Delete). Without loss of
generality, in this paper we omit delete to avoid too much verbosity.</p>
      <p>
        • st $ RQ.Setup(1 ; P ): the client initializes ORE secret key sk $ ORE.Setup(1 ),
sorts the database P as P^ = hp1; : : : ; pN i such that pn pn+1 8n 2
[N 1], and encrypts the sorted database P^ as C^ = c1R; : : : ; cRN such that
cnR $ ORE.EncryptR(sk; pn) 8n 2 [N ]. The client sends C^ to the server, which
sets its state information st = C^.
• hpi; : : : ; pj i RQ.Range(sk; q = (x; y); st = C^): the client computes the tuple
cLx; cyL such that cLx ORE.EncryptL(sk; x) and cyL ORE.EncryptL(sk; y), and
sends it to the server. The server uses cLx (cyL) to find ciR (cjR) within C^ such that i (j)
is the smallest (greatest) index of C^ = cnR n2[N] such that ORE.Compare(cLx; ciR) =
1 (ORE.Compare(cyL; cjR) = 1). As suggested in the original protocol [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], the server
can use binary search to compute a number of ORE.Compare operations that is
logarithmic in the size of the database N . The server then returns the slice of
values within C^ between DciR; : : : ; cjRE, which the client can decrypt to hpi; : : : ; pj i.
• st0 $ RQ.Insert(sk; q = x; st = C^): the client computes the tuple cLx; cxR such
that cLx ORE.EncryptL(sk; x) and cxR $ ORE.EncryptR(sk; x), and sends it to the
server. The server uses cLx to find an insertion position i within C^ such that
ORE.Compare(cLx; ciR) = f 1 _ 0g and ORE.Compare(cLx; ciR+1) = f0 _ 1g (or i = N ).
As for RQ.Range, binary search can be used to compute a logarithmic number
of ORE.Compare operations. Then, the server inserts cxR at the position i within
the updated database C^0. The server updates its state to st0 as the new database
C^0. Clearly, there may be multiple acceptable values of i if the database includes
duplicate values.
      </p>
      <p>
        Limitations of LW-ORE models. The LW-ORE range query protocol models the
encrypted database as state information st = C^ = c1R; : : : ; cRN , which represents the
list of right ciphertexts sorted with regard to their corresponding plaintexts, that is,
pn pn+1 8n 2 [N 1]. The LW-ORE query protocol assumes that the database server
maintains the state information sorted throughout insert operations and thus that binary
search can always be executed on st (see [8, Section 5.2]). Moreover, the original paper
claims semantic security against snapshot ofline adversaries because right ciphertexts are
semantically secure (see [8, Definition 5.2, Theorem 5.5]). We observe that the database
model and security analyses proposed in the original LW-ORE paper have two major
limitations:
• claims about semantic security against snapshot ofline adversaries do not take
into account that although right ciphertexts are semantically secure, the encrypted
database also leaks the partial sorting order with regard their corresponding
plaintexts. It is critical to clearly declare this additional leakage because it may
open to known attacks (e.g., correlation attacks on ideal ORE [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]). Ofline security
analyses as proposed in the original paper [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] may apply only if right ciphertexts are
maintained unsorted and thus queried in linear time. Although we point out this
gap in the original security claims, in this paper we do not propose improvements
in this regard because we do not focus on theoretical security analyses. We leave
improvements in this regard as future work.
• the database model does not include indexing data structures, which represent
auxiliary information that is necessary for adopting the scheme in quite any real
database system. As also stated by [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], a snapshot ofline adversary that operates
ciphertext-only inference attacks is able to access to the “steady state” of an
encrypted database including all auxiliary information that is needed to perform
encrypted searches eficiently (as also reminded in [ 8, see Robustness against ofline
inference attacks]). Thus, a proper database model should also include indexing
data structures. Indeed, real-world examples of tentative LW-ORE implementations
adopted standard indexing techniques, such as AVL trees [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] and B+trees [30].
However, we show that both implementations leak additional information with
regard to the security claims of the LW-ORE scheme. In the following Section 3,
we show necessary conditions for designing secure indexing data structures for
LW-ORE, that is, that allow to avoid leaking additional information.
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Information leakage of standard indexes</title>
      <p>
        We analyze indexing solutions for LW-ORE databases. In Section 3.1 we extend notation
proposed by the original LW-ORE paper (see Section 2 and [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]). In Section 3.2 we discuss
information leakage due to duplicate values. In Section 3.3 we discuss information leakage
related to transaction history.
      </p>
      <sec id="sec-3-1">
        <title>3.1. LW-ORE document databases with indexes</title>
        <p>We extend notation of the original LW-ORE range query protocol (see Section 2) to
propose a model that could fit an indexed document-oriented database encrypted with
LW-ORE. To this aim, we model the database state information as st = hD; Ii. We denote
as D = fid : didg the set of documents possibly encrypted via a standard symmetric
scheme, where did denotes a document uniquely indexed by an opaque document identifier
id. We denote as I = ; fcRg; fidg the indexing data structure that enables eficient
range queries on documents D. The links of the indexing data structure are denoted as
, the keys used to evaluate queries are the right ciphertexts fcRg, and the pointers to
the documents are document identifiers fidg.</p>
        <p>We analyze how an adversary may try to obtain information from the state of the
database. Since both documents fdidg and right ciphertexts are encrypted with
semantically secure schemes, an adversary cannot infer any information except possibly for
their size and number. Moreover, we assume that document identifiers do not reveal
any information (e.g., they are random strings). However, an adversary may try to gain
information from the data structure . We note that the original paper of LW-ORE did
not clearly model this information (see Section 2). In the remaining of the section, we
consider diferent kinds of popular data structures and analyze their security guarantees.</p>
        <p>----</p>
        <p>------</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Leakage related to duplicate values</title>
        <p>
          One of the main benefits of LW-ORE is to store semantically secure right ciphertexts
within the database (see Section 2). However, the typical design choice of any indexing
data structure is to store all pointers to duplicate database values within the same node
to improve query performance and to reduce the index size. The result is that applying
standard indexes to LW-ORE leaks duplicate values within the database, and thus the
security guarantees of LW-ORE fall back to those of a deterministic encryption scheme,
possibly re-enabling related inference attacks [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ].
        </p>
        <p>
          To better explain this class of vulnerability, we consider an example based on an AVL
tree used as the indexing data structure for a LW-ORE database, which represents the
implementation of [
          <xref ref-type="bibr" rid="ref29">29</xref>
          ]. We remind that each node of an AVL tree includes a key that
is used for traversing the tree, one or multiple pointers to all the documents within the
database associated with the key, and points to a maximum of two children nodes. The
association of multiple pointers to the same key is not an issue for unencrypted databases,
but introduces information leakage about documents sharing the same key values.
        </p>
        <p>A visual example of an AVL tree instantiated for LW-ORE is shown in Figure 1.
Recalling notation described in Section 3.1, the keys are right ciphertexts fc1R; : : : ; c5Rg,
and the pointers to documents are identifiers fid1; : : : ; id8g. It is clear that snapshot
ofline adversaries that access the AVL tree know that documents associated with id2
and id4 (id1, id5 and id8) are associated with the same key, even if they are not able to
compute the ORE.Compare function.</p>
        <p>In Section 4.1 we outline how to design data structures that leak no information about
duplicates.</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3. Leakage related to transactions history</title>
        <p>The structure of typical indexing data structure depends on the history of the transactions
executed on the database. As an example, even if two databases store the same values,
the topologies of their indexing data structures may difer if the insertion order of the
values is not the same. Thus, the indexing data structure may leak information about
the transactions history. Literature identified this security risk and denoted as history
2
0
1
3
4
5
(a) Insertion history SEQA = f3; 2; 4; 0; 1; 5g
(b) Insertion history SEQB = f0; 1; 2; 3; 4; 5g
independent the data structures whose topology and internal bit representation leak
no information about the transaction history [32, 33]. In particular, we are interested
in weakly history independent data structures, which guarantee history independence
against adversaries which only observe the indexing data structure once [33], thus fitting
the same snapshot ofline adversaries considered by ofline security guarantees of
LWORE. The adversary that obtains a snapshot of a standard (history dependent) data
structure may infer information about the transaction history, potentially also revealing
information about the distribution of plaintexts if such distribution is not independent of
the transaction history.</p>
        <p>To clarify the type of information that a history dependent data structure may leak,
we consider the example represented in Figure 2. We consider two Binary Search Trees
(BSTs), both generated by providing the same set of values f0; : : : ; 5g in diferent orders.
The first BST (Figure 2a) is built from the insertion sequence SEQA = f3; 2; 4; 0; 1; 5g.
The second BST (Figure 2b) is built from insertion sequence SEQB = f0; 1; 2; 3; 4; 5g.
The structure of the second BST leaks that data has been inserted within the database
in ascending order.</p>
        <p>Re-balancing the BST may help hiding information leakage related to the structure
topology, however frequent re-balancing may critically afect performance and information
may still leak from the internal bit representation [34]. Moreover, although history
independent data structures have been designed for eficient range queries [ 35], they
cannot be straightforwardly adopted to secure LW-ORE databases because they may
leak duplicate values (see Section 3.2). In Section 4.2 we outline how to design secure
history independent data structures that leak no information about duplicates.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Designing secure indexes for ORE</title>
      <p>We discuss how to design data structures that do not leak information. In Section 4.1
we describe alternative designs for search trees that avoid leaking information related
to duplicate values, but that are still history dependent. In Section 4.2 we describe a
history independent skip list without duplicates leakage.</p>
      <p>----</p>
      <p>------------</p>
      <sec id="sec-4-1">
        <title>4.1. Search tree without duplicates leakage</title>
        <p>The duplicates leakage arises when a search tree stores two or more documents that are
associated with same key (we may informally denote them as duplicate documents). As
discussed in Section 3.2, standard search trees index duplicate documents by storing their
identifiers within the same node. Thus, a variant design for search trees that do not leak
information duplicates is to store only one identifier within each node. To this aim, it is
necessary to design variant algorithms for insertion, search and deletion operations. We
propose a candidate design for the AVL tree already considered in Section 3.2. In this
paper, we keep the discussion informal and leave improved analyses as a future work.</p>
        <p>When indexing a new document by a certain key, the insertion algorithm proceeds
unmodified until the same key is found. Then, the algorithm creates a new node as a
child of the existing one, deciding whether the new node should be assigned with the
left or the right child position randomly with the same probability. If a node already
exists at the assigned position, the sub-tree starting from that node is assigned as a child
of the new one. When searching for a document, the search algorithm also proceeds
unmodified until the target key is found. However, with regard to the original design,
the search algorithm cannot assume that all pointers to documents are stored within
that node. Instead, the search algorithm must continue descending into left and right
sub-trees, collecting all the pointers stored within nodes associated with the same target
key, and stopping descending a sub-tree when a node with a diferent key is found.</p>
        <p>We propose an example of the algorithm by referring to Figure 3, which modifies the
standard AVL tree described in Section 3.2 (Figure 1).</p>
        <p>Although the proposed variant avoids duplicate keys being stored within the same node
of the tree, it increases search complexity and thus may afect performance. Moreover,
we observe that the variant is still history dependent.</p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. History-independent skip list without duplicates leakage</title>
        <p>We outline how to design an indexing data structure to avoid both information leakage
due to duplicates and insertion history. The design is based on skip lists [36], which ofer
inherently weakly history-independent topologies [35], and we denote it as doubly-linked
skip list. First, we remind the main design traits of skip lists. Then, we describe the
proposed variant design.</p>
        <p>A skip list is a hierarchical data structure which includes multiple linked lists. At the
bottom layer is the complete list of all the sorted values stored within the database. Each
higher level consists of a sparse list which includes a subset of the elements of the list at
the level below, and acts as a sort of “fast track” for quicker access. In particular, at
insertion time each element has a probability to be promoted to the higher layer until
promotion fail. Thus, the structure of the sparse list is completely independent of the
contents of the lists or on the transaction history. The promotion probability p, which is
typically set to 12 or 14 , determines the average size of the sparse lists.</p>
        <p>Although the topology of the skip list is weakly history independent, it may still leak
information about duplicates, because each node of the complete list typically stores all
the identifiers associated with the same key, as already observed for search trees (see
Section 3.2). For this reason, we propose a variant that we denote as doubly-linked skip
list. Our design adopts the same unmodified superimposed sparse lists of a standard skip
list. However, we operate two modifications: first, to avoid leaking duplicates we let each
node of the complete list store only one document identifier (as we already detailed for
search trees variants, see Section 4.1); second, to guarantee eficient lookup performance
we design the complete list, which traditionally is a linked list with forward pointers only,
as a doubly-linked list provided with both forward and backward pointers (which gives
the name to our data structure).</p>
        <p>We provide a better explanation of our design choices by analyzing how the proposed
doubly-linked skip list evolves throughout insertion operations. To this aim, we consider
the example represented in Figure 4, where we show three versions associated with
an increasing number of inserted elements. Within the figure we slightly modify our
notations and denote as cvn a right ciphertext cnR included within the data structure
at “version” v, and idt the document identifier inserted via the tth operation. We also
denote as L0 the complete list and as L1; : : : ; L3 the sparse lists. At the beginning (v = 1,
Figure 4a), we consider a dataset without duplicate values (e.g., corresponding plaintext
values are P^1 = h1; 2; 4i) which can be built by using an unmodified skip list insertion
algorithm with the only diference that the complete list c1; c12; c13 is a doubly-linked list.
1
When a duplicate key is inserted into the data structure (see Figure 4b, where document
identifier id4 is associated with right ciphertext c23 corresponding to plaintext p = 2),
the insertion algorithm uses the sparse lists to access the complete list at the latest
position that includes a key that is smaller or equal than the given insertion key, as the
original skip list insertion algorithm. If a duplicate key is found, the new encrypted key
is inserted after its position in the complete list. At insertion, the promotion algorithm is
executed to decide whether new encrypted key should be added to upper layer sparse
lists. In the example, c23 is inserted after c22 and is promoted to sparse list L1. Similarly,</p>
        <p>L3
L2
L1</p>
        <p>L0
END</p>
        <p>END
END
END
END
(a) Initial index without duplicates (v = 1) (b) Index after insertion of a duplicate value (v = 2)
(c) Index with all the values (v = 3)
in Figure 4c (v = 3) we also insert values h4; 3; 5; 4i in this order. Now we consider
searching value p = 4 within the index at version v = 3. The search algorithm finds the
value within L2, and thus access the complete list at position 6 (c36). Now, it operates
linear searches over the complete list both backward and forward until diferent values
are found. Backward search finds c35 and stops at c34, and forward search finds c37 and
stops at c38. The search operation would not be able to eficiently find backward duplicate
values without adopting a doubly-linked list as complete list.</p>
        <p>The proposed doubly-linked list outlines the main ideas for a secure indexing data
structure for LW-ORE databases. Clearly, further analyses and improvements should be
considered for obtaining good performance in real database systems, which we plan as
future work.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusions</title>
      <p>We analyzed the security guarantees of a state-of-the-art order revealing encryption
scheme when deployed in real database systems, and found issues related to information
leakage due to gaps within the original security models and analyses. The most severe
security issues are related to information leakage due to indexing data structures, including
disclosure of duplicate values within the database and context information related to
transactions history. These vulnerabilities may allow adversaries accessing a snapshot of
the database to break semantic security guarantees claimed by the encryption scheme or,
in certain scenarios, to infer information related to the order of the operations executed
on the database and related statistical distributions. We described how variant indexing
data structures may be modified to prevent both security issues, and outlined a candidate
design based on skip lists. We leave a more formal treatment of the proposed analyses
and the design of a complete proof of concept as future work.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>We thank Mauro Leoncini for discussions on preliminary versions of this work. This work
was supported by Doxee SpA in association with the European Regional Development
Fund program “Por FESR 2014-2020” of Emilia-Romagna Region.</p>
      <p>Internet Services and Applications (2018).
[30] D. Bogatov, G. Kollios, L. Reyzin, A Comparative Evaluation of Order-Revealing
Encryption Schemes and Secure Range-Query Protocols, in: Proc. Conf. Very Large
Data Bases, 2019.
[31] CipherStash, Order-revealing encryption library, https://github.com/cipherstash/
ore.rs, Visited Feb. 2023.
[32] D. Micciancio, Oblivious data structures: applications to cryptography, in: Proc.</p>
      <p>29th ACM Symp. Theory of Computing, 1997.
[33] M. Naor, V. Teague, Anti-persistence: History independent data structures, in:</p>
      <p>Proc. 33rd ACM Symp. Theory of Computing, 2001.
[34] T. Moran, M. Naor, G. Segev, Deterministic history-independent strategies for
storing information on write-once memories, in: Int’l Colloquium on Automata,
Languages, and Programming, 2007.
[35] M. A. Bender, J. W. Berry, R. Johnson, T. M. Kroeger, S. McCauley, C. A. Phillips,
B. Simon, S. Singh, D. Zage, Anti-persistence on persistent storage:
Historyindependent sparse tables and dictionaries, in: Proc. 35th ACM
SIGMOD-SIGACTSIGAI Symp. Principles of Database Systems, 2016.
[36] W. Pugh, Skip lists: a probabilistic alternative to balanced trees, Communications
of the ACM (1990).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Microsoft</surname>
          </string-name>
          ,
          <article-title>Transparent data encryption</article-title>
          , https://learn.microsoft.com/en-us/sql/ relational-databases/security/encryption/transparent-data-encryption,
          <source>Visited Feb</source>
          .
          <year>2023</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>H.</given-names>
            <surname>Hacigümüş</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Iyer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mehrotra</surname>
          </string-name>
          ,
          <article-title>Executing SQL over encrypted data in the database-service-provider model</article-title>
          ,
          <source>in: Proc. ACM SIGMOD Int'l Conf. Management of Data</source>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>H.</given-names>
            <surname>Hacigümüş</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Iyer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mehrotra</surname>
          </string-name>
          ,
          <article-title>Providing database as a service</article-title>
          ,
          <source>in: Proc. 18th IEEE Int'l Conf. Data Engineering</source>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>H.</given-names>
            <surname>Saleem</surname>
          </string-name>
          , M. Naveed, SoK: Anatomy of Data Breaches,
          <source>in: Proc. 20th Privacy Enhancing Technologies Symp.</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>B.</given-names>
            <surname>Fuller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Varia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Yerukhimovich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Shen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Hamlin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Gadepally</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Shay</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. D.</given-names>
            <surname>Mitchell</surname>
          </string-name>
          , R. K. Cunningham, SoK: Cryptographically Protected Database Search,
          <source>in: Proc. IEEE Symp. Security and Privacy</source>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>C.</given-names>
            <surname>Gentry</surname>
          </string-name>
          ,
          <article-title>Fully homomorphic encryption using ideal lattices</article-title>
          ,
          <source>in: Proc. 41st ACM Symp. Theory of Computing</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A.</given-names>
            <surname>Michalas</surname>
          </string-name>
          ,
          <article-title>The lord of the shares: Combining attribute-based encryption and searchable encryption for flexible data sharing</article-title>
          ,
          <source>in: Proc. 34th ACM SIGAPP Simp. Applied Computing</source>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>K.</given-names>
            <surname>Lewi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. J.</given-names>
            <surname>Wu</surname>
          </string-name>
          ,
          <article-title>Order-revealing encryption: New constructions, applications, and lower bounds</article-title>
          ,
          <source>in: Proc. 23rd ACM SIGSAC Conf. Computer and Communications Security</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>E.</given-names>
            <surname>Damiani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. D. C.</given-names>
            <surname>Vimercati</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Jajodia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Paraboschi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Samarati</surname>
          </string-name>
          ,
          <article-title>Balancing confidentiality and eficiency in untrusted relational DBMSs</article-title>
          ,
          <source>in: Proc. 10th ACM Conf. Computer and Communications Security</source>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Chase</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kamara</surname>
          </string-name>
          ,
          <article-title>Structured encryption and controlled disclosure</article-title>
          ,
          <source>in: Proc. IACR 16th Int'l Conf. Theory and Application of Cryptology and Information Security (ASIACRYPT)</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>S. D. C.</given-names>
            <surname>Di Vimercati</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Foresti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Jajodia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Paraboschi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Samarati</surname>
          </string-name>
          ,
          <article-title>Overencryption: Management of access control evolution on outsourced data</article-title>
          ,
          <source>in: Proc. 33rd Int'l Conf. Very Large Data Bases</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>L.</given-names>
            <surname>Ferretti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Colajanni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Marchetti</surname>
          </string-name>
          ,
          <article-title>Access control enforcement on queryaware encrypted cloud databases</article-title>
          ,
          <source>in: Proc. 5th IEEE Int'l Conf. Cloud Computing Technology and Science</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Hadavi</surname>
          </string-name>
          , E. Damiani,
          <string-name>
            <given-names>R.</given-names>
            <surname>Jalili</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Cimato</surname>
          </string-name>
          ,
          <string-name>
            <surname>Z. Ganjei,</surname>
          </string-name>
          <article-title>AS5: A secure searchable secret sharing scheme for privacy preserving database outsourcing</article-title>
          ,
          <source>in: Data Privacy Management and Autonomous Spontaneous Security: 7th Int'l Workshop DPM</source>
          <year>2012</year>
          ,
          <article-title>and</article-title>
          5th
          <source>Int'l Workshop SETOP</source>
          <year>2012</year>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>R. A.</given-names>
            <surname>Popa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. M.</given-names>
            <surname>Redfield</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Zeldovich</surname>
          </string-name>
          , H. Balakrishnan,
          <article-title>CryptDB: Protecting confidentiality with encrypted query processing</article-title>
          ,
          <source>in: Proc. 23rd ACM SIGOPS Symp. Operating Systems Principles</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>S.</given-names>
            <surname>Tu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. F.</given-names>
            <surname>Kaashoek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Madden</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Zeldovich</surname>
          </string-name>
          ,
          <article-title>Processing analytical queries over encrypted data</article-title>
          ,
          <source>in: Proc. Int'l Conf. Very Large Data Bases</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>L.</given-names>
            <surname>Ferretti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Colajanni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Marchetti</surname>
          </string-name>
          , Distributed, concurrent, and
          <article-title>independent access to encrypted cloud databases</article-title>
          ,
          <source>IEEE Trans. Parallel and Distributed Systems</source>
          (
          <year>2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>P.</given-names>
            <surname>Grubbs</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>McPherson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Naveed</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Ristenpart</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Shmatikov</surname>
          </string-name>
          ,
          <article-title>Breaking web applications built on top of encrypted data</article-title>
          ,
          <source>in: Proc. 23rd ACM SIGSAC Conf. Computer and Communications Security</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>P.</given-names>
            <surname>Grubbs</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Sekniqi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Bindschaedler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Naveed</surname>
          </string-name>
          , T. Ristenpart,
          <article-title>Leakage-abuse attacks against order-revealing encryption</article-title>
          ,
          <source>in: Proc. 2017 IEEE Symp. Security and Privacy</source>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>M.</given-names>
            <surname>Naveed</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kamara</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. V.</given-names>
            <surname>Wright</surname>
          </string-name>
          ,
          <article-title>Inference attacks on property-preserving encrypted databases</article-title>
          ,
          <source>in: Proc. 22nd ACM SIGSAC Conf. Computer and Communications Security</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>F. B.</given-names>
            <surname>Durak</surname>
          </string-name>
          ,
          <string-name>
            <surname>T. M. DuBuisson</surname>
          </string-name>
          , D. Cash,
          <article-title>What else is revealed by order-revealing encryption?</article-title>
          ,
          <source>in: Proc. 23rd ACM SIGSAC Conf. Computer and Communications Security</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>E. M.</given-names>
            <surname>Kornaropoulos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Papamanthou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Tamassia</surname>
          </string-name>
          ,
          <article-title>The state of the uniform: Attacks on encrypted databases beyond the uniform query distribution</article-title>
          ,
          <source>in: Proc. IEEE Symp. Security and Privacy</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>V.</given-names>
            <surname>Bindschaedler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Grubbs</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Cash</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Ristenpart</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Shmatikov</surname>
          </string-name>
          ,
          <article-title>The tao of inference in privacy-protected databases</article-title>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>S.</given-names>
            <surname>Oya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Kerschbaum</surname>
          </string-name>
          ,
          <article-title>Hiding the access pattern is not enough: Exploiting search pattern leakage in searchable encryption</article-title>
          ,
          <source>in: Proc. 30th USENIX Security Symp.</source>
          ,
          <year>2021</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>C.</given-names>
            <surname>Priebe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Vaswani</surname>
          </string-name>
          , M. Costa,
          <article-title>EnclaveDB: A secure database using SGX</article-title>
          ,
          <source>in: Proc. IEEE Symp. Security and Privacy</source>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>S.</given-names>
            <surname>Fei</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Yan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Ding</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Xie</surname>
          </string-name>
          ,
          <article-title>Security vulnerabilities of SGX and countermeasures: A survey, ACM Computing Surveys (</article-title>
          <year>2021</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>O.</given-names>
            <surname>Pandey</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Rouselakis</surname>
          </string-name>
          ,
          <article-title>Property preserving symmetric encryption</article-title>
          ,
          <source>in: Proc. IACR Advances in Cryptology (EUROCRYPT)</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>D.</given-names>
            <surname>Boneh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Lewi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Raykova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Sahai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Zhandry</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Zimmerman</surname>
          </string-name>
          ,
          <article-title>Semantically Secure Order-Revealing Encryption: Multi-input Functional Encryption Without Obfuscation</article-title>
          ,
          <source>in: Proc. IACR Advances in Cryptology (EUROCRYPT)</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>N.</given-names>
            <surname>Chenette</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Lewi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Weis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. J.</given-names>
            <surname>Wu</surname>
          </string-name>
          ,
          <article-title>Practical order-revealing encryption with limited leakage</article-title>
          ,
          <source>in: Proc. IACR Fast Software Encryption</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>P.</given-names>
            <surname>Alves</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Aranha</surname>
          </string-name>
          ,
          <article-title>A framework for searching encrypted databases</article-title>
          ,
          <source>Journal of</source>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>