Next Article in Journal
Distributed Steganography in PDF Files—Secrets Hidden in Modified Pages
Previous Article in Journal
Event-Triggered Adaptive Fault Tolerant Control for a Class of Uncertain Nonlinear Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

New Constructions of Identity-Based Dual Receiver Encryption from Lattices

State Key Laboratory of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China
*
Author to whom correspondence should be addressed.
Entropy 2020, 22(6), 599; https://doi.org/10.3390/e22060599
Submission received: 7 April 2020 / Revised: 11 May 2020 / Accepted: 26 May 2020 / Published: 28 May 2020
(This article belongs to the Section Information Theory, Probability and Statistics)

Abstract

:
Dual receiver encryption (DRE), being originally conceived at CCS 2004 as a proof technique, enables a ciphertext to be decrypted to the same plaintext by two different but dual receivers and becomes popular recently due to itself useful application potentials such secure outsourcing, trusted third party supervising, client puzzling, etc. Identity-based DRE (IB-DRE) further combines the bilateral advantages/facilities of DRE and identity-based encryption (IBE). Most previous constructions of IB-DRE are based on bilinear pairings, and thus suffers from known quantum algorithmic attacks. It is interesting to build IB-DRE schemes based on the well-known post quantum platforms, such as lattices. At ACISP 2018, Zhang et al. gave the first lattice-based construction of IB-DRE, and the main part of the public parameter in this scheme consists of 2 n + 2 matrices where n is the bit-length of arbitrary identity. In this paper, by introducing an injective map and a homomorphic computation technique due to Yamada at EUROCRYPT 2016, we propose another lattice-based construction of IB-DRE in an even efficient manner: The main part of the public parameters consists only of 2 p n 1 p + 2 matrices of the same dimensions, where p ( 2 ) is a flexible constant. The larger the p and n, the more observable of our proposal. Typically, when p = 2 and n = 284 according to the suggestion given by Peikert et al., the size of public parameters in our proposal is reduced to merely 12% of Zhang et al.’s method. In addition, to lighten the pressure of key generation center, we extend our lattice-based IB-DRE scheme to hierarchical scenario. Finally, both the IB-DRE scheme and the HIB-DRE scheme are proved to be indistinguishable against adaptively chosen identity and plaintext attacks (IND-ID-CPA).

1. Introduction

With the rapid development of the internet of things, more and more user tend to encrypt their data and then outsource their data to the cloud server. These outsourced data may contain some sensitive information such as financial, medical data, national security-related data, etc. Therefore, a reliable third party or government department is required to supervise these data, and if it is necessary, the regulator can decrypt the ciphertext and view the plaintext information of these data. Dual receiver encryption (DRE) [1] allows that a ciphertext can be decrypted to the same plaintext by two independent receivers. For the above scenario, DRE is a good handy tool. It not only guarantees the encrypted transmission and storage of data, but also enables data to be supervised by a reliable third party. In addition, DRE also can form a joint program with other cryptographic scheme. In [1], Diament et al. combined a DRE scheme with a signature scheme to achieve that a user can use a same public/secret key pair to complete the encryption and signature functions. In 2014, Chow et al. [2] proposed a DRE-PKE joint scheme and appended some stable properties to the DRE and made it more practical in the construction of plaintext-awareness public key encryption. Furthermore, DRE also can be used to construct a client puzzles mechanism based on decryption. Design client puzzles mechanism between the clients and severs can prevent servers from suffering from resource-depletion attacks. Diament et al. pointed out in [1] that the client puzzles mechanism can be applied to secure transport protocol, e.g., TLS. The DRE cryptographic primitive can be easily construct a deniable authentication system [3]. As a special kind of PKE, DRE also face the general certificate management problem. To solve the problem of certificate management in the traditional PKE, Zhang et al. [4] gave an identity-based variant version of DRE, named identity-based dual receiver encryption (IB-DRE). In this scheme, they constructed two IB-DRE schemes based on the identity-based encryption (IBE) scheme in [5].
However, all the above (IB)-DRE schemes are based on bilinear pairing groups. Since Shor [6] proposed a polynomial time quantum algorithm in 1997 which can solve discrete logarithm problem (DLP) and prime factorization. This type of bilinear pairing groups based schemes are not secure and can not resist the quantum attack. Since then, scholars have begun to study post-quantum cryptography (PQC). Lattices-based cryptography is a research hotspot for PQC. It has the following properties: high efficiency, simplicity, parallelization and average case/worst case equivalence property. In 1997, Ajtai and Dwork [7] first constructed a public key encryption scheme by using the problem on lattices. This scheme relies on the worst-case hardness of uSVP [8], and the key and ciphertext size is too large. Until 2005, Regev [9] presented another public key encryption scheme which security based on the learning with errors (LWE) problem. He proved that a LWE-based public key encryption can resist quantum attack. Then the researchers begin to study LWE-based public key encryption scheme. Based on LWE, many public key encryption schemes have been proposed, such as LWE-based IBE schemes [10,11,12,13,14], LWE-based attribute-based encryption schemes [15,16,17,18,19]. To our knowledge, the first lattice-based IB-DRE scheme was proposed in 2018 [20] (Next we use how Zhang18 denotes it). The public parameters size in this scheme consists of 2 n + 2 matrices which lead a high storage cost and communication cost. Additionally, when some users apply for their privacy key to the key generation center (KGC) at the same time, KGC may face great system pressure. Therefore, in order to reduce the storage cost, it is meaningful to construct a lattice-based IB-DRE with short public parameters and then extend it a hierarchical scenario to reduce the stress of KGC.
OUR CONTRIBUTION. In this paper, we firstly propose a new lattice-based construction of IB-DRE scheme which can resist quantum attack. By using a homomorphic computation technique and an injective map function, comparing to the first lattice-based IB-DRE [20], we reduce the public parameters size from 2 n + 2 matrices to 2 p n 1 p + 2 matrices where n is the bit-length of arbitrary identity and p ( 2 ) is a flexible constant. By choosing appropriate p and n, the p p size can be reduced by almost at least 88% compared to Zhang18. In addition, considering the hierarchical scenario, we extend it to a hierarchical IB-DRE (HIB-DRE), which is not considered in Zhang18. A HIB-DRE can reduce the stress of the key generation center (KGC). The public parameters size of the HIB-DRE is also reduced from 2 d n + 2 matrices to 2 d p n 1 p + 2 matrices where d is the maximum hierarchy depth. Finally, our lattice-based IB-DRE scheme and HIB-DRE scheme are proved to be indistinguishable against adaptively chosen identity and plaintext attacks (IND-ID-CPA) in the standard model. Additionally, to improve the encryption efficiency, our two schemes also can convert to a multi-bit encryption scheme by using the same method in [11].

2. Preliminarise

Notation. We use lowercase black italic alphabet for vectors, as in u , uppercase black italic alphabet for matrices, as in A . [ n ] denotes a integer set { 1 , 2 , , n } . Z q denotes an integer set of mod q residue class. u Z q n is a n-dimension column vector. A n × m matrix is denoted by A Z q n × m where A = ( a 1 , a 2 , , a m ) . A denotes the 2 -norm length of the longest column of A . A ˜ denotes the Gram–Schmidt orthogonalization of the vectors a 1 , , a m . We refer to A ˜ as the Gram–Schmidt norm of A .

2.1. Integer Lattice

Definition 1 (Lattices).
b 1 , b 2 , , b n R m are n linearly independent vectors, and the lattice Λ generated by the following formula:
Λ = L ( B ) = { i = 1 n x i b i : x i Z , ( i = 1 , , n ) } .
Note that B = [ b 1 , b 2 , , b n ] is a basis of Λ, n is the rank and m is the dimension.
Definition 2 (Integer lattices).
For prime q , A Z q n × m , and u Z q n , define:
Λ q ( A ) = { y Z m s . t . s Z q n , A s = y ( mod q ) } .
Λ q ( A ) = { y Z m s . t . A y = 0 ( mod q ) } .
Λ q u ( A ) = { y Z m s . t . A y = u ( mod q ) } .

2.2. Discrete Gaussians

Definition 3 (Discrete Gaussian).
For a positive integer s R and a vector c R m , we defined a Gaussian distribution with center c and variance s as follow:
D Λ , σ , c = ρ σ , c ( x ) ρ σ , c ( Λ ) = ρ σ , c ( x ) x Λ ρ σ , c ( x )
where σ > 0 is a parameter, and ρ σ , c ( x ) = exp ( π x c 2 σ 2 ) .
Lemma 1
([10]). Let q 2 , A Z q n × m with m > n , T A Z q m × m be a basis for Λ q ( A ) and σ T A ˜ ω ( log m ) . Then for c R m and u Z q n , we have:
(1). 
Pr [ e D Λ q u ( A ) , σ : e > σ m ] n e g l ( n ) .
(2). 
There is a probabilistic polynomial-time (PPT) algorithm SampleGaussian ( A , T A , σ, c ) that outputs a vector e Λ q ( A ) drawn from a distribution statistically close to D Λ , σ , c .
(3). 
There is a PPT algorithm SamplePre ( A , T A , u , c ) that outputs a vector e Λ q u ( A ) sampled from a distribution statistically close to D Λ q u ( A ) , σ .

2.3. Related Algorithms

