Next Article in Journal
Anti-Inflammatory Flavonolignans from Triticum aestivum Linn. Hull
Next Article in Special Issue
Self-Embedding Fragile Watermarking Scheme to Detect Image Tampering Using AMBTC and OPAP Approaches
Previous Article in Journal
Trajectory Optimization of Industrial Robot Arms Using a Newly Elaborated “Whip-Lashing” Method
Previous Article in Special Issue
Hybrid Data Hiding Based on AMBTC Using Enhanced Hamming Code
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Practical Inner Product Encryption with Constant Private Key †

Department of Computer Science, National Chengchi University, Taipei 11605, Taiwan
*
Author to whom correspondence should be addressed.
Proceedings of the 17th International Joint Conference on e-Business and Telecommunications—Volume 3: SECRYPT, INSTICC; SciTePress: Setubal, Portugal, 2020; pp. 553–558, doi:10.5220/0009804605530558.
Appl. Sci. 2020, 10(23), 8669; https://doi.org/10.3390/app10238669
Submission received: 7 November 2020 / Revised: 1 December 2020 / Accepted: 1 December 2020 / Published: 3 December 2020

Abstract

:
Inner product encryption, first introduced by Katz et al., is a type of predicate encryption in which a ciphertext and a private key correspond to an attribute vector and a predicate vector, respectively. Only if the attribute and predicate vectors satisfy the inner product predicate will the decryption in this scheme be correct. In addition, the ability to use inner product encryption as an underlying building block to construct other useful cryptographic primitives has been demonstrated in the context of anonymous identity-based encryption and hidden vector encryption. However, the computing cost and communication cost of performing inner product encryption are very high at present. To resolve this problem, we introduce an efficient inner product encryption approach in this work. Specifically, the size of the private key is only one G element and one Z p element, and decryption requires only one pairing computation. The formal security proof and implementation result are also demonstrated. Compared with other state-of-the-art schemes, our scheme is the most efficient in terms of the number of pairing computations for decryption and the private key length.

1. Introduction

Inner product encryption (IPE), first introduced by Katz et al. [1], is a type of predicate encryption [2] in which a ciphertext and a private key correspond to an attribute vector x and a predicate vector y , respectively. In particular, the decryption will be correct if and only if the attribute vector and the predicate vector satisfy the inner product predicate, meaning that the inner product operation of x and y equals zero ( x , y = 0 ). Over the past decade, many IPE schemes have been proposed, such as those based on pairing [3,4,5,6,7] and lattice [8,9,10,11]. The security definition of an IPE scheme [1] can be naturally extended from the IND–CPA security of identity-based encryption [12,13,14]. More precisely, under the security approach of IPE, an adversary learns nothing about the encrypted message from a ciphertext associated with an attribute vector x if they do not own the private key associated with a predicate vector y such that x , y = 0 . Such a definition is also called the IND–CPA security for IPE scheme in some papers [15] and is defined as the payload-hiding property in [1]. Alternatively, the security definition defined in [1], called the attribute-hiding property, states that a ciphertext reveals nothing about the corresponding ciphertext attribute x . However, we emphasize that the attribute-hiding property is not an absolutely necessary property for IPE. Many IPE schemes proposed in the literature achieve only IND–CPA security/payload hiding, such as that in [15,16,17].
In addition to their usefulness in fine-grained access control, IPE schemes can be used to construct various cryptographic primitives or can be converted to more complex primitives, such as identity-based encryption [12,13,14], hidden vector encryption [2,18] and subset predicate encryption [19,20]. We refer readers to the work presented in [1,19] for details.
Although many IPE schemes have been introduced, the computing cost and communication cost of these schemes are high. In particular, the pairing operation required by existing pairing-based IPE schemes is typically linearly related to the vector length; therefore, the computational efficiency of these schemes is low. Moreover, the size of the private key of most schemes is linearly related to vector lengths. However, although the existing lattice-based IPE schemes are considered quantum-resistant, the key size of almost all schemes is too large or the message space is too small. In addition, Internet of Things devices are gradually becoming common in daily life; however, the problems mentioned in the preceding discussion make the application of an IPE scheme impractical for these resource-constrained devices. Thus, an unresolved question remains: can we obtain an efficient IPE scheme by reducing the cost of decryption and optimizing the length of the private key?

1.1. Our Contributions

Herein, we resolve the aforementioned problem by introducing an effective IPE scheme. In particular, in the proposed scheme, the length of a private key is independent of the length of the predicate vector. In addition, the decryption only requires one pairing operation; thus, the decryption is also independent of the length of the predicate vector. Rigorous proofs are provided to demonstrate that, under a modified decisional Diffie–Hellman assumption, our proposed scheme is coselective IND–CPA secure. Moreover, our proposed scheme is more efficient than other advanced schemes, as listed in Tables 1 and 3.

1.2. Related Works

1.2.1. Pairing-Based IPE Schemes

