You are on page 1of 13

Hindawi

Security and Communication Networks


Volume 2018, Article ID 6561418, 12 pages
https://doi.org/10.1155/2018/6561418

Research Article
Improved Construction for Inner Product
Functional Encryption

Qingsong Zhao,1,2,3 Qingkai Zeng ,1,2 and Ximeng Liu4,5


1
State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing 210023, China
2
Department of Computer Science and Technology, Nanjing University, Nanjing 210023, China
3
College of Information Science and Technology, Nanjing Agricultural University, Nanjing 210095, China
4
College of Mathematics and Computer Science, Fuzhou University, Fuzhou 350117, China
5
School of Information Systems, Singapore Management University, 178902, Singapore

Correspondence should be addressed to Qingkai Zeng; zqk@nju.edu.cn

Received 4 February 2018; Revised 30 June 2018; Accepted 22 July 2018; Published 13 August 2018

Academic Editor: Petros Nicopolitidis

Copyright © 2018 Qingsong Zhao et al. This is an open access article distributed under the Creative Commons Attribution License,
which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Functional encryption (FE) is a vast new paradigm for encryption scheme which allows tremendous flexibility in accessing
encrypted data. In a FE scheme, a user can learn specific function of encrypted messages by restricted functional key and reveals
nothing else about the messages. Besides the standard notion of data privacy in FE, it should protect the privacy of the function itself
which is also crucial for practical applications. In this paper, we construct a secret key FE scheme for the inner product functionality
using asymmetric bilinear pairing groups of prime order. Compared with the existing similar schemes, our construction reduces
both necessary storage and computational complexity by a factor of 2 or more. It achieves simulation-based security, security
strength which is higher than that of indistinguishability-based security, against adversaries who get hold of an unbounded number
of ciphertext queries and adaptive secret key queries under the External Decisional Linear (XDLIN) assumption in the standard
model. In addition, we implement the secret key inner product scheme and compare the performance with the similar schemes.

1. Introduction that 𝑓(𝑥0 ) = 𝑓(𝑥1 ). In contrast, the latter one requires


that the view of the adversary can be simulated by a
Traditional public-key encryption provides all-or-nothing simulator, given only access to the secret keys and the
access to data: you can either recover the entire plaintext or function evaluated on the corresponding messages. Note that
reveal nothing from the ciphertext. Functional encryption simulation-based security has higher security strength than
(FE) [1–3] is a vast new paradigm for encryption scheme indistinguishability-based security such that there exists an
which allows tremendous flexibility in accessing encrypted indistinguishability-based secure FE scheme for a certain
data. In a FE scheme, a secret key 𝑠𝑘𝑓 embedded with a functionality which is not able to be proved secure under
function 𝑓 can be created from a master secret key msk. Then, simulation-based security [1, 3].
given a ciphertext for 𝑥, a user learns 𝑓(𝑥) and reveals nothing The traditional FE only considers data privacy and omits
else about 𝑥. In recent years, the cryptographic community to protect the privacy of the function itself which is also
has made great progress in research on the security of FE and crucial for practical applications. Consider the case where
constructions for such schemes (see, for instance, [4–11] and Bob wants to store his files in a cloud. Before uploading his
any more). files to the cloud, he employs a FE scheme to encrypt them
There are two notions of security for a FE scheme, avoiding leakage of data privacy and then he uploads the
i.e., indistinguishability-based security and simulation-based encryption form to the cloud. Later on, Bob wants to query
security. The former one requires that an adversary cannot his data by offering the cloud a key 𝑠𝑘𝑓 for a function 𝑓 of
distinguish between ciphertexts of any two messages 𝑥0 , his choice. However, if the FE scheme cannot support the
𝑥1 with access to a secret key 𝑠𝑘𝑓 for a function 𝑓 such privacy for the function, the key 𝑠𝑘𝑓 may reveal Bob’s query 𝑓
2 Security and Communication Networks

Table 1: Comparison of our SSSK-IPE scheme. 𝑛 is the dimension of vector. We have eight security notions xx-yy-zzz, where xx ∈ {one, many}
refers to a single or multiple challenge ciphertexts; yy ∈ {SEL, AD} refers to selectively or adaptively chosen ciphertext queries; zzz ∈ {IND,
SIM} refers to indistinguishability-based vs simulation-based security.

Scheme Master secret key Ciphertext Secret key Scalar multiplications Pairing operations Assum. Security
BJK15[16] 8𝑛2 + 8 2𝑛 + 2 2𝑛 + 2 2𝑛 + 2 SXDH many-AD-IND
2
DDM16[17] 8𝑛 + 12𝑛 + 28 4𝑛 + 8 4𝑛 + 8 4𝑛 + 8 SXDH many-AD-IND
TAO16 [18] 4𝑛2 + 18𝑛 + 20 2𝑛 + 5 2𝑛 + 5 2𝑛 + 5 XDLIN many-AD-IND
ZZL17 [19] 6𝑛2 + 10𝑛 + 24 2𝑛 + 4 2𝑛 + 4 2𝑛 + 4 SXDH many-AD-SIM
This work 2𝑛2 + 18𝑛 + 36 𝑛+6 𝑛+6 𝑛+6 XDLIN many-AD-SIM

entirely to the cloud, which is not desirable when the function In this paper, we consider functional privacy in inner product
includes confidential information. encryption, i.e., secret key inner product encryption.
Due to the importance, some works focus on function
privacy of FE, and this was first studied in [12] in the secret 1.2. Related Work. Abdalla et al. [23] presented a direct
key setting. This is later followed by the work of [5, 13] in the construction of public-key IPE under an indistinguishability-
secret key setting and that of [14, 15] in the public-key setting. based definition. The construction is only proved to be secure
During the two scenarios of the public-key setting and the against selective adversaries which are asked to commit to
secret key setting, the degree to which function privacy can their challenges at the beginning of the security game. Follow-
be satisfied differs dramatically. Specifically, a public-key FE ing work [24] presented adaptively secure schemes where the
scheme is inherent in leaking confidential information about messages 𝑥0 and 𝑥1 may be adaptively chosen at any point in
the function. Note that an attacker who holds a secret key time, based on the previously collected information. Bishop
𝑠𝑘𝑓 can always generate, on its own, the ciphertext for 𝑥𝑖 for et al. [16] proposed a function-hiding IPE scheme under
message 𝑥𝑖 of her choice and then use 𝑠𝑘𝑓 to learn 𝑓(𝑥𝑖 ). This the Symmetric External Diffie-Hellman (SXDH) assumption,
can reveal nontrivial information about the function 𝑓. On which satisfies an indistinguishability-based definition, and
the other hand, since an attacker holding a secret key 𝑠𝑘𝑓 considered adaptive adversaries. However, the scheme is
cannot encrypt new messages in the secret key setting, such available in a rather weak security model which places
kind of attack is no longer applied. limit on adversaries' queries. Specially, all ciphertext queries

󳨀
𝑥 0 ,→
󳨀
𝑥 1 and all secret key queries → 󳨀
𝑦 0 ,→
󳨀
𝑦 1 are constrained
1.1. Functional Encryption for Inner Product. Although FE by ⟨→󳨀𝑥 0 ,→
󳨀
𝑦 0 ⟩ = ⟨→󳨀
𝑥 0 ,→
󳨀
𝑦 1 ⟩ = ⟨→󳨀𝑥 1 ,→
󳨀
𝑦 0 ⟩ = ⟨→ 󳨀
𝑥 1 ,→
󳨀
𝑦 1 ⟩. The
supports the computation of general circuits relying on a constraint obviously weakens the security of the scheme, and
wide spectrum of assumptions, there are two major problems this is in violation of the intuitive spirit of function privacy.
with the state-of-the-art general FE constructions. First, Recently, Datta et al. [17] developed a function-hiding IPE
the security of some constructions is only ensured so long scheme under the SXDH assumption where the restriction
as the adversary gets hold of a priori bounded number on adversaries' queries is only ⟨→ 󳨀
𝑥 0 ,→
󳨀
𝑦 0 ⟩ = ⟨→󳨀
𝑥 1 ,→
󳨀
𝑦 1 ⟩. Tomida
of secret keys [9, 10, 20]. Second, some solutions rely on et al. [18] constructed a more efficient function-hiding IPE
tools such as multilinear maps [21] and indistinguishability scheme than that of [17] under the External Decisional
obfuscation [8, 22] which are both impractical and founded Linear (XDLIN) assumption. Kim et al. [25] put forth a
on new security assumption undergone minimal scrutiny. fully-secure function-hiding IPE scheme with less parameter
This inspires us to explore constructions for firsthand and sizes and run time complexity than in [16, 17]. The scheme
effective FE schemes for functionalities which focus on the is proved simulation-based secure in the generic model of
inner product functionality as a first attempt [16–19, 23–26]. bilinear maps. For the first time Zhao et al. [19] presented
In an inner product encryption (IPE) scheme, a cipher- a simulation-based secure secret key IPE scheme under the
text 𝑐𝑡→ →
󳨀 𝑛
𝑥 is related to a vector 𝑥 ∈ Z𝑞 of length 𝑛 and
󳨀 SXDH assumption in the standard model. The scheme can
a secret key 𝑠𝑘→ →󳨀 𝑛
𝑦 to a vector 𝑦 ∈ Z𝑞 of length 𝑛. Given
󳨀 tolerate an unbounded number of ciphertext queries and
the ciphertext and the secret key, the decryption algorithm adaptive key queries.
computes the inner product ⟨→ 󳨀
𝑥 ,→
󳨀𝑦 ⟩ = ∑𝑛𝑖=1 𝑥𝑖 𝑦𝑖 . Notice that
the formulation of IPE is distinct from that of inner product 1.3. Our Contribution. We construct an efficient simulation-
predicate encryption in [12, 13, 27–30]. The ciphertext for a based secure secret key IPE (SSSK-IPE) scheme in the
message 𝑚 in an inner product predicate encryption scheme standard model. We compare our scheme with related works
comes along with an attribute → 󳨀
𝑥 ∈ Z𝑛𝑞 , and a secret key in Table 1 where group exponentiations on cyclic groups
corresponds to a vector →󳨀 are involved in key generation algorithm and encryption
𝑦 ∈ Z𝑛𝑞 . When the ciphertext with algorithm, and pairing operations on bilinear pairing groups

󳨀
𝑥 is decrypted with the secret key for → 󳨀
𝑦 , the decryption are involved in decryption algorithm. We achieve an out-
algorithm outputs 𝑚 iff ⟨→
󳨀
𝑥 ,→
󳨀
𝑦 ⟩ = 0. By contrast, the output in standing reduction by a factor of 2 or more in computational
the IPE formulation is the actual value of the inner product. complexity. Our scheme achieves 𝑛 + 6 group elements
Security and Communication Networks 3