For any integer q , n , m and q is a prime, there are PPT algorithms such that:
(1).
TrapGen ( q , n ) ([21]): outputs a pair matrices A Z q n × m and T A Z q m × m where T A is a basis for Λ q ( A ) and m 3 ( 1 + δ ) n log q for some δ > 0 .
(2).
SampleLeft ( A , M 1 , T A , u , σ ) ([11]): given A Z q n × m , M 1 Z q n × m 1 , a basis T A Z q m × m for Λ q ( A ) , u Z q n and a Gaussian parameter σ > T A ˜ ω ( log ( m + m 1 ) ) , outputs a vector e Z m + m 1 and the vector e is not statistically distinguishable from D Λ q u ( F 1 ) , σ where F 1 = [ A | M 1 ] and F 1 · e = u ( mod q ) .
(3).
SampleRight ( A , B , R , T B , u , σ ) ([11]): given A Z q n × k , B Z q n × m , R Z q k × m , a basis T B for Λ q ( B ) , u Z q n and a Gaussian parameter σ > T B ˜ s R ω ( log m ) where s R = R ˜ < O ( m ) , outputs a vector e Z m + k and the vector e is not statistically distinguishable from D Λ q u ( F 2 ) , σ where F 1 = [ A | A R + B ] and F 2 · e = u ( mod q ) .
Note that in our scheme, we let B = y G where y Z q and y 0 . Then taking T G as the input basis for the lattices Λ q ( G ) .
Lemma 2
([22]). For any integer q 2 , n 1 , w = n t , t = log 2 q , there is a gadget matrix G Z q n × w such that:
  • The lattice Λ q ( G ) has a known basis T G where T G ˜ 5 .
  • There is a PPT algorithm G 1 that takes input a vector u Z q n and output a vector x = G 1 ( u ) where x { 0 , 1 } w and G x = u . Note that G 1 is a function, not a matrix.

2.4. Homomorphic Computation

The ideal of homomorphic trapdoor computation is introduced in [14].
Let p be a positive integer, it has a function Eval : ( Z q n × m ) p Z q n × m which inputs p matrices A 1 , A 2 ,⋯, A p and outputs a matrix.
Eval p ( A 1 , A 2 , , A p ) = A 1 p = 1 A 1 · G 1 ( Eval p 1 ( A 2 , , A p ) ) p 2
Here G 1 is a deterministic function that has the following feature:
G 1 : Z q n × m ( 0 , 1 ) m × m U X , s . t . G X = U
Lemma 3
([14]). Let A , A 1 , , A p Z q n × m and R 1 , , R p Z m × m , for i [ p ] , it has A i = A R i + y i G . In addition, assume that R i m , | y i | δ and δ > m , there exists T r a p E v a l algorithm that takeing R 1 , , R p , y 1 , , y p as input and outputs a matrix R such that E v a l p ( A 1 , A 2 , , A p ) = A R + y 1 y p · G and R m p δ p 1 .

2.5. LWE Hardness Assumption

Definition 4.
Give a prime q, a positive integer n and a distribution Ψ ¯ α over Z q . A ( Z q , n , Ψ ¯ α ) -LWE problem instance consists of access to an unspecified challenge oracle O , being either a truly random sampler O s or a noisy pseudo-random sampler O s carrying some constant random secret key s Z q , whose behaviors are as follows, respectively:
O s : Outputs samples of the form ( w i , v i ) = ( w i , w i s + χ i ) Z q n × Z q , where s Z q n is a uniformly distributed secret key, χ i is a noise component from Ψ ¯ α i , and w i is uniform in Z q n .
O s : Outputs truly uniform random samples ( w i , v i ) from Z q n × Z q .
The ( Z q , n , Ψ ¯ α ) -LWE problem allows a number of queries to the challenge oracle O . We say an algorithm A decides a ( Z q , n , Ψ ¯ α ) -LWE problem if LWE A d v [ A ] = | Pr [ A O s = 1 ] Pr [ A O s = 1 ] | is non-negligible for a random s Z q n .
Theorem 1
([9]). If there exists an efficient, possibly quantum, algorithm for deciding the ( Z q , n , Ψ ¯ α ) -LWE problem for q > 2 n / α then there is an efficient quantum algorithm for approximating the SIVP and GapSVP problems to within O ˜ ( n / α ) factors in the 2 norm, in the worst case.
Lemma 4
([10]). Let e be some vector in Z m and let y R Ψ ¯ α m . Then the quality | e y | treated as an integer in [ 0 , q 1 ] satisfies:
| e y | e q α ω ( log m ) + e m / 2
with all but negligible probability in m.
As a special case, Lemma 4 shows that if x R Ψ ¯ α is treated as an integer in [ 0 , q 1 ] satisfies
| x | q α ω ( log m ) + 1 / 2
with all but negligible probability in m.

2.6. Three Basic Lemmas

Lemma 5
([11]). For a random matrix R { 1 , 1 } k × m , there is a universal constant C such that:
Pr [ R > C k + m ] < e ( k + m ) .
Lemma 6
(Leftover Hash Lemma [11]). For m > ( n + 1 ) log q + ω ( log n ) and a prime q > 2 . Let R { 1 , 1 } m × k , A Z q n × m and B Z q n × k be uniformly random matrices. Then the distribution ( A , A R , R w ) is negl ( n ) -close to the distribution ( A , B , R w ).
Lemma 7
(Smudging out Lemma [14]). Let x 0 Z m be a fixed vector and x 0 δ . x { B , B } m is a uniformly random vector. Then the two distributions x 0 and x 0 + x are within statistical distance m δ / B .

2.7. Definitions of (H)IB-DRE and Adaptive-ID Security Model

Identity-based dual receiver encryption (IB-DRE) enables a ciphertext to be decrypted to the same plaintext by two different receivers since it embeds two independent user’s identity in the encrypt phase. Considering the definition of IB-DRE in [20]. We give the following definition of IB-DRE. An IB-DRE scheme consists the following four algorithms.
(1).
Setup ( 1 n )→ ( p p , m s k ): on input the security parameter 1 n . This algorithm outputs the public parameters p p and master secret key m s k .
(2).
KeyGen ( p p , id , m s k ) s k id : On input the public parameter p p , a user’s identity id and the master secret key m s k . This algorithm KeyGen outputs the secret key s k id . In the scheme, we let id 1 , id 2 denote the first receiver and the second receiver respectively.
(3).
Encrypt ( p p , id 1 , id 2 , μ ) c : on input the public parameter p p , the user’s identities id 1 , id 2 and the message bit μ { 0 , 1 } . This algorithm outputs the ciphertext c .
(4).
Decrypt ( p p , s k id i , c ) μ : on input the public parameter p p , a user’s secret key ( s k id i ) i { 1 , 2 } , and the ciphertext c . This algorithm outputs a message μ .
The definition of IB-DRE can be easily extended to a hierarchical IB-DRE by following the method in [11].
Correctness. For all identities id i , all message μ and the ciphertext c Encrypt ( p p , id 1 , id 2 , μ ), we have Pr [ Decrypt ( pp , s k id 1 , c ) = Decrypt ( pp , s k id 2 , c ) = μ ] = 1 negl ( n ) .
The definition of adaptive-ID security model is adapted from [11]. It can be described by a IND-ID-CPA game between a challenger B and an adversary A as follows:
Setup. The challenger B runs the Setup ( 1 n ) algorithm to generate the public parameters p p and the master key m s k , and send p p to A .
Phase 1. The adversary A makes secret key queries for different identities adaptively.
Challenge. The adversary A sends a message bit μ * { 0 , 1 } and the target identities ( id 1 * , id 2 * ) to B , and the target identities ( id 1 * , id 2 * ) should not be asked in Phase 1. The challenger B randomly chooses r { 0 , 1 } and a randomly ciphertext space C . If r = 0 , it send the challenge ciphertext c * =Encrypt( p p , id 1 * , id 2 * , μ * ) to A . If r = 1 , it send a randomly challenge ciphertext c * C to A .
Phase 2. The adversary A also makes secret key queries for different identities adaptively as Phase 1. It can not ask for ( id 1 * , id 2 * ) .
Guess. The adversary A outputs its guess r { 0 , 1 } and wins if r = r . We define the advantage of the adversary A in attacking IB-DRE scheme as ε = | Pr [ r = r ] 1 2 | .

3. Adaptively Secure IB-DRE Scheme with Short Public Parameters

As we all know, in the adaptively secure IBE scheme in [11], for an identity id = ( b 1 , b 2 , , b n ) { 0 , 1 } n , the key generation matrix/encryption matrix is F id = [ A 0 | B 0 + i = 1 n b i A i ] where ( A i ) i [ n ] is the matrices in the public parameters. Thus, if we want to construct an adaptively secure identity based dual receiver encryption (IB-DRE) scheme, the public parameters will be 2 n + 2 matrices which lead to high storage cost.
In this section, we propose an adaptively secure IB-DRE scheme with short public parameters. There are four algorithms in this scheme: Setup ,   KeyGen ,   Encrypt   and   Decrypt . The main method to reduce the public parameters is that in the Setup phase we introduce an injective map function which can map a n-bits identity to a subset of [ 1 , l ] p , and here we let l = n 1 p . Additionally, we also introduce a homomorphic computation technique to ensure that our scheme achieves a strong secure notion, i.e., indistinguishability of ciphertext under the adaptive chosen-identity chosen-plaintext attack (IND-ID-CPA). For the key generation matrix/encryption matrix, let H ( id ) = B 0 + i = 1 n b i A i , then F id = [ A 0 | H ( id ) ] . In the KeyGen phase, we use the same SampleLeft algorithm in [11] to generated the two independent users’ secret keys but change the way H ( id ) is generated. H ( id ) is computed by a function Eval : ( Z q n × m ) p Z q n × m of the public parameters where function Eval is a part of homomorphic computation technique. When encrypting a message bit, it should use two independent receivers’ public keys to encrypt the message. Then the ciphertext can be decrypted to the same message by the two independent receivers.
By doing this, we reduce the size of public parameters from 2 n + 2 (i.e., O ( n ) ) matrices to 2 p n 1 p + 2 (i.e., O ( n 1 p ) ) matrices where p is a flexible constant and can affect the reduction cost. Next we will describe our scheme step by step.