The first IPE scheme, introduced by Katz et al. [1], entails the evaluation of predicates over Z N using the inner product, where N is a composite number. After this pioneering work, many studies followed. For example, Okamoto and Takashima [3] proposed the first hierarchical predicate encryption method (or delegable predicate encryption) for inner product predicates; this provides a user with functionality to delegate more restrictive functionality to another user. Attrapadung and Libert [16] constructed an IPE scheme that solves the inefficiency problem of the previous scheme. More precisely, provided that the description of the ciphertext attribute vector is not included in the ciphertext, the ciphertext overhead of the scheme is reduced to O ( 1 ) . By combining dual system encryption [21] and dual pairing vector spaces [3] carefully, Lewko et al. [22] obtained the first fully secure IPE scheme and hierarchical predicate encryption under the n-extended decisional Diffie–Hellman assumption. However, the security of all these previous studies was based on nonstandard assumptions. To resolve this issue, Park [23] developed the first IPE scheme under the standard assumptions (i.e., decisional bilinear Diffie–Hellman and decisional linear (DLIN) assumptions). Okamoto and Takashima [24] then introduced two nonzero inner product encryption schemes that support constant-size ciphertexts and a constant-size secret key, respectively, which are adaptively secure under the DLIN assumption in the standard model. The authors also proposed the first IPE scheme that is fully secure and fully attribute-hiding [25] as well as the first unbounded IPE scheme that is also fully secure and fully attribute-hiding in the standard model under the DLIN assumption [26]. Kawiai and Takashima [27] introduced a new notion, called IPE with ciphertext conversion, which considers the security of predicate-hiding. Zhenlin and Wei [28] then introduced another concept, called multiparty cloud computation IPE with multiplicative homomorphic property, which enables an IPE scheme to support multiparty cloud computation. Kim et al. [29] proposed a new efficient IPE scheme that only requires n exponentiation and three pairing computations for decryption. Huang et al. [30] proposed the first enabled–disabled IPE, which supports timed-release services and data self-destruction. Ramanna [15] constructed two IPE schemes using tag-based quasi-adaptive noninteractive zero knowledge, where the first and second both have the property of constant-size ciphertext but only the second has the property of attribute-hiding. Zhang et al. [7] recently proposed a new IPE scheme based on a double encryption system; it has been demonstrated to achieve adaptive security under a weak attribute-hiding model.
As discussed subsequently, extensive research has focused on the developed and proposed schemes; however, the private key length of most schemes is linearly dependent on the vector length or requires many pairing operations, making these schemes impractical. Thus, determining how to construct a more practical scheme remains a critical area of research.

1.2.2. Lattice-Based IPE Schemes

To fend off attack from quantum computers in the future, Agrawal et al. [8] proposed the first IPE scheme based on the lattice hard assumption (i.e., the learning with error assumption, which is believed to be able to withstand quantum attacks); to do so, they modified an identity-based encryption approach proposed by Agrawal et al. [31]. Xagawa [9], inspired by the work of Agrawal et al., proposed an improved lattice-based IPE scheme that reduced the size of public parameters and ciphertext. Li et al. [10] proposed a lattice-based IPE scheme that further reduced the size of public parameters and ciphertext. In contrast to [9], their work reduced the size by a factor of log n , where n is the security parameter. Wang et al. [11] recently proposed the first compact IPE scheme that employs an IPE scheme [9], fully homomorphic encryption [32] and vector-encoding schemes [33]. Although these constructions are thought to be able to withstand quantum computer attacks, they are based on the learning with errors assumption, resulting in key lengths that are still too large to be practical.

1.3. Organization

The remainder of this paper is organized as follows. In Section 2, we start by discussing some preliminaries on bilinear maps, complexity assumptions and the definition of IPE. In Section 3, we then propose our IPE scheme and demonstrate its correctness. In Section 4, we subsequently demonstrate security proofs using a modified decisional Diffie–Hellman problem, and then in Section 5, we compare our approach with other state-of-the-art schemes and reveal the implementation results. In Section 6, we finally conclude the paper.

2. Preliminaries

Herein, we present the necessary preliminaries, such as notations, complex assumptions, and the definition of an IPE scheme.

2.1. Notations

Throughout this paper, we use x $ S to denote “choose an element x randomly and uniformly from the set S” and x A to denote “x is the output of the algorithm A”. Moreover, we use a to denote a vector and use a i to denote the i-th entry of vector a . The inner product of these two vectors x , y is denoted as x , y . For a prime p, we use Z p to denote the set of integers modulo p. Finally, we use N and Z to denote the set of positive integers and integers, respectively.

2.2. Bilinear Maps

Let G and G T be an additive and a multiplicative cyclic group, respectively; here, the order of G and G T is a large prime p (i.e., | G | = | G T | = p ). Then, let P be a generator of G . A bilinear map (pairing) e : G × G G T is a mapping with the following properties:
  • Bilinearity: For a , b Z p , e ( a P , b P ) = e ( P , P ) a b .
  • Nondegeneracy: P G , such that e ( P , P ) 1 G T .
  • Computability: The mapping e is efficiently computable.
In this work, we take advantage of the generalized decisional Diffie–Hellman exponent (GDDHE) problem, based on [34]. The GDDHE problem is a generic framework within which new complexity assumptions can be created. We first give an overview of the GDDHE problem. Let
  • p be a prime;
  • s , n be two positive integers;
  • P , Q F p [ x 1 , , x n ] s be two s-tuple of n-variate polynomials over F p ; and
  • f be an n-variate polynomial in F p [ X 1 , , X n ] .
