Next Article in Journal
Design of Flexible Pressure Sensor Based on Conical Microstructure PDMS-Bilayer Graphene
Next Article in Special Issue
IoT Registration and Authentication in Smart City Applications with Blockchain
Previous Article in Journal
Oxygen Saturation Imaging Using LED-Based Photoacoustic System
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Lattice-Based Homomorphic Proxy Re-Encryption Scheme with Strong Anti-Collusion for Cloud Computing

1
College of Data Science and Technology, Heilongjiang University, Harbin 150080, China
2
Guangxi Key Laboratory of Cryptography and Information Security, Guilin 541004, China
*
Author to whom correspondence should be addressed.
Sensors 2021, 21(1), 288; https://doi.org/10.3390/s21010288
Submission received: 9 December 2020 / Revised: 27 December 2020 / Accepted: 1 January 2021 / Published: 4 January 2021
(This article belongs to the Special Issue Smart Cloud Computing Technologies and Application)

Abstract

:
The homomorphic proxy re-encryption scheme combines the characteristics of a homomorphic encryption scheme and proxy re-encryption scheme. The proxy can not only convert a ciphertext of the delegator into a ciphertext of the delegatee, but also can homomorphically calculate the original ciphertext and re-encryption ciphertext belonging to the same user, so it is especially suitable for cloud computing. Yin et al. put forward the concept of a strong collusion attack on a proxy re-encryption scheme, and carried out a strong collusion attack on the scheme through an example. The existing homomorphic proxy re-encryption schemes use key switching algorithms to generate re-encryption keys, so it can not resist strong collusion attack. In this paper, we construct the first lattice-based homomorphic proxy re-encryption scheme with strong anti-collusion (HPRE-SAC). Firstly, algorithm TrapGen is used to generate an encryption key and trapdoor, then trapdoor sampling is used to generate a decryption key and re-encryption key, respectively. Finally, in order to ensure the homomorphism of ciphertext, a key switching algorithm is only used to generate the evaluation key. Compared with the existing homomorphic proxy re-encryption schemes, our HPRE-SAC scheme not only can resist strong collusion attacks, but also has smaller parameters.

1. Introduction

Lattice-based cryptography is a kind of public key cryptosystem, which is widely believed to resist quantum computer attacks. The lattice-based cryptographic systems have attracted the attention of many scholars, on the one hand, because of the simper linear operation than the power operation that is needed in the traditional theory-based cryptosystems (such as RSA); on the other hand, because their security can be based on worst-case hard problems (such as SIVP, GapSVP). There are two basic average-case problems that had been shown to enjoy worst-case hardness guarantee. One is the learning with error (LWE) problem [1,2] the other one is the small integer solution (SIS) problem [3].
Public-key encryption (PKE) is one of the most fundamental primitives in cryptography. In recent years, some lattice-based PKE schemes were constructed based on LWE and SIS [4,5,6]. Fully-homomorphic encryption (FHE) is a kind of PKE, but the FHE scheme allows one to compute arbitrary functions over encrypted data without the decryption key. In an FHE scheme, the data owner can obtain ciphertexts E m 1 , , E m n that encrypts data m 1 , , m n by encryption key p k (the corresponding decryption key is s k ), respectively. Anyone can efficiently compute compact ciphertext that encrypts f m 1 , , m n for any efficiently computable function f, but only the owner of decryption key s k can get f m 1 , , m n by decrypting the compact ciphertext [7,8]. The interesting property makes FHE more applicable in many scenarios, such as cloud computing [9,10].
With the emerging of the cloud computing, the situation has transformed from a single user to multiple users on one of both communication ends. Most of the existing FHE schemes only allow the user to homomorphically compute ciphertexts that are encrypted by himself. Proxy re-encryption (PRE) [11] is an extension of public key encryption. In a PRE scheme, with the help of the re-encryption key, the proxy can convert the ciphertext of a delegator into the ciphertext of a delegatee. In this process, there is no need to decrypt the ciphertext of the delegator, and the proxy can not get the plaintext. It is very interesting to construct a homomorphic proxy re-encryption (HPRE) scheme, which allows users to homomorphically compute ciphertexts of different users. As shown in Figure 1. After getting the ciphertext c t i = E ( p k i , m i ) and the re-encryption key r k A i B of A i , i = 1 , 2 , , n , the proxy can convert the ciphertext c t i into the ciphertext c t A i B of B, and guarantee the homomorphism of these re-encryption ciphertexts. That is, if c t = f ( c t A 1 B , c t A 2 B , , c t A n B ) , then D ( s k B , c t ) = f ( m 1 , m 2 , , m n ) , where p k i is the encryption key of A i , s k B is the decryption key of B, f is an efficiently computable function.

1.1. Related Work

Proxy Re-Encryption (PRE) was introduced by Bleumer et al. [11], which can be applied in many scenarios, such as encrypted email forwarding, vehicular ad hoc network, the distributed file system [12], and the cloud sharing [13,14,15,16,17]. Many PRE schemes with special properties have been constructed to meet the increasingly complex cloud sharing environment. For example, conditional proxy re-encryption [18,19], which allows only the ciphertexts satisfying a condition to be converted by the proxy; attribute-based proxy re-encryption [20,21], which transforms a ciphertext under an access policy to a ciphertext under another access policy; broadcast proxy re-encryption [22,23], which converts a ciphertext to a set of ciphertexts under different users at a time; unidirectional proxy re-encryption [24,25], in which the proxy can use the re-encryption key to convert the delegator’s ciphertext to the delegatee’s ciphertext, but cannot reverse the conversion, otherwise it becomes bidirectional; multi-hop proxy re-encryption [26,27], in which the proxy can convert a re-encryption ciphertext into a re-encryption ciphertext of other users, otherwise it becomes single-hop; homomorphic proxy re-encryption (HPRE) scheme [19,28], and so on.
Security is an important index of the practicability of a PRE scheme. At present, the security of a PRE scheme mainly involves post quantum security, semantic security, key privacy, anti-collusion and so on. The construction of PRE can be based on the Diffie–Hellman assumption, but the Diffie-Hellman assumption is not considered post quantum secure. Therefore, it is necessary to construct a PRE based on LWE, because the LWE assumption is generally considered to be able to resist quantum computing attacks. Xagawa [29] constructs the first PRE based on LWE, but the scheme lacks a complete security analysis, and it is bidirectional and can not resist collusion attack. Compared with bidirectional PRE, unidirectional PRE is more in line with the security requirements of cloud sharing. Collusion attack means that the delegatee and the proxy can conspire to compute the decryption key of the delegator.
Aono et al. [30] constructed a unidirectional re-encryption scheme based on LWE and proved that the scheme has key privacy. Key privacy [31] means that even if an active proxy colludes with a set of malicious users in the system, it can not know the identity of the participants involved or the content of their encrypted messages from the re-encryption key. Singh et al. [32] pointed out that the scheme of Aono et al. [30] could not resist collusion attack, and constructed a PRE scheme against collusion attack based on [30]. Kirshanova [33] constructed the first chosen ciphertext attack (CCA) secure lattice-based PRE scheme. Nishimaki et al. [34] constructed two unidirectional single-hop key privacy PRE schemes based on LWE and proved the two schemes are chosen plaintext attack (CPA) secure. Hou et al. [35] constructed an efficient identity-based PRE over lattice and proved that the scheme is CPA secure in the standard model, but the scheme is bidirectional and cannot resist collusion attack. Yin et al. [36] constructed a unidirectional identity based PRE under LWE, and proved that the scheme is CPA secure in the standard model. Yin et al. [37] put forward the concept of a strong collusion attack (the strong collusion attack will be shown in Definition 7) relative to a traditional collusion attack, and called it a traditional collusion attack as weak collusion attack. Yin et al. pointed out through examples that if the adversary can not collude to attack the decryption key of the delegator, but can obtain an approximate value of the decryption key of the delegator, then it can also launch a strong collusion attack on the scheme of Aono et al. [30] and correctly decrypt the ciphertext of the delegator.
Zhong et al. [38] constructed a many-to-one homomorphic encryption scheme based on an approximate GCD problem, which can apply homomorphic addition and homomorphic multiplication to multi-party ciphertexts. However, the scheme is not a lattice-based scheme. Since its introduction, FHE [7,8] has attracted much attention and some FHE schemes have been constructed based on LWE. Since the noise is added at encryption for security, the noise will increase with every homomorphic operation in the FHE scheme based on LWE. For correct decryption, the magnitude of final noise must be less than some bound. How to control noise is an important issue. A number of techniques are proposed and used to control noise growth for building an FHE scheme based on LWE, for example, Brakerski et al. [39] proposed the re-linearization technique and the dimension modulus reduction technique; Brakerski et al. [40] proposed the modulus switching algorithm, Brakerski [41] proposed the scale-invariant technique; Gentry et al. [42] proposed the approximate eigenvector method. In addition, these techniques are also the main techniques for constructing homomorphic proxy re-encryption schemes to control noise growth.
Jiang et al. [26] based on [43] constructed a multi-hop unidirectional lattice-based proxy re-encryption. The scheme can only support one multiplicative homomorphic operation. Ma et al. [19,28] based on [42] constructed a single-hop homomorphic proxy re-encryption from lattices, which allows a user to homomorphically evaluate the original ciphertexts and the re-encrypted ciphertexts, which can come from different users. Li et al. [44,45] constructed a single-hop homomorphic proxy re-encryption via key homomorphic computation and obtained a multi-hop proxy re-encryption using a branching program. Li et al. [46] based on [47] constructed a homomorphic proxy re-encryption from a lattice, which is more flexible than [19,28]. All of these HPR schemes are CPA secure and can not resist strong collusion attack. For the sake of comparison, the comparison results are given in Table 1, which shows the comparison of these PRE schemes in LWE assumption, semantic security, multi-hop, unidirectional-direction (uni-direction), homomorphic encryption (HE) and strong anti-collusion. In this paper, we will construct a lattice-based homomorphic proxy re-encryption scheme with strong anti-collusion. Table 1 shows that our scheme meets all the above performance.