3.1. Our Construction

The adaptively secure IB-DRE scheme with short public parameters consists the following four algorithms.
(1).
Setup ( 1 n )→ ( p p , m s k ): on input the security parameter 1 n . This algorithm outputs the public parameters p p and master secret key m s k , do:
-
Perform algorithm TrapGen to generate a uniformly matrix A 0 Z q n × m and a trapdoor T A 0 Z m × m .
-
For an identity id = ( b 1 , b 2 , , b n ) { 0 , 1 } n , select an injective map F that maps an identity to a subset F ( id ) of [ 1 , l ] p where l = n 1 p .
-
For ( i , j ) [ p , l ] , select 2 p l matrices A i , j , A i , j .
-
Select a uniformly random matrices B 0 and a uniformly random vector u Z q n .
The public parameter p p = { A 0 , ( A i , j , A i , j ) ( i , j ) [ p , l ] , B 0 , u } , the master secret key m s k = { T A 0 } .
Recall that by the function Eval p : ( Z q n × m ) p Z q n × m , for the two identities F ( id 1 ) , F ( id 2 ) , we have a deterministic function H such that
H ( id 1 ) = B 0 + ( j 1 , j 2 , , j p ) F ( id 1 ) Eval p ( A 1 , j 1 , A 2 , j 2 , , A p , j p ) .
H ( id 2 ) = B 0 + ( j 1 , j 2 , , j p ) F ( id 2 ) Eval p ( A 1 , j 1 , A 2 , j 2 , , A p , j p ) .
(2).
KeyGen ( p p , id , m s k ) s k id : On input the public parameter p p , the user’s identity id and the master secret key m s k . This algorithm KeyGen outputs the secret key s k id , it works as follows:
-
It runs algorithm SampleLeft ( A 0 , H ( id ) , T A 0 ) to generate e such that F id · e = u where F id = [ A 0 | H ( id ) ] . Then it set s k id = e Z q 2 m .
-
For two independent receivers, we let e 1 and e 2 denote the first and second receiver’s secret key.
The two independent receivers’ secret keys are s k id 1 = e 1 Z q 2 m , s k id 2 = e 2 Z q 2 m .
(3).
Encrypt p p , id 1 , id 2 , μ ) c : On input the public parameter p p , the user’s identities id 1 , id 2 and the message bit μ { 0 , 1 } . This algorithm outputs the ciphertext c . it works as follows:
-
It firstly gets H ( id 1 ) and H ( id 2 ) as above.
-
Choose a randomly uniform vector s Z q n , and error terms x Ψ ¯ α Z q , x 1 , 1 , x 1 , 2 , Ψ ¯ α m Z q m , and x 2 , 1 , x 2 , 2 { B , B } m , compute
c 0 = u s + x + μ q / 2 Z q .
c 1 = F id 1 s + x 1 , 1 x 2 , 1 Z q 2 m .
c 2 = F id 2 s + x 1 , 2 x 2 , 2 Z q 2 m .
The ciphertext is c = { c 0 , c 1 , c 2 } .
(4).
Decrypt ( p p , s k id 1 / s k id 2 , c ) μ : On input the public parameter p p , a secret key ( s k id i ) i { 1 , 2 } and the ciphertext c , do:
-
For i { 1 , 2 } , compute μ = c 0 e i c i .
-
μ = 1 if | μ q / 2 | < q / 4 . Otherwise μ = 0 .
-
Finally, it outputs the message μ .

3.2. Correctness

We firstly compute
μ = c 0 e i c i = u s + x + μ q / 2 e i ( F id i s + x 1 , i x 2 , i ) = μ q / 2 + x e i x 1 , i x 2 , i .
Let e i = ( e i ) 1 ( e i ) 2 where ( e i ) 1 , ( e i ) 2 Z m . Based on Lemma 1 and the formulas in Equations (1) and (2), the error term
| x e i x 1 , i x 2 , i | | x | + | e i x 1 , i x 2 , i | = | x | + | ( e i ) 1 x 1 , i | + | ( e i ) 2 x 2 , i | q α ω ( log m ) + 1 2 + σ m q α ω ( log m ) + σ m 2 + σ m · O ( B m ) q α σ m ω ( log m ) + O ( B σ m )
To ensure the correctness of decryption and preform the security proof, we need that:
-
the error term is less than q / 5 with overwhelming probability(w.h.p)(i.e., α < [ σ m ω ( log m ) ] 1 , and q = Ω ( B σ m ) ),
-
the TrapGen algorithm can operate (i.e., m > 3 ( 1 + δ ) n log q for some δ > 0 ),
-
the Leftover Hash Lemma can be applied to security proof (i.e., m > ( n + 1 ) log q + ω ( log n ) ),
-
the SampleLeft and SampleRight algorithm can operate (i.e., σ > σ T G B m ω ( log m ) where σ T G = O ( n log q ) ),
-
the Regev’s LWE reduction applies (i.e., q > 2 n / α ) and
-
the security reduction applies (i.e., α q m 5 / 2 ( 1 + p p n c p c + 1 ) / B p n + 1 · ( 1 p n c ) p + 1 i.e., B α q m 5 / 2 p 2 p n 2 c p + 2 ).

3.3. Security

