Abstract
This paper presents an adaptively secure identity-based encryption (IBE) scheme from Learning With Errors (LWE) in the standard model. Compared to the previous LWE-based most compact construction of Yamada (CRYPTO17), one of the distinguishing properties of our IBE scheme is that the master public key size of our IBE scheme is significantly smaller, and our design is explicitly given, and thus all the IBE parameters can be instantiated.
To achieve this, we design a more compact homomorphic equality test algorithm over LWE problems, which is significantly better than the previous bit-wise comparison of Yamada (CRYPTO17) and Katsumata (ASIACRYPT17). We show that our homomorphic equality test algorithms can pack a super-constant number of GSW-type bit encodings and thus may find other improvements in other LWE-based crypto schemes.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
\(\lambda \) denotes the security parameter of the IBE scheme. q is the modulus of the IBE scheme, n, m are two integers such that \(m\ge n\cdot \log (q)\).
- 2.
\(\omega (1)\): An asymptotic notation that represents a super-constant number.
References
Abla, P., Liu, F.-H., Wang, H., Wang, Z.: Ring-based identity based encryption – asymptotically shorter MPK and tighter security. In: Nissim, K., Waters, B. (eds.) TCC 2021, Part III. LNCS, vol. 13044, pp. 157–187. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-90456-2_6
Agrawal, S., Boneh, D., Boyen, X.: Efficient lattice (H)IBE in the standard model. In: Gilbert, H. (ed.) EUROCRYPT 2010. LNCS, vol. 6110, pp. 553–572. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13190-5_28
Agrawal, S., Gentry, C., Halevi, S., Sahai, A.: Discrete Gaussian leftover hash lemma over infinite domains. In: Sako, K., Sarkar, P. (eds.) ASIACRYPT 2013, Part I. LNCS, vol. 8269, pp. 97–116. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-42033-7_6
Ajtai, M.: Generating hard instances of the short basis problem. In: Wiedermann, J., van Emde Boas, P., Nielsen, M. (eds.) ICALP 1999. LNCS, vol. 1644, pp. 1–9. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48523-6_1
Alperin-Sheriff, J., Peikert, C.: Faster bootstrapping with polynomial error. In: Garay, J.A., Gennaro, R. (eds.) CRYPTO 2014, Part I. LNCS, vol. 8616, pp. 297–314. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-44371-2_17
Alwen, J., Peikert, C.: Generating shorter bases for hard random lattices. In: Albers, S., Marion, J. (eds.) 26th International Symposium on Theoretical Aspects of Computer Science, STACS 2009, Freiburg, Germany, 26–28 February 2009, Proceedings. LIPIcs, vol. 3, pp. 75–86. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, Germany (2009)
Apon, D., Fan, X., Liu, F.: Vector encoding over lattices and its applications. IACR Cryptology ePrint Archive, p. 455 (2017)
Barrington, D.A.M.: Bounded-width polynomial-size branching programs recognize exactly those languages in NC\({^1}\). J. Comput. Syst. Sci. 38(1), 150–164 (1989)
Bellare, M., Ristenpart, T.: Simulation without the artificial abort: simplified proof and improved concrete security for waters’ IBE scheme. In: Joux, A. (ed.) EUROCRYPT 2009. LNCS, vol. 5479, pp. 407–424. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-01001-9_24
Boneh, D., Boyen, X.: Secure identity based encryption without random oracles. In: Franklin, M. (ed.) CRYPTO 2004. LNCS, vol. 3152, pp. 443–459. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-28628-8_27
Boneh, D., Boyen, X., Goh, E.-J.: Hierarchical identity based encryption with constant size ciphertext. In: Cramer, R. (ed.) EUROCRYPT 2005. LNCS, vol. 3494, pp. 440–456. Springer, Heidelberg (2005). https://doi.org/10.1007/11426639_26
Boneh, D., Franklin, M.: Identity-based encryption from the Weil pairing. In: Kilian, J. (ed.) CRYPTO 2001. LNCS, vol. 2139, pp. 213–229. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44647-8_13
Boneh, D., et al.: Fully key-homomorphic encryption, arithmetic circuit ABE and compact garbled circuits. In: Nguyen, P.Q., Oswald, E. (eds.) EUROCRYPT 2014. LNCS, vol. 8441, pp. 533–556. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-55220-5_30
Boyen, X., Li, Q.: Towards tightly secure lattice short signature and Id-based encryption. In: Cheon, J.H., Takagi, T. (eds.) ASIACRYPT 2016, Part II. LNCS, vol. 10032, pp. 404–434. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53890-6_14
Canetti, R., Goldreich, O., Halevi, S.: The random oracle methodology, revisited (preliminary version). In: 30th ACM STOC, pp. 209–218. ACM Press (1998)
Cash, D., Hofheinz, D., Kiltz, E., Peikert, C.: Bonsai trees, or how to delegate a lattice basis. In: Gilbert, H. (ed.) EUROCRYPT 2010. LNCS, vol. 6110, pp. 523–552. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13190-5_27
Döttling, N., Garg, S.: From selective IBE to full IBE and selective HIBE. In: Kalai, Y., Reyzin, L. (eds.) TCC 2017, Part I. LNCS, vol. 10677, pp. 372–408. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-70500-2_13
Döttling, N., Garg, S.: Identity-based encryption from the Diffie-Hellman assumption. In: Katz, J., Shacham, H. (eds.) CRYPTO 2017, Part I. LNCS, vol. 10401, pp. 537–569. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63688-7_18
Gentry, C.: Practical identity-based encryption without random oracles. In: Vaudenay, S. (ed.) EUROCRYPT 2006. LNCS, vol. 4004, pp. 445–464. Springer, Heidelberg (2006). https://doi.org/10.1007/11761679_27
Gentry, C., Peikert, C., Vaikuntanathan, V.: Trapdoors for hard lattices and new cryptographic constructions. In: Ladner, R.E., Dwork, C. (eds.) 40th ACM STOC, pp. 197–206. ACM Press (2008)
Gentry, C., Sahai, A., Waters, B.: Homomorphic encryption from learning with errors: conceptually-simpler, asymptotically-faster, attribute-based. In: Canetti, R., Garay, J.A. (eds.) CRYPTO 2013, Part I. LNCS, vol. 8042, pp. 75–92. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40041-4_5
Gentry, C., Silverberg, A.: Hierarchical ID-based cryptography. In: Zheng, Y. (ed.) ASIACRYPT 2002. LNCS, vol. 2501, pp. 548–566. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36178-2_34
Jager, T.: Verifiable random functions from weaker assumptions. In: Dodis, Y., Nielsen, J.B. (eds.) TCC 2015, Part II. LNCS, vol. 9015, pp. 121–143. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46497-7_5
Jager, T., Kurek, R., Niehues, D.: Efficient adaptively-secure IB-KEMs and VRFs via near-collision resistance. In: Garay, J.A. (ed.) PKC 2021, Part I. LNCS, vol. 12710, pp. 596–626. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-75245-3_22
Katsumata, S.: On the untapped potential of encoding predicates by arithmetic circuits and their applications. In: Takagi, T., Peyrin, T. (eds.) ASIACRYPT 2017, Part III. LNCS, vol. 10626, pp. 95–125. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-70700-6_4
Katsumata, S., Yamada, S.: Partitioning via non-linear polynomial functions: more compact IBEs from ideal lattices and bilinear maps. In: Cheon, J.H., Takagi, T. (eds.) ASIACRYPT 2016, Part II. LNCS, vol. 10032, pp. 682–712. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53890-6_23
Lai, Q., Liu, F.-H., Wang, Z.: Almost tight security in lattices with polynomial moduli – PRF, IBE, all-but-many LTF, and more. In: Kiayias, A., Kohlweiss, M., Wallden, P., Zikas, V. (eds.) PKC 2020, Part I. LNCS, vol. 12110, pp. 652–681. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45374-9_22
Micciancio, D., Peikert, C.: Trapdoors for lattices: simpler, tighter, faster, smaller. In: Pointcheval, D., Johansson, T. (eds.) EUROCRYPT 2012. LNCS, vol. 7237, pp. 700–718. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29011-4_41
Micciancio, D., Regev, O.: Worst-case to average-case reductions based on Gaussian measures. In: 45th FOCS, pp. 372–381. IEEE Computer Society Press (2004)
Regev, O.: On lattices, learning with errors, random linear codes, and cryptography. In: Gabow, H.N., Fagin, R. (eds.) 37th ACM STOC, pp. 84–93. ACM Press (2005)
Shamir, A.: Identity-based cryptosystems and signature schemes. In: Blakley, G.R., Chaum, D. (eds.) CRYPTO 1984. LNCS, vol. 196, pp. 47–53. Springer, Heidelberg (1985). https://doi.org/10.1007/3-540-39568-7_5
Shor, P.W.: Algorithms for quantum computation: discrete logarithms and factoring. In: 35th FOCS, pp. 124–134. IEEE Computer Society Press (1994)
Waters, B.: Dual system encryption: realizing fully secure IBE and HIBE under simple assumptions. In: Halevi, S. (ed.) CRYPTO 2009. LNCS, vol. 5677, pp. 619–636. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03356-8_36
Boneh, D., Boyen, X.: Efficient selective-ID secure identity-based encryption without random oracles. In: Cachin, C., Camenisch, J.L. (eds.) EUROCRYPT 2004. LNCS, vol. 3027, pp. 223–238. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24676-3_14
Yamada, S.: Adaptively secure identity-based encryption from lattices with asymptotically shorter public parameters. In: Fischlin, M., Coron, J.-S. (eds.) EUROCRYPT 2016, Part II. LNCS, vol. 9666, pp. 32–62. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49896-5_2
Yamada, S.: Asymptotically compact adaptively secure lattice IBEs and verifiable random functions via generalized partitioning techniques. In: Katz, J., Shacham, H. (eds.) CRYPTO 2017, Part III. LNCS, vol. 10403, pp. 161–193. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63697-9_6
Zhang, J., Chen, Yu., Zhang, Z.: Programmable hash functions from lattices: short signatures and IBEs with small key sizes. In: Robshaw, M., Katz, J. (eds.) CRYPTO 2016, Part III. LNCS, vol. 9816, pp. 303–332. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53015-3_11
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
A Supplementary Materials for Section 2
1.1 A.1 Definition of Partition Function and Related Results
Definition A.1
(Partition Function [36]). Let \(\textbf{F}= \left\{ \textbf{F}_\lambda : \mathcal {K}_\lambda \times \mathcal {X}_\lambda \rightarrow R_{2} \right\} \) be an ensemble of function family, we say that \(\textbf{F}\) is a partition function, if there exists an efficient algorithm \(\textsf{PrtSmp}(1^\lambda )\), which takes as input polynomial bounded \(Q=Q(\lambda )\in \mathbb {N}\) and noticeable \(\epsilon =\epsilon (\lambda )\in (0,1/2]\) and outputs K such that:
-
There exists \(\lambda _0\in N\) such that
$$ \textsf{Pr}\left[ K\in \mathcal {K}_\lambda : K \xleftarrow {\$} \textsf{PrtSmp}(1^\lambda , Q(\lambda ),\epsilon (\lambda ))\right] = 1 $$for all \(\lambda > \lambda _0\), where \(\lambda _0\) may depend on \(Q(\lambda )\) and \(\epsilon (\lambda )\).
-
For \(\lambda > \lambda _0\), there exists \(\gamma _{\max }(\lambda )\) and \(\gamma _{\min }(\lambda )\) that depends on \(Q(\lambda )\) and \(\epsilon (\lambda )\) such that for all \(X^{(1)},\cdots , X^{(Q)}, X^{*} \in \mathcal {X}_\lambda \) with \(X^* \notin \left\{ X^{(1)},\cdots , X^{(Q)} \right\} \)
$$ \gamma _{\max }(\lambda ) \ge \textsf{Pr}\left[ \textbf{F}\left( X^{(1)}\right) \in R_q^*,\cdots ,\textbf{F}\left( X^{(Q)}\right) \in R_q^* \wedge \textbf{F}\left( X^{*}\right) =0 \right] \ge \gamma _{\min }(\lambda ) $$holds and the function \(\tau (\lambda )\) defined as
$$ \tau (\lambda ) := \gamma _{\min } \cdot \epsilon (\lambda ) - \frac{\gamma _{\max }(\lambda ) -\gamma _{\min }(\lambda ) }{2} $$is noticeable. The probability is taken over the randomness of the function key \(K\xleftarrow {\$} \textsf{PrtSmp}(1^\lambda , Q(\lambda ),\epsilon (\lambda ))\).
We call K the partition key and \(\tau (\lambda )\) the quality of the partition function.
The proof of the following lemma can be found in the paper of [2, 26].
Lemma A.2
(Lemma 8 in [26]). Let us consider an IBE scheme and an adversary A that breaks the adaptively-anonymous security (resp. Pseudorandomness) with advantage \(\lambda \). Let the identity space (resp. input space) be X and consider a map \(\gamma \) that maps a sequence of elements in X to a value in [0,1]. We consider the following experiment. We first execute the security game for \(\mathcal {A}\). Let \(X^*\) be the challenge identity (resp. challenge input) and \(X_1, \cdots , X_Q\) be the identities (resp. inputs) for which key extraction queries (resp. evaluation queries) were made. We denote \(\mathbb {X} = (X^*, X_1,\cdots , X_Q)\). At the end of the game, we set \(coin' \in \{0,1\}\) as \(\hat{b} = b' \) with probability \(\gamma (\mathbb {X})\) and \(\hat{b}\xleftarrow {} \{0,1\}\) with probability \(1- \gamma (\mathbb {X})\). Then, the following holds
where \(\gamma _{\max }\) and \(\gamma _{\min }\) are the maximum and the minimum of \(\gamma (\mathbb {X})\) taken over all possible \(\mathbb {X}\), respectively.
B Supplementary Materials for Section 3
1.1 B.1 Proof of Theorem 3.4
Proof
From the description of Construction 3.2, we have that
Thus to prove the theorem, showing \( \Vert \mathsf {{R}}'_{\eta } \Vert \le \eta ^\eta \cdot (nkb) \cdot \Vert \mathsf {{R}}_x \Vert \) is sufficient, and we show it by induction. Namely, we prove \( \Vert \mathsf {{R}}'_{j^*} \Vert \le \eta ^{j^*} \cdot (nkb) \cdot \Vert \mathsf {{R}}_x \Vert \) for all \(\eta \ge j^*\ge 1\) below. Furthermore, by taking \(j^*:= \eta \), we have that \( \Vert \mathsf {{R}}'_{\eta } \Vert \le \eta ^{\eta } \cdot (nkb) \cdot \Vert \mathsf {{R}}_x \Vert \), and the theorem follows.
For the basis step that when \(j^*=1\), we have \( \Vert \mathsf {{R}}'_{1} \Vert \le \Vert \mathsf {{R}}_x \Vert \le \eta ^1 \cdot (nkb) \cdot \Vert \mathsf {{R}}_x \Vert \). For the induction step, assume that \( \Vert \mathsf {{R}}'_{j^*} \Vert \le \eta ^{j^*} \cdot (nkb) \cdot \Vert \mathsf {{R}}_x \Vert \) holds for some \(\eta >j^*>1\), then we need to prove that \( \Vert \mathsf {{R}}'_{j^*+1} \Vert \le \eta ^{j^*+1} \cdot (nkb) \cdot \Vert \mathsf {{R}}_x \Vert \). Note that we have followings for \( \Vert \mathsf {{R}}'_{j^*+1} \Vert \).
where the first inequality is from the description of step 2 of algorithm \(\textsf{Trap}\textsf{Eval}\); the second inequality is from the induction assumption; the third and last inequality is from a simple rearranging the terms and from the fact that \(|x-j-1|+1 \le \eta \). This is the case, since \(x\in [\eta ]\) and \(1<j<\eta \), we have that \(|x-j-1| \le \eta -1\) and thus \(\eta - |x-j-1| \le \eta \). Therefore, from the induction, we have that \( \Vert \mathsf {{R}}'_{j^*} \Vert \le \eta ^{j^*} \cdot (nkb) \cdot \Vert \mathsf {{R}}_x \Vert \) for all \(\eta \ge j^*\ge 1\) below \(\square \)
1.2 B.2 Proof of Theorem 3.7
Proof
If \(\mathsf {{B}}_{x_i} = \mathsf {{A}} \cdot \mathsf {{R}}_{x_i} + x_i\cdot \mathsf {{G}}_b\) for all \(i\in [\xi ]\), then from the description of step 1 of \(\textsf{Pub}\textsf{Eval}_{\textsf{d}}\) and \(\textsf{Trap}\textsf{Eval}_{\textsf{d}}\), we have that
where we use the theorem assumption that deterministic algorithms \(\left( \textsf{Pub}\textsf{Eval}, \textsf{Trap}\textsf{Eval}\right) \) are correct to homomorphically evaluate the function class \(\{\textsf{Equal}_j(\star )\}_{j\in [\eta ]}\), and \(\left( j_i \overset{?}{=}\ x_i \right) \) is 1 if \(j_i=x_i\) and is zero otherwise. From the second step of algorithm \(\textsf{Pub}\textsf{Eval}\), we know that
Therefore, the correctness follows. \(\square \)
1.3 B.3 Proof of Theorem 3.8
Proof
From the description of Construction 3.6, we know that showing \( \Vert \mathsf {{R}}''_{\xi } \Vert \le \xi \cdot (nkb) \cdot \delta \cdot \max _{i\in [\xi ]}{ \Vert \mathsf {{R}}_{x_i} \Vert } \) is sufficient to show the theorem. We show it by induction.
For the basis step that when \(j^*=1\), we have
where the second inequality is from theorem assumption that \(\left( \textsf{Pub}\textsf{Eval}, \textsf{Trap}\textsf{Eval}\right) \) are \(\delta \)-expanding, that is \( \Vert \mathsf {{R}}'_i \Vert \le \delta \cdot \max _{i\in [\xi ]}{ \Vert \mathsf {{R}}_{x_i} \Vert } \) for all \(i\in [\xi ]\).
For the induction step, assume that \( \Vert \mathsf {{R}}''_{i^*} \Vert \le i^* \cdot (nkb) \cdot \delta \cdot \max _{i\in [\xi ]}{ \Vert \mathsf {{R}}_{x_i} \Vert }\) holds for some \(\xi >i^*>1\), then we need to prove that \( \Vert \mathsf {{R}}''_{i^*+1} \Vert \le (i^*+1) \cdot (nkb) \cdot \delta \cdot \max _{i\in [\xi ]}{ \Vert \mathsf {{R}}_{x_i} \Vert }\). Note that we have followings for \( \Vert \mathsf {{R}}''_{i^*+1} \Vert \).
where the first inequality is from the description of step 2 of algorithm \(\textsf{Trap}\textsf{Eval}_{\textsf{d}}\) and triangle inequality of the 2-norm; the second inequality is from the induction assumption and the theorem assumption; the last inequality is from a simple amplifying the first term. Furthermore, by taking \(i^*:= \xi \), we have that \( \Vert \mathsf {{R}}''_{\xi } \Vert \le \xi \cdot (nkb) \cdot \delta \cdot \max _{i\in [\xi ]}{ \Vert \mathsf {{R}}_{x_i} \Vert } \), and thus this completes the proof of the theorem. \(\square \)
C Supplementary Materials for Section 4
1.1 C.1 Proof of Theorem 4.3
Proof
To show the theorem, we need to define an algorithm \(\textsf{PrtSmp}\) and show it equipped two properties of partition function in Definition A.1. First, our definition of \(\textsf{PrtSmp}\) as follows:
-
\(\textsf{PrtSmp}\left( 1^\lambda ,Q(\lambda ), \epsilon (\lambda ) \right) \rightarrow K\): Let \(t':= \lceil \log _{1-\textsf{d}}(\frac{3Q}{\epsilon })\rceil \), then randomly sample a vector \(\mathsf {\boldsymbol{\alpha }}' \xleftarrow {} [\textsf{L}]^{t'}\) and a vector \(\mathsf {\boldsymbol{\beta }}' \in [p]^{t'}\). Then we pad zeros to each of \(\mathsf {\boldsymbol{\alpha }}', \mathsf {\boldsymbol{\beta }}\) to get the vectors \(\mathsf {\boldsymbol{\alpha }}\) and \(\mathsf {\boldsymbol{\beta }}\) such that each has length t. Finally, outputs \(K=(\mathsf {\boldsymbol{\alpha }}, \mathsf {\boldsymbol{\beta }})\).
Note that above algorithm \(\textsf{PrtSmp}\) has the first property of partition function (Definition A.1). Since Q is polynomially bounded and \(\epsilon \) is noticeable, when \(t= \omega (1)\), we have that \(\frac{3Q}{\epsilon }\) is polynomially bounded, and thus we have that \(t'\) is constant. Furthermore, due to the setting that \(t= \omega (1)\), for large enough \(\lambda \), we have that \(t' < t\), thus \(K=(\mathsf {\boldsymbol{\alpha }},\mathsf {\boldsymbol{\beta }}) \in \mathcal {K}=[\textsf{L}]^t\times [p]^t\).
Next we show the partition property of \(\textsf{PrtSmp}\). If let \(\gamma \) be the partition probability that
then we have
To show \(\textsf{PrtSmp}\) has second property of Definition A.1, we first show (1) \(\gamma _{\max }= \frac{1}{p^{t'}}\) is an upper bound of \(\gamma \), and (2) \(\gamma _{\min }= \left( 1 - (1-\textsf{d})^{t'} \right) \cdot \gamma _{\max }\) is a lower bound of \(\gamma \).
First we show property (1). Note that we have
where the first equality is from the fact the sum of quadratic terms is zero iff each quadratic term is zero; the second equality is from the fact that each entry of \(\mathsf {\boldsymbol{\alpha }}\) and \(\mathsf {\boldsymbol{\beta }}\) are independent; the last equality is from the randomness of \(\beta _i\) in \(\mathbb {Z}_p\).
Next we show property (2). Since the modulus q is prime, we know that \(F_K\left( X^{(j)}\right) \) is invertible in \(\mathbb {Z}_q\) if it is non-zero. Therefore, we have
Note that for any two distinct \(x_1 \ne x_2\), we have
where the first equality is from the fact the sum of quadratic terms is zero iff each quadratic term is zero; the second equality is from the fact that each entry of \(\mathsf {\boldsymbol{\alpha }}\) and \(\mathsf {\boldsymbol{\beta }}\) are independent; the third and last equalities are from a simple substitution, randomness of \(\mathsf {\boldsymbol{\alpha }}\) and the relative distance of \(\textsf{ECC}\). Therefore, we have
Next we show that \(\tau (\lambda ) =\gamma _{\min }\cdot \epsilon - \frac{\gamma _{\max }-\gamma _{\min }}{2}\) is noticeable. From above results, we have that
where the inequalities are from the setting of \(t'\). Since \(\epsilon \) is noticeable and Q is polynomially bounded, we have that \(t'\) is some constant from the definition of \(t'\), therefore \(\gamma _{\max }=1/p^{t'}\) is noticeable, and thus \(\tau (\lambda )\) is noticeable. This completes the proof. \(\square \)
D Supplementary Materials for Section 5
1.1 D.1 Proof of Theorem 5.2
Proof
From the description of the decryption algorithm, we know that
Note that \(e_0\) is sampled from the Gaussian distribution \(D_{\mathbb {Z}_q,\sigma _0}\), thus from the Gaussian tail bound (Lemma 2.6), we have that \(\textsf{Pr}[\Vert e_0\Vert _{\infty } \le \omega (\log (n)) \cdot \sigma _0] \le \textsf{negl}(\lambda )\). Furthermore, we have followings:
where the last inequality holds except with negligible probability by Lemma 2.6. Thus from the above results, we have that
Thus, from the description of the decryption algorithm, it decrypts correctly except with negligible probability, and thus the \(\textsf{IBE}\) scheme is correct. \(\square \)
1.2 D.2 Proof of Theorem 5.3
Proof
To show the theorem, we prove that if there is an adversary \(\mathcal {A}\) who breaks the \(\textsf{IBE}\) scheme in the Construction 5.1 in polynomial running time with noticeable probability \(\epsilon \) via making an polynomially bounded number, say Q, of key extraction queries for Q identities, then there is an algorithm \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) which invokes \(\mathcal {A}\) to solve the \(D\text {-}\textsf{LWE}_{n,k+1,q,\sigma _0}\) problem with noticeable probability in polynomial time as well. This contradicts to the theorem assumption that \(D\text {-}\textsf{LWE}_{n,m+1,q,\sigma _0}\) is hard, and thus the theorem follows. Before presenting the concrete description of \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\), we first define and analysis follows hybrid games, from which the design idea of \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) can be easily seen. The hybrid games are defined as follows.
-
\(\textsf{Game}_0{:}\) This is the original adaptive IBE security game between the adversary \(\mathcal {A}\) and the challenger \(\textsf{Chall}\).
-
\(\textsf{Game}_1{:}\) In this game, we change the \(\textsf{Game}_0\) so that the challenger \(\textsf{Chall}\) procedure an conditional abort at the end of the game. Namely, this game is identical to the \(\textsf{Game}_0\) except that at the end of the game, the challenger runs \(\textsf{PrtSmp}(1^\lambda ,t_{\mathcal {A}},\epsilon ) \rightarrow K = (\mathsf {\boldsymbol{\alpha }}, \mathsf {\boldsymbol{\beta }})\) and abort the game if the following condition holds;
$$\begin{aligned} \bigwedge _{i=1}^{Q} \left( F_K\left( id^{i}\right) \in \mathbb {Z}^*_q \right) \bigwedge F_K\left( id^{*}\right) =0, \end{aligned}$$where \(\textsf{id}^{1},\cdots , \textsf{id}^{Q}\) are the identities for which \(\mathcal {A}\) has made key extraction queries, and \(\textsf{id}^*\) is the challenge identity.
-
\(\textsf{Game}_2{:}\) In this game, we change the way that the matrices \(\{\mathsf {{A}}_{i,j}\}_{i\in [t],j\in [\xi ]},\{\mathsf {{B}}_i\}_{i\in [t]}\) are generated. Here, instead of sampling them uniformly over \(\mathbb {Z}_q^{n\times m}\), the challenger first samples \(\{\mathsf {{R}}_{i,j}\}_{i\in [t],j\in [\xi ]},\{\mathsf {{R}}^B_i\}_{i\in [t]} \xleftarrow {} \mathbb {Z}_{[-\rho , \rho ]}^{m\times m}\), and sets
$$\begin{aligned} \mathsf {{A}}_{i,j} &:= \mathsf {{A}}^\top \cdot \mathsf {{R}}_{i,j} + \mathsf {\boldsymbol{\alpha }}_{i,j}\cdot \mathsf {{G}}_b\text{, } \text{ for } i\in [t], j\in [\xi ] \\ \mathsf {{B}}_i &:= \mathsf {{A}}^\top \cdot \mathsf {{R}}^B_i + \mathsf {\boldsymbol{\beta }}_i\cdot \mathsf {{G}}_b, \text{, } \text{ for } i\in [t], \end{aligned}$$where \(\mathsf {\boldsymbol{\alpha }}_{i,j}\) is the j-th \(\eta \)-adic representation of \(\mathsf {\boldsymbol{\alpha }}\).
-
\(\textsf{Game}_3{:}\) This game is the same as \(\textsf{Game}_2\) except that we change way of generating public matrix \(\mathsf {{A}}\) and the key extraction procedure. Here, the challenger samples \(\mathsf {{A}} \xleftarrow {\$} \mathbb {Z}_q^{n\times m}\) uniformly instead of generating it with trapdoor by running the trapdoor generating algorithm \(\textsf{Trap}\textsf{Gen}\). To extract a secret key for an identity \(\textsf{id}\), the challenger first computes
$$ \mathsf {{R}}_{\textsf{id}} = \textsf{Trap}\textsf{Eval}_{\textsf{IBE}}\left( \{\mathsf {{R}}_{i,j}\}_{i\in [t],j\in [\xi ]},\{\mathsf {{R}}^B_i\}_{i\in [t]} , \mathsf {\boldsymbol{\alpha }}, \mathsf {\boldsymbol{\beta }}, \textsf{id}\right) . $$Then sample a vector \(\mathsf {{e}}_{\textsf{id}} \in \mathbb {Z}_q^{2m}\) by running \(\textsf{SampleRight}\) as
$$ \mathsf {{e}}_{\textsf{id}} = \textsf{SampleRight}\left( \mathsf {{A}}, \mathsf {{R}}_{\textsf{id}}, \mathsf {{u}}, F_{\mathsf {\boldsymbol{\alpha }}, \mathsf {\boldsymbol{\beta }}}(\textsf{id}), \mathsf {{G}}_b, \mathsf {{T}}_{\mathsf {{G}}_b}, \sigma \right) . $$Finally, the challenger outputs \(\mathsf {{e}}_{\textsf{id}}\) as a corresponding key for the identity \(\textsf{id}\).
-
\(\textsf{Game}_4{:}\) In this game, we change the way that the challenge ciphertext \(\textsf{ct}^* = (c^*_0,\mathsf {{c}}^*_1)\) is generated. Here, the challenger first selects \(\mathsf {{s}} \xleftarrow {\$} \mathbb {Z}^n_q\) and \(\mathsf {{x}} \xleftarrow {} D_{\mathbb {Z}_q^m,\sigma _0}\), and compute \(\mathsf {{v}} = \mathsf {{A}} \cdot \mathsf {{s}} + \mathsf {{x}}\). Then the challenger samples \(e_0 \xleftarrow {} D_{\mathbb {Z}_q^m,\sigma _0}\), and generates the challenge ciphertext as follows:
$$ c_0^* = \mathsf {{u}} \cdot \mathsf {{s}} + e_0 + \big \lceil \frac{q}{2}\big \rceil \cdot \mu , \text{, } \mathsf {{c}}^*_1 = \textsf{ReRand}\left( [I_m|\mathsf {{R}}_{\textsf{id}^*}]^\top , \mathsf {{v}}, \sigma _0, \frac{\sigma _1}{2\sigma _0}\right) , $$where \(I_m\) is the identity matrix.
-
\(\textsf{Game}_5{:}\) In this game, we change the way that the challenge ciphertext \(\textsf{ct}^* = (c^*_0,\mathsf {{c}}^*_1)\) is generated. Here, instead of masking the message with LWE samples, the challenger masks the message with uniformly random samples. Formally, the challenger first samples \(u_0 \xleftarrow {} \mathbb {Z}_q\), \(\mathsf {{v}}' \xleftarrow {} \mathbb {Z}_q^m\) and \(\mathsf {{x}} \xleftarrow {} D_{\mathbb {Z}_q^m,\sigma _0}\), then set \(\mathsf {{v}} = \mathsf {{v}}' + x \) and compute the challenger ciphertext as follows:
$$ c_0^* = u_0 + \big \lceil \frac{q}{2}\big \rceil \cdot \mu , \text{, } \mathsf {{c}}^*_1 = \textsf{ReRand}\left( [I_m|\mathsf {{R}}_{\textsf{id}^*}]^\top , \mathsf {{v}}, \sigma _0, \frac{\sigma _1}{2\sigma _0}\right) , $$
For \(i\in \left\{ 0,1,2,3,4,5 \right\} \), let \(E_1\) be the event that the adversary \(\mathcal {A}\) wins in \(\textsf{Game}_i\), and let \(\textsf{abort}\) be the event that challenger aborts in \(\textsf{Game}_1\). From the above assumption, we have that \(\textsf{Pr}[E_0] = \epsilon \). Additionally, from the description of \(\textsf{Game}_5\), it is easy to see that \(c_0\) is independent of \(\mathsf {{c}}_1\), and from the uniformity of \(u_0\), the advantage of any adversary in \(\textsf{Game}_5\) is exactly 0, that is \(\textsf{Pr}[E_5] = 0\). Due to the space limit, we postpone the proof of following lemmas to Appendix D.3 to Appendix D.7.
Lemma D.1
\(\textsf{Pr}[E_1]\) is noticeable if \(\epsilon \) is noticeable.
Lemma D.2
\(|\textsf{Pr}[E_2] - \textsf{Pr}[E_1]| \le \textsf{negl}(\lambda )\)
Lemma D.3
\(|\textsf{Pr}[E_3] - \textsf{Pr}[E_2]| \le \textsf{negl}(\lambda )\)
Lemma D.4
\(|\textsf{Pr}[E_4] - \textsf{Pr}[E_3]| \le \textsf{negl}(\lambda )\)
Lemma D.5
\(|\textsf{Pr}[E_5] - \textsf{Pr}[E_4]| \le \textsf{negl}(\lambda )\) if the \(D\text {-}\textsf{LWE}_{n,m+1,q,\sigma _0}\) problem is hard.
Put All Together. Combining the above results, we have
where \(t'=\lceil \log _{1-\textsf{d}}(\frac{3Q}{\epsilon })\rceil \). Since \(\epsilon \) is noticeable and Q is polynomially bounded, the value \(p^{t'}\) is polynomially bounded, and thus \(\textsf{Pr}[E_5]\) is noticeable. Which is contradicts to the fact that \(\textsf{Pr}[E_5] = 0\). This completes the proof of Theorem 5.3. \(\square \)
1.3 D.3 Proof of Lemma D.1
Proof
Since the \(\mathcal {A}\)’s advantage \(\epsilon \) is noticeable and the running time \(T_{\mathcal {A}}\) is polynomially bounded, the Lemma A.2 and the second property of the partition function implies that
where \(t'=\lceil \log _{1-\textsf{d}}(\frac{3Q}{\epsilon })\rceil \). Since \(\epsilon \) is noticeable and Q is polynomially bounded, thus \(p^{t'}\) is polynomially bounded, and thus the probability \(\textsf{Pr}[E_1]\) is noticeable. This completes the proof of Lemma D.1. \(\square \)
1.4 D.4 Proof of Lemma D.2
Proof
Recall that the difference between the \(\textsf{Game}_1\) and \(\textsf{Game}_2\) is the way that they generate the public matrices \(\{\mathsf {{A}}_{i,j}\}_{i\in [t],j\in [\xi ]}\) and \(\{\mathsf {{B}}_i\}_{i\in [t]}\). Namely, the two games generate the public ring vectors as follows:
where \(\mathsf {{R}}_{i,j}, \mathsf {{R}}^B_{i} \xleftarrow {} \mathbb {Z}_{-\rho ,\rho }^{m\times m}\). Thus, Lemma 2.7 shows that the difference between the above two games is negligible. This completes the proof of Lemma D.2. \(\square \)
1.5 D.5 Proof of Lemma D.3
Proof
Note that, in \(\textsf{Game}_3\), the challenger changed the way of generating the public matrix \(\mathsf {{A}}\) and the key extraction procedure. So, to show this lemma, it suffices to show that (1) the difference between the generating processes of \(\mathsf {{A}}\) is negligible, and (2) the difference between the key extraction procedures is negligible. Thus, applying the probability union bound, we complete the proof of this lemma.
Now we show the statement (1): Note that public matrix \(\mathsf {{A}}\) is sampled uniformly from the \(\mathbb {Z}_q^{n\times m}\) in \(\textsf{Game}_3\) instead of by running \(\textsf{Trap}\textsf{Gen}\) as in \(\textsf{Game}_2\). From the first property of Lemma 2.13, the difference between the two cases is negligible in security parameter \(\lambda \).
Next we show the statement (2):Note that in \(\textsf{Game}_2\), the challenger uses the trapdoor information of \(\mathsf {{A}}\) to extract the identity key by running \(\textsf{SampleLeft}\) algorithm of Lemma 2.13. However, in \(\textsf{Game}_3\), the challenger has no trapdoor information about the matrix \(\mathsf {{A}}\), yet it can use \(\mathsf {{R}}_{\textsf{id}}\) to generate the corresponding secret identity key by running the \(\textsf{SampleRight}\) algorithm of Lemma 2.13. The second and third property of Lemma 2.13 shows that the outputs of above two sampling algorithms are statistically close to \(D_{[\mathsf {{A}}^\top | \mathsf {{A}}_{\textsf{id}}^\top ], \mathsf {{u}}, \sigma }\). Thus the difference between the above two procedures of generating identity keys is negligible. \(\square \)
1.6 D.6 Proof of Lemma D.4
Proof
Note that the only difference between the \(\textsf{Game}_3\) and \(\textsf{Game}_4\) is the way the challenger generates the challenge ciphertext \(\textsf{ct}= (c_0, \mathsf {{c}}_1)\). In \(\textsf{Game}_3\), the challenge ciphertext is generated by the encryption algorithm, while in \(game_4\), \(c_0\) is generated by the same way as in \(\textsf{Game}_3\), yet \(\mathsf {{c}}_1 = \textsf{ReRand}\left( [I_m| \mathsf {{R}}_{\textsf{id}^*}, \mathsf {{v}}, \sigma _0, \frac{\sigma }{2\sigma _0}]\right) \). From Lemma 2.11, we have that the difference between the above two games is negligible. \(\square \)
1.7 D.7 Proof of Lemma D.5
Proof
To show this lemma, we construct a simulation algorithm \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) (which is desired in Theorem 5.3) which tries to solve the \(D\text {-}\textsf{LWE}\) problem by invoking an algorithm \(\mathcal {B}\) who tries to distinguish \(\textsf{Game}_4\) and \(\textsf{Game}_5\) . The description if \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) is as follows:
-
\( \textsf{Sim}_{D\text {-}\textsf{LWE}}\left( (\mathsf {{A}}^\top | \mathsf {{u}}), (\mathsf {{b}}^\top , b_0) \right) \rightarrow \{0,1\}{:}\)
-
On input the \(D\text {-}\textsf{LWE}_{n,m+1,q,\sigma _0}\) challenge samples \(\left( [\mathsf {{A}} \top | \mathsf {{u}}], [ \mathsf {{b}}^\top ,b_0] \right) \), algorithm \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) simulates the \(\textsf{Game}_4\) for \(\mathcal {B}\) except the challenge ciphertext respond. It first lets \(\mathsf {{A}}\) as the part of the master public key of \(\textsf{IBE}\) scheme, and generates the matrices \(\{\mathsf {{A}}_{i,j}\}_{i\in [t],j\in [\xi ]}\) and \(\{\mathsf {{B}}_i\}_{i\in [t]}\) as in \(\textsf{Game}_4\), and let \(\textsf{mpk}=\left( \mathsf {{A}}, \{\mathsf {{A}}_{i,j}\}_{i\in [t],j\in [\xi ]},\{\mathsf {{B}}_i\}_{i\in [t]}, \mathsf {{u}} \right) \) as the master public key of the \(\textsf{IBE}\) scheme. The identity key extraction procedure is the same as in \(\textsf{Game}_4\), yet it generates the challenge ciphertext as follows:
$$\begin{aligned} c_0^* = b_0 + \big \lceil \frac{q}{2}\big \rceil \cdot \mu \text{, } \mathsf {{c}}_1^* = \textsf{ReRand}\left( \left[ I_m| \mathsf {{R}}_{\textsf{id}^*}\right] , \mathsf {{b}}, \sigma _0, \frac{\sigma }{2\sigma _0}\right) . \end{aligned}$$If the algorithm \(\mathcal {B}\) outputs 1, meaning that the simulated game is \(\textsf{Game}_4\), then the algorithm \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) outputs 1 implies the challenge samples are from \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) distribution. If \(\mathcal {B}\) outputs 0, meaning that the simulated game is \(\textsf{Game}_5\), then the algorithm \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) outputs 0 implies the challenge samples are from uniform distribution.
It is not hard to see that if the given challenge samples \(\left( [\mathsf {{A}} \top | \mathsf {{u}}], \mathsf {{b}}^\top ,b_0\right) \) are from \(D\text {-}\textsf{LWE}\) distribution, then the algorithm \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) exactly simulates the \(\textsf{Game}_4\); if the given challenge samples are from uniform distribution, then the algorithm \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) exactly simulates the \(\textsf{Game}_5\). Thus the advantage of the simulation algorithm \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) is exactly the advantage of the distinguishing advantage of \(\mathcal {B}\). From the hardness assumption of \(D\text {-}\textsf{LWE}\) problem, the advantage of \(\textsf{Sim}_{D\text {-}\textsf{LWE}}\) is negligible, and thus the distinguishing advantage of any algorithm \(\mathcal {B}\) is negligible. This completes the proof of Lemma D.5 \(\square \)
E Supplementary Materials for Section 6
1.1 E.1 Parameters for Our IBE Scheme
Parameter Constraints. Here we present the parameter constraints which ensure our \(\textsf{IBE}\) in Construction 5.1 reaches the correctness and the adaptive security. To meet the corresponding requirements, the parameters should satisfy the following constraints:
-
For the requirements of \(\textsf{Trap}\textsf{Gen}\) algorithm and gadget vector \(\mathsf {{G}}_b\), we need
$$\begin{aligned} m&\ge \frac{(n+1) \log (q)+ \omega (\log (n))}{\log (\rho )} , \\ m&\ge n\cdot \lceil \log _{\rho }(q)\rceil \end{aligned}$$ -
To ensure the Lemma 4.2 to hold, we need
$$\begin{aligned} q > t \cdot p^2 \end{aligned}$$ -
To ensure the existence of such \(t'\) in the definition of \(\textsf{PrtSmp}\) in Theorem 4.3, we need to set \(t'\) such that
$$ t'= \log _{1-\textsf{d}}\left( \frac{3Q}{\epsilon }\right) , $$where Q is the number key queries and \(\lambda \) is the advantage of the adversary.
-
To ensure the hardness of \(D\text {-}\textsf{LWE}\) problem, we need \(\sigma _0\) satisfies the condition of the reduction in Lemma 2.10, that is
$$\sigma _{0} \ge 2\sqrt{n}.$$ -
To meet the requirement of \(\textsf{ReRand}\) algorithm, we set
$$\sigma _0 \ge \omega \left( \sqrt{\log (n)}\right) \text{ and } \sigma _1 \ge 2\sigma _0 \cdot \sqrt{s^2_1(\mathsf {{R}}_{\textsf{id}^*}) + 1} .$$ -
To meet the requirement of \(\textsf{SampleLeft}\) algorithm in Lemma 2.13, we need
$$ \sigma > \Vert \textsf{rot}(\mathsf {{T}}_{\mathsf {{A}}})\Vert _{\textsf{GS}}\cdot \omega \left( \sqrt{\log (n)}\right) $$where \(\Vert \textsf{rot}(\mathsf {{T}}_{\mathsf {{A}}})\Vert _{\textsf{GS}} < O\left( b \rho \sqrt{n\log _{\rho }(q)}\right) \).
-
To meet the requirement of \(\textsf{SampleRight}\) algorithm in Lemma 2.13, we need
$$\sigma > s_1(\mathsf {{R}}_{\textsf{id}})\cdot \Vert \textsf{rot}(\mathsf {{T}}_{\mathsf {{G}}_b})\Vert _{\textsf{GS}}\cdot \omega \left( \sqrt{\log (n)}\right) ,$$where \(s_1(\mathsf {{R}}_{\textsf{id}})\) satisfies following
$$s_1(\mathsf {{R}}_{\textsf{id}}) < \tilde{O}\left( t\cdot (mb+p)\cdot \xi \cdot (mb)^3\right) \cdot \Vert \mathsf {{R}}\Vert ,$$Additionally, \(\Vert \mathsf {{R}}\Vert \le C\cdot s \cdot \left( \sqrt{m}+\sqrt{n} + t\right) \) with probability \( 2 e^{-\pi t^2}\) for some \(t>0\), and \(\Vert \textsf{rot}(\mathsf {{T}}_{\mathsf {{g}}_b})\Vert _{\textsf{GS}}\le \sqrt{b^2+1}.\)
-
For the correctness of our \(\textsf{IBE}\) scheme, we need the modulus q satisfy
$$q \ge O\left( \omega (\log (n)) \cdot \sigma _0 + \sigma \sigma _1 \cdot \omega (\log (n)) \cdot \sqrt{2m}\right) $$to achieve overwhelming correctness.
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Abla, P. (2024). Identity-Based Encryption from LWE with More Compact Master Public Key. In: Oswald, E. (eds) Topics in Cryptology – CT-RSA 2024. CT-RSA 2024. Lecture Notes in Computer Science, vol 14643. Springer, Cham. https://doi.org/10.1007/978-3-031-58868-6_13
Download citation
DOI: https://doi.org/10.1007/978-3-031-58868-6_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-58867-9
Online ISBN: 978-3-031-58868-6
eBook Packages: Computer ScienceComputer Science (R0)