Q , Q T are two ordered sets with multivariate polynomials, and thus, we define Q = ( q 1 , q 2 , , q s ) and R = ( r 1 , r 2 , , r s ) . As stated in [34], we require p 1 = q 1 = 1 to be two constant polynomials. Consider a bilinear map e : G × G G T with the generator P of G and g T = e ( P , P ) G T . For a vector ( x 1 , x 2 , , x n ) F p n , we define
Q ( x 1 , x 2 , , x n ) P = ( q 1 ( x 1 , x 2 , , x n ) P , , q s ( x 1 , x 2 , , x n ) P ) G s ,
and
g T R ( x 1 , x 2 , , x n ) = ( g T r 1 ( x 1 , x 2 , , x n ) , , g T r s ( x 1 , x 2 , , x n ) ) G T s .
By “f depends on ( Q , R ) ” we mean that there are s 2 + s constants { a i , j } i , j = 1 s and { b k } k = 1 s such that
f = i , j = 1 s a i , j q i q j + k = 1 s b k r k .
We say that f is independent of ( Q , R ) if f does not depend on ( Q , R ) .
Definition 1 (The ( Q , R , f ) -GDDHE Problem).
Given ( Q ( x 1 , , x n ) P , g T R ( x 1 , , x n ) , Z ) G s × G T s × G T , decide if Z = ? g T f ( x 1 , , x n ) .
Then, for an algorithm A , the advantage of A in solving the ( Q , R , f ) -GDDHE problem is defined as
A d v ( Q , R , f ) - GDDHE ( A ) = A Q ( x 1 , , x n ) P , g T R ( x 1 , , x n ) , g T f ( x 1 , , x n ) A Q ( x 1 , , x n ) P , g T R ( x 1 , , x n ) , Z $ G T .
Boneh et al. propose that the ( Q , R , f ) -GDDHE problem is difficult if f is independent of ( Q , R ) and demonstrate that a large class of hard problems can be fit into the framework of the GDDHE problem; for instance, the DDH problem over G T .
Definition 2 (The decisional Diffie–Hellman problem over G T (DDH G T problem)).
Let g T = e ( P , P ) be a generator of G T . Given ( P , g T , A = g T a , B = g T b , C ) G × G T 4 , where a , b $ Z p , decide whether C = g T a b or an random element from G T .
By setting Q = ( 1 ) , R = ( 1 , a , b ) , f = a b , the DDH problem over G T is equivalent to the ( Q , R , f ) -GDDHE problem. Observe that no constants exist such that the linear combination of 1 , a , b equals a b ; therefore, f is independent of ( Q , R ) . Given the result of Boneh et al., we conclude that no algorithm is available with which to solve the DDH G T problem with a nonnegligible advantage. See [34] for additional details.
Next, we present a modified version of the DDH G T problem, which will be used in the security proof.
Definition 3 (The modified decisional Diffie–Hellman problem over G T (M-DDH G T problem)).
Let g T = e ( P , P ) be a generator of G T . Given ( P , A = a P , g T , A = g T a , B = g T b , C ) G 2 × G T 4 , where a , b $ Z p , decide whether C = g T a b or a random element from G T .
Theorem 1 (The modified decisional Diffie–Hellman assumption over G T (M-DDH G T assumption)).
We say that the M-DDH G T assumption holds if there is no algorithm D for solving the M-DDH G T problem with a nonnegligible advantage.
Proof. 
Compared with the DDH G T problem, the instance of the M-DDH G T problem contains an additional element A = a P . The M-DDH G T problem is equivalent to the ( Q , R , f ) -GDDHE problem with
Q = ( 1 , a ) , R = ( 1 , a , b ) , f = a b .
No constants exist such that the linear combination of the monomials ( 1 · a ) , 1 , a , b equals the polynomial a b . Therefore, considering the the results of Boneh et al., we conclude that the M-DDH G T problem is hard. Moreover, we define the advantage for an algorithm D in solving the M-DDH G T problem as
A d v M D D H G T ( D ) = Pr [ D ( P , A , g T , A , B , C = g T a b ) = 1 ] Pr [ D ( P , A , g T , A , B , C $ G T ) = 1 ] .
 □

2.3. Definition of Inner Product Encryption

An IPE scheme consists of four algorithms: Setup, KeyGen, Encrypt and Decrypt. The details of the algorithms are as follows:
  • Setup ( 1 λ , 1 ) . Take as inputs the security parameters ( 1 λ , 1 ) , where λ , N , and the algorithm outputs the system parameter params and the master secret key msk . The descriptions of the attribute vector space A and the predicate vector space P are implicitly included in params . Moreover, the inner product operation over A and P must be well defined.
  • Encrypt ( params , x , M ) . Given the system parameter params , an attribute vector x A and a message M, the algorithm outputs a ciphertext C x for the attribute vector x .
  • KeyGen ( params , msk , y ) . Given the system parameter params and a predicate vector y P , the algorithm outputs the private key K y for the predicate vector y .
  • Decrypt ( params , C x , K y ) . Given the system parameter params , a ciphertext C x and the private key K y , the algorithm outputs a message M or a error symbol ⊥.
The correctness is defined as follows. For all λ , N , let C x Encrypt ( params , x A , M ) and let K y KeyGen ( params , msk , y P ) ; thus, we have
M Decrypt ( params , C x , K y ) if x , y = 0 ; Decrypt ( params , C x , K y ) if x , y 0 ,
where ( params , msk ) Setup ( 1 λ , 1 ) .

2.4. Security Model

Here, we first introduce IND–CPA security for IPE. The IND–CPA game of IPE for the attribute vector space A and predicate vector space P is defined as an interactive game between a challenger C and an adversary A .
  • Setup. The challenger C runs Setup ( 1 λ , 1 ) and sends the system parameter params to the adversary A .
  • Query Phase 1. The challenger polynomially answers many private key queries for y P for the adversary A by returning K y KeyGen ( params , msk , y ) .
  • Challenge. The adversary A submits an attribute vector x * A such that x * , y 0 for all y that have been queried in Query Phase 1 and two messages M 0 , M 1 with the same length to challenger C . Then, C randomly chooses β { 0 , 1 } and returns a challenge ciphertext C x * Encrypt ( params , x * , M β ) .
  • Query Phase 2. This phase is the same as Query Phase 1, except that the adversary is not allowed to make a query with y P such that x * , y 0 .
  • Guess. The adversary A outputs a bit β and wins the game if β = β .
