Zum Hauptinhalt springen

Achieving Message-Encapsulated Leveled FHE for IoT Privacy Protection

Diao, Keming ; Zhang, Guoyin ; et al.
In: Mobile Information Systems, 2020
Online unknown

Achieving Message-Encapsulated Leveled FHE for IoT Privacy Protection  1. Introduction

The rapid development of the Internet of Things has made the issue of privacy protection even more concerning. Privacy protection has affected the large-scale application of the Internet of Things. Fully Homomorphic Encryption (FHE) is a newly emerging public key encryption scheme, which can be used to prevent information leakage. It allows performing arbitrary algebraic operations on data which are encrypted, such that the operation performed on the ciphertext is directly transformed into the corresponding plaintext. Recently, overwhelming majority of FHE schemes are confined to single-bit encryption, whereas how to achieve a multibit FHE scheme is still an open problem. This problem is partially (rather than fully) solved by Hiromasa-Abe-Okamoto (PKC′15), who proposed a packed message FHE scheme which only supports decryption in a bit-by-bit manner. Followed by that, Li-Ma-Morais-Du (Inscrypt′16) proposed a multibit FHE scheme which can decrypt the ciphertext at one time, but their scheme is based on dual LWE assumption. Armed with the abovementioned two schemes, in this paper, we propose an efficient packed message FHE that supports the decryption in two ways: single-bit decryption and one-time decryption.

In recent years, the Internet of Things (IoT) has become an attractive system paradigm to drive a substantive leap on goods and services and has been widely used in intelligent transportation, intelligent power grid, environmental monitoring and perception, intelligent home appliances, and other fields. It covers traditional equipment to general household equipment, which brings more efficiency and convenience to the users. Because many of the data transmitted in the Internet of Things are confidential information or personal privacy information, it usually needs to be encrypted first. With more and more encrypted data stored on the server, it is very frequent for us to retrieve and process these data. Although there are some algorithms for retrieving encrypted data, they are only suitable for small-scale data, and the cost is too high. The encrypted data retrieval method based on the Fully Homomorphic Encryption (FHE) can solve this problem. By directly retrieving the encrypted data, it not only ensures that the retrieved data will not be analyzed, but also carries out homomorphic operation on the retrieved data without changing the sequence of the corresponding plaintext. It can not only protect the user's data security but also improve the retrieval efficiency. Since the first introduction of Gentry in 2009, the construction and optimization of the Fully Homomorphic Encryption scheme have been paid special attention by researchers. However, most of the existing Fully Homomorphic Encryption schemes only allow cryptographic calculations for a single bit, and the efficiency is not satisfactory. Although the cascading (or simple combination) approach can be used to implement message-encapsulated calculations, the performance of such a simple message-encapsulated FHE is not ideal.

In an application scenario, in many cases, it is necessary to calculate data of multiple bits at a time, and thus, constructing an efficient Message-encapsulation Fully Homomorphic encryption becomes an urgent requirement. At present, the research in this area has made initial progress [[1]], which has increased the efficiency of FHE to a certain extent, but comprehensively, its efficiency still needs to be improved. Specifically, the following are considered:

  • (1) Brakerski's scheme [[1]] is constructed on the basis of the Brakerski's [[3]] scheme and is a typical representative of the second generation of FHE. But, the latter scheme needs to implement homomorphic calculations by calculating the evaluation key, which increases the computational cost.
  • (2) Hiromasa-Abe-Okamoto (HAO) [[2]] is based on the GSW [[4]] scheme and is a typical representative of the third generation of FHE. HAO constructs a message-encapsulation FHE scheme in the form of encapsulated messages, but it cannot implement one-time decryption and only decrypts the ciphertext bit-by-bit, so the scheme is still very inefficient.

An important question arises: Besides those mentioned above, is it possible to design an efficient method to decrypt the ciphertext of the message-encapsulation GSW-FHE scheme at one time?

Li et al. [[5]] used dual Regev [[6]] to construct a public key with multiple instances of the small short integer solution (SIS). Inspired by this work, we will construct public keys with multiple instances of LWEs (Learning with errors), and this constructs a Message-Encapsulation FHE scheme that can be decrypted at one time.

1.1. Our Contribution

Firstly, the public key of the Message-encapsulation Fully Homomorphic Encryption scheme of Hiromasa et al. [[2]] is as follows:

(1)BAT+EmodqAqm×t×qm×n.

Among them are the secret matrix Tqn×t and the noise matrix Eχm×t . Then, the plaintext message is encapsulated in a matrix, and the public key of the abovementioned form is used to encrypt the message. However, the obtained ciphertext matrix cannot recover all the plaintext bits at one time, but can only be decrypted bit-by-bit.

Secondly, we notice that the public key matrix of the message-encapsulated fully homomorphic encryption scheme constructed by Li et al. [[5]] is as follows:

(2)Ae1,...,AetAqm×t×qm×n.

Among them, there is e1,...,Aetχn×1 . Although Li et al.'s scheme [[5]] supports bit-by-bit encryption and one-time decryption, the scheme relies on the minimum integer solution hypothesis (see detailed analysis in [[7]]), and its parameter size depends on mmnlogq instead of causing the size of the evaluation key and the ciphertext to be too large.

Based on the abovementioned observations, in this paper, we construct a public key matrix first with multiple LWE instances. Different from the typical FHE scheme [[3], [8]] and follow-up works [[9]–[13]], its public key matrix contains only one LWE instance. Then, using the new public key, we construct a message-encapsulation GSW-class FEH scheme (MFHE). We give an overview of the scheme in the following:

  • (1) Firstly, we use a new public key matrix with multiple LWE instances as follows:

(3)A=b1,...,btAqm×n+t.

  • Among them, b1=Ati+eimodq and it is an LWE instance. This is significantly different from existing message-encapsulation PKE schemes (for example, [[14]]) and message-encapsulation FHE schemes (for example, [[1]]) and is also the fundamental difference between other schemes and the FHE scheme constructed in this paper. Private keys corresponding to the public key b1,...,btA is shaped as follows:

(4)ski0,...,1,...,0tiq1×n+t,it.

  • (2) Next, we use the public key matrix A we constructed to encrypt multibit messages. The difference is that we use the message-encapsulation method of Li et al. [[5]] and Hiromasa et al. [[2]] to embed multibit messages into the plaintext of a diagonal matrix. That is,

(5)Mdiagm1,...,mt1,...,1qn+t×n+t,

and while constructing a private key matrix with private keys,

(6)SEt1ttqn+t×n+t.

En×n is the identity matrix, and we can get

(7)SMdiagm1,...,mtt1tt.

Finally, using the matrix Wdiagq/2,...,q/20 we constructed, calculation of SMGG1W can directly recover the message vector m1,...,mt . See Section 4 for a detailed analysis.

1.2. Organization and Structure of the Paper

The rest of this paper is organized as follows. In Section 2, the definitions and symbols used in this paper are introduced. In Section 3, we review the scheme of Gentry-Sahai-Waters et al. In Section 4, we introduce the Message-encapsulation FHE (MFHE) scheme we constructed. Finally, we give a summary of the full paper in Chapter 5.

2. Preliminaries

In this section, we give the preparatory knowledge needed, including definitions and lemmas.

2.1. Symbols

For n , we use n to represent aggregation 1,...,n . For a real number x , we use x to represent the largest integer that is not greater than x , xx+1/2 to represent the nearest integer to x . We represent vectors in bold lowercase letters, for example, x , and the matrix in bold uppercase letters, for example, A . In addition, we use Ai,j to represent elements in Ai,j from row i and column j . We use " " to indicate the assignment. It is worth noting that we use the definition of computationally indistinguishable and statistics indistinguishable and they are represented by c and s . In addition to this, we also define v=maxv1,...,vn and R=maxiri . For convenience, we use v to represent its l2 norm.

We need to use the following variant of the Left-over Hash Lemma (LHL) [[16]].

Lemma 1.

(Matrix-Vector LHL). Let λ,n,q,mnlogq+2λ,rR0,1m and yRqn . We select a uniform random matrix ARqm×n , and then, the statistical distance of the distribution A,ATr and A,y is as follows:

(8)ΔA,ATr,A,y2λ.

2.2. Learning with Errors (LWEs)

LWEs is the main computational assumption that cryptosystems and our variants rely on.

Definition 1.

(LWE Distribution). For safety parameters, let n=nλ and m=mλ be integers, let χ=χλ be the error distribution with the bound of B=Bλ , and let q=qλ2 be an integer modulo of any polynomial p=pλ that meets q2pB . Then, we select a vector sqn×1 and call it a secret, the LWE distribution As,χ in qn×q is selected uniformly and randomly, and we select eχm×1 and output A,b=As+emodq .

There are two kinds of the LWE hypothesis: the search-LWE and the decision-LWE. The decision-LWE is defined as follows:

Definition 2.

(Decision- LWEn,q,χ,m ). Assume an independent selected A,bqm×n×qm×1 , which is selected according to one of the following distributions: (1) for As,χ from a uniform and random sqn (i.e., A,b:Aqm×n,sqn×1,eχm×1,b=As+emodq ) or (2) uniform distribution (i.e., A,b:Aqm×n,bqm×1 ). The two distributions mentioned above are computable indistinguishable.

Note 1.

Regev and others [[6], [17]–[19]] introduce the convention between the approximate shortest vector problem (for appropriate parameters) in the LWE hypothesis. We have omitted the lemma of the results of these schemes; see [[6], [17]–[19]] for details.

2.3. Discrete Gauss

In our structure, we need to analyze the behavior of choosing the wrong element from the Gaussian distribution.

Definition 3.

(B Bounded [[3]]). A distribution χ=χλ on an integer if the following exists:

(9)Prx$χxB2Ω˜n,

and then, it is called B -bound (represented as χB ).

For the analysis of our scheme, the vector selected from the Gaussian distribution needs to have a certain bound on its norm.

Lemma 2.

(See [[20]]). 1. For k>0,Pre>kσ,eDσ12expk2/2 ; 2. for k>0 , there is Pre>kσmeDσmkmexpm/21k2 Therefore, in this paper, we set eB and e2mB .

In this paper, we assume σ2n . So, if eDσm , then on average, emσ . It can be known from Lemma 2.2 (2) that there is a high possibility that e2σm . Therefore, in this paper, we set eB and e2mB .

2.4. Leveled Fully Homomorphic Encryption

In public-key cryptography, the cipher keeps a public key and encrypts the message in order that the corresponding private key holder can recover the original plaintext message.

Definition 4.

(See [[21]]). Let a fixed function L=Lλ be the level of Fully Homomorphic Encryption. For a kind of circuit CλλN , the L-FHE scheme includes four Probabilistic Polynomial Times (PPTs), and the algorithm is as follows:

(10)KeyGen,Enc,Dec,Eval.

  • The key generation algorithm (KeyGen) is a randomization algorithm that inputs security parameters 1λ and outputs public keys ( pk ) and private keys ( sk )
  • The encryption algorithm Enc is a randomization algorithm that inputs a public key ( pk ) and a message m0,1 and outputs a ciphertext c
  • The decryption algorithm Dec is a deterministic algorithm that inputs the private key sk and ciphertext and outputs the decrypted message m0,1
  • The homomorphic algorithm Eval inputs a public key pk , a circuit CCλ , and a sequence of ciphertexts c1,...,cλ , here let λ be a polynomial related to λ the and outputs the computed ciphertext c
  • The correctness requirements are as follows:
  • For arbitrary λ,m0,1 and pk,sk output by KeyGen1λ , we have

(11)m=Decsk,Encpk,m.

  • For arbitrary λ , arbitrary m1,...,ml0,1 , and CCλ , we have

(12)Cm1,...,m=Decsk,Evalpk,C,Encpk,m1,...,Encpk,m.

Definition 5.

(CPA Security [[21]]). One FHE scheme is indistinguishable from the choice of plaintext attack ( INDCPA ): the condition that security needs to be satisfied is that for any PPT adversary A , the following probabilities related to are negligible:

(13)PrApk,Encpk,m0=1,PrApk,Encpk,m1=1=neglλ.

Among them, pk,skKeyGen1λ and m0m1 is arbitrarily selected from the plaintext space by the adversary.

The security definition of a message-encapsulation GSW (MFHE) is the same as GSW for a single bit. Because in public key settings, the security of single message encryption implies the security of multiple message encryption. See section 11 in [[22]] for more details.

Definition 6.

(Compactness [[21]]). For a class of loops kk , if there is a polynomial α=αλ such that the length of output ciphertext of Eval is at most α , then an L Fully Homomorphic Encryption is compact (if it is nontrivial, then for all λ , some Cλ , and we have αλC ).

2.5. Basic Tools

Let us review some of the basic tools proposed by Brakerski and Vaikuntanathan [[23]] and Gentry et al. [[4]]. We fix q,m . Let l=logq+1 , and therefore, 2l1q<2l and N=ml .

Definition 7.

(See [[24]]). The algorithm BitComp enters a vector vqm and outputs an N -dimensional vector v1,0,...,v1,l1,...,vm,0,...,vm,l1T0,1N where vi,j is the j bit in the binary representation of vi (sorted by minimum impact to maximum impact). In other words,

(14)vi=j=0l12jvi,j.

Definition 8.

(See [[24]]). Algorithm enters a vector

(15)v=v1,0,...,v1,l1,...,vm,0,...,vm,l1TqN

and output j=0l12j,...,v1,j,...,j=0l12jvm,jTqm .

Note that the input vector v does not need to be binary and any of the input vector algorithms in N are already defined.

Definition 9.

(See [[24]]). The algorithm Flatten enters a vector vqN and outputs an N -dimension binary vector (i.e., an element from 0,1N ) defined as

(16)Flattenv=BitDecompBitDecomp1v.

Definition 10.

(See [[24]]). The algorithm PoweOftwo enters an m -dimension vector vqN and outputs an N -dimension vector in qN . The output is as follows:

(17)v1,2v1,...,2l1v1,...,vm,2vm,...,2l1vmT.

Lemma 3.

(See [[26]]). For any Nmlogq , there is a fixed effective computable matrix Gqm×N and a valid computable deterministic "short-image" function G1 that meets the following conditions. For arbitrary m , we enter a matrix Mqm×m and the inverse function G1M outputs a matrix G1M0,1N×m so that GG1M=M .

Note 2.

In fact, we can also express the abovementioned definitions and results as follows using the language of G and G1 . Micciancio and Peikert's [[26]] matrix G can be expressed as G=Imqm×N , where g=1,2,4,...,2l1T . For vqm , there is v=vTG . For vqN , there is BitDecomp1v=Gv . For aqm , the algorithm BitDecompa is renamed as G1a . For vqm , there is Power Of twov=vTG . For vqN , there is BitDecomp1v=Gv . For aqm , the algorithm BitDecompa is renamed as G1a .

3. Gentry–Sahai–Waters (GSW) Scheme

Before our work, we first review the GSW scheme and, then, summarize the safety of the scheme of Gentry et al. [[4]].

We review the algorithms which make up the GSW scheme [[4]]. These algorithms were originally defined based on functions BitDecomp , BitDecomp1 , and Flatten , but the ideas from [[19], [27]] borrowed into this paper are defined using tool matrix G . Let λ be the security parameter and L be the number of levels of homomorphic encryption.

  • GSW.Setup1λ,1L :
  • (1) Select a module q of bit K=mathcalKλ,L , error distribution χ=χλ,L on the parameter n=nλ,L and , so that the q,n,χLWE problem is at least 2λ secure for known attacks. Choose a parameter m=mλ,L=Onlogq .
  • (2) Output: params=n,q,χ,m . We express l=logq+1 and N=n+1l .
  • GSW.KeyGenparams :
  • (1) Select t=t1,...,tnTqn and calculate

(18)s1,tTT=1,t1,...,tnTqn+1×1.

  • (2) Generate a matrix Bqmm×n and a vector eχm .
  • (3) Calculate b=Bt+eqm and construct matrix A=bBqm×n+1 . Obviously, we observed.
  • (4) Return to sks and pkA .
  • GSW.Encparams,pk,μ : in order to encrypt a single-bit message μ0,1 ,
  • (1) Let G be the abovementioned matrix n+1×N
  • (2) Select a matrix R0,1m×N evenly
  • (3) Calculate