in secret key and ciphtertext, which also reduces storage and Pr[𝐷(𝑌𝑛 ) = 1] is negligible. Let 𝑛𝑒𝑔𝑙(𝜆) be a negligible
complexity by a factor of 2 or more. Hence, performance function in 𝜆. Moreover, we write → 󳨀𝑥 to denote a vector
𝑛
in the SSSK-IPE scheme is superior to that in the previous (𝑥1 , . . . , 𝑥𝑛 ) ∈ Z𝑞 of length 𝑛 for some positive integer 𝑞 and
schemes in both storage complexity and computation com-
𝑛. We use ⟨→ 󳨀𝑎 ,→
󳨀
𝑏 ⟩ to denote the inner product, ∑𝑛𝑖=1 𝑎𝑖 𝑏𝑖 mod
plexity. Furthermore, our scheme is based on the XDLIN
assumption which is weaker than the SXDH assumption. In 𝑞, of vectors → 󳨀𝑎 ∈ Z𝑛 and →󳨀
𝑏 ∈ Z𝑛𝑞 . We use upper case boldface
𝑞
more detail, the SXDH assumption relies on type 3 bilinear to denote matrices. X𝑇 denotes transpose of the matrix X.
pairing groups, while the XDLIN assumption relies on any 𝐺𝐿(𝑛, Z𝑞 ) denotes the general linear group of degree 𝑛 over
type of bilinear pairing groups [18]. Therefore from this
Z𝑞 . Z×𝑞 denotes a set of integers {1, . . . , 𝑞 − 1}.
angle, the SXDH assumption is stronger than the XDLIN
assumption. Although the construction of [18] was proved
2.1. Definition of SSSK-IPE. We introduce the definition of
to be indistinguishability-based secure under the XDLIN
simulation-based secure secret key IPE (SSSK-IPE).
assumption and also succeeded in improving efficiency,
both storage complexity and computation complexity of Definition 1 (SSSK-IPE). A SSSK-IPE scheme is composed of
our scheme are better than that of [18] and our scheme the four PPT algorithms defined below:
achieves simulation-base security, security strength of which
is higher than that of indistinguishability-based security. In (i) SSSK-IPE.Setup (1𝜆 , 𝑛) 󳨀→ (𝑚𝑠𝑘, 𝑝𝑝): The setup
addition, we implement our SSSK-IPE scheme and compare algorithm receives as input the security parameters 𝜆
the performance with the similar schemes in Section 5. and 𝑛, being vector length, and outputs a master secret
To guarantee correctness, our scheme requires that inner key msk and public parameters pp.
products be within a range of polynomial-size, which is (ii) SSSK-IPE.Encrypt (𝑚𝑠𝑘, 𝑝𝑝, → 󳨀𝑥 ) 󳨀→ 𝑐𝑡→ 󳨀 : The 𝑥
consistent with other schemes in Table 1. As pointed out in encryption algorithm receives as input the master
[16], this is reasonable for statistical computations because secret key msk, the public parameters pp, and a vector
the computations, like the average over a polynomial-size →
󳨀
𝑥 ∈ Z𝑛𝑞 and outputs a ciphertext 𝑐𝑡→
󳨀𝑥.
database, will naturally be contained within a polynomial
range. Furthermore, our scheme is simulation-based secure (iii) SSSK-IPE.KeyGen (𝑚𝑠𝑘, 𝑝𝑝,→ 󳨀
𝑦 ) 󳨀→ 𝑠𝑘→ 󳨀 : The key
𝑦
against adversaries who hold in an unbounded number generation algorithm receives as input the master
of ciphertext queries and adaptive key queries. Although secret key msk, the public parameters pp, and a vector
very basic functionalities such as IBE are simulation-based →
󳨀
𝑦 ∈ Z𝑛𝑞 and outputs a secret key 𝑠𝑘→
𝑦.
󳨀
secure for a priori bounded number of ciphertext queries
in the standard model [1, 3, 4], this is possible for an (iv) SSSK-IPE.Decrypt (𝑝𝑝, 𝑐𝑡→ 𝑥 , 𝑠𝑘→
󳨀 𝑦 ) 󳨀→ 𝑚 ∈ Z𝑞 or
󳨀

unbounded number of ciphertext queries if adversaries have ⊥: The decryption algorithm receives as input the
an underlying polynomial-size range. public parameters pp, the ciphertext 𝑐𝑡→
𝑥 , and a secret
󳨀
key 𝑠𝑘→󳨀
𝑦 and outputs either a value 𝑚 ∈ Z𝑞 or the
1.4. Technical Overview. Our SSSK-IPE scheme uses dual dedicated symbol ⊥.
pairing vector spaces (DPVS) to construct, as in [16–19],
which is brought forward by Okamoto et al. [31, 32]. DPVS has We make the following correctness requirement: for all
󳨀 SSSK-IPE.Setup(1𝜆 , 𝑛), all →
󳨀
𝑥 ,→
󳨀
the features of hidden linear subspaces in prime order bilinear $
(𝑚𝑠𝑘, 𝑝𝑝) ← 𝑦 ∈ Z𝑛 , and for 𝑞
group setting. A DPVS of dimension 𝑛 + 6 is introduced in
󳨀 SSSK-IPE.Encrypt(𝑚𝑠𝑘, 𝑝𝑝,→
󳨀
$ $
our construction, where 𝑛 is the dimension of inner product 𝑥 ←
𝑐𝑡→
󳨀 𝑥 ) and 𝑠𝑘→
𝑦 ←
󳨀 󳨀 SSSK-
vectors. Typically, we sample a pair of dual orthonormal IPE.KeyGen(𝑚𝑠𝑘, 𝑝𝑝,→
󳨀
𝑦 ), SSSK-IPE.Decrypt(𝑝𝑝, 𝑐𝑡→󳨀 , 𝑠𝑘→
󳨀) 𝑥 𝑦
bases (B, B∗ ) and only use the 𝑛 + 4 dimension B and
is sure to output ⟨→󳨀
𝑥 ,→
󳨀
𝑦 ⟩ whenever ⟨→ 󳨀
𝑥 ,→
󳨀
𝑦 ⟩ =⊥
̸ with nonneg-
the 𝑛 + 4 dimension B∗ to encode vector → 󳨀𝑥 and vector

󳨀
𝑦 , respectively. Compared with the previous schemes, our
ligible probability. The correctness requires the fact that it is
scheme at least saves n dimensions of vector spaces. We ⟨→󳨀
𝑥 ,→
󳨀
𝑦 ⟩ and not ⊥ when ⟨→ 󳨀
𝑥 ,→
󳨀
𝑦 ⟩ is from a fixed polynomial
preserve the remaining hidden dimensions of B and B∗ range of value inside Z𝑞 .
for the security reduction. Specially, between two hybrid
Definition 2 (indistinguishability-based security). A SSSK-
experiments, a hidden dimension can be used for reducing
IPE scheme has indistinguishability-based security if for all
a difference of one coefficient in a secret key or a cipertext to
PPT adversaries A, the advantage of A in the game defined
a XDLIN instance.
as follows is negligible:
2. Preliminaries (1) A challenger runs SSSK-IPE.Setup to generate msk
and pp, and pp is given to A. It also chooses a random
$
Let 𝜆 be the security parameter. If 𝑆 is a set, 𝑥 ←
󳨀 𝑆 denotes bit 𝑏.
the process of choosing uniformly at random from 𝑆. Let (2) The challenger responds to the following two types of
𝑋 = {𝑋𝑛 }𝑛∈N and 𝑌 = {𝑌𝑛 }𝑛∈N be distribution ensembles. We queries made by A:
say that 𝑋≈𝑐 𝑌 are computationally indistinguishable between
𝑋 and 𝑌, if for all nonuniform probabilistic polynomial time (i) Secret key query: A submits a pair of vec-
𝐷 and every 𝑛 ∈ N, the difference between Pr[𝐷(𝑋𝑛) = 1] tors (→
󳨀
𝑦 0 ,→
󳨀
𝑦 1 ) ∈ Z𝑛𝑞 and the challenger com-
4 Security and Communication Networks

Experiment RealSSSK-IPE
A (1𝜆 ) : Experiment IdealSSSK-IPE
A,𝑆 (1𝜆 ) :
$ $
(msk, pp)← 󳨀 SSSK-IPE.Setup(1𝜆 , 𝑛) (msk,𝑠𝑡󸀠 ) ←󳨀 𝑆(1𝜆 , 𝑛)

󳨀 $
( 𝑥 , 𝑠𝑡) ←
󳨀A
SSSK-IPE.KeyGen(msk,⋅,⋅)
(pp) →
󳨀 $
( 𝑥 , 𝑠𝑡) ←
󳨀A
SSSK-IPE.KeyGen(msk,⋅,⋅)
(pp)
1 1
󳨀 SSSK-IPE.Encrypt(msk, pp, →
󳨀 󳨀 𝑆({⟨→󳨀
𝑥 𝑖 ,→
󳨀
$ $
𝑐𝑡→
𝑥𝑖 ←
󳨀 𝑥 ) ({𝑐𝑡→
𝑥 𝑖 }𝑖∈[ℓ] ) ←
󳨀 𝑦 𝑗 ⟩}𝑖∈[ℓ],𝑗∈[𝑝1 ] )
for 𝑖 ∈ [ℓ] →󳨀 →󳨀
where 𝑦 1 , . . . , 𝑦 𝑝1 are key queries made by A1
$ $ 󸀠
𝛼←󳨀 A2O(msk,⋅,⋅)({𝑐𝑡→
𝑥 𝑖 }𝑖∈[ℓ] , 𝑠𝑡)
󳨀 𝛼←󳨀 A2O (msk,𝑠𝑡,⋅)({𝑐𝑡→
𝑥 𝑖 }𝑖∈[ℓ] , 𝑠𝑡)
󳨀
output(𝛼) output(𝛼)

Box 1: Real and ideal experiments.

putes and returns 𝑠𝑘→ 󳨀


𝑦 ←󳨀 SSSK-IPE.Key- (i) (Bilinearity) ∀𝑔1 ∈ G1 , 𝑔2 ∈ G2 , 𝑎, 𝑏 ∈ Z𝑞 ,
Gen(𝑚𝑠𝑘, 𝑝𝑝, → 󳨀
𝑦 𝑏 ). 𝑒(𝑔1𝑎 , 𝑔2𝑏 ) = 𝑒(𝑔1 , 𝑔2 )𝑎𝑏 and
(ii) Ciphertext query: A submits a pair of (ii) (Nondegeneracy) ∃𝑔1 ∈ G1 , 𝑔2 ∈ G2 such that
𝑥 0 ,→
vectors (→
󳨀 󳨀
𝑥 1 ) ∈ Z𝑛𝑞 and the challenger 𝑒(𝑔1 , 𝑔2 ) has order 𝑞 in G𝑇.
computes and returns 𝑐𝑡→ 󳨀
𝑥 ←󳨀 SSSK-
IPE.Encrypt(𝑚𝑠𝑘, 𝑝𝑝,→ 󳨀
𝑥 𝑏 ). 2.3. External Decisional Linear Assumption