Theorem 2.
If the ( Z q , n , Ψ ¯ α ) -LWE assumption holds, the above IB-DRE scheme is IND-ID-CPA secure.
Proof. 
Let A be a probabilistic polynomial-time(PPT) adversary that can break our IB-DRE scheme with advantage ε > 0 . Then there exists a reduction that solves the ( Z q , n , Ψ ¯ α ) -LWE problem with an negligible advantage. Let Q = Q ( n ) is the upper bound of the number of KeyGen queries and I = { ( id 1 * , id 2 * ) , ( id 1 յ , id 2 յ ) յ [ Q ] } where ( id 1 * , id 2 * ) are the challenge IDs and ( id 1 յ , id 2 յ ) յ [ Q ] are the queried IDs. Different from Q q 2 in [11], here we let Q n c 4 1 where c = c ( n ) . We show the security via the following games. In each game, we define a value r { 0 , 1 } and let W i denote the event that the adversary correctly guesses the challenge bit, i.e., the challenger outputs r = r in Game i . | Pr [ W i ] 1 2 | is the adversary’s advantage.
Game 0 . This is the real IND-ID-CPA game between an adversary A and the challenger. We have
| Pr [ W 0 ] 1 2 | = | Pr [ r = r ] 1 2 | = ε .
Game 1 . This game is as same as Game 0 except we add an abort event at the end of the game. The challenger chooses randomly y i , j , y i , j [ 1 , p n c ] and y 0 [ ( n + 1 ) ( p n c ) p , 0 ] . Let y = { y 0 , ( y i , j ) ( i , j ) [ p , l ] } and y = { y 0 , ( y i , j ) ( i , j ) [ p , l ] } . Let H and H be two function where
H ( id 1 ) = y 0 + ( j 1 , j 2 , , j p ) F ( id 1 ) y i , j 1 y i , j p .
H ( id 2 ) = y 0 + ( j 1 , j 2 , , j p ) F ( id 2 ) y i , j 1 y i , j p .
For I = { ( id 1 * , id 2 * ) , ( id 1 յ , id 2 յ ) j [ Q ] } , the challenger checks whether the following formula holds:
H ( id 1 * ) = 0 H ( id 2 * ) = 0 յ = 1 Q ( H ( id 1 յ ) 0 H ( id 2 յ ) 0 ) .
If they do not hold, the game aborts, i.e., the challenger outputs a random r { 0 , 1 } . Otherwise, the challenger outputs r = r . By Lemma 8, we have
| Pr [ W 1 ] 1 2 | 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( ε 2 Q n c ) .
Lemma 8
([11,14]). Let η ( I ) denotes the non-abort probability, and η ( I ) = Pr [ H ( id 1 * ) = 0 H ( id 2 * ) = 0 յ = 1 Q ( H ( id 1 յ ) 0 H ( id 2 յ ) 0 ) ] . η min , η max denote the minimum and maximum probability of η ( I ) , respectively. Then we have | Pr [ W 1 ] 1 2 | = η min · | Pr [ W 0 ] 1 2 | ( η max η min ) / 2 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( ε 2 Q n c ) .
Proof of Lemma 8 
For ( Q + 1 ) -tuple identities, the non-abort probability η ( I ) = Pr [ H ( id 1 * ) = 0 H ( id 2 * ) = 0 յ = 1 Q ( H ( id 1 յ ) 0 H ( id 2 յ ) 0 ) ] . As we know, the non-abort probability is taken over y = { y 0 , ( y i , j ) ( i , j ) [ p , l ] } and y = { y 0 , ( y i , j ) ( i , j ) [ p , l ] } which are chose in Game 1 . For any y i , j and y i , j , we can find a y 0 [ ( n + 1 ) ( p n c ) p , 0 ] such that Pr [ H ( id 1 * ) = 0 ] and Pr [ H ( id 2 * ) = 0 ] are
0 ( j 1 , , j p ) F ( id 1 * ) y 1 , j 1 , , y p , j p ( j 1 , , j p ) F ( id 1 * ) ( p n c ) p < ( n + 1 ) ( p n c ) p ,
0 ( j 1 , , j p ) F ( id 2 * ) y 1 , j 1 , , y p , j p ( j 1 , , j p ) F ( id 2 * ) ( p n c ) p < ( n + 1 ) ( p n c ) p .
We have Pr [ H ( id 1 * ) = 0 ] = Pr [ H ( id 2 * ) = 0 ] = 1 n + 1 · ( 1 p n c ) p . Therefore, the upper bound of non-abort probability η ( I ) is
η ( I ) Pr [ H ( id 1 * ) = 0 H ( id 2 * ) = 0 ] = 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p .
Next we give the lower bound of non-abort probability η ( I ) .
η ( I ) = Pr [ H ( id 1 * ) = 0 H ( id 2 * ) = 0 յ = 1 Q ( H ( id 1 յ ) 0 H ( id 2 յ ) 0 ) ] = Pr [ H ( id 1 * ) = 0 յ = 1 Q H ( id 1 յ ) 0 ] · Pr [ H ( id 2 * ) = 0 յ = 1 Q H ( id 2 յ ) 0 ] .
Then we calculate the lower bound of Pr [ H ( id 1 * ) = 0 յ = 1 Q H ( id 1 յ ) 0 ] and Pr [ H ( id 2 * ) = 0 յ = 1 Q H ( id 2 յ ) 0 ] , respectively.
Pr [ H ( id 1 * ) = 0 յ = 1 Q H ( id 1 յ ) 0 ] = Pr [ յ = 1 Q H ( id 1 յ ) 0 | H ( id 1 * ) = 0 ] · Pr [ H ( id 1 * ) = 0 ] = 1 Pr [ յ = 1 Q H ( id 1 յ ) = 0 | H ( id 1 * ) = 0 ] · Pr [ H ( id 1 * ) = 0 ] 1 յ Q Pr [ H ( id 1 յ ) = 0 | H ( id 1 * ) = 0 ] · Pr [ H ( id 1 * ) = 0 ] = 1 n + 1 · ( 1 p n c ) p · 1 յ Q Pr [ H ( id 1 յ ) = 0 | H ( id 1 * ) = 0 ] 1 n + 1 · ( 1 p n c ) p · 1 Q n c .
The last equation follows the fact that since H ( id 1 * ) = 0 , so we have y 0 = ( j 1 , , j p ) F ( id 1 * ) y 1 , j 1 , , y p , j p . Then the probability of
Pr [ H ( id 1 յ ) = 0 | H ( id 1 * ) = 0 ] = Pr y 0 + ( j 1 , , j p ) F ( id յ ) y 1 , j 1 , , y p , j p = 0 = Pr ( j 1 , , j p ) F ( id 1 * ) y 1 , j 1 , , y p , j p + ( j 1 , , j p ) F ( id 1 յ ) y 1 , j 1 , , y p , j p = 0 .
Since id 1 * id 1 յ and F is an injective function, then F ( id 1 յ ) F ( id 1 * ) , the equation ( j 1 , , j p ) F ( id 1 յ ) y 1 , j 1 , , y p , j p ( j 1 , , j p ) F ( id 1 * ) y 1 , j 1 , , y p , j p can be seen as a polynomial with degree p. Since y i , j [ 1 , p n c ] , the probability of
Pr ( j 1 , , j p ) F ( id 1 * ) y 1 , j 1 , , y p , j p + ( j 1 , , j p ) F ( id 1 յ ) y 1 , j 1 , , y p , j p = 0 p p n c = 1 n c .
By the same method, we can get Pr [ H ( id 2 * ) = 0 յ = 1 Q H ( id 2 յ ) 0 ] = 1 n + 1 · ( 1 p n c ) p · 1 Q n c . Finally, the non-abort probability
η ( I ) = Pr [ H ( id 1 * ) = 0 յ = 1 Q H ( id 1 յ ) 0 ] · Pr [ H ( id 2 * ) = 0 յ = 1 Q H ( id 2 յ ) 0 ] 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( 1 Q n c ) 2 .
Then we have η min = 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( 1 Q n c ) 2 , η max = 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p . Finally,
| Pr [ W 1 ] 1 2 | η min · ε ( η max η min ) / 2 = 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( 1 Q n c ) 2 · ε 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( 1 Q n c ) 2 2 = 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( 1 Q n c ) 2 · ε 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p 1 2 1 2 ( 1 Q n c ) 2 1 ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( ε 2 Q n c )
The last inequality due to that ε 1 2 . ☐
Game 2 . In this game, we change the way A i , j , A i , j and B 0 are generated. The challenger firstly chooses y = { y 0 , ( y i , j ) ( i , j ) [ p , l ] } , y = { y 0 , ( y i , j ) ( i , j ) [ p , l ] } as Game 1 and then chooses three matrices R 0 , R i , j , R i , j { 1 , 1 } m × m . Compute
B 0 = A 0 R 0 + y 0 G
A i , j = A 0 R i , j + y i , j G
A i , j = A 0 R i , j + y i , j G
Based on Lemma 6, the distribution ( A , A 0 R 0 + y 0 G , A 0 R i , j + y i , j G , A 0 R i , j + y i , j G ) is negl ( n ) -close to the distribution ( A , B 0 , A i , j , A i , j ). Therefore, we have
| Pr [ W 1 ] Pr [ W 2 ] | = negl ( n ) .
Before the next game, for any id ID , we make a definition as follow. Let
R id 1 = R 0 + ( j 1 , , j p ) F ( id 1 ) TrapEval p ( R 1 , j 1 , , R p , j p ) ,
R id 2 = R 0 + ( j 1 , , j p ) F ( id 2 ) TrapEval p ( R 1 , j 1 , , R p , j p ) .
Based on Lemma 3, we have
R id 1 R 0 + ( j 1 , , j p ) F ( id 1 ) TrapEval p ( R 1 , j 1 , , R p , j p ) m + n m p ( p n c ) p 1 = m ( 1 + p p n c p c + 1 ) .
R id 2 is the same as R id 1 .
Game 3 . In this game, we show that when we change the ciphertext is generated, the distributions x 2 , i and R id i * x 1 , i + x 2 , i are within statistical distance α q m 5 / 2 ( 1 + p p n c p c + 1 ) / B where i { 1 , 2 } . The challenge ciphertext is generated as follows: the challenger firstly chooses s Z q n , x Ψ ¯ α Z q n , x 1 , 1 , x 1 , 2 , Ψ ¯ α m Z q m , x 2 , 1 , x 2 , 2 { B , B } m and computes R id 1 * , R id 2 * . The challenge ciphertext
c 0 * = u s + x + μ * q / 2 ,
c 1 * = ( A 0 | H ( id 1 * ) ) s + x 1 , 1 R id 1 * x 1 , 1 + x 2 , 1 ,
c 2 * = ( A 0 | H ( id 2 * ) ) s + x 1 , 2 R id 2 * x 1 , 2 + x 2 , 2 .
μ * { 0 , 1 } is the message chosen by A .
Since x 1 , i Ψ ¯ α m , by the formula in Equation (18) we have
R id i * x 1 , i R id i * x 1 , i R id i * · x 1 , i m ( 1 + p p n c p c + 1 ) · α q m = α q m 3 / 2 ( 1 + p p n c p c + 1 )
By Lemma 7, let x 2 , i be a fixed vector, the distributions x 2 , i and R id i * x 1 , i + x 2 , i are within statistical distance α q m 5 / 2 ( 1 + p p n c p c + 1 ) / B p n + 1 · ( 1 p n c ) p + 1 .
Game 4 . In this game, we change the way A 0 is generated. The challenger chooses a random matrix A 0 Z q n × m instead of using the TrapGen algorithm. For the secret key queries, the challenger respond by the SampleRight instead of SampleLeft. By the definition of R id , we have H ( id 1 ) = A 0 · ( R id 1 + H ( id 1 ) G ) , H ( id 2 ) = A 0 · ( R id 2 + H ( id 2 ) G ) . If H ( id 1 ) = 0 or H ( id 2 ) = 0 , the challenger aborts and returns a random bit. Otherwise, it returns e 1 and e 2 to A where
e 1 SampleRight ( A 0 , G , R id 1 , H ( id 1 ) , u , T G )
e 2 SampleRight ( A 0 , G , R id 2 , H ( id 2 ) , u , T G ) .
In particular, the challenger checks if the challenge identity ( id 1 * , id 2 * ) satisfies H ( id 1 * ) = 0 and H ( id 2 * ) = 0 . If not, the game aborts as in Game 1 .
Since in the adversary’s view, Game 2 and Game 4 are identical (the public parameters, abort conditions, responses to private key queries and the challenge ciphertext). The advantage of the adversary A is identical to Game 2 , i.e.,
| Pr [ W 2 ] Pr [ W 4 ] | = negl ( n ) .
Game 5 . As we know, the ciphertext space is C Z q × Z q 2 m × Z q 2 m . In this game, the challenger set the ciphertext as c * = { c 0 , c 1 * , c 2 * } which is uniformly random in Z q × Z q 2 m × Z q 2 m in the challenge phase. The advantage of the adversary A is 0. As shown in Lemma 9, assuming ( Z q , n , Ψ ¯ α ) -LWE holds, Game 4 and Game 5 are computationally indistinguishable, i.e., | Pr [ W 4 ] | Pr [ W 5 ] | = negl ( n ) .  ☐
Lemma 9.
For any PPT adversary A , there exists a challenger B such that
| Pr [ W 4 ] Pr [ W 5 ] LWE A d v ( B ) .
Proof of Lemma 9.
Suppose A has a non-negligible advantage in distinguishing Game 4 and Game 5 . We use A to construct an LWE algorithm denoted B .
Recall from Definition 4 that an LWE problem instance is provided as a sampling oracle O which is either a truly random sampler O s or a noisy pseudo-random sampler O s for a secret s Z q n . The challenger B uses the adversary A to distinguish which the sampler it is given, and proceeds as follows:
Instance. The challenger B requests from O to obtains ( m + 1 ) LWE samples that we denote as:
{ ( w 0 , v 0 ) , ( w 1 , v 1 ) , ( w 2 , v 2 ) , , ( w m , v m ) } ( Z q n × Z q )
Setup. The challenger B constructs the public parameters p p as follows:
(1)
Construct a matrix A 0 Z q n × m by assembling m LWE samples such that A 0 = ( w 1 , w 2 , , w m ) , and let u = w 0 .
(2)
Choose y as in Game 1 and constructs the remainder of the public parameters as in Game 2 .
(3)
Send the p p = { A 0 , ( A i , j ) ( i , j ) [ p , l ] , ( A i , j ) ( i , j ) [ p , l ] , B 0 , u } to A .
Queries. A makes secret key query. The challenger B computes and checks if H ( id ) = 0 . If it holds, it aborts. Otherwise it generate the secret key for A as in Game 4 .
Challenge. A sends a message bit μ * { 0 , 1 } and the target identities ( id 1 * , id 2 * ) to B . The challenger B constructs v * = ( v 1 , v 2 , , v m ) where v 0 , v 1 , , v m Z q is the LWE samples. B chooses x 2 , 1 , x 2 , 2 { B , B } m . The challenge ciphertext
c 0 * = v 0 + μ * q / 2
c 1 * = v * + 0 m R id 1 * v * + x 2 , 1
c 2 * = v * + 0 m R id 2 * v * + x 2 , 2 .
B sends the challenge ciphertext c * = { c 0 * , c 1 * , c 2 * } to A .
Note that when O = O s , the ciphertext is valid.(We just argue only when no abort happens). Since H ( id 1 * ) = 0 and H ( id 2 * ) = 0 , we have F id 1 * = [ A 0 | H ( id 1 * ) ] = [ A 0 | A 0 R id 1 * ] where H ( id 1 * ) = A 0 · ( R id 1 * + H ( id 1 * ) G ) = A 0 · R id 1 * . The same as F id 1 * , we have F id 2 * = [ A 0 | A 0 R id 2 * ] . By definition of O s , we know v * = A 0 s + x . Then we have
c 0 * = v 0 + μ * q / 2 = ( u s + x 0 ) + μ * q / 2
c 1 * = v * + 0 m R id 1 * v * + x 2 , 1 = A 0 s + x + 0 m R id 1 * ( A 0 s + x ) + x 2 , 1 = A 0 s + x + 0 m ( A 0 R id 1 * ) s + R id 1 * x + x 2 , 1 = F id 1 * s + x R id 1 * x + x 2 , 1
The same as c 1 * , c 2 * is also valid. It is also similar to the Game 3 .
When O = O s , v 0 Z q and v * Z q m are all uniform. Therefore c 0 * , c 1 * , c 2 * are uniform in Z q × Z q 2 m × Z q 2 m by the Lemma 6.
Guess. After being allowed to make additional secret key queries, A guesses if it is interacting with a Game 4 or Game 5 challenger. B output A ’s guess as the answer to the LWE challenge it is trying to solve. Therefore we have LWE A d v ( B ) = | Pr [ W 4 ] Pr [ W 5 ] | . ☐