1.2. Our Contribution

At present, there are two main methods to construct the re-encryption key in the lattice-based proxy re-encryption scheme. One is to use the key switching algorithm (see Lemma 6) and the other is to use trapdoor sampling technology (see Lemma 3). In fact, the key switching algorithm uses the delegatee’s encryption key to encrypt the delegator’s decryption key and hides the decryption key by noise. Therefore, when the delegatee colludes with the proxy, an approximate value of the delegator’s decryption key can be recovered, that is, the sum of the decryption key and the decryption noise. Thus, the re-encryption key constructed by the key switching algorithm can only resist weak collusion attack, but not strong collusion attack. However, trapdoor sampling technology does not allow inverse operation, that is, we can not get T A or approximate value of T A by x , A , u , σ , c , where x SamplePre( A , T A , u , σ , c ), so it can resist strong collusion attack.
Because HPRE schemes need to be constructed based on basic homomorphic encryption schemes, and lattice based on homomorphic encryption schemes mostly use a key switching algorithm, modulus switching technique and approximate eigenvector method to control the growth of homomorphic multiplication ciphertext noise, so the current HPRE [28,44,45,46] schemes are constructed based on a key switching algorithm to generate a re-encryption key. The key switching algorithm can not only generate a re-encryption key, but also ensure the homomorphism of ciphertext. However, the re-encryption key generated by key switching algorithm can only resist weak anti-collusion, but not strong anti-collusion. However, the re-encryption key generated by trapdoor sampling technology can resist strong anti-collusion, but it cannot satisfy the homomorphism of ciphertext. This is the difficulty of the HPRE scheme with strong anti-collusion constructed in this paper. Therefore, it is necessary to use trapdoor sampling technology to generate a re-encryption key satisfying the homomorphism of the ciphertext.
In this paper, the ciphertext is divided into two parts, one of which is used to encrypt the plaintext, while ensuring the homomorphism of the ciphertext. In the other part of ciphertext, trapdoor sampling technology can be used to generate the re-encryption key. Therefore, it is necessary to modify the existing homomorphic encryption scheme to make the ciphertext meet the above two requirements.
(1)
Firstly, we use the trapdoor technology of [48] to modify the scheme of [1] and construct an L-homomorphic encryption scheme.
(2)
Then, based on the L-homomorphic encryption scheme proposed in this paper, we construct an HPRE-SAC scheme by using trapdoor sampling technology and a key switching algorithm.
(3)
Finally, a direct application of the HPRE-SAC scheme is given, that is, secure computing of personal health records (PHRs) in the cloud.
Compared with the existing HPRE schemes [28,44,45,46], our HPRE-SAC scheme not only can resist the strong collusion attack, but also has smaller parameters. Therefore, it is more suitable for cloud computing scenarios.

1.3. Paper Organization

The rest of this paper is organized as follows. Section 2 is preliminaries. Section 3 describes the building blocks. Section 4 describes a L- Homomorphic Encryption Scheme. Section 5 describes the HPRE-SAC Scheme. Lastly, our work is concluded in Section 6.

2. Preliminaries

We employ some initial notations listed in Table 2 and let Z q = [ q / 2 , q / 2 ) Z . When A is a matrix, let P 2 ( A ) be the matrix formed by applying the operation to each column of A.

2.1. Lattice and Gaussian Distributions

In this section, we introduce the lattice, Gaussian distribution and some properties needed to construct the scheme.
Definition 1.
Let q be a prime, A Z q n × m , u Z q n , define:
Λ q A = e Z m , s . t . A e = 0 mod q
Λ q u A = e Z m , s . t . A e = u mod q
Lemma 1
([49]). Let q 2 and m 6 n l o g q > 0 . There is a probabilistic polynomial-time (PPT) algorithm TrapGen ( q , n , m ) that outputs matrixes A Z q n × m which is statistically close to uniform in Z q n × m and T Z m × m which is a basis for Λ q A with T O ( n l o g q ) and T ˜ O n log q (Alwen et al. asserted that the constant hidden in the first O ( · ) is no more than 20).
For any positive parameter σ > 0 , define the Gaussian function on R m , centered at c : x R m ,
ρ σ , c = exp ( π x c 2 π x c 2 σ 2 σ 2 ) .
Let Λ be a discrete subset of Z m . Define the discrete Gaussian distribution over Λ as: x R m ,
D Λ , σ , c ( x ) = ρ s , c x ρ σ , c Λ ,
where ρ σ , c Λ = x Λ ρ σ , c x .
Lemma 2
([50]). Let x D Z m , σ , then with overwhelming probability x 2 < σ m , where σ > 0 ,.
Lemma 3
([48]). Let q 2 , T A be a basis for Λ q A , where σ T ˜ ω log m , A Z q n × m . Then for any c R m and u Z q n , there is a PPT algorithm SamplePre( A , T A , u , σ , c ) that outputs x Λ q u ( A ) which is statistically close to D Λ q u ( A ) , σ , c .
Lemma 4
([48]). The algorithm SamplePre( A , T A , u , σ , c ) gives a collection of trapdoor one-way functions with preimage sampling, if I S I S q , m , σ m is hard on average. Furthermore, it gives a collection of trapdoor collision-resistant hash functions with preimage sampling, if I S I S q , m , σ m is hard on the average.
Definition 2
([1]). Let k be the security parameter, and χ = χ ( k ) be a distribution over Z q . The LW E n , m , q , χ assumption shows that, if A Z q m × n , s Z q n , e χ m , u Z q m , then
A , A s + e c A , u .
It is well known that if χ m = D Z m , α q , then when α q 2 n , this decision LWE problem is at least as hard as approximating several problems on n-dimensional lattices Λ in the worst-case to within O ˜ ( n α ) factors with a quantum computer.

2.2. HE: Definition and Security

In this section, we show the definition and security model of the homomorphic encryption (HE) scheme based on [41].
Definition 3.
(Homomorphic encryption scheme)
A homomorphic encryption scheme consists of the following five algorithms:
1. 
H E . S e t u p ( 1 k ) p p : Input the security parameter k. Output the public parameters p p .
2. 
H E . K e y G e n ( p p ) ( p k , s k , e v k ) : Input the public parameters p p . Output the encryption key p k , the public evaluation key e v k and the decryption key s k .
3. 
H E . E n c ( p p , p k , μ ) c t : Input p p , p k , and a message μ { 0 , 1 } . Output a ciphertext c t .
4. 
H E . E v a l ( p p , f , c t 1 , , c t l , e v k ) c t f : Input p p , c t 1 , , c t l , e v k and a function f: { 0 , 1 } l { 0 , 1 } . Output a ciphertext c t f . (We consider homomorphic addition A d d ( c t 1 , c t 2 , e v k ) c t a d d and multiplication M u l t ( c t 1 , c t 2 , e v k ) c t m u l t of depth L arithmetic circuits f over G F ( 2 ) in a gate-to-gate manner.)
5. 
H E . D e c ( p p , s k , c t ) μ : Input p p , s k and ciphertext c t under secret key s k . Output the message μ.
Compared with the public key encryption scheme, the adversary obtains not only p k but also e v k in the HE scheme. If the homomorphic encryption scheme is still semantically secure when the adversary obtains p k and e v k , it is said that the HE scheme is secure. The security model of HE scheme is omitted here.
Definition 4.
(L-homomorphism) If for any depth L = L ( k ) arithmetic circuit f over G F ( 2 ) and any set of inputs μ 1 , , μ l { 0 , 1 } , it holds that
H E . D e c H E . E v a l ( p p , f , c t 1 , , c t l ) = f ( μ 1 , , μ l )
with overwhelming probability of k, where ( p k , s k , e v k ) H E . K e y G e n ( p p ) , c t i H E . E n c ( p p , p k , μ i ) . Then the HE scheme is L-homomorphic.

2.3. HPRE: Definition and Security Model