The advantage of an adversary for winning the IND–CPA game is defined as
A d v IND - CPA ( A ) = Pr [ β = β ] 1 2 .
Definition 4 (IND–CPA Security for IPE).
We say that an IPE is IND–CPA secure if there is no probabilistic polynomial-time adversary A who wins the IND–CPA game with a nonnegligible advantage.
As we mentioned in Section 1, in some literature [1,23], the security notions for an IPE are defined with the notions “payload hiding” and “attribute hiding”. Informally, payload-hiding (or attribute-hiding) is defined to argue that a ciphertext leaks no information about the encrypted message (or attribute vector). The IND–CPA security shown in this section is equivalent to payload-hiding. We emphasize that attribute-hiding is unnecessary for an IPE scheme; in [15,16,17], schemes have been proposed satisfying only payload hiding.
We next present the selective security and the coselective security [16,35] for IPE. The selective IND-CPA (sIND-CPA) game is defined the same as the IND-CPA game, except that the adversary A is forced to commit before the Setup phase to an attribute vector x * , and A is not allowed to make private key queries with y such that x * , y 0 in both Query Phase 1 and Query Phase 2.
Definition 5 (sIND-CPA Security for IPE).
An IPE scheme is said to be sIND–CPA secure if no probabilistic polynomial-time adversary wins the sIND–CPA game with a nonnegligible advantage.
The coselective IND–CPA (csIND–CPA) game is defined as equal to the IND–CPA game, except that the adversary A is forced to commit before the Setup phase q to predicate vectors y ( 1 ) , , y ( q ) for the private key queries, where q is a polynomial in the security parameter λ and A is required to invoke the Challenge phase with an attribute vector x * such that x * , y ( j ) 0 for j = 1 , , q .
Definition 6 (csIND–CPA Security for IPE).
An IPE scheme is said to be csIND–CPA secure if no probabilistic polynomial-time adversary wins the csIND–CPA game with a nonnegligible advantage.
Coselective security can be understood as a complementary notion to selective security. In the selective security game, the adversary can learn the private key in accordance with its previous choices, whereas in the coselective security game, the adversary can choose its target after seeing the public parameter and learning the private keys of its choice. Although selective security and coselective security are weaker than full security, both notions are, by definition, incomparable in general by definition.

3. Proposed Inner Product Encryption Scheme

Our IPE scheme consists of four algorithms: Setup , KeyGen , Encrypt and Decrypt . The details of the proposed scheme are explained in the following.
  • Setup ( 1 λ , 1 ) . Given the security parameters ( 1 λ , 1 ) , where λ , N , the algorithm performs as follows.
    • Choose bilinear groups G , G T of prime order p > 2 λ . Let P and g T = e ( P , P ) be the generator of G and G T , respectively.
    • Set the predicate vector space and the attribute vector space to Z p .
    • Choose s = ( s 1 , s 2 , , s ) $ Z p .
    • Compute h ^ = ( g T s i ) i = 1 = ( h ^ 1 , , h ^ ) .
    • Output the system parameter params = ( P , g T , h ^ ) , and the master secret key msk = s .
  • Encrypt ( params , x , M ) . Given the system parameter params , a vector x = ( x 1 , x 2 , , x ) Z p , and a message M G T , the algorithm performs as follows.
    • Choose r , δ $ Z p .
    • Compute C 0 = r P , and C ^ 0 = g T r .
    • Compute C i = h ^ i r · g T δ x i · M for i = 1 to .
    • Output the ciphertext C x = ( C 0 , C ^ 0 , C 1 , C 2 , , C ) .
  • KeyGen ( params , msk , y ) . Given the system parameter params , a master secret key msk , and a vector y = ( y 1 , y 2 , , y ) Z p , where i = 1 y i 0 , the algorithm performs as follows.
    • Choose k $ Z p .
    • Compute K 0 = k P , and K 1 = s , y + k mod p .
    • Output the private key K y = ( K 0 , K 1 ) .
  • Decrypt ( params , C x , K y ) . Given the system parameter params , a ciphertext C x , and the private key K y , where y = ( y 1 , y 2 , , y ) the algorithm performs as follows.
    • Compute D 0 = e ( K 0 , C 0 ) .
    • Compute D 1 = i = 1 C i y i .
    • Compute D = D 0 · D 1 C ^ 0 K 1 .
    • Compute d = ( i = 1 y i ) 1 mod p .
    • Compute M = D d .

Correctness

The correctness of the proposed scheme is shown as follows.
  • D 0 = e ( K 0 , C 0 ) = e ( k P , r P ) = g T k r .
  • D 1 = i = 1 C i y i = i = 1 ( h ^ i r · g T δ x i · M ) y i = i = 1 ( h ^ i y i ) r · ( g T δ x i y i ) · ( M y i ) = i = 1 ( ( g T s i ) y i ) r i = 1 ( g T δ x i y i ) i = 1 ( M y i ) = g T r s , y · g T δ x , y · M i = 1 y i .
  • C ^ 0 K 1 = g T r K 1 = g T r s , y + r k .
  • D = D 0 · D 1 C ^ 0 K 1 = g T r s , y · g T δ x , y · M i = 1 y i · g T k r g T r s , y + r k = g T δ x , y · M i = 1 y i .
  • We have D = M i = 1 y i iff x , y = 0 .
  • Thus D d = M i = 1 y i · ( ( i = 1 y i ) 1 mod p ) = M .

4. Security Analysis of the Proposed Scheme