(3) A outputs a bit 𝑏󸀠 , and wins if 𝑏󸀠 = 𝑏. Definition 5 (external decisional linear (XDLIN)
assumption [33]). (𝑞, G1 , G2 , G𝑇, 𝑒) is a tuple produced
A SSSK-IPE scheme is indistinguishability-based secure if
by G𝑎𝑏𝑝𝑔 (1𝜆 ). Consider the following problem: given the
for all PPT adversaries A, the advantage of A in the above
game, is AdvA SSSK-IPE
(𝜆) = |pr[ExpA,Game0 (1𝜆 ) = 1] − distributions GXDLIN𝑏 (1𝜆 ) = ((𝑞, G1 , G2 , G𝑇, 𝑒), 𝜉𝑔1 , 𝜅𝑔1 ,
𝜆 𝛿𝜉𝑔1 , 𝜎𝜅𝑔1 , 𝜉𝑔2 , 𝜅𝑔2 , 𝛿𝜉𝑔2 , 𝜎𝜅𝑔2 , 𝑌𝑏 ) for 𝑏 ∈ 0, 1, where
pr[ExpA,Game1 (1 ) = 1]| < 𝑛𝑒𝑔𝑙(𝜆), where this game is by $ $
definition Game0 if 𝑏 = 0 and Game1 if 𝑏 = 1. 𝜉, 𝜅, 𝛿, 𝜎 ←󳨀 Z𝑞 , 𝑌0 = (𝛿 + 𝜎)𝑔𝑐 , 𝑌1 = (𝛿 + 𝜎 + 𝜌)𝑔𝑐 , 𝜌 ←
󳨀 Z𝑞
XDLIN XDLIN
and 𝑐 ∈ {0, 1}, output G0 if 𝑏 is 0, and output G1
Definition 3 (simulation-based security [1, 3, 7]). For a otherwise, we refer to the problem as the External Decisional
SSSK-IPE scheme, if there exits a PPT adversary A = Linear (XDLIN) problem.
(A1 , A2 ) and a PPT simulator 𝑆, we define two experiments For a PPT algorithm A, the advantage of A is
RealSSSK-IPE
A (1𝜆 ) and IdealSSSK-IPE
A,𝑆 (1𝜆 ) in Box 1. (in the defined as AdvA XDLIN
(𝜆) = |Pr[A(1𝜆 , GXDLIN0 ) 󳨀→ 1] −
public-key setting, the adversary A can encrypt plaintexts 𝜆
Pr[A(1 , G1 XDLIN 𝜆
(1 )) 󳨀→ 1]|. If for all PPT algorithms
using the public parameters pp but A cannot in the secret key XDLIN
A, AdvA (𝜆) is negligible in 𝜆, we say that GXDLIN
𝑏 (1𝜆 )
setting). Let ℓ be the number of challenge messages output by
satisfies the XDLIN assumption.
A1 and 𝑝1 be the number of secret key queries in the first
stage. The oracles O and O󸀠 are defined as follows:
2.4. Dual Pairing Vector Spaces
(1) The oracle O(𝑚𝑠𝑘, ⋅) =SSSK-IPE.KeyGen(𝑚𝑠𝑘, ⋅, ⋅).
Definition 6 (dual pairing vector spaces (DPVS) [31, 32]).
(2) The oracle O󸀠 (𝑚𝑠𝑘, 𝑠𝑡, ⋅) is the second stage of 𝑆, i.e.,
→󳨀 → 󳨀 A dual pairing vector space (DPVS) (𝑞, V, V ∗ , G𝑇 , A, A∗ , 𝐸)
𝑆⟨ 𝑥 𝑖 , 𝑦 𝑗 ⟩ (𝑚𝑠𝑘, 𝑠𝑡, ⋅) for 𝑖 ∈ [ℓ], 𝑗 ∈ [𝑝1 ], where →
󳨀
𝑥 𝑖 and $

󳨀 th is directly defined by the tuple (𝑞, G1 , G2 , G𝑇 , 𝑒) ← 󳨀
𝑦 𝑗 are inputs of the 𝑖 ciphertext query and the 𝑗th
G𝑎𝑏𝑝𝑔 (1𝜆 ). V = G𝑛1 and V ∗ = G𝑛2 over Z𝑛𝑞 are 𝑛-dimensional
secret key query by A1 , respectively. The simulator 𝑆
is stateful and after each query it updates the state 𝑠𝑡. vector spaces. A = {→ 󳨀𝑎 , . . . ,→
1
󳨀𝑎 } of V and A∗ = {→
𝑛
󳨀𝑎 ∗ , . . . ,→
1
󳨀𝑎 ∗ }
𝑛
of V ∗ are canonical bases, where → 󳨀𝑎 = (0𝑖−1 , 𝑔 , 0𝑛−𝑖 ) and
𝑖 1
A SSSK-IPE scheme is simulation-based secure if there exists →
󳨀𝑎 ∗ = (0𝑖−1 , 𝑔 , 0𝑛−𝑖 ). 𝐸 : V × V ∗ 󳨀→ G is pairing which
a PPT simulator 𝑆 such that, for all PPT adversaries A, 𝑖 2 𝑇
is defined by 𝐸(𝑥, 𝑦) = ∏𝑛𝑖=1 𝑒(𝑋𝑖 , 𝑌𝑖 ) ∈ G𝑇, where 𝑥 =
RealSSSK-IPE
A (1𝜆 ) ≈𝑐 IdealSSSK-IPE
A,𝑆 (1𝜆 ) . (1) (𝑋1 , . . . 𝑋𝑛 ) ∈ V and 𝑦 = (𝑌1 , . . . 𝑌𝑛 ) ∈ V ∗ with the following
properties:

(1) (Bilinearity) 𝐸(𝑎→


󳨀
𝑥 , 𝑏→
󳨀
𝑦 ) = 𝐸(→ 󳨀
𝑥 ,→
󳨀
2.2. Asymmetric Bilinear Pairing Groups
𝑦 )𝑎𝑏 for 𝑎, 𝑏 ∈ Z𝑞
Definition 4 (asymmetric bilinear pairing groups). We say and
that an algorithm G𝑎𝑏𝑝𝑔 (1𝜆 ) is an asymmetric bilinear group (2) (Nondegeneracy) if 𝐸(→ 󳨀𝑥 ,→
󳨀
𝑦 ) = 1 for all →
󳨀
𝑦 ∈ V ∗ , then

󳨀 →
󳨀
generator and it outputs a bilinear pairing group which is 𝑥 = 0.
defined by the tuple (𝑞, G1 , G2 , G𝑇, 𝑒), where 𝑞 is a prime and
G1 , G2 , G𝑇 and are cyclic groups of order 𝑞, with a bilinear Let (𝑞, V, V ∗ , G𝑇, A, A∗ , 𝐸) be the output of algorithm
pairing 𝑒 : G1 × G2 󳨀→ G𝑇 with the following properties: G𝑑𝑝V𝑠 (1𝜆 , 𝑛, (𝑞, G1 , G2 , G𝑇 , 𝑒)), where 𝑛 ∈ N.
Security and Communication Networks 5

We then describe random dual orthonormal basis gener- SSSK-IPE.Decrypt (pp, 𝑐𝑡→󳨀𝑥 , 𝑠𝑘→
𝑦 ) 󳨀→ 𝑚 ∈ Z𝑞 or ⊥: The
󳨀
ator G𝑜𝑏 (1𝜆 , 𝑛) as follows: decryption algorithm outputs
$
G𝑜𝑏 (1𝜆 , 𝑛) : (𝑞, V, V ∗ , G𝑇, A, A∗ , 𝐸) ←
󳨀 G𝑑𝑝V𝑠 (1𝜆 , 𝑛, 𝑑 = 𝐸 (𝑐𝑡→
𝑥 , 𝑠𝑘→
󳨀 𝑦).
󳨀 (6)
$
(𝑞, G1 , G2 , G𝑇, 𝑒)), B = (𝜒𝑖,𝑗 ) ← 󳨀 𝐺𝐿(𝑛, Z𝑞 ), (𝜙𝑖,𝑗 ) =
𝑇 −1
𝜓(B ) , It then attempts to determine 𝑚 ∈ Z𝑞 such that 𝑔𝑇𝑚 = 𝑑.
→󳨀 If there is 𝑚 that satisfies the equation, the algorithm outputs
𝑏 𝑖 = ∑𝑛𝑗=1 𝜒𝑖,𝑗→ 󳨀𝑎 , B = {→󳨀 →󳨀
𝑏 1 , . . . , 𝑏 𝑛 },
𝑗 𝑚. Otherwise, it outputs ⊥. Due to a polynomial-size range
→󳨀∗ 󳨀𝑎 ∗ , B∗ = {→ 󳨀∗ →󳨀∗ of possible values for 𝑚, the decryption algorithm certainly
𝑏 𝑖 = ∑𝑛𝑗=1 𝜙𝑖,𝑗→ 𝑗 𝑏 1 , . . . , 𝑏 𝑛 }, 𝑔𝑇 = 𝑒(𝑔1 , runs in polynomial time.
𝑔2 )𝜓 ,
returning (B, B∗ ). Correctness. For any 𝑐𝑡→ 𝑥 and 𝑠𝑘→
󳨀 𝑦 by calling SSSK-
󳨀

󳨀 →
󳨀
Let (→
󳨀𝑥 )B denote ∑𝑛𝑖=1 𝑥𝑖 𝑏 𝑖 , where→ 󳨀𝑥 = (𝑥1 , . . . , 𝑥𝑛 )𝑇 ∈ Z𝑛𝑞 IPE.Encrypt(msk, pp, 𝑥 ) and SSSK-IPE.KeyGen(msk,

󳨀 →󳨀 pp,→
󳨀
𝑦 ), respectively, the pairing evaluations in the decryption
and B = { 𝑏 1 , . . . , 𝑏 𝑛 }. Then we have algorithm proceed as follows:
𝑛
𝐸 ((→
󳨀
𝑥 )A , (→
󳨀
𝑦 )A∗ ) = ∏𝑒 (𝑥𝑖 𝑔1 , 𝑦𝑖 𝑔2 ) ⟨→
󳨀
𝑥 ,→
󳨀
𝑦⟩
𝑥 , 𝑠𝑘→
𝑑 = 𝐸 (𝑐𝑡→
󳨀 𝑦 ) = 𝑔𝑇
󳨀 . (7)
𝑖=1

∑𝑛𝑖=1 𝑥𝑖 𝑦𝑖 If the decryption algorithm takes polynomial time in the


= 𝑒 (𝑔1 , 𝑔2 )
size of the plaintext space, it will output 𝑚 = ⟨→ 󳨀
𝑥 ,→
󳨀
𝑦 ⟩ as
⟨→
󳨀
𝑥 ,→
󳨀
𝑦⟩ (2) desired.
= 𝑒 (𝑔1 , 𝑔2 ) ,