In this subsection, we recall the definition and the security model of the homomorphic proxy re-encryption (HPRE) scheme. There are four participants in the unidirectional HPRE scheme for cloud sharing, as shown in Figure 2.
(1)
Trusted authority (TA). The TA is trusted by all participants. TA generates the public parameters p p .
(2)
Proxy. The proxy is semi-trusted by all participants. Proxy is generally a cloud service provider. Users use the cloud service provider to store and calculate data.
(3)
Data owner (DO). The DO encrypts the data and stores the encrypted data in the cloud, and generates a proxy re-encryption key for data users.
(4)
Data user (DU). The DU downloads the result of the homomorphic operation from the cloud service provider.
Definition 5.
(Unidirectional homomorphic proxy re-encryption scheme )
A unidirectional HPRE scheme consists of the following seven algorithms:
1. 
HPRE.Setup ( 1 k , 1 L ) p p : For the security parameter k, the upper bound on the maximal multiplicative depth L = L ( k ) that the scheme can homomorphically evaluate, the TA outputs the public parameters p p .
2. 
HPRE.KeyGen ( p p , L ) ( p k i , s k i , e v k i ) : For p p , L , user i (DO or DU) outputs an encryption/decryption key pair ( p k i , s k i ) , and public evaluation key e v k i .
3. 
HPRE.Enc ( p p , p k , μ ) c t : For p p , p k and a message μ, user (DO or DU) outputs an original ciphertext c t .
4. 
HPRE.Rekey p p , s k i , p k i , p k j r k i j : For p p , an encryption/decryption key pair ( p k i , s k i ) of user i, and an encryption key p k j of user j, user i outputs a re-encryption key r k i j .
5. 
HPRE.ReEnc p p , r k i j , c t i c t j : For p p , a re-encryption key r k i j , and an original ciphertext c t i of user i, the proxy outputs a re-encryption ciphertext c t j for the user j.
6. 
HPRE.Eval ( p p , f , c t 1 , , c t l , e v k ) c t f : For p p , c t 1 , , c t l , e v k and a function f: { 0 , 1 } l { 0 , 1 } , the proxy outputs a ciphertext c t f . (We consider homomorphic addition A d d ( c t 1 , c t 2 , e v k ) c t a d d and multiplication M u l t ( c t 1 , c t 2 , e v k ) c t m u l t of depth L arithmetic circuits f over G F ( 2 ) in a gate-to-gate manner. In addition, it should be noted that the ciphertexts c t 1 , , c t l belonging to a user can be original ciphertext or re-encryption ciphertext.)
7. 
HPRE.Dec p p , s k , c t μ : For p p , s k and a ciphertext c t under s k , user outputs the message μ.
Now we define the security model of the HPRE scheme.
Definition 6.
Let HPRE=(HPRE.Setup, HPRE.KeyGen, HPRE.Enc, HPRE.Rekey, HPRE.ReEn, HPRE.Eval, HPRE.Dec) be a unidirectional HPRE scheme, k be a security parameter. Consider the following games E x p t H P R E , A I N D C P A ( k ) between challenger and adversary.
Setup Phase 1: Given a security parameter k, the challenger obtains public parameters p p by running HPRE.Setup ( 1 k , 1 L ) and sends p p to adversary.
Learning Phase: In this phase, the adversary can issue the queries to the following oracles polynomially many times, and the challenger needs to answer these oracles.
Encryption key generation oracle O p k : Given a user index i, the challenger obtains ( p k i , s k i , e v k i ) of user i by running HPRE.KeyGen ( p p , L ) which are recorded in a table, and returns p k i to the adversary.
Evaluation key generation oracle O e v k : Given a user index i, the challenger first looks for the table and returns e v k i if there is an e v k i in the table. Otherwise, the challenger obtains ( p k i , s k i , e v k i ) of user i by running HPRE.KeyGen ( p p , L ) , returns e v k i to the adversary, and records ( p k i , s k i , e v k i ) in the table.
Decryption key generation oracle O s k : Given a user index i, if user i is an honest user, the challenger returns ⊥. If user i is a corrupted user, the challenger first looks for the table and returns s k i if there is a s k i in the table. Otherwise, the challenger obtains ( p k i , s k i , e v k i ) of user i by running HPRE.KeyGen ( p p , L ) , returns s k i to the adversary, and records ( p k i , s k i , e v k i ) in the table.
Re-encryption key generation oracle O r k : Given two user indices ( i , j ), if user i and user j are honest or corrupted, the challenger obtains r k i j by running HPRE.Rekey p p , s k i , p k i , p k j , and returns the r k i j to the adversary, where i j . Otherwise, the challenger returns ⊥.
Re-encryption ciphertext generation oracle O r e : Given two user indices ( i , j ) and a ciphertext c t i of user i, if user i and user j are honest or corrupted, the challenger obtains a ciphertext c t j of user j by running HPRE.ReEnc p p , r k i j , c t i and returns c t j to the adversary, where i j , r k i j H P R E . R e k e y p p , s k i , p k i , p k j . Otherwise, the challenger returns ⊥.
Challenge: The adversary gives a target honest user i * and a message μ after finishing all queries. The challenger chooses b { 0 , 1 } , computes c t 0 i * H P R E . E n c ( p p , p k , μ ) , lets c t 1 i * be a random ciphertext, and sends the challenge ciphertext c t b i * to the adversary.
Learning Phase 2: The adversary could ask extra queries that for decryption key query, re-encryption key query and re-encryption query on the i i * , the challenger responses are the same as in Learning Phase 1.
Finalization: Output 1 if b = b . Otherwise, output 0.
We say a unidirectional HPRE scheme is IND-CPA secure if for any PPT adversary, the advantage
A d v F H P R E , A I N D C P A k = Pr E x p t F H P R E , A I N D C P A k 1 b = 1 Pr E x p t F H P R E , A I N D C P A k 1 b = 0
of adversary is negligible in k.
Yin et al. [37] put forward the concept of strong collusion attack relative to traditional collusion attack, and called traditional collusion attack as weak collusion attack. Yin et al. pointed out through examples that if the adversary can not collude to attack the decryption key of the delegator, but can obtain an approximate value of the decryption key of the delegator, then it can also launch a strong collusion attack on the scheme of Aono et al. [30] and correctly decrypt the ciphertext of the delegator. In fact, the approximate value of the decryption key obtained by the strong collusion attack is P 2 ( S ) + X , where S is the decryption key of the delegator, and X is an error distribution (generally Gaussian distribution). Therefore, an approximate value of S can be obtained. Combined with the definition of a strong collusion attack of Yin et al. [37], we give a new definition of strong collusion attack.
Definition 7.
In a unidirectional proxy re-encryption scheme, if the proxy (cloud service provider) and the delegatee (data user) can not collude to obtain the decryption key S or an approximate value P 2 ( S ) + X of the decryption key of the delegator (data owner), the scheme is called strong anti-collusion, where X is an error distribution. If the decryption key S can not be calculated by collusion, but the approximate value P 2 ( S ) + X of the decryption key can be obtained, it is called weak anti-collusion, where X is an error distribution.

3. Building Blocks

In this section, we construct a new encryption scheme based on [1,48]. Based on this new basic encryption scheme, we can construct a homomorphic proxy re-encryption (HPRE) scheme against strong collusion attack, which is named HPRE-SAC.

3.1. The Basic Encryption Scheme

The basic encryption scheme consists of the following four algorithms.
  • E . S e t u p ( 1 k ) : Input the security parameter k, sample u Z q n . Output the public parameters p p = ( 1 k , 1 n , q , χ , u ) .
  • E . K e y G e n ( p p ) : Input the public parameters p p , use algorithm TrapGen( q , n , m ) to generate matrices A Z q n × m with trapdoor basis T, where m 6 n log q . Then use algorithm SamplePre ( A , T , u ) to sample a vector s Z q m , where A s = u . Output the encryption key p k = ( u | A ) and the decryption key s k = ( s , T ) . (Note that the decryption key T is redundant here, we can instead just let s k = s . The decryption key T is needed to construct the PRE scheme, as described below.)
  • E . E n c ( p p , p k , μ ) : Input the public parameters p p , the encryption key p k = ( u | A ) and a message μ { 0 , 1 } . Output a ciphertext c t Z q 1 × m + 1 ,
    c t = e t ( u | A ) + y t + q 2 μ t ,
    where μ t = ( μ , 0 , , 0 ) , e χ 1 × n , y χ 1 × m + 1 .
  • E . D e c ( p p , s k , c t ) : Input the public parameters p p , the decryption key s k = ( s , T ) and a ciphertext c t . Compute and output
    μ = 2 q c t 1 ; s q 2 .

3.2. Correctness Analysis

We show the correctness in this subsection.
For a ciphertext a ciphertext c t = e t ( u | A ) + y t + q 2 μ t , where μ = ( μ , 0 , , 0 ) , e χ 1 × n , y χ 1 × m + 1 . We have
c t 1 ; s = e t ( u | A ) + y t + q 2 μ t 1 ; s = e t ( u | A ) 1 ; s + y t 1 ; s + q 2 μ t 1 ; s = y t 1 ; s x + q 2 μ .
If x < q 2 / 2 , then the decryption is correct.
For the correctness of this scheme, it needs to satisfy the following conditions:
(1)
x = y t 1 ; s < q 2 / 2
(2)
Algorithm TrapGen requires m 6 n log q .
(3)
Algorithm SamplePre requires σ T ˜ ω log m .
Because T < O n log q , y , s σ m , we set the parameters as follows: n = k , q=the prime nearest to 2 n δ , m = 6 n log q , σ = m ω log m , where δ is constant between 0 and 1. So we have the following Lemma 5.
Lemma 5.
Let q , k , m , n be parameters for the above basic encryption scheme, χ be B-bounded. Set ( s , A ) E . K e y G e n ( p p ) , and c t E . E n c ( p p , p k , μ ) . Then
c t ( 1 ; s ) = x + q 2 μ ,
where x = y t 1 ; s ( m + 1 ) B 2 . If ( m + 1 ) B 2 < q 2 / 2 , then μ E . D e c ( p p , s k , c t ) .