4. Adaptively Secure Hierarchical IB-DRE Scheme with Short Public Parameter

To lighten the pressure of the KGC, hierarchical IBE (HIBE) scheme was proposed. In HIBE, the user’s identity can be described by an identity tuple, and we let ID k = ( id 1 , id 2 , , id k ) denote an identity at the depth k. There are many users at each depth. In this section, we use ID k , 1 and ID k , 2 to denote the two arbitrary receivers at the depth k in our HIB-DRE scheme.
As we all know, when convert an selectively secure HIBE scheme in [11] to an adaptively secure HIBE, for an identity ID k = ( id 1 , id 2 , , id k ) at the depth k, the key generation matrix/encryption matrix would be
F ID k = [ A 0 | B 0 + j = 1 n b 1 , j A 1 , j | | B 0 + j = 1 n b k , j A k , j ] Z q n × ( k + 1 ) m .
where ( A i , j ) i [ k ] , j [ n ] is the matrices in the public parameters.
Therefore the public parameters would be 2 d n + 2 matrices which lead to a high storage cost. d is the maximum hierarchy depth.
In this section, we construct an adaptively secure HIB-DRE scheme with short public parameters. There are also four algorithms in this scheme: Setup ,   KeyGen ,   Encrypt   and   Decrypt . In this scheme, we use the same injective map function and homomorphic computation technique to reduce the size of public parameters from 2 d n + 2 matrices to 2 d p n 1 p + 2 matrices. Different to the adaptively secure IB-DRE scheme in Section 3, we use the SampleBasisLeft [11] algorithm to generate the user’s secret key, and SampleBasisRight algorithm for the security proof. In the KeyGen phase, it needs to input a secret key for the identity at depth l 1 , and then outputs a secret key for the identity at depth l.
SampleBasisLeft ( M 1 , M , T M 1 , σ ): On input two matrices M 1 Z q n × m 1 , M Z q n × m , a “short” basis T M 1 of Λ q ( M 1 ) and a Gaussian parameter σ T M 1 ˜ ω ( log m + m 1 ) . This algorithm outputs a short basis E of Λ q ( F 1 ) where F 1 = [ M 1 | M ] .
SampleBasisRight ( A 0 , G id , R , T G , σ k ): On input three matrices A 0 Z q n × m , G id Z q n × m 1 , R Z q m × m 1 , a basis T G of Λ q ( G ) and a Gaussian parameter σ k > T G ˜ · s R ω ( log m ) where G id = H ( id ) G and s R = R ˜ . This algorithm outputs a short basis E of Λ q ( F 2 ) where F 2 = [ A 0 | A 0 R + G id ] .

4.1. Our Construction

The adaptively secure HIB-DRE scheme with short public parameters consists the following four algorithms.
(1).
Setup ( d , 1 n )→ ( p p , m s k ): on input the maximum hierarchy depth d and the security parameter 1 n . This algorithm outputs the public parameters p p and master secret key m s k , do:
-
Perform algorithm TrapGen to generate a uniformly matrix A 0 Z q n × m and a trapdoor T A 0 Z m × m .
-
For all identities ( ID k ) k [ d ] = ( id 1 , id 2 , , id k ) k [ d ] where id k { 0 , 1 } n , select an injective map F that maps an identity to a subset F ( ID k ) of [ 1 , l ] p where l = n 1 p .
-
For ( i , j ) [ p , l ] and k [ d ] , select 2 d p l matrices A i , j k , A ¯ i , j k .
-
Select a uniformly random vector u = ( u 1 , u 2 , , u n ) Z q n and a uniformly random matrix B 0 Z q n × m .
The public parameter p p = { A 0 , ( A i , j k , A ¯ i , j k ) ( i , j ) [ p , l ] , k [ d ] , B 0 , u } , the master secret key m s k = { T A 0 } .
For two arbitrary receivers ID k , 1 , ID k , 2 at the depth k. Recall that by the function Eval p : ( Z q n × m ) p Z q n × m , for the two identities F ( ID k , 1 ) , F ( ID k , 2 ) , let
B i , j k = ( j 1 , j 2 , , j p ) F ( ID k , 1 ) Eval p ( A 1 , j 1 k , A 2 , j 2 k , , A p , j p k ) ,
B ¯ i , j k = ( j 1 , j 2 , , j p ) F ( ID k , 2 ) Eval p ( A ¯ 1 , j 1 k , A ¯ 2 , j 2 k , , A ¯ p , j p k ) .
Then construct
H ( ID k , 1 ) = B 0 + B i , j 1 | B 0 + B i , j 2 | | B 0 + B i , j k ,
H ( ID k , 2 ) = B 0 + B ¯ i , j 1 | B 0 + B ¯ i , j 2 | | B 0 + B ¯ i , j k .
Note that for i { 1 , 2 } , F ID k , i = [ A 0 | H ( ID k , i ) ] Z q n × ( k + 1 ) m .
(2).
KeyGen ( p p , ID k , i , s k ID k 1 , i , m s k ) s k ID k , i : On input the public parameter p p , the user’s identity ID k , i at depth k where i { 1 , 2 } , the secret key s k ID k 1 , i corresponding to an identity ID k 1 , i at depth k 1 and the master secret key m s k . This algorithm KeyGen outputs a secret key s k ID k , i as follow:
E 1 SampleBasisLeft ( F ID k 1 , 1 , B 0 + B i , j k , s k ID k 1 , 1 , σ k ) .
E 2 SampleBasisLeft ( F ID k 1 , 2 , B 0 + B ¯ i , j k , s k ID k 1 , 2 , σ k ) .
The secret key is s k ID k , i = E i .
(3).
Encrypt ( p p , ID k , 1 , ID k , 2 , μ ) c : On input the public parameter p p , the user’s identities ID k , 1 , ID k , 2 and the message bit μ { 0 , 1 } . This algorithm outputs the ciphertext c . It works as follows:
-
It firstly gets F ID k , 1 = [ A 0 | H ( ID k , 1 ) ] and F ID k , 2 = [ A 0 | H ( ID k , 2 ) ] as above.
-
Choose a randomly uniform vector s Z q n , and a uniformly random matrix R { 1 , 1 } m × k m .
-
Choose error terms x Ψ ¯ α k Z q , x 1 , 1 , x 1 , 2 , Ψ ¯ α k m Z q m . Let x 2 , 1 = R x 1 , 1 , x 2 , 2 = R x 1 , 2 , compute
c 0 = u s + x + μ q / 2 Z q .
c 1 = F ID k , 1 s + x 1 , 1 x 2 , 1 Z q ( k + 1 ) m .
c 2 = F ID k , 2 s + x 1 , 2 x 2 , 2 Z q ( k + 1 ) m .
The ciphertext is c = { c 0 , c 1 , c 2 } .
(4).
Decrypt ( p p , s k ID k , i , c ) μ : On input the public parameter p p , a secret key ( s k ID k , i ) i { 1 , 2 } where ID k , i at depth k and the ciphertext c , do:
-
Set σ ¯ k = σ k ( k + 1 ) m ω ( log k m ) .
-
For i { 1 , 2 } , set e ID k , i SamplePre ( F ID k , i , s k ID k , i , u , σ ¯ k ) . Then F ID k , i e ID k , i = u and e ID k , i σ ¯ k ( k + 1 ) m .
-
Compute μ = c 0 e ID k , i c i Z q .
-
μ = 1 if | μ q / 2 | < q / 4 . Otherwise μ = 0 .
-
Finally, it outputs the message μ .