𝑥 )B , (→
𝐸 ((→
󳨀 󳨀
𝑦 )B∗ ) = 𝐸 ((B→
󳨀
𝑥 )A , (𝜓 (B𝑇) →
−1 󳨀 Remark 7. We can easily notice that our scheme is malleable,
𝑦) ∗)
A where a ciphertext can be created from certain other cipher-
𝜓B→
󳨀
𝑥 ⋅(B𝑇 )−1→
󳨀
𝑦 ⟨→
󳨀
𝑥 ,→
󳨀
𝑦⟩
texts. The scheme in [18] is also malleable, while it seems
= 𝑒 (𝑔1 , 𝑔2 ) = 𝑔𝑇 . difficult to prove the schemes in [16, 17, 19] to be malleable.

3. Our SSSK-IPE Scheme Remark 8. In contrast to the scheme of Tomida et al.


[18], we provides a more efficient scheme with better
In this section, we present the construction of SSSK-IPE. security strength. The construction of [18] achieves
SSSK-IPE.Setup(1𝜆 , n)󳨀→ (msk, pp): The setup algo- indistinguishability-based security where the constraint
$ on the adversaries is that, for all ciphertext queries (→ 󳨀
𝑥 0 ,→
󳨀
𝑥 1)
󳨀 G𝑎𝑏𝑝𝑔 (1𝜆 ). It then generates
rithm runs (𝑞, G1 , G2 , G𝑇, 𝑒) ← →󳨀 →󳨀 →
󳨀 →󳨀 →
󳨀 →󳨀
and all key queries ( 𝑦 0 , 𝑦 1 ), ⟨ 𝑥 0 , 𝑦 0 ⟩ = ⟨ 𝑥 1 , 𝑦 1 ⟩ should
(𝑞, V, V ∗ , G𝑇 , A, A∗ , 𝐸) hold. B and B∗ of dimension 2𝑛 + 5 are introduced in
their construction. There are at least 2𝑛 dimensions of
$
󳨀 G𝑑𝑝V𝑠 (1𝜆 , 𝑛 + 6, (𝑞, G1 , G2 , G𝑇, 𝑒)) ,
← vector spaces because of changing a ciphertext including → 󳨀
𝑥0

󳨀
(respectively, a secret key including 𝑦 0 ) into one including

󳨀 →
󳨀 →
󳨀∗ →
󳨀∗ (3) →
󳨀
(B = { 𝑏 1 , . . . , 𝑏 𝑛+6 } , B∗ = { 𝑏 1 , . . . , 𝑏 𝑛+6 }) 𝑥 1 (respectively, a secret key including → 󳨀
𝑦 1 ) in the security
game. As mentioned in Section 1, in our scheme, a hidden
$ dimension can be used to convert a corresponding coefficient
󳨀 G𝑜𝑏 (1𝜆 , 𝑛 + 6) .
← to another coefficient in a secret key or a ciphertext, so that no
̂B
̂∗ ), where B ̂ = PPT adversary can distinguish the two hybrid experiments.
The algorithm outputs msk= (B,

󳨀 →󳨀 → 󳨀 →󳨀 →󳨀 →
󳨀 ∗ →󳨀 ∗ →󳨀∗ Our scheme therefore saves n dimensions of vector spaces.
̂
{ 𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+1 , 𝑏 𝑛+2 , 𝑏 𝑛+5 }, B ∗
= { 𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+3 ,
󳨀∗ →
→ 󳨀∗
𝑏 𝑛+4 , 𝑏 𝑛+6 }, and pp = (𝑞, V, V ∗ , G𝑇 , A1 , A∗1 , 𝐸). 4. Security Proof
SSSK-IPE.Encrypt(msk, pp, → 󳨀
𝑥 )󳨀→ 𝑐𝑡→
𝑥 : The encryption
󳨀
$ 4.1. Theorem 9. Now, we prove that our construction has
algorithm samples 𝛼, 𝛽, 𝜂 ← 󳨀 Z𝑞 independently and uni- many-AD-SIM (many messages secure, adaptive simulation
formly at random and outputs definition) security from the XDLIN assumption in the
𝑐𝑡→ →
󳨀 standard model against adaptive adversaries obtaining an
𝑥 = ( 𝑥 , 𝛼, 𝛽, 0, 0, 𝜂, 0)B .
󳨀 (4)
unbounded number of ciphertexts and secret keys.
SSSK-IPE.KeyGen(msk, pp, →
󳨀
𝑦 )󳨀→ 𝑠𝑘→
𝑦 : The secret key
󳨀
$ Theorem 9. Under the XDLIN assumption the proposed
generation algorithm samples 𝜃, 𝛾, 𝜁 ← 󳨀 Z𝑞 independently scheme is many-AD-SIM-secure.
and uniformly at random and outputs
𝑠𝑘→ →
󳨀 We will show Lemmas 15, 16, 17, 18, and 19 for the security
𝑦 = ( 𝑦 , 0, 0, 𝜃, 𝛾, 0, 𝜁)B∗ .
󳨀 (5) proof of Theorem 9.
6 Security and Communication Networks

4.2. Lemmas Definition 14 (problem 4). Problem 4 is to guess 𝑏 ∈ {0, 1},


→󳨀∗
Definition 10 (problem 0). Problem 0 is to guess 𝑏 ∈ {0, 1}, given ((𝑞, G1 , G2 , G𝑇, 𝑒), ̂
B, ̂
B∗ , 𝑌 ), where
𝑏
̂∗ , →
given ((𝑞, G1 , G2 , G𝑇 , 𝑒), B, B 󳨀
𝑦 𝑏 , 𝜅𝑔1 , 𝜉𝑔2 ), where $
(B, B∗ , (𝑞, G1 , G2 , G𝑇, 𝑒)) ← 󳨀 G𝑜𝑏 (1𝜆 , 𝑛 + 6),
̂ = {→
󳨀 →
󳨀 → 󳨀 →󳨀
$
󳨀 G𝑎𝑏𝑝𝑔 (1𝜆 ),
(𝑞, G1 , G2 , G𝑇, 𝑒) ← B 𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+1 , 𝑏 𝑛+2 },
̂∗ = {→󳨀∗ →
󳨀∗ → 󳨀∗ → 󳨀∗ → 󳨀∗
$
B = (𝜒𝑖,𝑗 ) ← 󳨀 𝐺𝐿(3, Z𝑞 ) and (𝜙𝑖,𝑗 ) = (B𝑇)−1 , B 𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+3 , 𝑏 𝑛+4 , 𝑏 𝑛+5 },

󳨀
󳨀 Z𝑞 , 𝑏 𝑖 = 𝜅 ∑𝑛𝑗=1 𝜒𝑖,𝑗→ 󳨀𝑎 for 𝑖 = 1, 2, 3, B =
$ $ $
𝜅 ← 𝑗 󳨀 Z𝑞 , 𝜂󸀠 ←
𝜃, 𝛾, 𝜁 ← 󳨀 Z×𝑞 , and

󳨀 → 󳨀 → 󳨀
{ 𝑏 1 , 𝑏 2 , 𝑏 3 }, →
󳨀∗ →
󳨀∗
𝑌 0 = (0𝑛 , 0, 0, 𝜃, 𝛾, 𝜂󸀠 , 𝜁)B∗ and 𝑌 1 = (0𝑛 , 0, 0, 𝜃, 𝛾,

󳨀∗
󳨀 Z𝑞 , 𝑏 𝑖 = 𝜉 ∑𝑛𝑗=1 𝜙𝑖,𝑗→ 󳨀𝑎 ∗ for 𝑖 = 1, 3, B
̂∗ = 𝜂󸀠 , 0)B∗ .
$
𝜉 ← 𝑗
󳨀∗ →
→ 󳨀∗
{ 𝑏 1 , 𝑏 3 }, For a PPT adversary A, the advantage of A for Problem
$ $ 𝑛, where 𝑛 = 0, 1, 2, 3, 4, is defined as
𝑔𝑇 = 𝑒(𝑔1 , 𝑔2 )𝜅𝜉 and 𝛿, 𝜎 ← 󳨀 Z×𝑞 , and
󳨀 Z𝑞 , 𝜌 ←
Probn

󳨀
𝑦 = (𝛿, 0, 𝜎) and → 󳨀
𝑦 = (𝛿, 𝜌, 𝜎) . AdvA (𝜆)
0 B 1 B
󵄨 󵄨 (8)
= 󵄨󵄨󵄨󵄨Pr [ExpA0 (1𝜆 ) = 1] − Pr [ExpA1 (1𝜆 ) = 1]󵄨󵄨󵄨󵄨 ,
𝑃 𝑃
Definition 11 (problem 1). Problem 1 is to guess 𝑏 ∈ {0, 1},
̂ B
given ((𝑞, G1 , G2 , G𝑇 , 𝑒), B, ̂∗ , →
󳨀
𝑌 𝑏 ), where where the instance is by definition 𝑃0 if 𝑏 = 0 and 𝑃1 if 𝑏 = 1.
$
(B, B∗ , (𝑞, G1 , G2 , G𝑇, 𝑒)) ← 󳨀 G𝑜𝑏 (1𝜆 , 𝑛 + 6), Lemma 15. Suppose that the XDLIN assumption holds in G1
̂ = {→
B
󳨀 →󳨀 → 󳨀 →󳨀 →󳨀
𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+1 , 𝑏 𝑛+2 , 𝑏 𝑛+5 },
and G2 . Then for all PPT adversary B, there is an adversary A
𝑃𝑟𝑜𝑏
such that 𝐴𝑑VB 0 (𝜆) ≤ 𝐴𝑑V𝑋𝐷𝐿𝐼𝑁 (𝜆) + 5/𝑞.
̂∗ = {→󳨀∗ →󳨀∗ → 󳨀∗ → 󳨀∗ A
B 𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+3 , 𝑏 𝑛+4 },
$ $
Proof. Let 𝑊 be a random linear transformation.
𝛼, 𝛽 ← 󳨀 Z𝑞 , 𝜂 ←󳨀 Z×𝑞 , and On inputting an instance of XDLIN

󳨀 →
󳨀 ((𝑞, G1 , G2 , G𝑇, 𝑒), 𝜉𝑔1 , 𝜅𝑔1 , 𝛿𝜉𝑔1 , 𝜎𝜅𝑔1 , 𝜉𝑔2 , 𝜅𝑔2 ,
𝑌 0 = (0𝑛 , 𝛼, 𝛽, 0, 0, 𝜂, 0)B and 𝑌 1 = (0𝑛 , 𝛼, 𝛽, 𝛿𝜉𝑔2 , 𝜎𝜅𝑔2 , 𝑌𝑏 ), A sets
0, 0, 𝜂, 𝜁󸀠 )B .
𝑔𝑇 = 𝑒(𝜅G1 , 𝜉G2 ), → 󳨀𝑢 1 = (𝜉, 0, 1)A , and →
󳨀𝑢2 =
Definition 12 (problem 2). Problem 2 is to guess 𝑏 ∈ {0, 1}, (0, 0, 1)A ,
̂ B
given ((𝑞, G1 , G2 , G𝑇 , 𝑒), B, ̂∗ , →
󳨀
𝑌 𝑏 ), where →
󳨀
𝑢 3 = (0, 𝜅, 1)A ,→
󳨀𝑢 1 = (𝜅, 0, 0)A∗ , and → 󳨀
∗ ∗
𝑢2 =
$ (−𝜅, −𝜉, 𝜅𝜉)A∗ ,
(B, B∗ , (𝑞, G1 , G2 , G𝑇, 𝑒)) ← 󳨀 G𝑜𝑏 (1𝜆 , 𝑛 + 6),
𝑢 = (0, 𝜉, 0) ∗ and →

󳨀 ∗ 󳨀
𝑤 = (𝛿𝜉G , 𝜎𝜅G , 𝑌 ).
̂ = {→
B
󳨀 →󳨀 → 󳨀 →󳨀 →󳨀
𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+1 , 𝑏 𝑛+2 , 𝑏 𝑛+6 },
3 A 𝑏 1 1 𝑏

A can calculate → 󳨀 and →


󳨀 ∗
̂∗ = {→󳨀∗ →󳨀∗ → 󳨀∗ → 󳨀∗ 𝑢 𝑖 for 𝑖 = 1, 2, 3 𝑢𝑖
for 𝑖 = 1, 3.
B 𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+3 , 𝑏 𝑛+4 }, →󳨀 →
󳨀 →
󳨀∗
$ $
Next, A generates 𝑏 𝑖 = 𝑊( 𝑢 𝑖 ) for 𝑖 = 1, 2, 3, 𝑏 𝑖 =
󳨀 Z𝑞 , 𝜁󸀠 ← 󳨀 Z×𝑞 , and (𝑊−1 )𝑇 (→
󳨀
𝑢 𝑖 ) for 𝑖 = 1, 2, 3, and → 󳨀
𝑦 𝑏 = 𝑊(→ 󳨀

𝛼, 𝛽, 𝜂 ← 𝑤 𝑏 ). Then A

󳨀 →
󳨀 →
󳨀 → 󳨀 → 󳨀 ̂ ∗ →
󳨀 ∗ →
󳨀 ∗
𝑌0 = (0𝑛 , 𝛼, 𝛽, 0, 0, 𝜂, 𝜁󸀠 )B and 𝑌 1 = sets B = ( 𝑏 1 , 𝑏 2 , 𝑏 3 ), B = ( 𝑏 1 , 𝑏 3 ). Finally, A gives
𝑛 󸀠
(0 , 𝛼, 𝛽, 0, 0, 0, 𝜁 )B . ̂∗ , →
B((𝑞, G1 , G2 , G𝑇 , 𝑒), B, B 󳨀
𝑦 𝑏 , 𝜅𝑔1 , 𝜉𝑔2 ).
If 𝑏 = 0 and 𝑌𝑏 = 𝑌0 = (𝛿 + 𝜎)G1 , then → 󳨀
𝑤0 =
Definition 13 (problem 3). Problem 3 is to guess 𝑏 ∈ {0, 1}, (𝛿𝜉G1 , 𝜎𝜅G1 , (𝛿 + 𝜎)G1 ) = (𝛿𝜉, 𝜎𝜅, (𝛿 + 𝜎))A = 𝛿 𝑢 1 + 𝜎→
→󳨀 󳨀
𝑢2
̂ B
given ((𝑞, G1 , G2 , G𝑇 , 𝑒), B, ̂∗ , →
󳨀∗
𝑌 ), where and 𝑦 = 𝑊(→ 󳨀
𝑤 ) = 𝑊(𝛿→ 󳨀
𝑢 + 𝜎→ 󳨀
𝑢 ) = (𝛿, 0, 𝜎) when 𝜅 ≠ 0
𝑏 0 0 1 2 B
and 𝜉 ≠ 0 (with probability 2/𝑞).
If 𝑏 = 1 and 𝑌𝑏 = 𝑌1 = (𝛿 + 𝜌 + 𝜎)G1 , then → 󳨀
$
(B, B∗ , (𝑞, G1 , G2 , G𝑇, 𝑒)) ← 󳨀 G𝑜𝑏 (1𝜆 , 𝑛 + 6), 𝑤1 =
̂ = {→
B
󳨀 →󳨀 → 󳨀 →󳨀
𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+1 , 𝑏 𝑛+2 },
(𝛿𝜉G1 , 𝜎𝜅G1 , (𝛿 + 𝜌 + 𝜎)G1 ) = (𝛿𝜉, 𝜎𝜅, (𝛿 + 𝜌 + 𝜎))A =
𝛿→
󳨀𝑢 1 +𝜌→󳨀
𝑢 2 +𝜎→󳨀𝑢 and 𝑦 = 𝑊(→
3 1
󳨀
𝑤 1 ) = 𝑊(𝛿→ 󳨀
𝑢 1 +𝜌→
󳨀
𝑢 2 +𝜎→󳨀𝑢 ) =
3
̂∗ = {→
B
󳨀∗ →󳨀∗ → 󳨀∗ → 󳨀∗ → 󳨀∗
𝑏 1 , . . . , 𝑏 𝑛 , 𝑏 𝑛+3 , 𝑏 𝑛+4 , 𝑏 𝑛+6 }, (𝛿, 𝜌, 𝜎)B when 𝜅 ≠ 0, 𝜉 ≠ 0 and 𝜌 ≠ 0 (with probability 3/𝑞).
Prob XDLIN
$ $ Therefore, AdvB 0 (𝜆) ≤ AdvA (𝜆) + 5/𝑞.
󳨀 Z𝑞 , 𝜂󸀠 ←
𝜃, 𝛾, 𝜁 ← 󳨀 Z×𝑞 , and

󳨀∗ →
󳨀∗ Lemma 16. Suppose that the XDLIN assumption holds in G1
𝑌 0 = (0𝑛 , 0, 0, 𝜃, 𝛾, 0, 𝜁)B∗ and 𝑌 1 = (0𝑛 , 0, 0, 𝜃, 𝛾, and G2 . Then for all PPT adversary B, there is an adversary A
𝜂󸀠 , 𝜁)B∗ . 𝑃𝑟𝑜𝑏 𝑃𝑟𝑜𝑏
such that 𝐴𝑑VB 1 (𝜆) ≤ 𝐴𝑑VA 0 (𝜆).
Security and Communication Networks 7

Proof. Let 𝑊 be a random linear transformation. On 𝛿 = 𝛼, 𝜌 = 𝜂, and 𝜎 = 𝛽. This is the same as an instance of
inputting an instance of Porblem 0 ((𝑞, G1 , G2 , G𝑇 , 𝑒), B, Problem 0.
B∗ ,→
̂ 󳨀
𝑦 𝑏 , 𝜅𝑔1 , 𝜉𝑔2 ), A calculates Lemma 18. Suppose that the XDLIN assumption holds in G1
𝑖+2 𝑛+3−𝑖 and G2 . Then for all PPT adversary B, there is an adversary A
ℎ𝑖 = 𝑊(0 , 𝜅𝑔1 , 0 ) for 𝑖 = 1, . . . , 𝑛, 𝑃𝑟𝑜𝑏 𝑃𝑟𝑜𝑏
such that 𝐴𝑑VB 3 (𝜆) ≤ 𝐴𝑑VA 0 (𝜆).
ℎ𝑖 = 𝑊(0𝑖 , 𝜅𝑔1 , 0𝑛+5−𝑖 ) for 𝑖 = 𝑛 + 3, 𝑛 + 4, 𝑛 + 5,
Proof. The proof follows in the same manner as Lemma 16.
→󳨀 →
󳨀
ℎ𝑛+1 = 𝑊( 𝑏 1 , 0𝑛+3 ), ℎ𝑛+2 = 𝑊( 𝑏 3 , 0𝑛+3 ),
→󳨀 Lemma 19. Suppose that the XDLIN assumption holds in G1
ℎ𝑛+6 = 𝑊( 𝑏 2 , 0𝑛+3 ),
and G2 . Then for all PPT adversary B, there is an adversary A
ℎ∗𝑖 = (𝑊−1 )𝑇 (0𝑖+2 , 𝜉𝑔2 , 0𝑛+3−𝑖 ) for 𝑖 = 1, . . . , 𝑛, 𝑃𝑟𝑜𝑏 𝑃𝑟𝑜𝑏
such that 𝐴𝑑VB 4 (𝜆) ≤ 𝐴𝑑VA 0 (𝜆).
ℎ∗𝑖 = (𝑊−1 )𝑇 (0𝑖 , 𝜉𝑔2 , 0𝑛+5−𝑖 ) for 𝑖 = 𝑛 + 3, 𝑛 + 4, 𝑛 + 5, Proof. The proof follows in the same manner as Lemma 17.

󳨀∗ →
󳨀∗
ℎ∗𝑛+1 = (𝑊−1 )𝑇 ( 𝑏 1 , 0𝑛+3 ), ℎ∗𝑛+2 = (𝑊−1 )𝑇 ( 𝑏 3 , 0𝑛+3 ),
4.3. Security Proof of Theorem 9. For the security proof,

󳨀∗ →󳨀
= (𝑊 ) ( 𝑏 2 , 0𝑛+3 ) and 𝑌 𝑏 = 𝑊(→
󳨀
−1 𝑇 we follow the simulation-based security notion [1, 3]. A
ℎ∗𝑛+6 𝑦 𝑏 , 0𝑛+3 ),
simulator responds to queries by an adversary A and provides

󳨀 →󳨀 →
󳨀∗ →
󳨀∗ simulated secret keys and simulated ciphertexts to A. The
H = ( ℎ 1 , . . . , ℎ 𝑛+6 ) and H∗ = ( ℎ 1 , . . . , ℎ 𝑛+6 ).
simulator is made of three algorithms: Setup, ̃ Encrypt, ̃ and
Then A sets H ̂ = (→ 󳨀 →󳨀 → 󳨀 →󳨀 →󳨀
ℎ 1 , . . . , ℎ 𝑛 , ℎ 𝑛+1 , ℎ 𝑛+2 , ℎ 𝑛+5 )
̃
KeyGen.
̃ : It generates a master secret key msk and public
and Ĥ ∗ = (→ 󳨀∗ →󳨀∗ → 󳨀∗ → 󳨀∗
ℎ 1 , . . . , ℎ 𝑛 , ℎ 𝑛+3 , ℎ 𝑛+4 ). Finally, A gives B((𝑞,
Setup
parameters pp, which is transferred to A. Specially, on input
̂ H
G1 , G2 , G𝑇, 𝑒), H, ̂ ∗ ,→󳨀 →󳨀
𝑌 𝑏 ). If 𝑏 = 0, 𝑌 0 = (0𝑛 , 𝛼, 𝛽, 0, 0, 𝜂, 0)H , (1𝜆 , 𝑛), it sets (msk, pp)←󳨀SSSK-IPE.Setup. The simulator
→󳨀
and if 𝑏 = 1, 𝑌 1 = (0𝑛 , 𝛼, 𝛽, 0, 0, 𝜂, 𝜁󸀠 )H ), where 𝛿 = 𝛼, 𝜌 = 𝜁󸀠 , will use the master secret key and the public parameters to
and 𝜎 = 𝛽. This is the same as an instance of Problem 0. answer the queries of A in Encrypt ̃ and KeyGen. ̃
̃
Encrypt : It simulates the ciphertexts of challenge mes-
Lemma 17. Suppose that the XDLIN assumption holds in G1 sages →󳨀𝑥 1 , . . . ,→
󳨀
𝑥 ℓ , where →
󳨀
𝑥 1 , . . . ,→
󳨀
𝑥 ℓ are output by A and ℓ is
and G2 . Then for all PPT adversary B, there is an adversary A the number of the challenge messages. Let 𝑝1 be the number
𝑃𝑟𝑜𝑏 𝑃𝑟𝑜𝑏
such that 𝐴𝑑VB 2 (𝜆) ≤ 𝐴𝑑VA 0 (𝜆). of secret key queries in the first stage. Encrypt ̃ receives as
Proof. Let 𝑊 be a random linear transformation. On input msk, pp, nonadaptive secret key queries → 󳨀𝑦 1 , . . . ,→
󳨀
𝑦 𝑝1
→󳨀 →󳨀 →
󳨀 →󳨀
inputting an instance of Porblem 0 ((𝑞, G1 , G2 , G𝑇, 𝑒), B, ̂
B∗ , made by A, together with (⟨ 𝑥 𝑖 , 𝑦 1 ⟩, . . . , ⟨ 𝑥 𝑖 , 𝑦 𝑝1 ⟩) for each

󳨀
𝑦 𝑏 , 𝜅𝑔1 , 𝜉𝑔2 ), A calculates 1 ≤ 𝑖 ≤ ℓ, and the secret keys (→ 󳨀
𝑦 , 𝑠𝑘→ →
󳨀
󳨀 ), . . . , ( 𝑦 , 𝑠𝑘→ 󳨀 ).
1 𝑦1 𝑝1 𝑦 𝑝1