(19)C=μG+ATRmodqqn+1×N

  • In the original GSW scheme,
  • FlattenμI+BitDecompRA0,1N×N , where I is an identity matrix.
  • GSW.Decparams,sk,C :
  • (1) We have sk=sqn+1 .
  • (2) Let I meet q/4<2I1q/2 . Let CI be column I of C .
  • (3) Calculate xCI,smodq within the scope of q/2,q/2 ; note CI,s=CITs and

(20)CTs=μGTs+RTAs=μ1,2,4,...T+RTe.

  • From that mentioned above, it can be seen that column I of the ciphertext matrix C selected in the calculation corresponds to coordinate I of the vector CI,s , i.e. μ2I1+RITe .
  • (4) Output μ=x/2I1 .
  • So, if it is x<2I2q/4 , then it returns to 0, and if it is x>2I2 , then it returns to 1.
  • GSW.Evalparams,C1,...,Cl :
  • GSW.MultC1,C2 : calculate and output

(21)C1G1C2=μ1G+ATR1G1C2=μ1C2+ATR1G1C2=ATR1G1C2+μ1R2+μ1μ2Gmodq.

  • GSW.AddC1,C2qn+1×N : output

(22)C1+C2=μ1+μ2G+ATR1+R2.

Note that C1G1C2qn+1×N . In addition, use GC1G1C2 to calculate homomorphic NAND gates.

Note 3.

Note that, in [[19]], the decryption algorithm is to select a suitable vector w and calculate sCG1wT . It is much less efficient than the original one (all about calculation time and error item size). So, we used the GSW decryption algorithm in our scheme.

When q is a power of 2, there is also a variant of the message in q . See more details in [[4]].

3.1. Security

A brief proof of the following theorem is given in [[4]].

Theorem 1.

Let n,q,χ be public parameter so that the LWEn,q,χ hypothesis is true, and let m=Onlogq . Then, we can say that the GSW scheme is INDCPA safe.

The most important step of the proof is to prove that A,RA and the uniform distribution is computational indistinguishable.

Note 4.

The correctness of the GSW scheme is obtained by analyzing the scale of the noise during encryption, decryption, and homomorphism. Always ensure that the maximum noise level in the abovementioned process is still less than 1/4, which can be decrypted correctly. This work is not the focus of this paper, so it will not be repeated. See more details [[4]].

4. Message-Encapsulation FHE

4.1. Message-Encapsulation FHE (MFHE Scheme)

Now, we introduce our MFHE scheme as follows: a message-encapsulation public-key encryption scheme based on the difficulty of the LWE hypothesis. We give the security parameter λ , set t to be the private keys number, and then, can encrypt the t -bit messages at one time.

Let q=qλ be an integer, and let χ=χλ be a distribution set on . The definition of the variant of the GSW scheme is similar to the cryptosystem proposed in [[19], [27]]. More specifically,

  • paramsMFHE.Setup1λ,1L :
  • (1) In particular, we first select the modulo q=qλ , and the dimension of lattice n=nλ,L . We appropriately select the error distribution for χ=χλ,L for 2λ security against known LWE attacks, Finally, we select the parameter m=mλ,L=Onlogq and a parameter t=Ologn .
  • (2) Let l=logq+1 and N=n+tl , and then, output params=n,q,χ,m,t .
  • pk,skMFHE.KeyGenparams :
  • (1) For it , select tiT=ti,1,...,ti,n from q1×n and output

(23)skisi=IitiTT=0,...,1,...,0ti,1,...,ti,nTqn+t×1,

  • the i position of which is 1.
  • (2) Select a matrix Bqm×n and t vectors eiχm×1 , it evenly, and then, calculate bi=Bti+eimodq and output

(24)pk=P=b1btBqm×n+t,

  • where the size of pk is Onmlog2q . In addition, we observed that Psi=eimodq .
  • (3) Output pkP and skSs1,...,st . It is worth noting that PS=e1,...,etmodq .
  • CMFHE.Encparams,pk,M :
  • (1) To encrypt t -bit μi0,1 , μi0,1 , embed the t bits into a t×t -dimension matrix first, U=diagμ1,1,...,μt,t0,1t×t , where μi,j=0 , ij , and jt . Later, for simplicity, μi,j will be abbreviated as μi , and the message matrix is constructed using a plaintext matrix U .

(25)M=Ut×t0t×n0n×tEn×n0,1n+t×n+t,

  • where U is a random diagonal matrix, and note that E is a n×n -dimensional matrix.
  • (2) Then, select a uniform matrix R0,1m×N . Calculate and output cipher text:

(26)C=MG+PTRmodqqn+t×N.

  • Now, we propose a decryption algorithm for the MFHE scheme which allows us to recover all the message bits at the one time.
  • UMFHE.Decparams,pk,C :
  • (1) First, assume that the user has a private key matrix S=s1,...,stqn+t×t as follows:

(27)Ss1,...,st=1001t1,1tt,1t1,ntt,n.

  • What needs to be noted here is

(28)PS=b1Bt1,...,btBbt=e1,...,etmodqm×t.

  • Therefore, it is easy for us to get the bound of PS which is less than or equal to te , i.e. PSte .
  • (2) Define the matrix Wqt×+t as follows:

(29)WTq200q20000.

  • (3) Calculate and output

(30)Vi,j=S,CG1WTmodqqt×t.

  • Among them, we have S,Cqt×t , i.e.,

(31)S,C=STPTR+STMG=e1,...,etTR+STMGmodq.

  • (4) Finally, use the results mentioned above to output the complete message U=Vi,j/q/20,1t×t .
  • MFHE.Evalparams,C1,...,Cl :there are two algorithms, which are, homomorphic addition and homomorphic multiplication. For any two plaintext matrices U1,U20,1t×t , we get the ciphertext separately.