4.2. Correctness

We firstly compute
μ = c 0 e ID k , i c i = u s + x + μ q / 2 e ID k , i ( F ID k , i s + x 1 , i x 2 , i ) = μ q / 2 + x e ID k , i x 1 , i x 2 , i
Let e ID k , i = ( e ID k , i ) 1 ( e ID k , i ) 2 where ( e ID k , i ) 1 Z m , ( e ID k , i ) 2 Z k m . Then we have ( e ID k , i ) 1 σ ¯ k m and ( e ID k , i ) 2 σ ¯ k k m where σ ¯ k = σ k ( k + 1 ) m ω ( log k m ) . Since x 2 , i = R x 1 , i , by Equation (3), x 2 , i = R x 1 , i O ( k m )
Refer to the formulas in Equations (1) and (2), the error term
| x e ID k , i x 1 , i x 2 , i | | x | + | e ID k , i x 1 , i x 2 , i | = | x | + | ( e ID k , i ) 1 x 1 , i | + | ( e ID k , i ) 2 x 2 , i | q α k ω ( log m ) + 1 2 + σ ¯ k m q α k ω ( log m ) + σ ¯ k m 2 + σ ¯ k k m · O ( k m ) q k 2 α k σ k m ω ( log m ) + O ( k 3 / 2 σ k m 2 )
To ensure the correctness of decryption and preform the security proof, for all 1 k d , we need that:
-
the error term is less than q / 5 with overwhelming probability (w.h.p) (i.e., α k < [ σ k m ω ( log m ) ] 1 , and q = Ω ( k 3 / 2 σ k m 2 ) ),
-
the TrapGen algorithm can operate (i.e., m > 3 ( 1 + δ ) n log q for some δ > 0 ),
-
the Leftover Hash Lemma can be applied to security proof (i.e., m > ( n + 1 ) log q + ω ( log n ) ),
-
the SampleBasisLeft and SampleBasisRight algorithm can operate (i.e., σ k > σ T G m ω ( log m ) where σ T G = O ( n log q ) ), and
-
the Regev’s LWE reduction applies(i.e., q > 2 n / α ).

4.3. Security

Theorem 3.
If the ( Z q , n , Ψ ¯ α ) -LWE assumption holds, the above HIB-DRE scheme is IND-ID-CPA secure.
Proof. 
Let A be a probabilistic polynomial-time(PPT) adversary that can break our IB-DRE scheme with advantage ε > 0 . Then there exists a reduction that solves the ( Z q , n , Ψ ¯ α ) -LWE problem with an negligible advantage. Let Q = Q ( n ) is the upper bound of the number of KeyGen queries and I = { ( ID k , 1 * , ID k , 2 * ) , ( ID k , 1 յ , ID k , 2 յ ) j [ Q ] } denotes the challenge IDs. Different from Q q 2 in [11], here we let Q n c 4 1 where c = c ( n ) . We show the security via the following games. In each game, we define a value r { 0 , 1 } and let W i denote the event that the adversary correctly guessed the challenge bit, i.e., the challenger output r = r in Game i . | P r [ W i ] 1 2 | is the adversary’s advantage.
Game 0 . This is the real IND-ID-CPA game between an adversary A and the challenger. So we have
| Pr [ W 0 ] 1 2 | = | Pr [ r = r ] 1 2 | = ε .
Game 1 . The same as Game 1 in Section 3.3, in this game we also add an abort event at the end of the game. The challenger chooses y = { y 0 , ( y i , j k ) ( i , j ) [ p , l ] , k [ d ] } where y 0 [ ( n + 1 ) ( p n c ) p , 0 ] and y i , j k [ 1 , p n c ] . Let h id k = y 0 + ( j 1 , , j p ) F ( id k ) y i , j 1 k y i , j p k and H be a function such that
H ( ID k ) = h id 1 | h id 2 | | h id k .
For the challenge IDs, the challenger checks whether H ( ID k , i * ) = 0 and H ( ID k , i յ ) 0 where i { 1 , 2 } . If they do not hold, the game aborts. Otherwise, the challenger outputs r = r .
Different to the Lemma 8, the probability η ( I ) satisfies
k ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( 1 Q n c ) 2 η ( I ) k ( n + 1 ) 2 · ( 1 p n c ) 2 p .
Then by | Pr [ W 1 ] 1 2 | = η min · ε ( η max η min ) / 2 , we have
| Pr [ W 1 ] 1 2 | k ( n + 1 ) 2 · ( 1 p n c ) 2 p · ( ε 2 Q n c )
Game 2 . In this game, we change the way A i , j k , A ¯ i , j k , B 0 are generated. The challenger firstly chooses y = { y 0 , ( y i , j k ) ( i , j ) [ p , l ] , k [ d ] } , y = { y 0 , ( y ¯ i , j k ) ( i , j ) [ p , l ] , k [ d ] } as Game 1 and chooses three matrices R 0 , R i , j k , R ¯ i , j k { 1 , 1 } m × m . Compute
B 0 = A 0 R 0 + y 0 G
A i , j k = A 0 R i , j k + y i , j k G
A ¯ i , j k = A 0 R ¯ i , j k + y ¯ i , j k G
Based on Lemma 6, the distribution ( A , A 0 R 0 + y 0 G , A 0 R i , j k + y i , j k G , A 0 R ¯ i , j k + y ¯ i , j k G ) is negl ( n ) -close to the distribution ( A , B 0 , A i , j k , A ¯ i , j k ). Therefore, we have
| Pr [ W 1 ] Pr [ W 2 ] | = negl ( n ) .
Before the next game, let
R ^ ID k , 1 = R 0 + ( j 1 , , j p ) F ( ID k , 1 ) TrapEval p ( R 1 , j 1 k , , R p , j p k ) ,
R ^ ID k , 2 = R 0 + ( j 1 , , j p ) F ( ID k , 2 ) TrapEval p ( R ¯ 1 , j 1 k , , R ¯ p , j p k ) .
Based on Lemma 3, we have
R ^ ID k , 1 = R 0 + R ^ ID k , 1 R 0 + ( j 1 , , j p ) F ( ID k , 1 ) TrapEval p ( R 1 , j 1 k , , R p , j p k ) m + n m p ( p n c ) p 1 = m ( 1 + p p n c p c + 1 ) .
R ^ ID k , 2 is the same as R ^ ID k , 1 .
Then define R ID k , i = R ^ ID 1 , i | | R ^ ID k , i Z q m × k m where i { 1 , 2 } . We have R ID k , i k m ( 1 + p p n c p c + 1 ) .
Game 3 . In this game, we change the way A 0 is generated. The challenger chooses a random matrix A 0 Z q n × m instead of using the TrapGen algorithm. For the secret key queries, the challenger responds by the SampleRight instead of SampleRight . By the definition of R ID k , we have
H ( ID k , 1 ) = A 0 · ( R ^ ID 1 , 1 + h id 1 , 1 G ) | | A 0 · ( R ^ ID k , 1 + h id k , 1 G ) ,
H ( ID k , 2 ) = A 0 · ( R ^ ID 1 , 2 + h id 1 , 2 G ) | | A 0 · ( R ^ ID k , 2 + h id k , 2 G ) .
Therefore for i { 1 , 2 } ,
F ID k , i = A 0 | H ( ID k , i ) = A 0 | A 0 ( R ID k , i + G ID k , i )
where R ID k , i = R ^ ID 1 , i | | R ^ ID k , i and G ID k , i = h id 1 , i G | | h id 1 , i G .
If H ( ID k , 1 ) = 0 or H ( ID k , 2 ) = 0 , the challenger aborts and returns a random bit. Otherwise, it returns E 1 and E 2 to A where
E 1 SampleBasisRight ( A 0 , G ID k , 1 , R ID k , 1 , T G , σ k )
E 2 SampleBasisRight ( A 0 , G ID k , 2 , R ID k , 2 , T G , σ k )
In particular, the challenger checks if the challenge identity ( ID k , 1 * , ID k , 2 * ) satisfies H ( ID k , 1 * ) = 0 and H ( ID k , 2 * ) = 0 . If not, the game aborts as in Game 1 .
Since in the adversary’s view, Game 2 and Game 3 are identical (the public parameters, abort conditions, responses to private key queries and the challenge ciphertext). The advantage of the adversary A is identical to Game 2 , i.e.,
| Pr [ W 2 ] Pr [ W 3 ] | = negl ( n ) .
Game 4 . As we know, the ciphertext space is C Z q × Z q ( k + 1 ) m × Z q ( k + 1 ) m . In this game, the challenger set the ciphertext as c * = { c 0 * , c 1 * , c 2 * } which is uniformly random in Z q × Z q ( k + 1 ) m × Z q ( k + 1 ) m in the challenge phase. And the advantage of the adversary A is 0. As shown in Lemma 10, assuming ( Z q , n , Ψ ¯ α ) -LWE holds, Game 3 and Game 4 are computationally indistinguishable, i.e., | Pr [ W 3 ] Pr [ W 4 ] | = negl ( n ) .  ☐
Lemma 10.
For any PPT adversary A , there exists a challenger B such that
| Pr [ W 3 ] Pr [ W 4 ] | LWE A d v ( B ) .
Proof of Lemma 10.
Suppose A has a non-negligible advantage in distinguishing Game 4 and Game 5 . We use A to construct an LWE algorithm denoted B .
Recall from Definition 4 that an LWE problem instance is provided as a sampling oracle O which is either a truly random sampler O s or a noisy pseudo-random sampler O s for a secret s Z q n . The challenger B uses the adversary A to distinguish which the sampler it is given, and proceeds as follows:
Instance. The challenger B requests from O to obtain ( m + 1 ) LWE samples that we denote as:
{ ( w 0 , v 0 ) , ( w 1 , v 1 ) , ( w 2 , v 2 ) , , ( w m , v m ) } ( Z q n × Z q )
Setup. The challenger B constructs the public parameters p p as follows:
(1)
Construct a matrix A 0 Z q n × m by assembling m LWE samples such that A 0 = ( w 1 , w 2 , , w m ) , and let u = w 0 .
(2)
Choose y as in Game 1 and constructs the remainder of the public parameters as in Game 2 .
(3)
Send the p p = { A 0 , ( A i , j k , A ¯ i , j k ) ( i , j ) [ p , l ] , k [ d ] , B 0 , u } to A .
Queries. A makes secret key query. The challenger B computes and checks if H ( ID k ) = 0 . If it holds, it aborts. Otherwise it generate the secret key for A as in Game 3 .
Challenge. A sends a message bit μ * { 0 , 1 } and the target identities ( ( ID k , 1 * , ID k , 2 * ) to B . The challenger B constructs v * = ( v 1 , v 2 , , v m ) where v 0 , v 1 , , v m Z q is the LWE samples. Let R ID k , 1 * = R ^ ID 1 , 1 * | | R ^ ID k , 1 * Z q m × k m and R ID k , 2 * = R ^ ID 1 , 2 * | | R ^ ID k , 2 * Z q m × k m . Then the challenge ciphertext
c 0 * = v 0 + μ * q / 2 ,
c 1 * = v * R ID k , 1 * v * ,
c 2 * = v * R ID k , 2 * v * .
B sends the challenge ciphertext c * = { c 0 * , c 1 * , c 2 * } to A .
Note that when O = O s , the ciphertext is valid.(We just argue only when no abort happens). Since H ( ID k , 1 * ) = 0 and H ( ID k , 2 * ) = 0 , we have F ID k , 1 * = A 0 | H ( ID k , 1 * ) = A 0 | A 0 R ID k , 1 * . The same as F ID k , 1 * , we have F ID k , 2 * = A 0 | A 0 R ID k , 2 * . By definition of O s , we know v * = A 0 s + x . Then we have
c 0 * = v 0 + μ * q / 2 = ( u s + x 0 ) + μ * q / 2
c 1 * = v * R ID k , 1 * v * = A 0 s + x R ID k , 1 * ( A 0 s + x ) = A 0 s + x A 0 R ID k , 1 * ] s + R ID k , 1 * x = F ID k , 1 * s + x R ID k , 1 * x
The same as c 1 * , c 2 * is also valid. It is also similar to the Game 3 .
When O = O s , v 0 Z q and v * Z q m are all uniform. Therefore c 0 * , c 1 * , c 2 * are uniform in Z q × Z q ( k + 1 ) m × Z q ( k + 1 ) m by the Lemma 6.
Guess. After being allowed to make additional secret key queries, A guesses if it is interacting with a Game 4 or Game 5 challenger. B output A ’s guess as the answer to the LWE challenge it is trying to solve. Therefore we have LWE A d v ( B ) = | Pr [ W 3 ] Pr [ W 4 ] | . ☐
Remark 1.
Note that, as in [10,11], the two schemes also can encrypt multiple message bits. To encrypt n-bits message we need to include n vectors u 1 , u 2 , , u n in the public parameters p p . Let U = ( u 1 , u 2 , , u n ) and replace the vector u with U . Then taking each element of U as input in the KeyGen phase in the IB-DRE scheme or the Decrypt phase in the HIB-DRE scheme such that e id i S a m p l e L e f t ( A 0 , H ( id i ) , u i , T A 0 ) , e ID k , i S a m p l e P r e ( F ID k , i , s k ID k , i , u i , σ ¯ k ) . Moreover, replace the ciphertext c 0 with c 0 = U s + x + μ q / 2 Z q n . The proof of security is basically unchanged, except that in the Instance phase B makes m + n times queries of the LWE oracle instead of m + 1 times.

5. Performance Analysis

Here we firstly give the comparison between lattice-based IB-DRE scheme and other related IB-DRE schemes which are based on bilinear maps. As shown in Table 1, compared to [4], our scheme and [20] can resist quantum attack due to the fact that our scheme and [20] are based on the LWE problem on lattices which is proved by Regev [9] to resist quantum computing attack, but [4] is based on the decisional bilinear Diffie–Hellman (DBDH) problem which can not resist quantum computing attack. In addition, [4,20] and our scheme are all proved to be CPA secure. To lighten the pressure of KGC, we extend our scheme to the hierarchical scenario, but [4,20] can not support hierarchical scenario.
Next we give the comparison of storage cost, communication cost and computational cost between our construction and the first lattice-based IB-DRE scheme (next we use how Zhang18 denotes it).
Storage costs analysis. Here we give the comparison of storage costs between our construction and the first lattice-based IB-DRE scheme (next we use how Zhang18 denotes it). In Zhang18, the authors propose an adaptively secure IB-DRE scheme based on the LWE problem. In their scheme, to achieve the adaptively-ID secure, they generate 2 n matrices in the Setup phase by using the same method of [11]. The size of public parameters is O ( n 3 log q ) which lead to a high storage overhead. As shown in Table 2, the suggested lattice dimension m in our scheme is smaller than [20] under the same adaptively secure model. Since p is a flexible constant which can directly affect the p p size, we give the comparison results when p takes different values. Since we introduce an injective map function in our construction, the public parameters size can be reduced from 2 n + 2 matrices to 2 p n 1 p + 2 matrices where p ( 2 ) is a flexible constant. Namely, the storage cost of public parameters p p is reduced from O ( n 3 log q ) to O ( n 2 + 1 p log q ) . Moreover, the user’s secret key in our scheme is smaller than [20] and the ciphertext is equal to [20]. Figure 1 shows that when p = 2 and n = 284 according to the suggestion given by Micciancio et al. in [22], the size of public parameters in our scheme is reduced by merely 88% of Zhang et al.’s method. Not to mention when p > 2 or n > 284 . In addition, from the Figure 1, with the increasing of the bit-length of identity, the size of public parameters in our scheme and [20] are also increase. It is still smaller than [20]. In addition, in our scheme, when p = 2 , the size of the public parameters in our scheme achieves the largest of our scheme, and it is 12 % of [20]. Not to mention when p > 2 .
Communication costs analysis. There are four algorithms in our scheme and in Zhang18 [20]. During the operation of the algorithm, three transmissions of public parameters, two transmissions of ciphertext and at least two transmissions of user’s secret key are required. According to the comparison results of Table 2 and Figure 1, under the same transmission bandwidth, it is obvious that communication costs of our public parameters and user’s secret key are faster than in Zhang18 [20]. Communication cost of the ciphertext is equal to Zhang18 [20].
Computational costs analysis. As shown in Table 3, we compared our scheme with Zhang18 on computational costs. The computational cost of encryption in our construction is equal to the related lattice-based IB-DRE scheme in [20]. As for the computational cost of KeyGen, in [20] the user’s secret key is a 2 m × n matrix while it is a 2 m dimensions vector in our scheme. Thus, the computational cost of KeyGen in [20] is larger than our scheme. Due to the fact that the size of user’s secret in [20] is n times larger than us, the computational cost is also larger than us.

6. Conclusions

Different from the standard cryptographic primitive of public key encryption by which a ciphertext can usually be decrypted by the private-key holders only, dual receiver encryption enables a ciphertext to be decrypted to the same plaintext by two different but dual receivers. In this paper, we propose two more efficient constructions of (hierarchical) identity-based dual receiver encryption schemes from lattices which can resist quantum attack. By combining an injective map and a homomorphic computation technique, the size of public parameters is remarkably reduced from 2 n + 2 matrices to 2 p n 1 p + 2 matrices where p ( 2 ) is a flexible constant. Compared to the only related work—Zhang18, about 88% = (1–12%) storage cost is saved by using our method. Under the intractability assumption of the learning with errors problem over lattices, our proposal was proved to be semantically secure against adaptively chosen identity and plaintext attacks.