𝑖+2 𝑛+3−𝑖 The normal ciphertext is (→


󳨀
𝑥 , 𝛼, 𝛽, 0, 0, 𝜂,0)B generated by
ℎ𝑖 = 𝑊(0 , 𝜅𝑔1 , 0 ) for 𝑖 = 1, ..., 𝑛, $
𝑖 𝑛+5−𝑖 SSSK-IPE.Encrypt, where 𝛼, 𝛽, 𝜂 ← 󳨀 Z𝑞 . The simulated
ℎ𝑖 = 𝑊(0 , 𝜅𝑔1 , 0 ) for 𝑖 = 𝑛 + 3, 𝑛 + 4, 𝑛 + 6, →
󳨀 󸀠 ̃
ciphertext is ( 𝑥 , 𝛼, 𝛽, 0, 0, 0, 𝜁 )B generated by Encrypt,
→󳨀 →󳨀
ℎ𝑛+1 = 𝑊( 𝑏 1 , 0𝑛+3 ) and ℎ𝑛+2 = 𝑊( 𝑏 3 , 0n+3 ), where 𝜁󸀠 ←
󳨀
$
Z×𝑞 . In order to prove the views of A
→󳨀 ̃ have the same
ℎ𝑛+5 = 𝑊( 𝑏 2 , 0𝑛+3 ), in SSSK-IPE.Encrypt and that in Encrypt
distribution, we define a new algorithm Encrypt̃ 󸀠 , where
ℎ∗𝑖 = (𝑊−1 )𝑇 (0𝑖+2 , 𝜉𝑔2 , 0𝑛+3−𝑖 ) for 𝑖 = 1, . . . , 𝑛, →󳨀 󸀠
󳨀 = ( 𝑥 , 𝛼, 𝛽, 0, 0, 𝜂, 𝜁 ) .
𝑐𝑡→𝑥 B
ℎ∗𝑖 = (𝑊−1 )𝑇 (0𝑖 , 𝜉𝑔2 , 0𝑛+5−𝑖 ) for 𝑖 = 𝑛 + 3, 𝑛 + 4, 𝑛 + 6, ̃ : It simulates the answer to the second stage
KeyGen
→󳨀∗ →
󳨀∗ queries of A. It receives as input msk, pp, the vector → 󳨀
𝑦,
ℎ∗𝑛+1 = (𝑊−1 )𝑇 ( 𝑏 1 , 0𝑛+3 ) and ℎ∗𝑛+2 = (𝑊−1 )𝑇 ( 𝑏 3 , →󳨀
where 𝑦 is the secret key query made by A, and the values
0𝑛+3 ), 𝑥 1 ,→
⟨→
󳨀 󳨀
𝑦 ⟩, . . . , ⟨→
󳨀
𝑥 ℓ ,→
󳨀
𝑦 ⟩, where →
󳨀
𝑥 1 , . . . ,→
󳨀
𝑥 ℓ are the challenge