(32)C1=M1G+PTR1,C2=M2G+PTR2.

  • Therefore, the homomorphic addition and multiplication are as follows:
  • MFHE.MultC1,C2qn+t×N : output

(33)C1G1C2=M1G+PTR1G1C2=PTR1G1C2+M1PTR2+M1M2Gmodq.

  • MFHE.AddC1,C2qn+t×N: output C1+C2=M1+M2G+PTR1+R2 .
  • Here, we can calculate a homomorphic NAND gate from the output.
Note 5.

Generally, we can choose different private keys ski to decrypt column j of the ciphertext Cj bit-by-bit and get the i bit message of Cj , that is, we can get the bit in row i and column j under the i private key. However, it is actually possible to recover the entire message using the private key matrix S based on the abovementioned decryption algorithm. We calculate Vi,j=STCG1WT as follows:

(34)Vi,j=q2U+e1TRetTRG1WTqt×t.

The magnitude of the noise can be simply calculated and verified to grow linearly compared to single-bit decryption algorithm.

  • μi,jMFHE.bitDecparams,ski,C,wj :
  • (1) Suppose we want to decrypt the bit μi,j of row i and column j , so let ski=si , then define a vector so that the position is, and the other positions are 0, jt .

(35)wjT=0,...,q2j,...,0t0,...,0n.

  • (2) For i,j to t , calculate

(36)νi,j=siTCG1wjTmodqq.

  • The inner product of si,C equals to

(37)siTPTR+siTMG=eiTR+siTMGmodqq1×N.

  • (3) Output a message μi,j=Vi,j/q/20,1 , in which represents the operation that rounds to the nearest integer. Therefore the value belongs to 0,1 . 4. Finally, by repeating it t2 times, the entire message can be recovered. The bitDec algorithm here is similar to the algorithm in [[2]], which is achieved by recovering each element separately.
Note 6.

It should be noted here that due to the structural characteristics of the public key in our scheme, accurate decryption is achieved by dynamically adjusting the position of q/2 in the vector w . That is, dot-multiply siTC and G1wj to obtain the bits of the row and column of the plaintext matrix.

We can get all the bits of the message by using the bitDec decryption algorithm and appropriate private key.

Note 7.

It can be seen that our message-encapsulation GSW scheme is to implement t×t -bit homomorphic addition. However, since the i,j element of U1×U2 is not a product of μ1i,j×μ2i,j , only t -bit homomorphic multiplication is supported.

4.2. Correctness Analysis

Next, we analyze the correctness of the MFHE scheme.

Definition 11.

We call the message matrix Uqt×t which is obtained by decrypting the ciphertext under t different private keys si,it (see (2)). The noise of a single-bit message is as follows:

(38)noisesi,M=siTCsiTMG=siTPTR=eiTR.

For flexible single-bit decryption algorithm bitDec , we represent the noise vector as noiseq1×N . For simplicity, we abbreviate noisesi,MC to noisesi when M and C do not affect the contextual understanding.

Note that, in our setup, due to the structure of the new public key, noisesi is the noise of row i of the plaintext matrix U , not the single-bit noise.

Lemma 4.

Obviously, using Definition 4.1, for convenience, for a decryption algorithm Dec , if the noise meets

(39)NoiseS,MC=STPTR=noises1noisestmodq,

where S=s1,...,st is a one-time private key matrix, we can represent the entire noise matrix as

(40)NoiseS,MC=noises1,...,noisestTqt×N.

For convenience, we will abbreviate NoiseS,MC as NoiseS when M and C do not affect the contextual understanding.

In order to analyze the correctness, for convenience, we first define the following noise ciphertext concept.

Definition 12.

( E -Noise Ciphertext). A ciphertext matrix Cqm+1×N with E noise, which makes in a private key siqn+t×1 , for a corresponding message M,si,C=siTMG+eiTR . Then, let the norm of noisesi be

(41)noisesieiTReiT2RN2mBE.

Lemma 5.

For a one-time private key matrix Sqn+t×t , we can get NoiseS=e1,...,etTR when we run the Dec algorithm. So, in this case, we get

(42)NoiseStnoisesitE.

Lemma 6.

For a plaintext matrix U (a combination of M ) and a private key si,it , the noise vector of the ciphertext C meets

(43)tnoisesi=NoiseS.

In the following, we analyze the correctness of the decryption.

Lemma 7.

Let C be an E noise encryption of M . If we can recover μi,j (an element of U ) from the ciphertext C under the private key si , then there is

(44)μi,jsi,CG1wjT=noisesi+siTMGG1wjT,

so that

(45)noisesiG1wjTnoisesiG1wjTNE<q8.

Proof.

Obviously, by using Lemma 4.2 we can simply prove Lemma 4.7, and we will not go into details here.

Lemma 8.

Let C be an E noise encryption in M . If we can recover all U from the ciphertext C , then there is a private key matrix S such that

(46)V=S,CG1WT=NoiseS+STMGG1WT,

where NoiseSSG1WTNtE<q/8 .

Proof.

This proof can be obtained directly from Lemma 4.2 and Lemma 4.7. Now, we know that as long as NoiseSG1WTq/8 , the decryption runs correctly, i.e., E<q/4tN . Therefore, we call the value E=q/4tN as the bound of noise.

The analysis of the homomorphic operation is given in the following. Before introducing the boundary of noise, the following notes are given.

Note 8.

For the convenience of reading, let ϒC1NoiseS,M1C1 and ϒC2NoiseSS,M2C2 .

Lemma 9.

(See [[8]]). The boundary of the noise of homomorphic addition, homomorphic multiplication, and homomorphic negative is as follows:

  • Addition: for M1,M20,1n+t×n+t , the following condition is met:

(47)NoiseS,M1+M2C1+C2ΥC1+ΥC2.

  • Multiplication: for M1,M2 , the following condition is met:

(48)NoiseS,M1M2C1G1C2U12ϒC2+G1C2ϒC1.

  • NAND: for M , the following condition is met:

(49)NoiseS,MGC=NoiseS,MC.

Proof.

Let Sn+t×t be a private key matrix. Let C1,C2qm+1×N be the ciphertext of the encrypted message M1,M20,1n+t×n+t separately. Then,

  • Homomorphic addition, that is, add ciphertext and ciphertext CAdd=C1+C2modq , so that

(50)S,CAdd=NoiseSS,M1+M2+STMAddG.

  • Where MAdd=M1+M2 and the noise is

(51)NoiseS,M1+M2=NoiseS,M1+NoiseS,M2.

  • Obviously, the noise is tE1+E2 .
  • Homomorphic multiplication: that is, multiply the ciphertext and ciphertext CMult=C1G1C2qn+t×N , so that

(52)CMult=M1M2G+PTR1G1C2+M1PTR2.

  • Then, we have S,CMult which equals to

(53)STM1M2G+PTR1G1C2+M1PTR2.

  • For convenience, we first set the noise to

(54)NoiseS,M1M2=STPTR1G1C2+M1PTR2.

  • Obviously, according to Lemma 4.2, there is

(55)ΥC1=STPTR1e1,...,etTR1tE1,

  • and C2 is a n+t×N binary matrix ( G1qN×n+t ). Therefore, in this case,

(56)STPTR1G1C2tE2G1C2NtE2

  • exists. Also, pay attention to that

(57)STM1PT=uib1TtiTBTuibtTtiTBT.

  • The boundary of ( uibiTtiTBT ) is eiT . Therefore,

(58)STM1PTe1T,...,etTTmaxieiT.

  • In this case, we can easily get the boundary ΥC2STM1PTR2eiTRE2 . In other words, U12ΥC2tE2 . Therefore, we have NoiseSS,M1M2C1G1C2NtE2+tE2 , and the ciphertext CMult is Nt+rE noisy.
  • NAND gate: the same operation is true for the NAND gate, and output matrix product is GC1G1C2 . Consider a Boolean circuit whose computational depth is L while containing NAND gates. It takes the new ciphertext as input, that is, the E noise ciphertext, the noise multiplied by a factor which is at most Nt+t at each level, that is, the norm of the error element increases by a factor which is, at most, Nt+t . Therefore, the wrong element norm of the final ciphertext is bounded as Efinal=Nt+tLE .

In order to ensure the correctness of the decryption, Efinalq/2/4 needs to be true. That is to say, the inequality Nt+tLEq/2/4 must be true, which is guaranteed by the parameters we choose. The proof is completed.

4.3. IND−CPA Security Analysis

In the following, we use Theorem 4.1 to prove that the message-encapsulation GSW scheme based on the LWE assumption that it is INDCPA safe and that the scheme is indistinguishable from the original GSW scheme [[4]].

Theorem 2.

Let m>n,q and χ be a discrete Gaussian distribution on , which makes the n,q,χ,mLWE problem difficult. Let t be an integer that makes t=Ologn true. Define two distributions X and Y as follows:

  • X is a distribution on the m×t+n matrix b1btB . Among them, Bqm×n is uniformly selected, for all 1it , bi=Bti+eimodq , in which ti are uniformly selected from qn , and ei is selected from a discrete Gaussian distribution χ .
  • Y is evenly distributed on qm×t+n .

Therefore, the distribution X and Y is computational indistinguishable.

Theorem 3.

Let params=n,q,χ,m,t so that the assumption LWEn,q,χ,m is true and m=Onlogq . Then, the MFHE scheme is INDCPA safe.

Proof.

The proof of security contains two steps:

  • First, we use Theorem 4.11 to prove that, under the LWE assumption, the matrix P=b1,...,bt,Bqm×n+t and the randomly chosen matrix are computationally indistinguishable
  • Then, using the Left-over Hash Lemma, a uniform random value C can be used to replace the ciphertext C=MG+PTR , that is, PTR is indistinguishable from the uniform distribution

The brief proof is over. See more details in [[4]].

5. Conclusions

In this paper, we construct an efficient message-encapsulation FHE scheme. The scheme can achieve the decryption at one time and can also flexibly decrypt bit-by-bit. In Table 1, we give a comparison of the parameters of this scheme with the existing schemes. It can be seen from the comparison that compared with the previous ones, the scheme keeps the key length substantially, and this scheme is based on more conventional assumptions and, meanwhile, reduces the ciphertext length to some extent. The proposal of this scheme makes the full homomorphic encryption take a big step from theoretical research to large-scale application. It is conducive to greatly improving the efficiency of encrypted data processing (such as retrieval and operation) in the Internet of things, saving the energy consumption of nodes in the Internet of Things, and ensuring that the data are not statistically analyzed, which has a better application scenario [[29]–[31]].

Table 1 Comparison of the related works.

UnderlyingHAOOurs-

MFHE

LMDO[
AssumptionLWELWEdual-LWE

msg

ttt

pk

Omn log q

Onm log q

Omn log q

sk

Ont log q

Ont log q

Ont log q

ct

OnN log q

OnN log q

OnN log q

flexibledec

onetimedec

×

_msg:

message length

_N:n+tl

_ct:

cipher text length

_N:m+tl

In addition, there are many interesting open issues that may be resolved in the future. For example, our thinking has certain reference value for enhancing big data security and constructing a message-encapsulated casual transmission protocol, but it also has certain challenges.

Data Availability

No data were used in this study.

Conflicts of Interest

The authors declare no conflicts of interest.

REFERENCES 1 Brakerski Z., Gentry C., Halevi S. Packed ciphertexts in LWE-based homomorphic encryptionProceedings of the Public-Key Cryptography—PKC 2013—16th International Conference on Practice and Theory in Public-Key Cryptography. February 2013. Nara, Japan, 1-13, 10.1007/978-3-642-36362-7_1n 2 Hiromasa R., Abe M., Okamoto T. Packing messages and optimizing bootstrapping in GSW-FHEProceedings of the Public-Key Cryptography—PKC 2015—18th IACR International Conference on Practice and Theory in Public-Key Cryptography. March 2015. Gaithersburg, MD, USA, 699-715 3 Brakerski Z. Fully homomorphic encryption without modulus switching from classical gapsvpProceedings of the Advances in Cryptology—CRYPTO 2012—32nd Annual Cryptology Conference. August 2012. Santa Barbara, CA, USA, 868-886, 10.1007/978-3-642-32009-5_50, 2-s2.0-84865507640 4 Gentry C., Sahai A., Waters B. Homomorphic encryption from learning with errors: conceptually-simpler, asymptotically-faster, attribute-basedProceedings of the Part I Advances in Cryptology—CRYPTO 2013—33rd Annual Cryptology Conference. August 2013. Santa Barbara, CA, USA, 75-92 5 Li Z., Ma C., Morais E., Du G. Multi-bit leveled homomorphic encryption via dual LWE-basedProceedings of the Revised Selected Papers Information Security and Cryptology—12th International Conference. November 2016. Beijing, China, 221-242, 10.1007/978-3-319-54705-3_14, 2-s2.0-85014881685 6 Regev O. On lattices, learning with errors, random linear codes, and cryptography. Journal of the ACM. 2009; 56(6): 1-34, 10.1145/1568318.1568324, 2-s2.0-70349309809 7 Li Z., Galbraith S. D., Ma C. Preventing adaptive key recovery attacks on the gentry-sahai-waters leveled homomorphic encryption scheme. IACR Cryptology ePrint Archive. 2016, 1146 8 Brakerski Z., Perlman R. Lattice-based fully dynamic multi-key FHE with short ciphertextsProceedings of the Part I Advances in Cryptology—CRYPTO 2016—36th Annual International Cryptology Conference. August 2016. Santa Barbara, CA, USA, 190-213, 10.1007/978-3-662-53018-4_8, 2-s2.0-84979545709 9 Li Z., Ma C., Wang D. Leakage resilient leveled FHE on multiple bit message. IEEE Transactions on Big Data. 2017, 10.1109/TBDATA.2017.2726554 Li Z., Ma C., Wang D. Towards multi-hop homomorphic identity-based proxy re-encryption via branching program. IEEE Access. 2017; 5, 16214-16228, 10.1109/access.2017.2740720, 2-s2.0-85028514211 Li Z., Ma C., Wang D. Achieving multi-hop PRE via branching program. IEEE Transactions on Cloud Computing. 2020; 8(1): 45-58, 10.1109/tcc.2017.2764082, 2-s2.0-85032299590 Li Z., Ma C., Zhou H. Multi-key FHE for multi-bit messages. Sciece China Information Sciences. 2018; 61(2), 029101, 10.1007/s11432-017-9206-y, 2-s2.0-85040117356 Li Z., Xiang C., Wang C. Oblivious transfer via lossy encryption from lattice-based cryptography. Wireless Communications and Mobile Computing. 2018; 2018, 11, 5973285, 10.1155/2018/5973285, 2-s2.0-85053668224 Lindner R., Peikert C. Better key sizes (and attacks) for LWE-based encryptionProceedings of the Topics in Cryptology—CT-RSA 2011—the Cryptographers' Track at the RSA Conference 2011. February 2011. San Francisco, CA, USA, 319-339, 10.1007/978-3-642-19074-2_21, 2-s2.0-79951793525 Peikert C., Vaikuntanathan V., Waters B. A framework for efficient and composable oblivious transferProceedings of the 28th Annual International Cryptology Conference Advances in Cryptology—CRYPTO 2008. August 2008. Santa Barbara, CA, USA, 554-571, 10.1007/978-3-540-85174-5_31, 2-s2.0-51849126892 Hastad J., Impagliazzo R., Levin L. A., Luby M. Pseudo-random generation from one-way functions (extended abstracts)Proceedings of the 21st Annual ACM Symposium on Theory of Computing. May 1989. Seattle, Washigton, USA, 12-24 Peikert C. Public-key cryptosystems from the worst-case shortest vector problem: extended abstractProceedings of the STOC 2009 41st Annual ACM Symposium on Theory of Computing. May 2009. Bethesda, MD, USA, 333-342, 10.1145/1536414.1536461, 2-s2.0-70350642078 Peikert C., Waters B. Lossy trapdoor functions and their applicationsProceedings of the 40th Annual ACM Symposium on Theory of Computing. May 2008. British Columbia, Canada, 187-196, 10.1145/1374376.1374406 Mukherjee P., Wichs D. Two round multiparty computation via multi-key FHEProceedings of the Part II Advances in Cryptology—EUROCRYPT 2016—35th Annual International Conference on the Theory and Applications of Cryptographic Techniques. May 2016. Vienna, Austria, 735-763, 10.1007/978-3-662-49896-5_26, 2-s2.0-84964956073 Lyubashevsky V. Lattice signatures without trapdoorsProceedings of the Advances in Cryptology—EUROCRYPT 2012— 31st Annual International Conference on the Theory and Applications of Cryptographic Techniques. April 2012. Cambridge, UK, 738-755, 10.1007/978-3-642-29011-4_43, 2-s2.0-84859986507 Katz J., Thiruvengadam A., Zhou H. Feasibility and infeasibility of adaptively secure fully homomorphic encryptionProceedings of the Public-Key Cryptography—PKC 2013—16th International Conference on Practice and Theory in Public-Key Cryptography. February 2013. Nara, Japan, 14-31 Katz J., Lindell Y. Introduction to Modern Cryptography. 2014Second: Boca Raton, FL, USA; CRC Press Brakerski Z., Vaikuntanathan V. Efficient fully homomorphic encryption from (standard) LWEProceedings of the FOCS 2011 IEEE 52nd Annual Symposium on Foundations of Computer Science. October 2011. Palm Springs, CA, USA, 97-106, 10.1109/FOCS.2011.12, 2-s2.0-80955132201 Clear M., McGoldrick C. Multi-identity and multi-key leveled FHE from learning with errorsProceedings of the Part II Advances in Cryptology—CRYPTO 2015—35th Annual Cryptology Conference. August 2015. Santa Barbara, CA, USA, 630-656 Brakerski Z., Vaikuntanathan V. Lattice-based FHE as secure as PKEProceedings of the ITCS'14 Innovations in Theoretical Computer Science. January 2014. Princeton, NJ, USA, 1-12, 10.1145/2554797.2554799, 2-s2.0-84893301353 Micciancio D., Peikert C. Trapdoors for lattices: simpler, tighter, faster, smallerProceedings of the Advances in Cryptology—EUROCRYPT 2012—31st Annual International Conference on the Theory and Applications of Cryptographic Techniques. April 2012. Cambridge, UK, 700-718, 10.1007/978-3-642-29011-4_41, 2-s2.0-84859976564 Alperin-Sheriff J., Peikert C. Faster bootstrapping with polynomial errorProceedings of the Part I Advances in Cryptology—CRYPTO 2014—34th Annual Cryptology Conference. August 2014. Santa Barbara, CA, USA, 297-314, 10.1007/978-3-662-44371-2_17, 2-s2.0-84905365008 Ducas L., Micciancio D. FHEW: bootstrapping homomorphic encryption in less than a secondProceedings of the Part I Advances in Cryptology—EUROCRYPT 2015—34th Annual International Conference on the Theory and Applications of Cryptographic Techniques. April 2015. Sofia, Bulgaria, 617-640, 10.1007/978-3-662-46800-5_24, 2-s2.0-84942694191 Li Z., Sharma V., Ma C., Ge C., Susilo W. Ciphertext-policy attribute-based proxy re-encryption via constrained PRFS. Science China Information Sciences. 2020; 64(6), 10.1007/s11432-019-2856-8 Li Z., Wang J., Choi C., Zhang W. Multi-factor password-authenticated key exchange via pythia PRF service. Computers, Materials & Continua. 2020; 63(2): 663-674, 10.32604/cmc.2020.06565 Sharma V., Jayakody D. N. K., Qaraqe M. Osmotic computing-based service migration and resource scheduling in mobile augmented reality networks (MARN). Future Generation Computer Systems. 2020; 102, 723-737, 10.1016/j.future.2019.09.008

By Weiping Ouyang; Chunguang Ma; Guoyin Zhang and Keming Diao

Reported by Author; Author; Author; Author

Titel:
Achieving Message-Encapsulated Leveled FHE for IoT Privacy Protection
Autor/in / Beteiligte Person: Diao, Keming ; Zhang, Guoyin ; Ouyang, Weiping ; Ma, Chunguang
Link:
Zeitschrift: Mobile Information Systems, 2020
Veröffentlichung: Hindawi, 2020
Medientyp: unknown
ISSN: 1574-017X (print)
DOI: 10.1155/2020/8862920
Schlagwort:
  • Scheme (programming language)
  • Article Subject
  • Computer Networks and Communications
  • Computer science
  • business.industry
  • Homomorphic encryption
  • 020206 networking & telecommunications
  • Plaintext
  • TK5101-6720
  • 02 engineering and technology
  • Computer security
  • computer.software_genre
  • Encryption
  • Computer Science Applications
  • Public-key cryptography
  • Algebraic operation
  • Information leakage
  • Ciphertext
  • Telecommunication
  • 0202 electrical engineering, electronic engineering, information engineering
  • 020201 artificial intelligence & image processing
  • business
  • computer
  • computer.programming_language
Sonstiges:
  • Nachgewiesen in: OpenAIRE
  • Sprachen: English
  • File Description: text/xhtml
  • Language: English
  • Rights: OPEN

Klicken Sie ein Format an und speichern Sie dann die Daten oder geben Sie eine Empfänger-Adresse ein und lassen Sie sich per Email zusenden.

oder
oder

Wählen Sie das für Sie passende Zitationsformat und kopieren Sie es dann in die Zwischenablage, lassen es sich per Mail zusenden oder speichern es als PDF-Datei.

oder
oder

Bitte prüfen Sie, ob die Zitation formal korrekt ist, bevor Sie sie in einer Arbeit verwenden. Benutzen Sie gegebenenfalls den "Exportieren"-Dialog, wenn Sie ein Literaturverwaltungsprogramm verwenden und die Zitat-Angaben selbst formatieren wollen.

xs 0 - 576
sm 576 - 768
md 768 - 992
lg 992 - 1200
xl 1200 - 1366
xxl 1366 -