We now provide the security proof for the coselective security of the proposed IPE scheme. In the subsequent proof, we view a vector as a row vector.
Theorem 2.
The proposed scheme is csIND–CPA secure for q private key queries, where q is a polynomial in the security parameter λ, under the M-DDH G T assumption.
Proof. 
Given ( P , A = a P , g T , A = g T a , B = g T b , C ) , we build an algorithm C using the adversary A to solve the M-DDH G T problem as follows.
  • Init. The adversary A commits q predicate vectors y ( 1 ) , , y ( q ) .
  • Setup. C first finds a vector u = ( u 1 , u 2 , , u ) such that
    y 1 y 2 y q u = 0 ,
    where 0 = ( 0 , 0 , , 0 ) . Such u exists when q > . The operation is to find a vector u such that u , y j = 0 for j = 1 to q. C then chooses v = ( v 1 , v 2 , , v ) $ Z p . Next, C computes h ^ = ( B u i · g T v i ) i = 1 = ( h ^ 1 , , h ^ ) . Finally, C sets params = ( P , g T , h ^ ) and sends params to A . Note that C implicitly sets msk = s = ( s i = u i · b + v i ) i = 1 .
  • Query Phase 1. After receiving y ( i ) = ( y 1 ( i ) , , y ( i ) ) from A , where i [ 1 , 2 , , q ] , C first chooses k $ Z p and then computes K y ( i ) = ( K 0 , K 1 ) = ( k P , v , y ( i ) + k mod p ) . The correctness of the private key K y ( i ) is demonstrated as follows.
    K 1 = s , y ( i ) + k mod p = j = 1 s j y j ( i ) + k mod p = j = 1 ( u j · b + v j ) · y j ( i ) + k mod p = b j = 1 u j y j ( i ) + j = 1 v j y j ( i ) + k mod p = b u , y ( i ) + v , y ( i ) + k mod p = v , y ( i ) + k mod p .
  • Challenge. Upon receiving x * , where x * , y ( i ) 0 for i = 1 , , q , and two equal-length messages M 0 , M 1 from A , the challenger C performs the following.
    • Choose β { 0 , 1 } .
    • Choose δ $ Z p .
    • Set C 0 = A and C ^ 0 = A .
    • For i = 1 to , compute C i = ( C u i · A v i · g T δ x i * ) · M β .
    • Set the challenge ciphertext C * = ( C 0 , C ^ 0 , C 1 , C 2 , , C ) .
    • Return C * to A .
    Here, we implicitly set the randomness of the encryption procedure to a. Therefore, if C = g T a b , then we have C 0 = a P , C ^ 0 = g T a for i = 1 , , ,
    C i = ( C u i · A v i · g T δ x i * ) · M β = ( g T a b u i · g T a v i · g T δ x i * ) · M β = ( g T a ( b u i + v i ) ) · ( g T δ x i * ) · M β = h i a · g T δ x i * · M β .
    Thus, the challenge ciphertext C * is a valid ciphertext.
  • Query Phase 2. This phase is the same as Query Phase 1.
  • Guess. The adversary A outputs a bit β . The challenger C outputs 1 if A wins the game and outputs a random bit otherwise.
Assume that the adversary A wins the game with advantage ϵ :
Pr [ β = β ] 1 2 ϵ .
If C = g T a b , then the view of the adversary is identical as that in real world. Thus, we have
Pr [ C ( P , A , g T , A , B , C = g T a b ) = 1 ] = Pr [ β = β ] 1 2 + ϵ .
However, if C is a random element in G T , then the choice of β is independent from the adversary’s view and we have
Pr [ C ( P , A , g T , A , B , C $ G T ) = 1 ] = Pr [ β = β ] = 1 2 .
Therefore, the advantage of C in solving the M-DDH G T problem is
Pr [ C ( P , A , g T , A , B , C = g T a b ) = 1 ] Pr [ C ( P , A , g T , A , B , C $ G T ) = 1 ] ( 1 2 + ϵ ) 1 2 ϵ .
This means that if there is an adversary winning the game with nonadvantage ϵ , then there is an algorithm C solving the M-DDH G T problem with a probability greater than ϵ . □

5. Efficiency Analysis and Implementation Results

Herein, we compare the efficiency of the proposed IPE scheme with the schemes proposed in [1,3,5,6,7,15,16,22,23,24,25,26,27,28,29,30,36] (Because [4,17] are the complete versions of [16,24], we only compare our work with [16,24]). As shown in Table 1, we compare our scheme to others in two aspects: the size of the private key and the number of pairing operations for decryption. The type of group order is also presented because the efficiency of prime order groups is higher than that of composite order bilinear groups.
As is evident in Table 1, our proposed scheme has the shortest private key length and smallest number of pairings. Moreover, both the private key length and the number of pairings in our proposed scheme are independent of the length of the predicate and attribute vectors. The most efficient existing scheme is [29], where the private key length is three group elements and three pairings are needed for decryption. In our scheme, the private key is only an element of G and an element of Z p , and only one pairing is necessary during decryption. Furthermore, in [5], the private key length ( 2 m | G | ) and the number of pairings ( 2 m ) are independent of the lengths of the vectors, where m is the leakage-resilience parameter. However, m must be at least equal to or greater than 2. Therefore, the private key length and pairing number are still larger than those obtained with our approach (this is because their scheme degenerates to a conventional IPE scheme without leakage resilience when m = 1 ).
We also implemented our scheme and the schemes of [15,17,29] to compare efficiency. We chose these three schemes for the following reasons:
  • Among all the existing IPE schemes, the first scheme of [16] requires the smallest number of pairings for decryption (only two pairings required);
  • Among the schemes supporting constant private key length, the schemes of [15,29] require the smallest number of pairings for decryption (only three pairings required).
The environment of the implementation is presented in Table 2, and the implementation results are shown in Table 3. We implemented these schemes by using the Charm-Crypto library [37] and Python language. For schemes constructed over symmetric paring groups (the approach in [16] and our method), we selected the pairing group SS512 in [38] (also known as type A groups), and for the schemes constructed over asymmetric pairing groups (in [15,29]), we chose the pairing group BN254 in [39] (also known as type F groups). The SS512 group is a supersingular elliptic curve group where the size of the base field order is 512 bits and the embedding degree is two. For a bilinear map e : G × G G T over the SS512 group, the bit lengths of elements in G and G T are 64 and 128 bytes, respectively. In the case of the BN254 group, the size of the base field order is 256 bits and the embedding degree is 12. For a bilinear map e : G 1 × G 2 G T over the BN254 group, the bit lengths of elements in G 1 , G 2 , and G T are 64, 128, and 384 bytes, respectively. For the length of predicate and attribute vectors, we chose = 100 . As evident in Table 3, the encryption and decryption algorithms of our scheme were highly efficient. For decryption and encryption, only 10 and 20 ms was required, respectively. Our encryption algorithm was 5, 8.5, and 13 times faster than that in [15,16,29], respectively, and our decryption algorithm was 10, 14, and 14 times faster than that in [15,16,29], respectively. Moreover, our private key length was 86, 2.6, and 4.3 times shorter than that in [15,16,29], respectively. However, as a trade-off, the length of the ciphertext in our scheme was the largest among these schemes.