󳨀∗ →󳨀 →
󳨀
messages. The normal secret key is ( 𝑦 , 0, 0, 𝜃, 𝛾, 0, 𝜁)B∗ gen-
ℎ∗𝑛+5 = (𝑊−1 )𝑇 ( 𝑏 2 , 0𝑛+3 ) and 𝑌 𝑏 = 𝑊(→
󳨀
𝑦 𝑏 , 0𝑛+3 ), $

󳨀 →󳨀 →
󳨀∗ →󳨀∗ erated by SSSK-IPE.KeyGen, where 𝜃, 𝛾, 𝜁 ← 󳨀 Z𝑞 . The simu-
H = ( ℎ 1 , . . . , ℎ 𝑛+6 ), and H∗ = ( ℎ 1 , . . . , ℎ 𝑛+6 ). lated secret key is (→
󳨀 ̃
𝑦 , 0, 0, 𝜃, 𝛾, 𝜂󸀠 , 0)B∗ generated by KeyGen,
󸀠 $ × ̃ we also define a new
Then A sets H ̂ = (→ 󳨀 →󳨀 → 󳨀 →󳨀 →󳨀
ℎ 1 , . . . , ℎ 𝑛 , ℎ 𝑛+1 , ℎ 𝑛+2 , ℎ 𝑛+6 )
where 𝜂 ← 󳨀 Z𝑞 . Analogous to Encrypt,
󸀠
̃ where 𝑠𝑘→ →
󳨀 󸀠
and Ĥ ∗ = (→ 󳨀∗ →󳨀∗ → 󳨀∗ → 󳨀∗
ℎ 1 , . . . , ℎ 𝑛 , ℎ 𝑛+3 , ℎ 𝑛+4 ). Finally, A gives
algorithm KeyGen 󳨀 = ( 𝑦 , 0, 0, 𝜃, 𝛾, 𝜂 , 𝜁) ∗ .
𝑦 B

̂ ∗ ,→
󳨀 →
󳨀 Next, we will prove it is indistinguishable between the
B((𝑞, G1 , G2 , G𝑇, 𝑒), H, ̂ H 𝑌 𝑏 ). If 𝑏 = 0, 𝑌 0 = (0𝑛 , 𝛼,

󳨀 output of an ideal world experiment and the output of the
𝛽, 0, 0, 𝜂, 𝜁󸀠 )H , and if 𝑏 = 1, 𝑌 1 = (0𝑛 , 𝛼, 𝛽, 0, 0, 0, 𝜁󸀠 )H , where real world experiment via a hybrid argument.
8 Security and Communication Networks

Proof. Suppose that there exists a PPT adversary A that can


Indistinguishable Indistinguishable 
3?NOJ distinguish the output distributions of H1 and H2 . Then, we
Setup 
3?NOJ
Encrypt 
%H=LSJN construct a PPT algorithm B which is given an instance of
Encrypt
KeyGen KeyGen KeyGen Problem 1 ((𝑞, G1 , G2 , G𝑇 , 𝑒), B, ̂∗ , →
̂ B 󳨀
𝑌 𝑏 ) for 𝑏 ∈ {0, 1} and
simulates H1 and H2 .
Setup: B runs SSSK-IPE.Setup(1𝜆 , n) and outputs msk=
̂B
(B, ̂∗ ) and pp= (𝑞, V, V ∗ , G𝑇 , A, A∗ , 𝐸). B gives A the
Indistinguishable
public parameters pp and the master secret key msk is only
known to B.
Secret Key Queries: To answer the key queries made by

3?NOJ Indistinguishable 
3?NOJ Indistinguishable 
3?NOJ A, B runs algorithm SSSK-IPE.Encrypt to respond with
𝑠𝑘→ →
󳨀

%H=LSJN 
%H=LSJN 
%H=LSJN 󳨀𝑦 = ( 𝑦 , 0, 0, 𝜃, 𝛾, 0, 𝜁)B∗ .

+?S'?H 
+?S'?H

+?S'?H Simulated Ciphertexts: B randomly chooses 𝑘 =
{1, . . . , ℓ}, where ℓ is the number of the ciphertext queries
asked by the adversary A. To answer the 𝑖th ciphertext query
Figure 1: An overview of the security proof. $ $
󳨀 Z𝑞 and 𝜁󸀠 ←
that A makes, B chooses 𝛼, 𝛽, 𝜂 ← 󳨀 Z×𝑞 and
computes and answers as
Proof. A high-level overview of the security proof is given 𝑛 →󳨀 →󳨀 → 󳨀 →
󳨀 󸀠→
󳨀
in Figure 1. By a standard hybrid argument, we prove the 𝑐𝑡→𝑥 = ∑𝑖=1 𝑥𝑖 𝑏 𝑖 + 𝛼 𝑏 𝑛+1 + 𝛽 𝑏 𝑛+2 + 𝜂 𝑏 𝑛+5 + 𝜁 𝑏 𝑛+6
󳨀
̃ and KeyGen
distributions of the outputs of Encrypt ̃ are if 𝑖 < 𝑘,
computationally indistinguishable from that of the normal 𝑛 →󳨀 → 󳨀
𝑐𝑡→𝑥 = ∑𝑖=1 𝑥𝑖 𝑏 𝑖 + 𝑌 𝑏 if 𝑖 = 𝑘,
󳨀
ciphertexts and the normal secret keys, respectively. We
proceed via a series of hybrid experiments H0 , . . . , H5 , where 𝑛 →󳨀 →
󳨀 →
󳨀 →
󳨀
𝑥 = ∑𝑖=1 𝑥𝑖 𝑏 𝑖 + 𝛼 𝑏 𝑛+1 + 𝛽 𝑏 𝑛+2 + 𝜂 𝑏 𝑛+5 if 𝑖 > 𝑘.
𝑐𝑡→
󳨀
H0 is the real world experiment and H5 is the ideal world
experiment. We then prove that each hybrid experiment is
The view of A is composed of the public parameters and
indistinguishable from the neighboring one.
the answers of the secret key queries and the ciphertext query.
(i) Hybrid H0 : This is the real experiment. The public parameters in H1 and H2 are all generated by
(ii) Hybrid H1 : This experiment is the same as H0 except SSSK-IPE.Setup and thus have the same distribution, similar
that the master secret key and the public parameters to the answers to the secret key queries. As for the answer to
̃
are generated by Setup. the 𝑖th ciphertext query, if 𝑏 = 0 then the answer is distributed
as in H1 and if 𝑏 = 1 then the answer is distributed as in
(iii) Hybrid H2 : This experiment is the same as H1 H2 .
except that every challenge ciphertext is 𝑐𝑡→ 󳨀𝑥 =

󳨀 󸀠 ̃
( 𝑥 , 𝛼, 𝛽, 0, 0, 𝜂, 𝜁 )B which is generated by Encrypt . 󸀠 Lemma 22. Assuming that Problem 3 holds, for all PPT
adversaries A, H2 ≈𝑐 H3 .
(iv) Hybrid H3 : This experiment is the same as H2 except
that, for every key query → 󳨀
𝑦 , the corresponding secret Proof. Suppose that there exists a PPT adversary A that can
key is 𝑠𝑘→ →
󳨀 󸀠 distinguish the output distributions of H2 and H3 . Then, we
𝑦 = ( 𝑦 , 0, 0, 𝜃, 𝛾, 𝜂 , 𝜁)B∗ which is generated
󳨀
construct a PPT algorithm B which is given an instance of
󸀠
̃ .
by KeyGen ̂ B
Problem 3 ((𝑞, G1 , G2 , G𝑇 , 𝑒), B, ̂∗ , →
󳨀∗
𝑌 𝑏 ) for 𝑏 ∈ {0, 1} and
(v) Hybrid H4 : This experiment is the same as H3 except simulates H2 and H3 .
that, for every key query → 󳨀
𝑦 , the corresponding secret Setup: B runs SSSK-IPE.Setup(1𝜆 , n) and outputs msk=
key is 𝑠𝑘→ = (→󳨀
𝑦 , 0, 0, 𝜃, 𝛾, 𝜂󸀠 , 0)B∗ which is generated ̂B ̂∗ ) and pp= (𝑞, V, V ∗ , G𝑇 , A, A∗ , 𝐸). B gives A the
󳨀
𝑦 (B,
̃
by KeyGen. public parameters pp, and the master secret key msk is only
known to B.
(vi) Hybrid H5 : This experiment is the same as H4 First stage key queries: To answer every key query
except that every challenge ciphertext is 𝑐𝑡→ 󳨀
𝑥 = $

󳨀 󸀠 ̃
( 𝑥 , 𝛼, 𝛽, 0, 0, 0, 𝜁 )B which is generated by Encrypt. made by A, B chooses random 𝜃, 𝛾, 𝜁 ← 󳨀 Z𝑞 , runs SSSK-
IPE.KeyGen (msk, pp, → 󳨀
𝑦 ), and responds with 𝑠𝑘→󳨀𝑦 =

󳨀
( 𝑦 , 0, 0, 𝜃, 𝛾, 0, 𝜁) ∗ .
Lemma 20. For all PPT adversaries A, H0 ≈𝑐 H1 . B
Simulated ciphertexts: To answer every ciphertext query
Proof. Because the master secret key and the public parame- $ $
that A makes, B chooses random 𝛼, 𝛽, 𝜂 ←󳨀 Z𝑞 and 𝜁󸀠 ← 󳨀 Z×𝑞 ,
ters are all generated by SSSK-IPE.Setup in H0 and H1 , the
̃ 󸀠 , and answers as 𝑐𝑡→ →
󳨀 󸀠
󳨀 = ( 𝑥 , 𝛼, 𝛽, 0, 0, 𝜂, 𝜁 ) .
view of A in H0 and that in H1 has the same distribution. runs Encrypt 𝑥 B
Second stage key queries: B randomly chooses 𝑘 =
Lemma 21. Assuming that Problem 1 holds, for all PPT {1, . . . , 𝑝2 }, where 𝑝2 is the number of the ciphertext queries
adversaries A, H1 ≈𝑐 H2 . asked by the adversary A in the second stage. To answer the
Security and Communication Networks 9

Table 2: Performance of 80 bit security level.

N Encrypt KeyGen Decrypt |𝑠𝑘→


𝑦|
󳨀

10 1.5ms 10.6ms 60.6ms 2.2KB


30 3.7ms 23.8ms 130.7ms 4.8KB
50 7.0ms 39.7ms 202.4ms 7.3KB
100 15.8ms 73.5ms 374.7ms 13.8KB
300 92.9ms 257.1ms 1.1s 39.6KB
500 242.7ms 516.4ms 1.8s 65.3KB
750 506.4ms 939.4ms 2.6s 97.5KB
1000 891.3ms 1.5s 3.5s 129.8KB

Table 3: Performance of 112 bit security level.

N Encrypt KeyGen Decrypt |𝑠𝑘→


𝑦|
󳨀

10 3.3ms 21.5ms 109.9ms 3.0KB


30 7.0ms 43.8ms 232.5ms 6.5KB
50 11.2ms 66.3ms 344.4ms 10.0KB
100 23.2ms 123.1ms 638.5ms 18.8KB
300 114.3ms 391.3ms 1.8s 54.0KB
500 269.9ms 728.8ms 2.9s 89.1KB
750 561.5ms 1.2s 4.4s 133.0KB
1000 964.6ms 1.9s 5.9s 177.0KB

$
𝑖th key query that A makes, B chooses random 𝜃, 𝛾, 𝜁 ←
󳨀 Z𝑞 5. Evaluation
$
and 𝜂󸀠 ←
󳨀 Z×𝑞 and computes and answers as To assess the practicality of the SSSK-IPE scheme in Section 3,
we implement it similar to FHIPE [25], where two libraries
𝑛 󳨀∗ →
→ 󳨀∗ →
󳨀∗ 󸀠→
󳨀∗ →
󳨀∗ are used: the Charm [34] for the pairing group operations
𝑠𝑘→󳨀𝑦 = ∑𝑖=1 𝑦𝑖 𝑏 𝑖 + 𝜃 𝑏 𝑛+3 + 𝛾 𝑏 𝑛+4 + 𝜂 𝑏 𝑛+5 + 𝜁 𝑏 𝑛+6 and FLINT [35] for the finite field arithmetic in Z𝑞 , and the
if 𝑖 < 𝑘, algorithm in [36] is used for evaluating discrete logs. Then

󳨀∗ → 󳨀 we make a comparison among the SSSK-IPE scheme and
𝑛
𝑦 = ∑𝑖=1 𝑦𝑖 𝑏 𝑖 + 𝑌 𝑏 if 𝑖 = 𝑘,
𝑠𝑘→
󳨀 the previous schemes in Table 1 on the performance. The
experiments are performed on a personal computer with a
𝑛 →󳨀∗ → 󳨀∗ →󳨀∗ →󳨀∗ 3.4G 8-core processor and 4GB RAM memory.
𝑠𝑘→
󳨀
𝑦 = ∑𝑖=1 𝑦𝑖 𝑏 𝑖 + 𝜃 𝑏 𝑛+3 + 𝛾 𝑏 𝑛+4 + 𝜁 𝑏 𝑛+6 if 𝑖 > 𝑘.
5.1. Microbenchmarks. We denote 𝑁 as the length of the
We observe the view of A in its interaction with B. The
binary vectors →󳨀
𝑥 ,→
󳨀
𝑦 in the SSSK-IPE scheme. (We take binary
public parameters in H2 and H3 are all generated by SSSK-
vectors for the microbenchmarks, because they can make
IPE.Setup and thus have the same distribution, similarly for
our search space small during decryption. TThis is similar
the answers to every ciphertext query where 𝑐𝑡→ 𝑥 in H2 and
󳨀
to PHIPE in [25].). In the microbenchmarks (Tables 2 and
̃ 󸀠 . As for the answer to the 𝑖th
H3 are all generated by Encrypt 3), we evaluate the run times of Encrypt, KeyGen, and
key query, if 𝑏 = 0 then the answer is distributed as in H2 and Decrypt, respectively, and the ciphertext sizes |𝑠𝑘→ 𝑦 | which
󳨀
if 𝑏 = 1 then the answer is distributed as in H3 . change with the values of 𝑁. Both 80 bit security level and
112 bit security level in which pairing curves are MNT159
Lemma 23. Assuming that Problem 4 holds, for all PPT
and MNT224, respectively, are considered, respectively. In the
adversaries A, H3 ≈𝑐 H4 .
offline stage, the algorithm Setup computes the inverse of
Proof. The proof follows in the same manner as Lemma 22. B𝑇 , naive computation complexity of which is 𝑂(𝑛3 ), in order
to generate B∗ from B. Note that we consider an amortized
complexity model, in which a larger amount of computational
Lemma 24. Assuming that Problem 2 holds, for all PPT work is invested in the offline phase for obtaining efficiency
adversaries A, H4 ≈𝑐 H5 . during the online phase. Although Encrypt and KeyGen
have the same number of group exponentiations over G1
Proof. The proof follows in the same manner as Lemma 21. and G2 , respectively, there is a difference in the run times
between them. This is because the artificial distinction of
10 Security and Communication Networks

8000 faster, respectively. Figure 3 shows that the ciphertext sizes


of the schemes increase with vector length 𝑁. Compared
7000
with BJK15 and DDM16, the ciphertext size of the SSSK-IPE
6000 scheme is 1.2 - 2.1 times less and 2.5 - 4 times less, respectively.
Ciphertext Size (KB)

5000 6. Applications
4000 In this section, we show some direct applications of secret key
IPE scheme.
3000

2000 6.1. Search on Encrypted Data. An interesting application


of secret key IPE is to achieve encrypted data searching.
1000 Consider that a company uses a cloud to back up a large
number of files. The company wishes to protect the privacy
0
50 100 200 250 300 of these files by encrypting vectors representation of them
Length of N prior to uploading them to the cloud. The company provides
SSFH−IPE the master secret key for the secret key IPE scheme to
BJK15 an authorized employee who can search encrypted files in
DDM16 the cloud. Later on, the employee wants to search files
Figure 2: Run times relative to prior schemes varying with vector corresponding to respective function. Firstly he transitions
length 𝑁 (80 bit security level). his query into a vector, computes the secret key of it, and
sends the secret key to the cloud. The cloud then builds
searches on disjunction queries, conjunction queries, and
600
arbitrary CNF and DNF formulas and returns those files
which satisfy queries, as shown in Figure 4.
500 Specifically, to encrypt a keyword value 𝑎 in the finite field
Z𝑞 , we can encode the value into a vector → 󳨀
𝑥 = (1, 𝑎, . . . , 𝑎𝑛−1 ).
Ciphertext Size (KB)

400
Assume a secret key is created based on a disjunction query
“𝑎1 OR 𝑎2 Or 𝑎3 ”. It can be considered as the univariate
300 polynomial 𝑝(𝑥) = (𝑥 − 𝑎1 )(𝑥 − 𝑎2 )(𝑥 − 𝑎3 ) which is expanded
in standard form as 𝑝(𝑥) = 𝑐0 + 𝑐1 𝑥 + 𝑐2 𝑥2 + 𝑐3 𝑥3 , where
200
𝑐𝑖 are the corresponding coefficients. The polynomial 𝑝(𝑥)
is encoded as a vector → 󳨀
𝑦 = (𝑐0 , 𝑐1 , 𝑐2 , 𝑐3 , 0, . . . , 0). Note that
100 →
󳨀 →󳨀
⟨ 𝑥 , 𝑦 ⟩ = 𝑐0 + 𝑐1 𝑎 + 𝑐2 𝑎 + 𝑐3 𝑎3 . If 𝑎 = 𝑎1 or 𝑎 = 𝑎2 or 𝑎 = 𝑎3
2

such that 𝑝(𝑥) = 0, the secret key will match the ciphertext
0
10 30 50 100 300 500 750 1000 for the value 𝑎. However, we notice that expressiveness of IPE
Length of N is less than general relations of FE. When IPE is used for such
SSFH−IPE general relations, formulas must be expressed in CNF or DNF
BJK15 form, which can result in a superpolynomial blowup in size
DDM16
for arbitrary formulas.
Figure 3: Ciphertext sizes relative to prior schemes varying with
vector length 𝑁 (80 bit security level). 6.2. Biometric Authentication. In [24, 25], it is shown that
secret key IPE can be used for biometric authentication.
Consider that a company wants to limit access to certain area
implementing asymmetric pairing groups. The run time of in a building. It can employ a biometric-based authentication
Decrypt is more than that of Encrypt or KeyGen, as a pairing system, for example, fingerprint readers or iris scanners. The
operation consumes more time than a group exponentiation. biometric scanner is connected to an external authentication
server. The server holds the list of employee biometric signa-
5.2. Comparison with Previous Schemes. In Figures 2 and 3, tures and their authorization policies. However, as password-
we compare our scheme with related works in Table 1. Of all based authentication system employs salted password hash-
the three schemes BJK15[16], TAO16 [18], and ZZL17 [19] in ing to protect each user's password, the server should store
Table 1, BJK15 is selected as the representative of comparison, each employee's biometric information in the form of cipher-
because the numbers of both group exponentiations and text. Due to the noisy nature of biometrics, authentication
pairing operations of them are almost equal. Figure 2 shows should be successful when the provided biometric is near
that the run times of the schemes increase with 𝑁 ranging to a user’s stored credential. It is achieved by computing
from 50 to 300. This is due to the increase in vector length the Hamming distance between them, which is the number
𝑁 which results in more group exponentiations and more of bits differing from each other. IPE can be employed to
pairing operations. Compared with BJK15 and DDM16, the compute the Hamming distance between an encrypted 𝑛-bit
SSSK-IPE scheme is 1.8-2.1 times faster and 3.6-5 times vector →󳨀𝑐 = (𝑐 , . . . , 𝑐 ) ∈ {0, 1}𝑛 and another binary vector
1 𝑛
Security and Communication Networks 11

Cloud Authorized
Files
(Untrusted) employees

Query

.
. Files which satisfy the query
.

Figure 4: Search on encrypted data.


󳨀
𝑑 = (𝑑1 , . . . , 𝑑𝑛 ) ∈ {0, 1}𝑛 embedded in the secret key. We Conflicts of Interest
can encode → 󳨀𝑐 and →
󳨀 → 󳨀
𝑑 as 𝐶 = (𝐶1 , . . . , 𝐶2𝑛 ) ∈ {−1, 1}2𝑛 and The authors declare that they have no conflicts of interest.

󳨀
𝐷 = (𝐷1 , . . . , 𝐷2𝑛 ) ∈ {−1, 1}2𝑛 , respectively, where 𝐶2𝑖 =
𝐷2𝑖 = 1 and 𝐶2𝑖+1 = −(−1)𝑐𝑖 and 𝐷2𝑖+1 = (−1)𝑑𝑖 for each Acknowledgments

󳨀 → 󳨀
𝑖 ∈ {1, . . . , 𝑛}. Then ⟨ 𝐶, 𝐷⟩ = ∑𝑛𝑖=1 (1 − (−1)𝑐𝑖 +𝑑𝑖 ) is exactly
twice the Hamming distance between → 󳨀𝑐 and →󳨀
𝑑.
This work has been partly supported by National NSF of
China under Grant nos. 61772266, 61572248, and 61431008.
Suppose an employee attempts to authenticate using
a fingerprint scanner, which stores the master secret key
for a secret key IPE scheme. The scanner may accomplish References
authentication by the secret key IPE scheme, to read the
[1] D. Boneh, A. Sahai, and B. Waters, “Functional encryption:
fingerprint of the employee, compute the ciphertext of the definitions and challenges,” in Theory of Cryptography, vol. 6597
fingerprint with the master secret key, and send it to the of Lecture Notes in Computer Science, pp. 253–273, Springer,
server. The server has stored the ciphertext of each user’s 2011.
fingerprint under the secret key in advance. The server [2] D. Boneh, A. Sahai, and B. Waters, “Functional encryption: A
can compute the Hamming distance between the encrypted new vision for public-key cryptography,” Communications of the
fingerprint and the stored fingerprint for the employee. If the ACM, vol. 55, no. 11, pp. 56–64, 2012.
result is small, authentication will succeed. [3] A. O’Neill, “Definitional issues in functional encryption,”
https://eprint.iacr.org/2010/556.pdf.
7. Conclusion [4] S. Agrawal, S. Gorbunov, V. Vaikuntanathan, and H. Wee,
In this work, we presented an efficient simulation-based inner “Functional encryption: new perspectives and lower bounds,”
product encryption scheme with a polynomial-size range in in Advances in cryptology-CRYPTO, vol. 8043 of Lecture Notes in
the standard model. Our scheme uses asymmetric bilinear Computer Science, pp. 500–518, Springer, Heidelberg, Germany,
pairing groups of prime order under the XDLIN assumption. 2013.
Our work raises several interesting open problems on con- [5] Z. Brakerski and G. Segev, “Function-private functional encryp-
structions of inner product encryption schemes. One open tion in the private-key setting,” Journal of Cryptology, vol. 31, no.
problem is to explore the simulation-based security notion 1, pp. 202–225, 2018.
in IPE with full-hiding security, considering confidentiality [6] A. De Caro and V. Iovino, “On the power of rewinding
for functional keys and encrypted data in a completely simulators in functional encryption,” Designs, Codes and Cryp-
symmetric manner, in the secret key setting [17]. Another tography, vol. 84, no. 3, pp. 373–399, 2017.
open problem is to study how to achieve many-AD-SIM secu- [7] A. De Caro, V. Iovino, A. Jain, A. O’Neill, O. Paneth, and G.
rity for a multi-input inner product functional encryption Persiano, “On the achievability of simulation-based security
scheme with a polynomial-size range [37]. for functional encryption,” in Advances in cryptology-CRYPTO,
vol. 8043 of Lecture Notes in Computer Science, pp. 519–535,
Springer, Heidelberg, Germany, 2013.
Data Availability
[8] S. Garg, C. Gentry, S. Halevi, M. Raykova, A. Sahai, and B.
The data used to support the findings of this study are Waters, “Candidate indistinguishability obfuscation and func-
available from the corresponding author upon request. tional encryption for all circuits,” in Proceedings of the 2013 IEEE
54th Annual Symposium on Foundations of Computer Science
(FOCS), pp. 40–49, Berkeley, Calif, USA, October 2013.
Disclosure
[9] S. Goldwasser, Y. Kalai, R. A. Popa, V. Vaikuntanathan, and N.
A preliminary version of this paper was presented at the 19th Zeldovich, “Reusable garbled circuits and succinct functional
International Conference on Information and Communica- encryption,” in Proceedings of the 45th annual ACM symposium
tions Security. on Theory of computing, pp. 555–564, Palo Alto, Calif, USA.
12 Security and Communication Networks

[10] S. Gorbunov, V. Vaikuntanathan, and H. Wee, “Functional Advances in cryptology-CRYPTO, vol. 9816 of Lecture Notes in
encryption with bounded collusions via multi-party computa- Computer Science, pp. 333–362, Springer, Berlin, Germany, 2016.
tion,” in Advances in cryptology-CRYPTO, vol. 7417 of Lecture [25] S. Kim, K. Lewi, A. Mandal, H. Montgomery, A. Roy, and D.
Notes in Computer Science, pp. 162–179, Springer, Heidelberg, J. Wu, “Function-hiding inner product encryption is practical,”
Germany, 2012. https://eprint.iacr.org/2016/440.pdf.
[11] D. I. Sharma and D. C. Jinwala, “Multiuser searchable encryp- [26] Q. Zhao, Q. Zeng, and X. Liu, “Efficient Inner Product Encryp-
tion with token freshness verification,” Security and Communi- tion with Simulation-Based Security,” in Information and Com-
cation Networks, vol. 2017, Article ID 6435138, 16 pages, 2017. munications Security, vol. 10631 of Lecture Notes in Computer
[12] E. Shen, E. Shi, and B. Waters, “Predicate privacy in encryption Science, pp. 162–171, Springer International Publishing, 2018.
systems,” in Theory of cryptography, vol. 5444 of Lecture Notes [27] J. Katz, A. Sahai, and B. Waters, “Predicate encryption support-
in Computer Science, pp. 457–473, Springer, Berlin, Germany, ing disjunctions, polynomial equations, and inner products,”
2009. in Advances in Cryptology—EUROCRYPT, vol. 4965 of Lecture
[13] S. Agrawal, S. Agrawal, S. Badrinarayanan, A. Kumarasub- Notes in Computer Science, pp. 146–162, Springer, Berlin, Ger-
ramanian, M. Prabhakaran, and A. Sahai, “On the practical many, 2008.
security of inner product functional encryption,” in Public- [28] A. Lewko, T. Okamoto, A. Sahai, and B. Waters, “Fully secure
key cryptography-PKC, vol. 9020 of Lecture Notes in Computer functional encryption: attribute-based encryption and (hierar-
Science, pp. 777–798, Springer, Heidelberg, Germany, 2015. chical) inner product encryption,” in Advances in Cryptology:
[14] D. Boneh, A. Raghunathan, and G. Segev, “Function-private EUROCRYPT, vol. 6110 of Lecture Notes in Computer Science,
subspace-membership encryption and its applications,” in pp. 62–91, Springer, Berlin, Germany, 2010.
Advances in cryptology-ASIACRYPT, vol. 8269 of Lecture Notes [29] T. Okamoto and K. Takashima, “Fully secure functional encryp-
in Computer Science, pp. 255–275, Springer, Heidelberg, Ger- tion with general relations from the decisional linear assump-
many, 2013. tion,” in Advances in Cryptology—CRYPTO, T. Rabin, Ed., vol.
[15] D. Boneh, A. Raghunathan, and G. Segev, “Function-private 6223 of Lecture Notes in Computer Science, pp. 191–208, Springer,
identity-based encryption: hiding the function in functional Berlin, Germany, 2010.
encryption,” in Advances in Cryptology – CRYPTO 2013, vol. [30] T. Okamoto and K. Takashima, “Fully secure unbounded
8043 of Lecture Notes in Computer Science, pp. 461–478, 2013. inner-product and attribute-based encryption,” in Advances
[16] A. Bishop, A. Jain, and L. Kowalczyk, “Function-hiding inner in Cryptology—ASIACRYPT, vol. 7658 of Lecture Notes in
product encryption,” in Advances in cryptology-ASIACRYPT, Computer Science, pp. 349–366, Springer, Berlin, Heidelberg,
vol. 9452 of Lecture Notes in Computer Science, pp. 470–491, Germany, 2012.
Springer, Heidelberg, Germany, 2015. [31] T. Okamoto and K. Takashima, “Homomorphic encryption
[17] P. Datta, R. Dutta, and S. Mukhopadhyay, “Strongly full-hiding and signatures from vector decomposition,” in Pairing-based
inner product encryption,” Theoretical Computer Science, vol. cryptography-Pairing, vol. 5209 of Lecture Notes in Computer
667, pp. 16–50, 2017. Science, pp. 57–74, Springer, Berlin, Germany, 2008.
[18] J. Tomida, M. Abe, and T. Okamoto, “Efficient Functional [32] T. Okamoto and K. Takashima, “Hierarchical predicate
Encryption for Inner-Product Values with Full-Hiding Secu- encryption for inner-products,” in Advances in
rity,” in Information Security Journal, vol. 9866 of Lecture Cryptology—ASIACRYPT, vol. 5912 of Lecture Notes in
Notes in Computer Science, pp. 408–425, Springer International Computer Science, pp. 214–231, Springer, Berlin, Heidelberg,
Publishing, 2016. Germany, 2009.
[19] Q. Zhao, Q. Zeng, X. Liu, and H. Xu, “Simulation-based security [33] M. Abe, M. Chase, B. David, M. Kohlweiss, R. Nishimaki, and
of function-hiding inner product encryption,” Science China M. Ohkubo, “Constant-size structure-preserving signatures:
Information Sciences, vol. 61, no. 4, Article ID 048102, 3 pages, generic constructions and simple assumptions,” in Advances
2018. in cryptology-ASIACRYPT 2012, vol. 7658 of Lecture Notes in
Computer Science, pp. 4–24, Springer, Heidelberg, Germany,
[20] A. Sahai and H. A. Seyalioglu, “Worry-free encryption: func-
2012.
tional encryption with public keys,” in Proceedings of the 17th
ACM Conference on Computer and Communications Security, [34] J. A. Akinyele, C. Garman, I. Miers et al., “Charm: a framework
CCS’10, pp. 463–472, Chicago, Ill, USA, October 2010. for rapidly prototyping cryptosystems,” Journal of Cryptographic
Engineering, vol. 3, no. 2, pp. 111–128, 2013.
[21] S. Garg, C. Gentry, and S. Halevi, “Candidate multilinear maps
from ideal lattices,” in Advances in Cryptology—EUROCRYPT, [35] “FLINT: Fast Library for Number Theory 2.5,” http://flintlib.org.
vol. 7881 of Lecture Notes in Computer Science, pp. 1–17, Springer, [36] D. Shanks, “Class number, a theory of factorization, and genera,”
Berlin, Germany, 2013. in Proceedings of the Symposia in Pure Mathematics, vol. 20, pp.
[22] B. Waters, “A punctured programming approach to adap- 415–440, Providence, RI, USA, 1971.
tively secure functional encryption,” in Advances in cryptology- [37] M. Abdalla, R. Gay, M. Raykova, and H. Wee, “Multi-
CRYPTO, vol. 9216 of Lecture Notes in Computer Science, pp. input inner-product functional encryption from pairings,” in
678–697, Springer, Heidelberg, Germany, 2015. Advances in cryptology-EUROCRYPT, vol. 10210 of Lecture
[23] M. Abdalla, F. Bourse, A. De Caro, and D. Pointcheval, “Simple Notes in Computer Science, pp. 601–626, Springer, 2017.
functional encryption schemes for inner products,” in Public-
key cryptography-PKC 2015, vol. 9020 of Lecture Notes in
Computer Science, pp. 733–751, Springer, Heidelberg, Germany,
2015.
[24] S. Agrawal, B. t. Libert, and D. Stehlé, “Fully secure functional
encryption for inner products, from standard assumptions,” in
International Journal of

Rotating Advances in
Machinery Multimedia

The Scientific
Engineering
Journal of
Journal of

Hindawi
World Journal
Hindawi Publishing Corporation Hindawi
Sensors
Hindawi Hindawi
www.hindawi.com Volume 2018 http://www.hindawi.com
www.hindawi.com Volume 2018
2013 www.hindawi.com Volume 2018 www.hindawi.com Volume 2018 www.hindawi.com Volume 2018

Journal of

Control Science
and Engineering

Advances in
Civil Engineering
Hindawi Hindawi
www.hindawi.com Volume 2018 www.hindawi.com Volume 2018

Submit your manuscripts at


www.hindawi.com

Journal of
Journal of Electrical and Computer
Robotics
Hindawi
Engineering
Hindawi
www.hindawi.com Volume 2018 www.hindawi.com Volume 2018

VLSI Design
Advances in
OptoElectronics
International Journal of

International Journal of
Modelling &
Simulation
Aerospace
Hindawi Volume 2018
Navigation and
Observation
Hindawi
www.hindawi.com Volume 2018
in Engineering
Hindawi
www.hindawi.com Volume 2018
Engineering
Hindawi
www.hindawi.com Volume 2018
Hindawi
www.hindawi.com www.hindawi.com Volume 2018

International Journal of
International Journal of Antennas and Active and Passive Advances in
Chemical Engineering Propagation Electronic Components Shock and Vibration Acoustics and Vibration
Hindawi Hindawi Hindawi Hindawi Hindawi
www.hindawi.com Volume 2018 www.hindawi.com Volume 2018 www.hindawi.com Volume 2018 www.hindawi.com Volume 2018 www.hindawi.com Volume 2018

You might also like