Author Contributions

Conceptualization, X.S. and L.L.; investigation, L.L.; formal analysis and scheme design, Y.L. and X.S.; secure proof and performance analysis, Y.L. and L.W.; methodology, Y.L. and L.W.; writing—original draft preparation, Y.L.; writing—review and editing, X.S. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Shandong Provincial Key Research and Development Program of China (2018CXGC0701), the National Natural Science Foundation of China (NSFC) (No. 61972050), and the BUPT Excellent Ph.D. Students Foundation (Grant Nos. CX2019119 and CX2019233).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Diament, T.; Lee, H.K.; Keromytis, A.D.; Yung, M. The Dual Receiver Cryptosystem and its Applications. In Proceedings of the 11th ACM Conference on Computer and Communications Security 2004 (CCS’04), Washington, DC, USA, 25–29 October 2004; pp. 330–343. [Google Scholar]
  2. Chow, S.S.M.; Franklin, M.; Zhang, H. Practical Dual-Receiver Encryption. In Proceedings of the Cryptographers’ Track at the RSA Conference (CT-RSA’14), San Francisco, CA, USA, 25–28 February 2014; pp. 85–105. [Google Scholar]
  3. Dodis, Y.; Katz, J.; Smith, A.; Walfish, S. Composability and on-Line Deniability of Authentication. In Proceedings of the 6th Theory of Cryptography Conference on Theory of Cryptography 2009 (TCC’09), San Francisco, CA, USA, 15–17 March 2009; pp. 146–162. [Google Scholar]
  4. Zhang, K.; Chen, W.; Li, X.; Chen, J.; Qian, H.F. New application of partitioning methodology: Identity-based dual receiver encryption. Secur. Commun. Netw. 2016, 9, 5789–5802. [Google Scholar] [CrossRef]
  5. Waters, B. Efficient Identity-Based Encryption without Random Oracles. In Proceedings of the Advances in Cryptology-Eurocrypt 2005, Aarhus, Denmark, 22–26 May 2005; pp. 114–127. [Google Scholar]
  6. Shor, P.W. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM J. Comput. 1997, 26, 1484–1509. [Google Scholar] [CrossRef] [Green Version]
  7. Ajtai, M.; Dwork, C. A Public-Key Cryptosystem with Worst-Case/Average-Case Equivalence. In Proceedings of the 29th Annual ACM Symposium on Theory of Computing(STOC’97), El Paso, TX, USA, 9–11 May 1997; pp. 284–293. [Google Scholar]
  8. Ajtai, M. Generating Hard Instances of Lattice Problems. In Proceedings of the 28th Annual ACM Symposium on Theory of Computing(STOC’96), Philadelphia, PA, USA, 21–23 May 1996; pp. 99–108. [Google Scholar]
  9. Regev, O. On Lattices, Learning with Errors, Random Linear Codes, and Cryptography. In Proceedings of the 37th Annual ACM Symposium on Theory of Computing(STOC’05), Baltimore, MD, USA, 22–24 May 2005; pp. 84–93. [Google Scholar]
  10. Gentry, C.; Peikert, C.; Vaikuntanathan, V. Trapdoors for Hard Lattices and New Cryptographic Constructions. In Proceedings of the 40th Annual ACM Symposium on Theory of Computing(STOC’08), Victoria, BC, Canada, 17–20 May 2008; pp. 197–206. [Google Scholar]
  11. Agrawal, S.; Boneh, D.; Boyen, X. Efficient Lattice (H)IBE in the Standard Model. In Proceedings of the Advances in Cryptology-Eurocrypt’10, French Riviera, France, 30 May–3 June 2010; pp. 553–572. [Google Scholar]
  12. Agrawal, S.; Boneh, D.; Boyen, X. Lattice Basis Delegation in Fixed Dimension and Shorter-Ciphertext Hierarchical IBE. In Proceedings of the Advances in Cryptology-Crypto’10, Santa Barbara, CA, USA, 15–19 August 2010; pp. 98–115. [Google Scholar]
  13. Singh, K.; Pandurangan, C.; Banerjee, A.K. Adaptively Secure Efficient Lattice (H)IBE in Standard Model with Short Public Parameters. In Proceedings of the Second International Conference on Security, Privacy, and Applied Cryptography Engineering (SPACE’12), Chennai, India, 3–4 November 2012; pp. 153–172. [Google Scholar]
  14. Yamada, S. Adaptively Secure Identity-Based Encryption from Lattices with Asymptotically Shorter Public Parameters. In Proceedings of the Advances in Cryptology-Eurocrypty’16, Vienna, Austria, 8–12 May 2016; pp. 32–62. [Google Scholar]
  15. Agrawal, S.; Boyen, X.; Vaikuntanathan, V.; Voulgaris, P. Functional Encryption for Threshold Functions (or Fuzzy IBE) from Lattices. In Proceedings of the 15th International Conference on Practice and Theory in Public Key Cryptography(PKC’12), Darmstadt, Germany, 18–20 May 2012; pp. 280–297. [Google Scholar]
  16. Boyen, X. Attribute-Based Functional Encryption on Lattices. In Proceedings of the 10th Theory of Cryptography Conferenc e(TCC’13), Tokyo, Japan, 3–6 March 2013; pp. 122–142. [Google Scholar]
  17. Gorbunov, S.; Vaikuntanathan, V.; Wee, H. Attribute-Based Encryption for Circuits. In Proceedings of the 44th Annual ACM Symposium on Theory of Computing (STOC’13), Palo Alto, CA, USA, 1–4 June 2013; pp. 545–554. [Google Scholar]
  18. Boneh, D.; Gentry, C.; Gorbunov, S.; Halevi, S. Fully Key-Homomorphic Encryption, Arithmetic Circuit ABE and Compact Garbled Circuit. In Proceedings of the Advances in Cryptology-Eurocrypt’14, Copenhagen, Denmark, 11–15 May 2014; pp. 533–556. [Google Scholar]
  19. Liu, Y.; Wang, L.; Li, L.; Yan, X. Security and efficient multi-authority attribute-based encryption scheme from lattices. IEEE Access 2019, 7, 3665–3674. [Google Scholar] [CrossRef]
  20. Zhang, D.; Zhang, K.; Li, B.; Lu, X.; Xue, H.; Li, J. Lattice-Based Dual Receiver Encryption and More. In ACISP2018: Information Security and Privacy; Springer: Cham, Switzerland, 2018; pp. 520–538. [Google Scholar]
  21. Alwen, J.; Peikert, C. Generating Shorter Bases for Hard Random Lattices. In Proceedings of the 26th Symposium on Theoretical Aspects of Computer Science (STACS’09), Freiburg, Germany, 26–28 February 2009; pp. 75–86. [Google Scholar]
  22. Micciancio, D.; Peikert, C. Trapdoors for Lattices: Simpler, Tighter, Faster, Smaller. In Proceedings of the Advances in Cryptology-Eurocrypt’12, Cambridge, UK, 15–19 April 2012; pp. 700–718. [Google Scholar]
Figure 1. The number of the matrices in public parameters.
Figure 1. The number of the matrices in public parameters.
Entropy 22 00599 g001
Table 1. The comparison between lattice-based identity-based device receiver encryption (IB-DRE) and bilinear maps-based IB-DRE.
Table 1. The comparison between lattice-based identity-based device receiver encryption (IB-DRE) and bilinear maps-based IB-DRE.
SchemeSecurity AssumptionResistance to Quantum AttackCPA/CCAHierarchical
[4]DBDHNoCPANo
[20]LWEYesCPANo
OursLWEYesCPAYes
Table 2. The comparison between our scheme and related lattice-based scheme.
Table 2. The comparison between our scheme and related lattice-based scheme.
SchemesLattice
Dimension m
pp sk id Ciphertext 1 / α for LWE
Assumption
Selective/Adaptive
Zhang18 [20] 6 n log q O ( n 3 log q ) 2 m n log q O ( n 3 log q ) Fixed poly ( n ) Adaptive
Ours IB-DRE 3 n log q O ( n 2 + 1 p log q ) 2 m log q O ( n 3 log q ) All poly ( n ) Adaptive
p ( 2 )
Fixed poly(n): a scheme is proven secure under the LWE assumption with 1/α being some fixed polynomial (e.g.,n3). All poly(n): a scheme is proven secure under the LWE assumption with 1/α being all polynomial.
Table 3. The comparison of computational cost.
Table 3. The comparison of computational cost.
SchemeKeyGenEncryptionDecryption
Zhang18 [20] O ( n 2 m 2 ) O ( n 2 m ) O ( n m 2 )
Ours O ( n m 2 ) O ( n 2 m ) O ( m 2 )

Share and Cite

MDPI and ACS Style

Liu, Y.; Wang, L.; Shen, X.; Li, L. New Constructions of Identity-Based Dual Receiver Encryption from Lattices. Entropy 2020, 22, 599. https://doi.org/10.3390/e22060599

AMA Style

Liu Y, Wang L, Shen X, Li L. New Constructions of Identity-Based Dual Receiver Encryption from Lattices. Entropy. 2020; 22(6):599. https://doi.org/10.3390/e22060599

Chicago/Turabian Style

Liu, Yuan, Licheng Wang, Xiaoying Shen, and Lixiang Li. 2020. "New Constructions of Identity-Based Dual Receiver Encryption from Lattices" Entropy 22, no. 6: 599. https://doi.org/10.3390/e22060599

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