3.3. Security Analysis

We now outline the proof of security to show that the scheme is CPA secure based on LWE assumption. Since u Z q n , and A TrapGen ( q , n , m ) , we have ( u | A ) uniformly distributed by Lemma 1. From LWE, we know that e t ( u | A ) + y t is uniformly distributed and c t hides q 2 μ t . Therefore, the basic encryption scheme is IND-CPA secure.

3.4. Key Switching

Based on the technology of [41], and the basic encryption scheme, we construct a key switching algorithm, which can switch the ciphertext under the decryption key s 1 Z q n 1 into the ciphertext under the decryption key ( 1 ; s 2 ) Z q ( n 2 + 1 ) .
  • S w i t c h K e y G e n ( s 1 , s 2 ) : Input decryption keys s 1 Z q n 1 , s 2 Z q n 2 . Sample A s 1 : s 2 Z q n 1 l o g q × n 2 , x s 1 : s 2 χ n 1 l o g q , compute
    b s 1 : s 2 = A s 1 : s 2 s 2 + x s 1 : s 2 + P 2 ( s 1 ) .
    Output a matrix
    P s 1 : s 2 = ( b s 1 : s 2 | A s 1 : s 2 ) Z q n 1 l o g q × ( 1 + n 2 ) .
  • S w i t c h K e y ( P s 1 : s 2 , c t S 1 ) : Input a ciphertext c t s 1 under the decryption key s 1 , and P s 1 : s 2 . Output a ciphertext
    c t s 2 = P s 1 : s 2 t B D ( c t s 1 ) .
Lemma 6.
(correctness) Let s 1 Z q n 1 , s 2 Z q n 2 . Let P s 1 : s 2 S w i t c h K e y G e n ( s 1 , s 2 ) and c t s 2 S w i t c h K e y ( P s 1 : s 2 , c t s 1 ) . Then
c t s 1 t s 1 = c t s 2 t ( 1 ; s 2 ) B D ( c t s 1 t ) x s 1 : s 2 .
Lemma 7.
(security) Let s 1 Z q n 1 be any vector, if s 2 Z q n 2 E . K e y G e n ( p p ) , P s 1 : s 2 S w i t c h K e y G e n ( s 1 , s 2 ) . Then P s 1 : s 2 is computationally indistinguishable from uniform over Z q n 1 l o g q × ( 1 + n 2 ) based on LWE.

4. An L- Homomorphic Encryption Scheme

In this section, we construct an L-homomorphic encryption scheme based on the basic encryption scheme with the help of the technology of [41,47].

4.1. Construction

An L- homomorphic encryption scheme consists of the following five algorithms.
  • H E . S e t u p ( 1 L , 1 k ) : Input the security parameter k, sample u Z q n , and let L be the maximum depth of arithmetic circuit supporting homomorphic evaluation. Output the public parameters p p = ( 1 k , 1 n , 1 m , q , χ , u , L ) .
  • H E . K e y G e n ( p p ) : Input the public parameters p p , use algorithm TrapGen( q , n , m ) to generate matrices A Z q n × m with trapdoor basis T, where m 6 n log q , use algorithm SamplePre ( A , T , u ) to sample a vector s 0 Z q m , where A s 0 = u , sample s l χ m and compute
    s l * = B D ( 1 ; s l ) B D ( 1 ; s l ) { 0 , 1 } ( ( m + 1 ) l o g q ) 2 ,
    P ( l 1 ) : l S w i t c h K e y G e n ( s l 1 * , s l ) ,
    where l = 1 , 2 , , L . Output the encryption key p k = ( u | A ) , the decryption key s k = ( s L , T ) , e v k = { P ( l 1 ) : l } l = 1 , 2 , , L . (Note that the decryption key T is redundant here, we can instead just let s k = s L . The decryption key T is needed to construct the PRE scheme, as described below.)
  • H E . E n c ( p p , p k , μ ) : Identical to the basic encryption scheme, output c t E . E n c ( p p , p k , μ ) .
  • H E . E v a l ( . ) : As [41,47], We consider homomorphic addition and multiplication of depth L arithmetic circuits over G F ( 2 ) in a gate-to-gate manner. That is, the decryption key of the ciphertexts operated by the gate at level i of the circuit is s i 1 , and the decryption key of the ciphertexts output by the homomorphic operation is s i .
    A d d ( c t 1 , c t 2 ) : Input ciphertexts c t 1 , c t 2 under secret key S i 1 , compute
    c t ˜ a d d = P 2 ( c t 1 + c t 2 ) P 2 1 , , 0 , , 0 ,
    and output
    c t a d d S w i t c h K e y ( P ( l 1 ) : l , c t ˜ a d d ) .
    M u l t ( c t 1 , c t 2 ) : Input ciphertexts c t 1 , c t 2 under secret key S i 1 , compute
    c t ˜ m u l t = 2 q P 2 c t 1 P 2 c t 2 ,
    and output
    c t m u l t S w i t c h K e y ( P ( l 1 ) : l , c t ˜ m u l t ) .
  • H E . D e c ( p p , s k , c t ) : Input ciphertexts c t under secret key s L . Output μ E . D e c ( p p , s k , c t ) .

4.2. Analysis for Homomorphism

We next show the homomorphism of the above L- Homomorphic Encryption scheme.
Lemma 8.
Let q , k , m , n , s , L , χ be parameters for the above homomorphic encryption scheme, χ be B-bounded, and ( p k , s k , e v k ) H E . K e y G e n ( p p ) . Let c t 1 , c t 2 be such that
c t 1 ( 1 ; s l ) = x 1 + q 2 μ 1 , c t 2 ( 1 ; s l ) = x 2 + q 2 μ 2 ,
x 1 , x 2 E < q 2 / 2 . Set c t a d d A d d ( c t 1 , c t 2 ) , c t m u l t M u l t ( c t 1 , c t 2 ) , then
c t a d d ( 1 ; s l + 1 ) = x a d d + q 2 [ μ 1 + μ 2 ] 2 ,
c t m u l t ( 1 ; s l + 1 ) = x m u l t + q 2 μ 1 μ 2 ,
where x a d d , x m u l t O ( m l o g q ) · m a x { ( m l o g 2 q ) B , E } .
Theorem 1.
Let q , k , m , n , L be parameters for the above HE scheme, χ be B-bounded. If O ( m l o g q ) L + O ( 1 ) q / B 2 , then the HE scheme is L homomorphic.
Proof. 
Let E i be the bound of noise after evaluation on the i t h level of gates in ciphertext. By Lemma 5, we have E 0 ( m + 1 ) B 2 = O ( m ) B 2 . According to Lemma 8, when m l o g 2 q B E holds at a certain point, then E i + 1 = O m l o g q · E i and E L = O ( m l o g q ) L + O ( 1 ) · B 2 . Therefore, the decryption is correct if E L < q 2 / 2 , that is O ( m l o g q ) L + O ( 1 ) < q / B 2 . □

4.3. Security Analysis

We now outline the proof of security to show that the HE scheme is CPA secure based on LWE assumption. We show ( p k , e v k , c t ) = ( ( u | A ) , { P ( l 1 ) : l } l = 1 , 2 , , L , c t ) is indistinguishable from uniform by applying a hybrid argument. Since s L is only used to generate P ( L 1 ) : L , we can get P ( L 1 ) : L is indistinguishable from uniform by Lemma 7. Then we can proceed to replace all P ( l 1 ) : l with uniform in descending order. Finally, there is only ( ( u | A ) , c t ) left, which is indistinguishable from uniform by the security analysis of the basic encryption scheme.

5. The HPRE-SAC Scheme

In this section, we will use the above homomorphic encryption (HE) scheme to construct the HPRE-SAC scheme by using Trapdoor Sampling [27,48].

5.1. Construction

The HPRE-SAC scheme consists of the following seven algorithms.
  • H P R E . S e t u p ( 1 k , 1 L ) : Identical to the HE scheme, output p p H E . S e t u p ( 1 k , 1 L ) .
  • H P R E . K e y G e n ( p p ) : Identical to the HE scheme, output ( s k , p k , e v k ) H E . K e y G e n ( p p ) .
  • H P R E . E n c ( p p , p k , μ ) : Identical to the HE scheme, output c t H E . E n c ( p p , p k , μ )
  • H P R E . R e K e y ( p p , s k i , p k i , p k j ) : Input p p , the encryption key p k i = ( u | A i ) and the decryption key s k i = ( s L i , T i ) of user i, the encryption key p k j = ( u | A j ) of user j, sample X i j χ n × m , use algorithm SamplePre( A i , T i , A j + X i j ) to sample a matrix R i j , where
    A i R i j = A j + X i j ,
    output the re-encryption key r k i j = R i j .
  • H P R E . R e E n c ( p p , r k i j , c t i ) : Input p p , a original ciphertext c t i of user i, and a re-encryption key r k i j = R i j . Output a re-encryption ciphertext
    c t j = c t i 1 0 1 × m 0 R i j + ( z i j ) t
    for user j, where z i j χ 1 × ( m + 1 ) .
  • HPRE.Eval ( p p , f , c t 1 , , c t l , e v k ) c t f : Except for the ciphertexts c t 1 , , c t l that belongs to a user can be the original ciphertext or re-encryption ciphertext, the rest are the same as HE scheme, c t f H E . E v a l ( p p , f , c t 1 , , c t l , e v k ) .
  • HPRE.Dec p p , s k , c t μ : Identical to the HE scheme, output μ H E . D e c p p , s k , c t .

5.2. Correctness Analysis

We show the correctness in this subsection.
For a original ciphertext, we know the decryption is correct by Lemma 5. For a re-encryption ciphertext c t j = c t i 1 0 1 × m 0 R i j + ( z i j ) t , where c t i = e i t ( u | A i ) + y i t + q 2 μ i t , μ i t = ( μ , 0 , , 0 ) , e i χ 1 × n , y i χ 1 × m + 1 , z i j χ 1 × ( m + 1 ) , we have
c t j = c t i 1 0 1 × m 0 R i j + ( z i j ) t = e i t ( u | A i ) + y i t + q 2 μ i t 1 0 1 × m 0 R i j + ( z i j ) t = q 2 μ i t + e i t ( u | A j X i j ) + σ t
where σ t = y i t 1 0 1 × m 0 R i j + ( z i j ) t by (5), (6). Thus,
c t j ( 1 ; s j ) = q 2 μ i t + e i t ( u | A j X i j ) + σ t ( 1 ; s j ) = q 2 μ i + e i t u A j s j X i j s j + σ t ( 1 ; s j ) = q 2 μ i + e i t X i j s j + σ t ( 1 ; s j ) y
So we have the following Lemma 9.
Lemma 9.
Let q , k , m , n be parameters for the above basic encryption scheme, χ be B-bounded. Set ( s j , A j ) H P R E . K e y G e n ( p p ) , c t i H P R E . E n c ( p p , p k i , μ i ) , c t j H P R E . R e E n c ( p p , r k i j , c t i ) . Then
c t j ( 1 ; s 0 j ) = y + q 2 μ i ,
where y = y i t 1 0 1 × m 0 R i j + ( z i j ) t ( 1 ; s j ) + e i t X i j s j . Since R i j SamplePre ( A i , T i , A j + X i j ) , we have R i j B by Lemma 3. If y ( m + 1 ) ( m B + 1 ) B 2 + n m B 3 < q 2 / 2 , then μ E . D e c ( p p , s k , c t ) .
Next, we consider the homomorphic operations of ciphertexts (including original ciphertexts and re-encryption ciphertexts). According to Lemma 9, the decryption of re-encryption ciphertext has the same form as the original ciphertext. Therefore, Lemma 8 shows that the homomorphism operation is feasible, including the homomorphic operation over the original ciphertexts, the homomorphic operation over the original ciphertexts and the re-encryption ciphertexts, and the homomorphic operation over the re-encryption ciphertexts. In addition, it is noted that the re-encryption ciphertexts has a larger decryption noise magnitude. Therefore, in order to prove that the HPRE scheme is L homomorphic, we only need to control the decryption noise magnitude of the homomorphic operations over the re-encryption ciphertexts. So similar to Theorem 1, we have Theorem 2.
Theorem 2.
Let q , k , m , n , L be parameters for the above HPRE-SAC scheme, χ be B-bounded. If O ( m l o g q ) L + O ( 1 ) < q / B 3 , then the HPRE-SAC scheme is L homomorphic.
Proof. 
Let E i be the bound of noise after evaluation on the i t h level of gates in ciphertext. By Lemma 9, we have E 0 ( m + 1 ) ( m B + 1 ) B 2 + n m B 3 = O ( m 2 ) B 3 . According to Lemma 8, when m l o g 2 q B E holds at a certain point, then E i + 1 = O m l o g q · E i and E L = O ( m l o g q L + O ( 1 ) · B 3 . Therefore, the decryption is correct if E L < q 2 / 2 , that is O ( m l o g q ) L + O ( 1 ) < q / B 3 . □
Finally, we show that the HPRE-SAC scheme is multi-hop.
Theorem 3.
Let q , k , m , n , L be parameters for the above HPRE-SAC scheme, χ be B-bounded, then the HPRE-SAC scheme is multi-hop.
Proof. 
Let the public key of user i be p k i = ( u | A i ) , the re-encryption key from user i to user j be r k i j = R i j , i = 1 , 2 , , l , the ciphertext of user 1 be c t 1 = e 1 t ( u | A 1 ) + y 1 t + q 2 μ 1 t , where μ 1 t = ( μ 1 , 0 , , 0 ) , e 1 χ 1 × n , y 1 χ 1 × m + 1 . If c t i + 1 H P R E . R e E n c ( p p , r k i i + 1 , c t i ) , then by (6), we have
c t 2 = c t 1 1 0 1 × m 0 R 1 2 + ( z 1 2 ) t ,
c t 3 = c t 2 1 0 1 × m 0 R 2 3 + ( z 2 3 ) t = c t 1 1 0 1 × m 0 R 1 2 R 2 3 + ( z 1 2 ) t 1 0 1 × m 0 R 2 3 + ( z 2 3 ) t
c t l = c t 1 1 0 1 × m 0 i = 1 l 1 R i i + 1 + j = 1 l 2 ( z j j + 1 ) t 1 0 1 × m 0 i = j + 1 l 1 R i i + 1 + ( z ( l 1 ) l ) t ρ 1 t
By (5), we get
c t 1 1 0 1 × m 0 i = 1 l 1 R i i + 1 = e 1 t ( u | A 1 ) + y 1 t + q 2 μ 1 t 1 0 1 × m 0 i = 1 l 1 R i i + 1 = e 1 t u | A 1 i = 1 l 1 R i i + 1 + q 2 μ 1 t + y 1 t 1 0 1 × m 0 i = 1 l 1 R i i + 1 ρ 2 t = e 1 t ( u | A l Y ) + q 2 μ 1 t + ρ 2 t ,
where Y = X ( l 1 ) l + j = 1 l 1 X j ( j + 1 ) i = j + 1 l 1 R i ( i + 1 ) . Therefore,
c t l ( 1 ; s l ) = e 1 t ( u | A l Y ) + q 2 μ 1 t + ( ρ 1 + ρ 2 ) t ( 1 ; s l ) = q 2 μ 1 e 1 t Y s l + ( ρ 1 + ρ 2 ) t ) ( 1 ; s l ) ρ
If ρ = O ( m l ) B l + 1 < q 2 / 2 , the re-encryption ciphertext c t l can be correctly decrypted.
Similar to the proof of Lemma 9 and Theorem 2, we know that if O ( m l o g q ) l + L + O ( 1 ) < q / B l + 1 , the HPRE-SAC scheme is multi-hop. □

5.3. Security Analysis

We show the security in this subsection.
Theorem 4.
Let q , k , m , n , L be parameters for the above HPRE-SAC scheme, χ be B-bounded. If O ( m l o g q ) L + O ( 1 ) < q / B 3 , then the HPRE-SAC scheme is IND-CPA secure based on LWE.
Proof. 
We consider the following games.
Game G 0 b : This game is the original game E x p t H P R E , A C P A ( k ) between challenger and adversary. Suppose that the index of target honest user is 0, the p k 0 = ( u | A 0 ) , s k 0 = ( s L 0 , T 0 ) , e v k 0 = { P ( l 1 ) : l 0 } l = 1 , 2 , , L , where P ( i 1 ) : i 0 S w i t c h K e y G e n ( s l 1 0 * , s l 0 ) , s l 0 * = B D ( 1 ; s l 0 ) B D ( 1 ; s l 0 ) , s l 0 χ m , s 0 0 SamplePre ( A , T , u ) . The challenger computes the challenge ciphertext on query μ as follows:
  • If b = 0 , it returns c t = e 0 t ( u | A 0 ) + y 0 t + q 2 μ t , where μ t = ( μ , 0 , , 0 ) , e 0 χ 1 × n , y 0 χ 1 × m + 1 .
  • If b = 1 , it returns a random ciphertext c t Z q 1 × m + 1
Game G 1 b : We modify the encryption key generation oracle O p k . This game is identical to game G 0 , except that the challenger replaces A i of user i with A + i , where ( A + i , T + i ) TrapGen( q , n , m ).
Because of ( A + i , T + i ) TrapGen( q , n , m ), ( A i , T i ) TrapGen( q , n , m ), we have A + i , A i are statistically close to uniform by Lemma 1. Therefore, A i s A i + . So G 0 b s G 1 b
Game G 2 b : We modify the evaluation key generation oracle O e v k . The challenger computes P ( l 1 ) : l , + i S w i t c h K e y G e n ( s l 1 + i * , s l + i ) , where s l + i * = B D ( 1 ; s l + i ) B D ( 1 ; s l + i ) , s 0 + i SamplePre ( A + i , T + i , u ) , s l + i χ m , and replaces P ( l 1 ) : l i of user i with P ( l 1 ) : l , + i , l = 1 , 2 , , L . The rest are the same as G 1 b .
Since s L i χ m ( s L + i χ m ) is only used to generate P ( L 1 ) : L i ( P ( L 1 ) : L , + i ) , we can get P ( L 1 ) : L i ( P ( L 1 ) : L , + i ) indistinguishable from uniform by Lemma 7. Therefore, P ( L 1 ) : L i s P ( L 1 ) : L , + i .Then we can get P ( l 1 ) : l i s P ( l 1 ) : l , + i in descending order, l = 1 , 2 , , L . So G 1 b s G 2 b .
Game G 3 b : We modify the re-encryption key generation oracle O r k . the challenger samples R + i j χ m × m and replaces R i j with R + i j . The rest are the same as G 2 b .
Because of A i R i j = A j + X i j , we have A 1 R 1 2 R 2 3 = ( A 2 + X 1 2 ) R 2 3 = A 3 + X 2 3 + X 1 2 R 2 3 . Therefore, the adversary cannot use R 1 2 , R 2 3 to verify the relationship between A 1 A 2 and A 3 . So R i j is independent of each other. Since R i j SamplePre( A i , T i , A j + X i j ), we know R i j statistically close to χ m × m by Lemma 3.That is R i j s R + i j . So G 2 b s G 3 b .
Game G 4 b : We modify re-encryption ciphertext generation oracle O r e . The challenger replaces the re-encrypted ciphertext c t j with c t + j HPRE.ReEnc p p , r i j , c t i . The rest are the same as G 3 b .
According to Lemma 3, we have the R i j s R i j + . It follows that G 3 b s G 4 b , for efficient adversary.
Finally, we have that G 4 1 c G 4 0 from LWE. Combining the above indistinguishability, we have shown that G 0 1 c G 0 0 . This completes the proof. □
It should be noted that our HPRE-SAC scheme uses trapdoor to generate re-encryption key and decryption key respectively, which not only ensures the homomorphism, but also ensures the resistance to strong collusion attack. By Lemma 4, we know that the trapdoor sampling algorithm is one-way and collision-resistant, so the delegatee and the proxy can not attack the decryption key of the delegator. In addition, the decryption key does not participate in the re-encryption key generation, and is only used for ciphertext decryption. Therefore, the adversary can not get any information of the decryption key, so the approximate value of the decryption key can not be obtained.
If the adversary obtains the approximate value P 2 ( s ) + x of the decryption key s , where x is an error distribution, then the adversary can decrypt the delegator’s ciphertext. Let c t = ( c t 1 , c t 2 ) = e t u + y + q 2 μ , e t ( A ) + y t , then we have
( c t 1 , B D ( c t 2 ) ) 1 ; P 2 ( s ) + x = c t 1 + c t 2 s + B D ( c t 2 ) x = ( c t 1 , c t 2 ) ( 1 ; s ) + B D ( c t 2 ) x = e t ( u | A ) + y t + q 2 μ t 1 ; s + B D ( c t 2 ) x = e t ( u | A ) 1 ; s + y t 1 ; s + q 2 μ t 1 ; s + B D ( c t 2 ) x = y t 1 ; s + B D ( c t 2 ) x x + q 2 μ .
If x < q 2 / 2 , then the decryption is correct. Thus, the IND-CPA security of the HPRE-SAC scheme does not hold, which is in contradiction with Theorem 4. Therefore, the adversary can not obtain the approximate value P 2 ( s ) + x of the decryption key s .
In addition, although our HPRE-SAC scheme is single bit encryption, we can use homomorphic ciphertext packing technology [51] and trapdoor based multi bit proxy re-encryption scheme [27] to construct a multi bit homomorphic proxy re-encryption scheme against strong collusion attack.

5.4. Comparisons

We compare the related works in this subsection.
At present, there are many PRE schemes. We only select some related works from the lattice based PRE and compare them with our schemes. It can be seen from Table 1 that Ma et al. [28], Li et al. [44,45], Li et al. [46] and our scheme are homomorphic proxy re-encryption schemes. The following comparison is made from the length of the encryption key, decryption key, re-encryption key and ciphertext (including original ciphertexts and re-encryption ciphertexts). The comparison results are shown in Table 3.
It can be seen from Table 3 that the public key length of Ma et al. [28] is n l o g q , that of Li et al. [44] is m ( n + 1 ) l o g q , that of Li et al. [45] is the same as that of Li et al. [44], and that of Li et al. [46] is the longest, which is ( n l o g n + 2 ) l o g q . The length of the public key of our HPRE-SAC scheme is n m , which is smaller than that of Li et al. [44] and only one constant times different from that of Ma et al. [28]. From the length of re-encryption key, we can find that the complexity of Ma et al. [28] is O ( n 3 l o g q ) , that of Li et al. [46] is only O ( n l o g q ) , and the rest is O ( n 2 l o g q ) . However, by observing the length of the ciphertext (including original ciphertexts and re-encryption ciphertexts), we can find that the length of the ciphertext of Li et al. [46] is the largest, that is O ( ( n l o g q ) 2 l o g q ) , while that of our scheme HPRE-SAC and [44,45] are the smallest, the complexity is only O ( n l o g q ) . In conclusion, the comparison shows that our scheme HPRE-SAC has better parameters. In addition, it should be noted from Table 1 that only our HPRE-SAC scheme can resist strong collusion attack.

5.5. An Application

In this section, we present an application of our scheme HPRE-SAC: Secure computing of personal healthcare records (PHRs) in the cloud.
At present, there are many applications of PRE in the cloud [52,53,54,55,56], especially in cloud based PHRs [57,58]. The overall system architecture of cloud based PHRs computing using the proposed HPRE-SAC scheme is shown in Figure 3. It includes four entities: patient (data owner), E-Healthcare cloud service provider (CSP), trusted authority (TA) and doctor (data receiver). The following steps are required.
(1)
Patients and the doctor use the algorithm H P R E . S e t u p to register in TA to obtain the public parameters of the system.
(2)
Patients and the doctor use the algorithm H P R E . K e y G e n to generate their own encryption key, public evaluation key and decryption key.
(3)
Patients use the algorithm H P R E . E n c to encrypt their PHRs and upload them to the E-healthcare cloud service provider for storage. The PHRs here includes not only diagnostic information from doctors, but also personal health information collected by smart wearable devices. We assume that the E-healthcare cloud service provider is not trusted, so the patients need to encrypt the data.
(4)
For a certain purpose (in addition to clinical purposes, it can also be for research purposes), the doctor asks patients for the right to decrypt their encrypted data.
(5)
After the patient agrees with the doctor’s request, the algorithm H P R E . R e K e y is used to generate the re-encryption key and send it to the proxy.
(6)
Suppose that the proxy residing in the cloud is semi-trusted, that is to say, it follows the protocol, but can collect information to infer private information, or collude with the data user to attack the data owner. The proxy re-encrypts the patient’s ciphertext to generate the doctor’s ciphertext by using the algorithm H P R E . R e E n c .
(7)
The doctor needs to analyze and calculate the PHRs of multiple patients for a certain purpose (in addition to clinical purpose, it can also be for research). In order to reduce the burden of local computation and communication, the doctor sends the function to the proxy.
(8)
The proxy uses the algorithm H P R E . E v a l to perform homomorphic function operation on the re-encryption ciphertext belonging to the doctor.
(9)
The doctor downloads the results of homomorphic operation and decrypts them locally by using the algorithm H P R E . D e c to obtain the required data.
In this system architecture, it not only ensures the safety of the patient’s data, but also meets the efficient needs of doctors for the statistical analysis of PHRs of multiple patients.

6. Conclusions

In order to adapt to efficient and secure cloud computing, this paper proposes a lattice based homomorphic proxy re-encryption scheme, namely HPRE-SAC, which can resist strong collusion attack. In particular, the HPRE-SAC scheme is unidirectional, multi-hop, and CPA secure under LWE. Compared with the existing HPRE scheme, the HPRE-SAC scheme has better parameters. However, the efficiency of the HPRE-SAC scheme is still low. The future work will be to construct a more efficient HPRE scheme based on the existing scheme, such as constructing an HPRE scheme on the ring LWE to meet the more comprehensive application requirements.

Author Contributions

All authors contributed to the paper. J.L. and Z.Q. wrote the manuscript with the supervision from K.Z. and C.C. is responsible for the design of the cryptosystem. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Natural Science Foundation of China (61702224, U1936112), the Heilongjiang Provincial Natural Science Foundation of China (LH2020F044), and the Guangxi Key Laboratory of Cryptography and Information Security (GCIS201904).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Regev, O. On lattices, learning with errors, random linear codes, and cryptography. In Proceedings of the Thirty-Seventh Annual ACM Symposium on Theory of Computing, Baltimore, MD, USA, 22–24 May 2005; pp. 84–93. [Google Scholar]
  2. Regev, O. On lattices, learning with errors, random linear codes, and cryptography. J. ACM 2009, 56, 1–40. [Google Scholar] [CrossRef]
  3. Micciancio, D.; Regev, O. Worst-case to average-case reductions based on Gaussian measures. SIAM J. Comput. 2007, 37, 267–302. [Google Scholar] [CrossRef] [Green Version]
  4. Applebaum, B.; Cash, D.; Peikert, C.; Sahai, A. Fast cryptographic primitives and circular-secure encryption based on hard learning problems. In Proceedings of the 29th Annual International Cryptology Conference on Advances in Cryptology, Santa Barbara, CA, USA, 16–20 August 2009; pp. 595–618. [Google Scholar]
  5. Lindner, R.; Peikert, C. Better key sizes (and attacks) for LWE-based encryption. In Proceedings of the 11th International Conference on Topics in Cryptology: CT-RSA 2011, San Francisco, CA, USA, 14–18 February 2011; pp. 319–339. [Google Scholar]
  6. Orsini, E.; Smart, N.P. Bootstrapping BGV ciphertexts with a wider choice of p and q. In Proceedings of the 18th IACR International Conference on Practice and Theory in Public-Key Cryptography, Gaithersburg, MD, USA, 30 March–1 April 2015; pp. 673–698. [Google Scholar]
  7. Gentry, C. A Fully Homomorphic Encryption Scheme. Ph.D. Thesis, Stanford University, Stanford, CA, USA, 2009. [Google Scholar]
  8. Gentry, C. Fully homomorphic encryption using ideal lattices. In Proceedings of the 41st Annual ACM Symposium on Symposium on Theory of Computing, Bethesda, MD, USA, 31 May–2 June 2009; pp. 169–178. [Google Scholar]
  9. Mai, V.; Khalil, I. Design and implementation of a secure cloud-based billing model for smart meters as an Internet of things using homomorphic cryptography. Future Gener. Comput. Syst. 2017, 72, 327–338. [Google Scholar] [CrossRef]
  10. Ren, S.Q.; Tan, B.H.M.; Sundaram, S.; Wang, T.; Ng, Y.; Chang, V.; Aung, K.M.M. Secure searching on cloud storage enhanced by homomorphic indexing. Future Gener. Comput. Syst. 2016, 65, 102–110. [Google Scholar] [CrossRef] [Green Version]
  11. Blaze, M.; Bleumer, G.; Strauss, M. Divertible protocols and atomic proxy cryptography. In Proceedings of the International Conference on the Theory and Application of Cryptographic Techniques, Espoo, Finland, 31 May–4 June 1998; pp. 127–144. [Google Scholar]
  12. Ateniese, G.; Fu, K.; Green, M.; Hohenberger, S. Improved proxy re-encryption schemes with applications to secure distributed storage. ACM Trans. Inf. Syst. Secur. (TISSEC) 2006, 9, 1–30. [Google Scholar] [CrossRef]
  13. Yang, Y.; Zhu, H.; Lu, H.; Weng, J.; Zhang, Y.; Choo, K.K.R. Cloud based data sharing with fine-grained proxy re-encryption. Pervasive Mob. Comput. 2016, 28, 122–134. [Google Scholar] [CrossRef] [Green Version]
  14. Wang, D.; Li, W.; Wang, P. Measuring Two-Factor Authentication Schemes for Real-Time Data Access in Industrial Wireless Sensor Networks. IEEE Trans. Ind. Inform. 2018, 14, 4081–4092. [Google Scholar] [CrossRef]
  15. Jiang, L.; Guo, D. Dynamic Encrypted Data Sharing Scheme Based on Conditional Proxy Broadcast Re-Encryption for Cloud Storage. IEEE Access 2017, 5, 13336–13345. [Google Scholar] [CrossRef]
  16. Zhou, Y.; Deng, H.; Wu, Q.; Qin, B.; Liu, J.; Ding, Y. Identity-based proxy re-encryption version 2: Making mobile access easy in cloud. Future Gener. Comput. Syst. 2016, 62, 128–139. [Google Scholar] [CrossRef]
  17. Lu, Y.; Li, J. A pairing-free certificate-based proxy re-encryption scheme for secure data sharing in public clouds. Future Gener. Comput. Syst. 2016, 62, 140–147. [Google Scholar] [CrossRef]
  18. Zeng, P.; Choo, K.R. A New Kind of Conditional Proxy Re-Encryption for Secure Cloud Storage. IEEE Access 2018, 6, 70017–70024. [Google Scholar] [CrossRef]
  19. Ma, C.; Li, J.; Ouyang, W. Lattice-based identity-based homomorphic conditional proxy re-encryption for secure big data computing in cloud environment. Int. J. Found. Comput. Sci. 2017, 28, 645–660. [Google Scholar] [CrossRef]
  20. Li, J.; Ma, C.; Zhang, K. A Novel Lattice-Based CP-ABPRE Scheme for Cloud Sharing. Symmetry 2019, 11, 1262. [Google Scholar] [CrossRef] [Green Version]
  21. Liang, K.; Au, M.H.J.; Liu, K.J.; Susilo, W.; Wong, D.S.; Yang, G.; Yu, Y.; Yang, A. A secure and efficient ciphertext-policy attribute-based proxy re-encryption for cloud data sharing. Future Gener. Comput. Syst. 2015, 52, 95–108. [Google Scholar] [CrossRef]
  22. Sun, M.; Ge, C.; Fang, L.; Wang, J. A proxy broadcast re-encryption for cloud data sharing. Multimed. Tools Appl. 2018, 77, 10455–10469. [Google Scholar] [CrossRef]
  23. Xu, P.; Jiao, T.; Wu, Q.; Wang, W.; Jin, H. Conditional Identity-Based Broadcast Proxy Re-Encryption and Its Application to Cloud Email. IEEE Trans. Comput. 2016, 65, 66–79. [Google Scholar] [CrossRef]
  24. Ivan, A.; Dodis, Y. Proxy Cryptography Revisited. In Proceedings of the 10th Annual Network and Distributed System Security Symposium, 497 NDSS, DBLP, San Diego, CA, USA, 23–26 February 2003. [Google Scholar]
  25. Singh, K.; Pandu Rangan, C.; Banerjee, A.K. Lattice based identity based proxy re-encryption scheme. J. Internet Serv. Inf. Secur. (JISIS) 2013, 3, 38–51. [Google Scholar]
  26. Jiang, M.M.; Hu, Y.P.; Wang, B.C.; Wang, F.H.; Lai, Q.Q. Lattice-based multi-use unidirectional proxy re-encryption. Secur. Commun. Netw. 2015, 8, 3796–3803. [Google Scholar] [CrossRef]
  27. Li, J.; Ma, C.; Gu, Z. Multi-use Deterministic Public Key Proxy Re-Encryption from Lattices in the Auxiliary-Input Setting. Int. J. Found. Comput. Sci. 2020, 31, 551–567. [Google Scholar] [CrossRef]
  28. Ma, C.; Li, J.; Ouyang, W. A Homomorphic Proxy Re-encryption from Lattices. In Proceedings of the 10th International Conference, ProvSec 2016, Nanjing, China, 10–11 November 2016; pp. 353–372. [Google Scholar]
  29. Xagawa, K. Cryptography with Lattices. Ph.D. Thesis, Tokyo Institute of Technology, Tokyo, Japan, 2010. [Google Scholar]
  30. Aono, Y.; Boyen, X.; Wang, L. Key-private proxy re-encryption under LWE. In Proceedings of the International Conference on Cryptology in India, Mumbai, India, 7–10 December 2013; pp. 1–18. [Google Scholar]
  31. Ateniese, G.; Benson, K.; Hohenberger, S. Key-private proxy re-encryption. In Proceedings of the Cryptographers’ Track at the RSA Conference, San Francisco, CA, USA, 24–28 February 2009; pp. 279–294. [Google Scholar]
  32. Singh, K.; Rangan, C.P.; Banerjee, A.K. Cryptanalysis of unidirectional proxy re-encryption scheme. In Proceedings of the Information and Communication Technology-EurAsia Conference, Bali, Indonesia, 14–17 April 2014; pp. 564–575. [Google Scholar]
  33. Kirshanova, E. Proxy re-encryption from lattices. In Proceedings of the International Workshop on Public Key Cryptography, Buenos Aires, Argentina, 26–28 March 2014; pp. 77–94. [Google Scholar]
  34. Nishimaki, R.; Xagawa, K. Key-Private Proxy Re-Encryption from Lattices, Revisited, IEICE Transactions on Fundamentals of Electronics. Commun. Comput. Sci. 2015, 98, 100–116. [Google Scholar]
  35. Hou, J.; Jiang, M.; Guo, Y.; Song, W. Efficient identity-based multi-bit proxy re-encryption over lattice in the standard model. Inf. Secur. Tech. Rep. 2019, 47, 329–334. [Google Scholar] [CrossRef]
  36. Yin, W.; Wen, Q.; Li, W.; Zhang, H.; Jin, Z.P. Identity Based Proxy Re-encryption Scheme under LWE. KSII Trans. Internet Inf. Syst. 2017, 11, 6116–6132. [Google Scholar]
  37. Yin, W.; Wen, Q.; Li, W.; Zhang, H.; Jin, Z. A New Insigh-Proxy Re-encryption Under LWE with Strong Anti-collusion. In Proceedings of the International Conference on Information Security Practice and Experience, Kuala Lumpur, Malaysia, 26–28 November 2019; Springer: Cham, Switzerland, 2018; pp. 559–577. [Google Scholar]
  38. Zhong, H.; Cui, J.; Shi, R.; Xia, C. Many-to-one homomorphic encryption scheme. Secur. Commun. Netw. 2015, 9, 1007–1015. [Google Scholar] [CrossRef]
  39. Brakerski, Z.; Vaikuntanathan, V. Efficient fully homomorphic encryption from (Standard) LWE. In Proceedings of the 52nd Annual IEEE Symposium on Foundations of Computer Science, Palm Springs, CA, USA, 22–25 October 2011; pp. 97–106. [Google Scholar]
  40. Brakerski, Z.; Gentry, C.; Vaikuntanathan, V. (leveled) Fully Homomorphic Encryption without Bootstrapping. In Proceedings of the 3rd Innovations in Theoretical Computer Science Conference, Cambridge, MA, USA, 8–10 January 2012; pp. 309–325. [Google Scholar]
  41. Brakerski, Z. Fully Homomorphic Encryption without Modulus Switching from Classical Gapsvp. In Proceedings of the 32nd Annual Cryptology Conference, Santa Barbara, CA, USA, 19–23 August 2012; pp. 868–886. [Google Scholar]
  42. Gentry, C.; Sahaiy, A.; Waters, B. Homomorphic Encryption From Learning with Errors: Conceptually-Simpler, Asymptotically-Faster, Attribute-Based. In Proceedings of the 33rd Annual Cryptology Conference, Santa Barbara, CA, USA, 18–22 August 2013; pp. 75–92. [Google Scholar]
  43. Gentry, C.; Halevi, S.; Vaikuntanathan, V. A simple BGN-type cryptosystem from LWE. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, French Riviera, French, 30 May–3 June 2010; Springer: Berlin/Heidelberg, Germany, 2010; pp. 506–522. [Google Scholar]
  44. Li, Z.; Ma, C.; Wang, D. Towards Multi-Hop Homomorphic Identity-Based Proxy Re-Encryption via Branching Program. IEEE Access 2017, 5, 16214–16228. [Google Scholar] [CrossRef]
  45. Li, Z.; Ma, C.; Wang, D. Achieving Multi-Hop PRE via Branching Program. IEEE Trans. Cloud Comput. 2020, 8, 45–58. [Google Scholar] [CrossRef]
  46. Li, J.; Ma, C.; Zhang, L.; Yuan, Q. Unidirectional FHPRE Scheme from Lattice for Cloud Computing. Int. J. Netw. Secur. 2019, 21, 592–600. [Google Scholar]
  47. Ma, C.; Li, J.; Du, G. A Flexible Fully Homomorphic Encryption. Wirel. Pers. Commun. 2017, 95, 761–772. [Google Scholar] [CrossRef]
  48. 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, Victoria, BC, Canada, 17–20 May 2008; pp. 197–206. [Google Scholar]
  49. Alwen, J.; Peikert, C. Generating shorter bases for hard random lattices. Theory Comput. Syst. 2011, 48, 535–553. [Google Scholar] [CrossRef] [Green Version]
  50. Micciancio, D.; Peikert, C. Trapdoors for lattices: Simpler, tighter, faster, smaller. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Cambridge, UK, 15–19 April 2012; pp. 700–718. [Google Scholar]
  51. Brakerski, Z.; Gentry, C.; Halevi, S. Packed Ciphertexts in LWE-Based Homomorphic Encryption. In Proceedings of the Public-Key Cryptography-PKC 2013, Lecture Notes in Computer Science, Nara, Japan, 26 February–1 March 2013; Springer: Berlin/Heidelberg, Germany, 2013; pp. 1–13. [Google Scholar]
  52. Lin, H.Y.; Hung, Y.M. An Improved Proxy Re-Encryption Scheme for IoT-Based Data Outsourcing Services in Clouds. Sensors 2021, 21, 67. [Google Scholar] [CrossRef]
  53. Qin, Z.; Xiong, H.; Wu, S.; Batamuliza, J. A survey of proxy re-encryption for secure data sharing in cloud computing. IEEE Trans. Serv. Comput. 2016. [Google Scholar] [CrossRef]
  54. Gai, K.; Qiu, M.; Zhao, H. Security-Aware Efficient Mass Distributed Storage Approach for Cloud Systems in Big Data. In Proceedings of the 2nd International Conference on Big Data Security on Cloud (BigDataSecurity), IEEE International Conference on High Performance and Smart Computing (HPSC), and IEEE International Conference on Intelligent Data and Security (IDS), New York, NY, USA, 9–10 April 2016; pp. 140–145. [Google Scholar]
  55. Qiu, M.; Xue, C.; Sha, H.M.; Jia, Z.; Shao, Z.; Sha, E.H.M. Voltage assignment with guaranteed probability satisfying timing constraint for real-time multiproceesor DSP. J. VLSI Signal Process. Syst. Signal Image Video Technol. 2017, 46, 55–73. [Google Scholar] [CrossRef]
  56. Dai, W.; Qiu, L.; Wu, A.; Qiu, M. Cloud infrastructure resource allocation for big data applications. IEEE Trans. Big Data 2016, 4, 313–324. [Google Scholar] [CrossRef]
  57. Bhatia, T.; Verma, A.K.; Sharma, G. Secure sharing of mobile personal healthcare records using certificateless proxy re-encryption in cloud. Trans. Emerg. Telecommun. Technol. 2018, 29, e3309. [Google Scholar] [CrossRef]
  58. Bhatia, T.; Verma, A.K.; Sharma, G. Towards a secure incremental proxy re-encryption for e-healthcare data sharing in mobile cloud computing. Concurr. Comput. Pract. Exp. 2020, 32, e5520. [Google Scholar] [CrossRef]
Figure 1. The homomorphic proxy re-encryption scheme.
Figure 1. The homomorphic proxy re-encryption scheme.
Sensors 21 00288 g001
Figure 2. System model of the homomorphic proxy re-encryption (HPRE) scheme.
Figure 2. System model of the homomorphic proxy re-encryption (HPRE) scheme.
Sensors 21 00288 g002
Figure 3. Secure computing of personal healthcare records (PHRs) using HPRE with strong anti-collusion (SAC) in the cloud.
Figure 3. Secure computing of personal healthcare records (PHRs) using HPRE with strong anti-collusion (SAC) in the cloud.
Sensors 21 00288 g003
Table 1. Comparison of lattice-based proxy re-encryption (PRE) schemes.
Table 1. Comparison of lattice-based proxy re-encryption (PRE) schemes.
SchemeLWESecurityHopDirectionHEAnti-Collusion
Li et al. [20]YCPASingleUni-Nweak
Singh et al. [25]YCPASingleUni-Nweak
Xagawa [29]YNSingleUni-Nweak
Kirshanova [33]YCCASingleUni-Nstrong
Nishimaki et al. [34]YCPASingleUni-Nweak
Hou et al. [35]YCPAMultiBi-Nweak
Yin et al. [36]YCPASingleUni-Nstrong
Yin et al. [37]YCPASingleUni-Nstrong
Jiang et al. [26]YCPAMultiUni-Nstrong
Ma et al. [28]YCPASingleUni-Yweak
Li et al. [44]YCPAMultiUni-Yweak
Li et al. [45]YCPAMultiUni-Yweak
Li et al. [46]YCPASingleUni-Yweak
Our Scheme FHPR-SACYCPAMultiUni-Ystrong
Y indicates that the scheme has been achieved and N indicates that the scheme has not been achieved.
Table 2. Notation.
Table 2. Notation.
xscalar
x rounding x to the nearest integer
x ( x )rounding down (up)
x vector
Amatrix or set
| | x | | p l p norm of x
P 2 x 1 x ; 2 x ; ; 2 l o g q 1 x Z q n l o g q , where x Z q n
B D x u 1 , , u l o g q 0 , 1 n l o g q , where x = k = 1 l o g q 2 k 1 u k
( X | Y ) the concatenation of the columns of X , Y
( X ; Y ) the concatenation of the rows of X , Y
x χ x is sampled according to a probability distribution χ
x S x is sampled uniformly from a set S
X c Y X and Y are computationally indistinguishable
X s Y X and Y are statistically indistinguishable
Table 3. The parameters comparison of HPRE schemes.
Table 3. The parameters comparison of HPRE schemes.
Scheme pk sk rk ct
Ma et al. [28] n l o g q n n 3 l o g q + n 2 l o g q n 2 l o g q
Li et al. [44] m ( n + 1 ) l o g q ( 2 m + 1 ) l o g q ( 2 n + 1 ) ( ( 2 n + 1 ) l o g q + m ) ( 2 n + 1 ) l o g q
Li et al. [45] m ( n + 1 ) l o g q ( n + 1 ) l o g q ( n + 1 ) ( ( n + 1 ) l o g q + m ) l o g q ( n + 1 ) l o g q
Li et al. [46] ( n l o g n + 2 ) l o g q n l o g n n l o g q + 2 ( n l o g q + 2 ) 2 l o g + n l o g ( n + 2 )
HPRE-SAC n m m ( m + 1 ) 2 m + 1
p k , s k , r k , c t represent the length of encryption key, decryption key re-encryption key and ciphertext (including original ciphertexts and re-encryption ciphertexts) respectively, m = 6 n l o g q .
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Li, J.; Qiao, Z.; Zhang, K.; Cui, C. A Lattice-Based Homomorphic Proxy Re-Encryption Scheme with Strong Anti-Collusion for Cloud Computing. Sensors 2021, 21, 288. https://doi.org/10.3390/s21010288

AMA Style

Li J, Qiao Z, Zhang K, Cui C. A Lattice-Based Homomorphic Proxy Re-Encryption Scheme with Strong Anti-Collusion for Cloud Computing. Sensors. 2021; 21(1):288. https://doi.org/10.3390/s21010288

Chicago/Turabian Style

Li, Juyan, Zhiqi Qiao, Kejia Zhang, and Chen Cui. 2021. "A Lattice-Based Homomorphic Proxy Re-Encryption Scheme with Strong Anti-Collusion for Cloud Computing" Sensors 21, no. 1: 288. https://doi.org/10.3390/s21010288

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