6. Conclusions

In this work, an efficient IPE scheme in which the size of the private keys and the number of pairings for decryption are constant is introduced; moreover, this scheme is coselective IND–CPA secure under the modified decisional Diffie–Hellman assumption. Comparison and experimental results are also provided to illustrate that the size and computing cost of this scheme are small. In future works, we aim to improve the efficiency by reducing the ciphertext length and provide a security proof for stronger security concerns under standard assumptions. Because the proposed scheme is based on bilinear pairing, it cannot resist quantum attacks, unlike lattice-based IPE schemes. In future work, we will explore how to construct an efficient and practical quantum-resistant IPE scheme.

Author Contributions

Conceptualization, Y.-F.T. and Z.-Y.L.; Methodology, Y.-F.T. and Z.-Y.L.; Investigation, Z.-Y.L.; Writing—Original Draft Preparation, Z.-Y.L.; Writing—Review and Editing, Y.-F.T. and R.T.; Supervision, R.T.; Project Administration, R.T.; Funding Acquisition, Y.-F.T. and R.T. All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported by the Ministry of Science and Technology, Taiwan (ROC), under Project Numbers MOST 108-2218-E-004-001-, MOST 108-2218-E-004-002-MY2, MOST 109-2218-E-011-007-, and by Taiwan Information Security Center at National Sun Yat-sen University (TWISC@NSYSU).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Katz, J.; Sahai, A.; Waters, B. Predicate Encryption Supporting Disjunctions, Polynomial Equations, and Inner Products. In Advances in Cryptology—EUROCRYPT 2008, LNCS; Smart, N., Ed.; Springer: Berlin/Heidelberg, Germany, 2008; Volume 4965, pp. 146–162. [Google Scholar] [CrossRef] [Green Version]
  2. Boneh, D.; Waters, B. Conjunctive, Subset, and Range Queries on Encrypted Data. In Theory of Cryptography, LNCS; Vadhan, S.P., Ed.; Springer: Berlin/Heidelberg, Germany, 2007; Volume 4392, pp. 535–554. [Google Scholar] [CrossRef] [Green Version]
  3. Okamoto, T.; Takashima, K. Hierarchical Predicate Encryption for Inner-Products. In Advances in Cryptology—ASIACRYPT 2009, LNCS; Matsui, M., Ed.; Springer: Berlin/Heidelberg, Germany, 2009; Volume 5192, pp. 214–231. [Google Scholar] [CrossRef] [Green Version]
  4. Okamoto, T.; Takashima, K. Achieving Short Ciphertexts or Short Secret-keys for Adaptively Secure General Inner-product Encryption. Des. Codes Cryptogr. 2015, 77, 725–771. [Google Scholar] [CrossRef] [Green Version]
  5. Kurosawa, K.; Phong, L.T. Anonymous and Leakage Resilient IBE and IPE. Des. Codes Cryptogr. 2017, 85, 273–298. [Google Scholar] [CrossRef]
  6. Chen, J.; Gong, J.; Wee, H. Improved Inner-Product Encryption with Adaptive Security and Full Attribute-Hiding. In Advances in Cryptology—ASIACRYPT 2018, LNCS; Peyrin, T., Galbraith, S., Eds.; Springer: Berlin/Heidelberg, Germany, 2018; Volume 1127, pp. 673–702. [Google Scholar] [CrossRef]
  7. Zhang, Y.; Li, Y.; Wang, Y. Efficient Inner Product Encryption for Mobile Client with Constrained Capacity. Int. J. Innov. Comput. I 2019, 15, 209–226. [Google Scholar] [CrossRef]
  8. Agrawal, S.; Freeman, D.M.; Vaikuntanathan, V. Functional Encryption for Inner Product Predicates from Learning with Errors. In Advances in Cryptology—ASIACRYPT 2011, LNCS; Lee, D.H., Wang, X., Eds.; Springer: Berlin/Heidelberg, Germany, 2011; Volume 7073, pp. 21–40. [Google Scholar] [CrossRef] [Green Version]
  9. Xagawa, K. Improved (Hierarchical) Inner-Product Encryption from Lattices. In Public-Key Cryptography—PKC 2013, LNCS; Kurosawa, K., Hanaoka, G., Eds.; Springer: Berlin/Heidelberg, Germany, 2013; Volume 7778, pp. 235–252. [Google Scholar] [CrossRef]
  10. Li, J.; Zhang, D.; Lu, X.; Wang, K. Compact (Targeted Homomorphic) Inner Product Encryption from LWE. In Information and Communications Security, LNCS; Qing, S., Mitchell, C., Chen, L., Liu, D., Eds.; Springer: Cham, Switzerland, 2017; Volume 10631, pp. 132–140. [Google Scholar] [CrossRef]
  11. Wang, Z.; Fan, X.; Wang, M. Compact Inner Product Encryption from LWE. In Information and Communications Security, LNCS; Qing, S., Mitchell, C., Chen, L., Liu, D., Eds.; Springer: Cham, Switzerland, 2018; Volume 10631, pp. 141–153. [Google Scholar] [CrossRef]
  12. Shamir, A. Identity-Based Cryptosystems and Signature Schemes. In Advances in Cryptology—CRYPTO 1984, LNCS; Springer: Berlin/Heidelberg, Germany, 1985; Volume 196, pp. 47–53. [Google Scholar] [CrossRef] [Green Version]
  13. Boneh, D.; Franklin, M. Identity-Based Encryption from the Weil Pairing. In Advances in Cryptology—CRYPTO 2001, LNCS; Kilian, J., Ed.; Springer: Berlin/Heidelberg, Germany, 2001; Volume 2139, pp. 213–229. [Google Scholar] [CrossRef] [Green Version]
  14. Boneh, D.; Boyen, X. Efficient Selective-ID Secure Identity Based Encryption without Random Oracles. In Advances in Cryptology—EUROCRYPT 2004, LNCS; Cachin, C., Camenisch, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2004; Volume 3027, pp. 223–238. [Google Scholar] [CrossRef] [Green Version]
  15. Ramanna, S.C. More Efficient Constructions for Inner-Product Encryption. In Applied Cryptography and Network Security, LNCS; Manulis, M., Sadeghi, A.R., Schneider, S., Eds.; Springer: Cham, Switzerland, 2016; Volume 9696, pp. 231–248. [Google Scholar] [CrossRef] [Green Version]
  16. Attrapadung, N.; Libert, B. Functional Encryption for Inner Product: Achieving Constant-Size Ciphertexts with Adaptive Security or Support for Negation. In Public Key Cryptography—PKC 2010, LNCS; Nguyen, P.Q., Pointcheval, D., Eds.; Springer: Berlin/Heidelberg, Germany, 2010; Volume 6056, pp. 384–402. [Google Scholar] [CrossRef]
  17. Attrapadung, N.; Libert, B. Functional Encryption for Public-attribute Inner Products: Achieving Constant-size Ciphertexts with Adaptive Security or Support for Negation. J. Math. Cryptol. 2012, 5, 115–158. [Google Scholar] [CrossRef]
  18. Lee, K. Efficient Hidden Vector Encryptions and Its Applications. arXiv 2017, arXiv:1702.07456. [Google Scholar]
  19. Katz, J.; Maffei, M.; Malavolta, G.; Schröder, D. Subset Predicate Encryption and Its Applications. In Cryptology and Network Security, LNCS; Capkun, S., Chow, S.S.M., Eds.; Springer: Cham, Switzerland, 2018; Volume 11261, pp. 115–134. [Google Scholar] [CrossRef]
  20. Chatterjee, S.; Mukherjee, S. Large Universe Subset Predicate Encryption based on Static Assumption (without Random Oracle). In Topics in Cryptology—CT-RSA 2019, LNCS; Matsui, M., Ed.; Springer: Cham, Switzerland, 2019; Volume 11405, pp. 62–82. [Google Scholar] [CrossRef]
  21. Waters, B. Dual System Encryption: Realizing Fully Secure IBE and HIBE under Simple Assumptions. In Advances in Cryptology—CRYPTO 2009, LNCS; Springer: Berlin/Heidelberg, Germany, 2009; Volume 5677, pp. 619–636. [Google Scholar] [CrossRef] [Green Version]
  22. Lewko, A.; Okamoto, T.; Sahai, A.; Takashima, K.; Waters, B. Fully Secure Functional Encryption: Attribute-Based Encryption and (Hierarchical) Inner Product Encryption. In Advances in Cryptology—EUROCRYPT 2010, LNCS; Gilbert, H., Ed.; Springer: Berlin/Heidelberg, Germany, 2010; Volume 6110, pp. 62–91. [Google Scholar] [CrossRef] [Green Version]
  23. Park, J.H. Inner-Product Encryption under Standard Assumptions. Des. Codes Cryptogr. 2011, 58, 235–257. [Google Scholar] [CrossRef]
  24. Okamoto, T.; Takashima, K. Achieving Short Ciphertexts or Short Secret-Keys for Adaptively Secure General Inner-Product Encryption. In Cryptology and Network Security, LNCS; Lin, D., Tsudik, G., Wang, X., Eds.; Springer: Berlin/Heidelberg, Germany, 2011; Volume 7092, pp. 138–159. [Google Scholar] [CrossRef] [Green Version]
  25. Okamoto, T.; Takashima, K. Adaptively Attribute-Hiding (Hierarchical) Inner Product Encryption. In Advances in Cryptology—EUROCRYPT 2012, LNCS; Pointcheval, D., Johansson, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7237, pp. 591–608. [Google Scholar] [CrossRef] [Green Version]
  26. Okamoto, T.; Takashima, K. Fully Secure Unbounded Inner-Product and Attribute-Based Encryption. In Advances in Cryptology—ASIACRYPT 2012, LNCS; Wang, X., Sako, K., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7658, pp. 349–366. [Google Scholar] [CrossRef] [Green Version]
  27. Kawai, Y.; Takashima, K. Predicate- and Attribute-Hiding Inner Product Encryption in a Public Key Setting. In Pairing-Based Cryptography—Pairing 2013, LNCS; Cao, Z., Zhang, F., Eds.; Springer: Cham, Switzerland, 2014; Volume 836, pp. 113–130. [Google Scholar] [CrossRef] [Green Version]
  28. Zhenlin, T.; Wei, Z. A Predicate Encryption Scheme Supporting Multiparty Cloud Computation. In Proceedings of the 2015 International Conference on Intelligent Networking and Collaborative Systems, Taipei, Taiwan, 2–4 September 2015; pp. 252–256. [Google Scholar] [CrossRef]
  29. Kim, I.; Hwang, S.O.; Park, J.H.; Park, C. An Efficient Predicate Encryption with Constant Pairing Computations and Minimum Costs. IEEE Trans. Comput. 2016, 65, 2947–2958. [Google Scholar] [CrossRef]
  30. Huang, S.Y.; Fan, C.I.; Tseng, Y.F. Enabled/Disabled Predicate Encryption in Clouds. Future Gener. Comput. Syst. 2016, 62, 148–160. [Google Scholar] [CrossRef]
  31. Agrawal, S.; Boneh, D.; Boyen, X. Efficient Lattice (H)IBE in the Standard Model. In Advances in Cryptology—EUROCRYPT 2010, LNCS; Gilbert, H., Ed.; Springer: Berlin/Heidelberg, Germany, 2010; Volume 6110, pp. 553–572. [Google Scholar] [CrossRef] [Green Version]
  32. Gentry, C.; Sahai, A.; Waters, B. Homomorphic Encryption from Learning with Errors: Conceptually-simpler, Asymptotically-faster, Attribute-based. In Advances in Cryptology—CRYPTO 2013, LNCS; Springer: Berlin/Heidelberg, Germany, 2013; Volume 8042, pp. 75–92. [Google Scholar] [CrossRef] [Green Version]
  33. Apon, D.; Fan, X.; Liu, F.H. Vector Encoding over Lattices and Its Applications. IACR Cryptol. EPrint Arch. 2017, 2017, 455. Available online: https://eprint.iacr.org/2017/455 (accessed on 14 January 2020).
  34. Boneh, D.; Boyen, X.; Goh, E.J. Hierarchical Identity Based Encryption with Constant Size Ciphertext. In Advances in Cryptology—EUROCRYPT 2005, LNCS; Cramer, R., Ed.; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3494, pp. 440–456. [Google Scholar] [CrossRef] [Green Version]
  35. Attrapadung, N. Dual System Encryption via Doubly Selective Security: Framework, Fully Secure Functional Encryption for Regular Languages, and More. In Advances in Cryptology—EUROCRYPT 2014, LNCS; Nguyen, P.Q., Oswald, E., Eds.; Springer: Berlin/Heidelberg, Germany, 2014; Volume 8441, pp. 557–577. [Google Scholar] [CrossRef] [Green Version]
  36. Xiao, S.; Ge, A.; Zhang, J.; Ma, C.; Wang, X. Asymmetric Searchable Encryption from Inner Product Encryption. In Advances on P2P, Parallel, Grid, Cloud and Internet Computing; Xhafa, F., Barolli, L., Amato, F., Eds.; Springer: Cham, Switzerland, 2017; pp. 123–132. [Google Scholar] [CrossRef]
  37. Akinyele, J.A.; Garman, C.; Miers, I.; Pagano, M.W.; Rushanan, M.; Green, M.; Rubin, A.D. Charm: A Framework for Rapidly Prototyping Cryptosystems. J. Cryptogr. Eng. 2013, 3, 111–128. [Google Scholar] [CrossRef] [Green Version]
  38. Lee, K.; Park, J.H. Identity-Based Revocation from Subset Difference Methods under Simple Assumptions. IEEE Access 2019, 7, 60333–60347. [Google Scholar] [CrossRef]
  39. Barreto, P.S.L.M.; Naehrig, M. Pairing-Friendly Elliptic Curves of Prime Order. In Selected Areas in Cryptography, LNCS; Preneel, B., Tavares, S., Eds.; Springer: Berlin/Heidelberg, Germany, 2006; Volume 3897, pp. 319–331. [Google Scholar] [CrossRef] [Green Version]
Table 1. Comparison of our scheme’s efficiency with that of other schemes. The vector length for an IPE scheme is denoted by ; the bit lengths of the representations for an element in Z p and G are denoted by | Z p | and | G | , respectively; the leakage resilience parameter is denoted by m.
Table 1. Comparison of our scheme’s efficiency with that of other schemes. The vector length for an IPE scheme is denoted by ; the bit lengths of the representations for an element in Z p and G are denoted by | Z p | and | G | , respectively; the leakage resilience parameter is denoted by m.
SchemePrivate Key LengthNumber of Pairings for DecryptionGroup Order
 [1] ( 2 + 1 ) | G | 2 + 1 Composite
[3] ( + 3 ) | G | + 3 Prime
[16]-1 ( + 1 ) | G | 2Prime
[16]-2 ( + 6 ) | G | + ( 1 ) | Z p | 9Prime
[22] ( 2 + 3 ) | G | 2 + 3 Prime
[24]-1 ( 4 + 1 ) | G | 9Prime
[24]-2 9 | G | 9Prime
[24]-3 11 | G | 11Prime
[23] ( 4 + 2 ) | G | 4 + 2 Prime
[25] ( 4 + 2 ) | G | 4 + 2 Prime
[26]-1 ( 15 + 5 ) | G | 15 + 5 Prime
[26]-2 ( 21 + 9 ) | G | 21 + 9 Prime
[27] 6 | G | 6 Prime
[28] | G | Composite
[29] 3 | G | 3Prime
[30] ( 4 + 2 ) | G | 4 + 4 Prime
[15]-1 ( 2 + 1 ) | G | + ( 1 ) | Z p | 3Prime
[15]-2 5 | G | 3Prime
[5] 2 m | G | 2 m Prime
[36] ( 4 + 5 ) | G | 4 + 5 Prime
[6]-1 5 | G | 5Prime
[6]-2 7 | G | 7Prime
[7] ( + 1 ) | G | + 1 Composite
Ours 1 | G | + 1 | Z p | 1Prime
Table 2. Environment of the implementation.
Table 2. Environment of the implementation.
Specification
OSUbuntu 18.04 LTS
CPUIntel i7-4790 3.6 GHz
RAM8 gb
LanguagePython 3.6
LibraryCharm-Crypto v0.50
Table 3. Implementation results.
Table 3. Implementation results.
SchemeEncryption Time (ms)Decryption Time (ms)Private Key Length (kb)Ciphertext Length (kb)
[16]10010031.70.937
[29]1701400.95517.5
[15]2601401.5925.9
Ours20100.3731.3
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Tseng, Y.-F.; Liu, Z.-Y.; Tso, R. Practical Inner Product Encryption with Constant Private Key. Appl. Sci. 2020, 10, 8669. https://doi.org/10.3390/app10238669

AMA Style

Tseng Y-F, Liu Z-Y, Tso R. Practical Inner Product Encryption with Constant Private Key. Applied Sciences. 2020; 10(23):8669. https://doi.org/10.3390/app10238669

Chicago/Turabian Style

Tseng, Yi-Fan, Zi-Yuan Liu, and Raylin Tso. 2020. "Practical Inner Product Encryption with Constant Private Key" Applied Sciences 10, no. 23: 8669. https://doi.org/10.3390/app10238669

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop