Abstract
Registration-based encryption (RBE) [11] is a primitive that aims to offer what identity-based encryption (IBE) [2] offers without the so-called key-escrow problem. In RBE parties who wish to join the system will generate their own secret and public keys and register their public keys to a transparent party called key curator (KC) who does not have any secret state.
The initial constructions of RBE made non-black-box use of building block primitives, due to their use of either indistinguishability obfuscation [11] or some garbling scheme [12]. More recently, it was shown [14, 17] how to achieve black-box constructions of (variants of) RBE and even stronger primitives based on bilinear maps in which the RBE is relaxed to have a CRS whose length can grow with the number of registered identities. Making cryptographic constructions in general, and RBE in particular, black-box is an important step as it can play a significant role in its efficiency and potential deployment. Hence, in this work we ask: what are the minimal assumptions for black-box constructions of RBE? Particularly, can we black-box construct RBE schemes from the same assumptions used for public-key encryption or simpler algebraic assumptions that hold in the generic group model?
In this work, we prove the first black-box separation results for RBE beyond the separations that follow from the observation that RBE black-box implies public-key encryption. In particular, we answer both of the questions above negatively and prove that neither trapdoor permutations nor (even Shoup’s) generic group model can be used as the sole source of hardness for building RBE schemes. More generally, we prove that a relaxation of RBE in which all the keys are registered and compressed at the same time is already too complex to be built from either of the above-mentioned primitives in a black-box way. At a technical level, using compression techniques, we prove lemmas in the TDP and GGM oracle settings that prove the following intuitive yet useful fact: that compact strings cannot signal too many trapdoors, even if their generation algorithm takes exponential time. Due to their generality, our lemmas could be of independent interest and find more applications.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
The work of [17] further generalizes the primitive to attribute-based encryption and constructs registered ABE, while further relaxing the primitive and allowing interactive registration.
- 2.
Note that PKE is indeed necessary for RBE in a black-box way.
- 3.
- 4.
This is done by interpreting the decryption keys as signatures over the identity’s names interpreted as messages.
- 5.
The fact that RBE black-box implies PKCom is straightforward, due to PKCom being a special case. The converse is also true and is proved in [17].
- 6.
By security, here we refer to security against unbounded poly-query adversaries.
- 7.
The Q-A sets \(\textsf{QGen}_i\)’s will not be used in this simple construction, but later one they will be used when we make the signature restricted.
- 8.
Again, the set \(\textsf{QEnc}\) will not be used in this (flawed) construction, but will be used later when we discuss the fixes.
- 9.
We do not keep track of \(\textbf{d}\) queries because of Note 1.
- 10.
Duplicate queries will be replied to with the same random response.
- 11.
By Note 1, any decryption query is followed by two subsequent \(\textbf{g}\) and \(\textbf{e}\) dummy queries. In the last case where a random response r for \((\textsf{tk}, y)\) is generated, we reply to the subsequent dummy \(\textbf{e}\) query with \({y}\).
- 12.
We do not keep track of \(\textbf{d}\) queries because of Note 1.
- 13.
Duplicate queries will be replied to with the same random response.
References
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., 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., Papakonstantinou, P.A., Rackoff, C., Vahlis, Y., Waters, B.: On the impossibility of basing identity based encryption on trapdoor permutations. In: 49th Annual Symposium on Foundations of Computer Science, pp. 283–292. IEEE Computer Society Press, Philadelphia, PA, USA, 25–28 Oct 2008. https://doi.org/10.1109/FOCS.2008.67
Brakerski, Z., Lombardi, A., Segev, G., Vaikuntanathan, V.: Anonymous IBE, leakage resilience and circular security from new assumptions. In: Nielsen, J.B., Rijmen, V. (eds.) EUROCRYPT 2018. LNCS, vol. 10820, pp. 535–564. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-78381-9_20
Catalano, D., Fiore, D., Gennaro, R., Giunta, E.: On the impossibility of algebraic vector commitments in pairing-free groups. In: Kiltz, E., Vaikuntanathan, V. (eds.) Theory of Cryptography. TCC 2022. LNCS, Part II, vol. 13748, pp. 279–299. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-22365-5_10
Datta, P., Pal, T.: Registration-based functional encryption. Cryptology ePrint Archive, Paper 2023/457 (2023). https://eprint.iacr.org/2023/457
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., Ishai, Y., Malavolta, G., Mour, T., Ostrovsky, R.: Trapdoor hash functions and their applications. In: Boldyreva, A., Micciancio, D. (eds.) CRYPTO 2019, Part III. LNCS, vol. 11694, pp. 3–32. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-26954-8_1
Döttling, N., Hartmann, D., Hofheinz, D., Kiltz, E., Schäge, S., Ursu, B.: On the impossibility of purely algebraic signatures. In: Nissim, K., Waters, B. (eds.) TCC 2021, Part III. LNCS, vol. 13044, pp. 317–349. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-90456-2_11
Francati, D., Friolo, D., Maitra, M., Malavolta, G., Rahimi, A., Venturi, D.: Registered (inner-product) functional encryption. Cryptology ePrint Archive, Paper 2023/395 (2023). https://eprint.iacr.org/2023/395
Garg, S., Hajiabadi, M., Mahmoody, M., Rahimi, A.: Registration-based encryption: removing private-key generator from IBE. In: Beimel, A., Dziembowski, S. (eds.) TCC 2018, Part I. LNCS, vol. 11239, pp. 689–718. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03807-6_25
Garg, S., Hajiabadi, M., Mahmoody, M., Rahimi, A., Sekar, S.: Registration-based encryption from standard assumptions. In: Lin, D., Sako, K. (eds.) PKC 2019. LNCS, vol. 11443, pp. 63–93. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17259-6_3
Gennaro, R., Trevisan, L.: Lower bounds on the efficiency of generic cryptographic constructions. In: 41st Annual Symposium on Foundations of Computer Science, pp. 305–313. IEEE Computer Society Press, Redondo Beach, CA, USA, 12–14 Nov 2000. https://doi.org/10.1109/SFCS.2000.892119
Glaeser, N., Kolonelos, D., Malavolta, G., Rahimi, A.: Efficient registration-based encryption. Cryptology ePrint Archive, Paper 2022/1505 (2022). https://eprint.iacr.org/2022/1505, https://eprint.iacr.org/2022/1505
Goyal, R., Vusirikala, S.: Verifiable registration-based encryption. In: Micciancio, D., Ristenpart, T. (eds.) CRYPTO 2020, Part I. LNCS, vol. 12170, pp. 621–651. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-56784-2_21
Haitner, I., Hoch, J.J., Reingold, O., Segev, G.: Finding collisions in interactive protocols - a tight lower bound on the round complexity of statistically-hiding commitments. In: 48th Annual Symposium on Foundations of Computer Science, pp. 669–679. IEEE Computer Society Press, Providence, RI, USA, 20–23 Oct 2007. https://doi.org/10.1109/FOCS.2007.27
Hohenberger, S., Lu, G., Waters, B., Wu, D.J.: Registered attribute-based encryption. In: Hazay, C., Stam, M. (eds.) Advances in Cryptology - EUROCRYPT 2023, pp. 511–542. Springer Nature Switzerland, Cham (2023). https://doi.org/10.1007/978-3-031-30620-4_17
Maurer, U.: Abstract models of computation in cryptography. In: Smart, N.P. (ed.) Cryptography and Coding 2005. LNCS, vol. 3796, pp. 1–12. Springer, Heidelberg (2005). https://doi.org/10.1007/11586821_1
Papakonstantinou, P.A., Rackoff, C.W., Vahlis, Y.: How powerful are the DDH hard groups? Cryptology ePrint Archive, Report 2012/653 (2012), https://eprint.iacr.org/2012/653
Reingold, O., Trevisan, L., Vadhan, S.: Notions of reducibility between cryptographic primitives. In: Naor, M. (ed.) TCC 2004. LNCS, vol. 2951, pp. 1–20. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24638-1_1
Rotem, L., Segev, G., Shahaf, I.: Generic-group delay functions require hidden-order groups. In: Canteaut, A., Ishai, Y. (eds.) EUROCRYPT 2020. LNCS, vol. 12107, pp. 155–180. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45727-3_6
Schul-Ganz, G., Segev, G.: Generic-group identity-based encryption: a tight impossibility result. In: 2nd Conference on Information-Theoretic Cryptography (ITC 2021). Schloss Dagstuhl-Leibniz-Zentrum für Informatik (2021)
Shoup, V.: Lower bounds for discrete logarithms and related problems. In: Fumy, W. (ed.) EUROCRYPT 1997. LNCS, vol. 1233, pp. 256–266. Springer, Heidelberg (1997). https://doi.org/10.1007/3-540-69053-0_18
Wang, Q., Li, R., Wang, Q., Galindo, D., Chen, S., Xiang, Y.: Transparent registration-based encryption through blockchain. Distrib. Ledger Technol. 2(1) (2023). https://doi.org/10.1145/3568315
Zhandry, M.: To label, or not to label (in generic groups). In: Advances in Cryptology – CRYPTO 2022, Part III. pp. 66–96. Lecture Notes in Computer Science, Springer, Heidelberg, Germany, Santa Barbara, CA, USA (Aug 2022). https://doi.org/10.1007/978-3-031-15982-4_3
Acknowledgements
Mahmoody and Wei were supported by NSF grants CCF-1910681 and CNS1936799. Mohammad Hajiabadi and Sara Sarfaraz were supported by an NSERC Discovery Grant RGPIN-03270, and a Meta Research Award.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
A Omitted Proofs
For sake of completeness, here we include a full of Lemma 1, which is heavily based on that of [25] and is simply adapted to our setting.
Proof
(of Lemma 1 - adapted from [25]). Consider choosing an oracle O, a random m, and \((\textsf{sgk}, \textsf{vrk}) \leftarrow {\text {Gen}}^{O}(1^\mathrm {\kappa }, m)\), and then fixing them. We will say that \(\sigma \) is “good” if \(\Pr [{\text {Ver}}^{O}(\textsf{vrk}, m, \sigma ) = 1] \ge \delta /2\), where the probability is taken over the random coins of \({\text {Ver}}\). By correctness, with probability at least \(\delta /2\) over \(m, (\textsf{sgk}, \textsf{vrk}) \leftarrow {\text {Gen}}^O(1^\mathrm {\kappa }, m)\), there will exist at least one good \(\sigma \), namely the output of \(\sigma \leftarrow {\text {Sig}}^{O}(\textsf{sgk}, \textsf{m})\).
Suppose \({\text {Ver0}}\) was deterministic. Then we could compute \(v \leftarrow {\text {Ver0}}^{O}(\textsf{vrk}, \textsf{m})\), and consider the oracle-free probabilistic circuit \(C(\sigma ) = {\text {Ver1}}(v, \sigma )\). Then an input \(\sigma \) is good if and only if \(C(\sigma )\) accepts with probability at least \(\delta /2\). Since C is oracle-free, we can brute-force search for such a \(\sigma \), finding it with probability at least \(\delta /2\). The forgery will then be \((m, \sigma )\), which is accepted by the challenger with probability \(\delta /2\), giving an overall advantage \(\delta ^2/4\).
For a potentially randomized \({\text {Ver0}}\), we have to work slightly harder. For a good \(\sigma \), we have that \(\Pr _{v \leftarrow {\text {Ver0}}^{O}(\textsf{vrk},\textsf{m})}[\Pr [{\text {Ver1}}(v, \sigma ) = 1] \ge \delta /4] \ge \delta /4\). Meanwhile, we will call a \(\sigma \) “bad” if \(\Pr _{v \leftarrow {\text {Ver0}}^{O}(\textsf{vrk},\textsf{m})}[\Pr [{\text {Ver1}}(v, \sigma ) = 1] \ge \delta /4] \le \delta /8\).
For a parameter t chosen momentarily, we let \(v_1, \dots , v_t \leftarrow {\text {Ver0}}^{O}(\textsf{vrk}, \textsf{m})\), and construct circuits \(C_i(\sigma ) = {\text {Ver1}}(v_i, \sigma )\). We then brute-force search for a \(\sigma \) such that \(\Pr _{i\leftarrow [t]}[\Pr [C_i(\sigma ) = 1] \ge \delta /4] \ge 3\delta /8\). By Hoeffding’s inequality, any good \(\sigma \) will be a solution with probability \(1 - 2^{\varOmega (\delta ^2t)}\). Meanwhile, any bad \(\sigma \) will be a solution with probability \(2^{-\varOmega (\delta ^2t)}\). By setting t such that \(t/\delta ^2\) is sufficiently longer than the bit-length of signatures, we can union bound over all bad \(\delta \), showing that there will be no bad solutions except with negligible probability. We will therefore find a not-bad solution with probability at least \(\delta /2 - {\text {negl}}\ge \delta /3\). In this case, with probability at least \(\delta /8\) over the choice of v by the verifier, \(\Pr [{\text {Ver1}}(v, \sigma ) = 1] \ge \delta /4\). Hence, the overall success probability is at least \((\delta /3) \times (\delta /8) \times (\delta /4) \ge \delta ^3/100\). \(\square \)
We now present proof of Lemma 3.
Proof
(Proof of Lemma 3). Let \(s = |\mathcal {S}| = 2^{3\mathrm {\kappa }}\). Assume wlog that both \(\mathcal {A}\) and \(\mathcal {B}\) are deterministic. We prove that any fixed labeling function \(\textbf{label}\) for which \(\textsf{Success}\) holds can be uniquely described with
bits.
This means that there exists at most \(2^f\) different \(\textsf{Successful}\) oracles. Using the inequalities \({(a/b)}^b \le \left( {\begin{array}{c}a\\ b\end{array}}\right) \le (a e /b)^b\), the fraction of \(\textbf{g}\) oracles for which \(\textsf{Success}\) holds is at most
as desired. The last inequality follows from \(\frac{3}{2}kw - |z| - u \ge k/2\), in turn obtained from \(w \ge \frac{ 2(|z| + u)}{ 3 \mathrm {\kappa }} +\frac{1}{3}\).
We now prove Eq. 2. Fix a \(\textsf{Successful}\) labelling function \(\textbf{label}\). Let \(\textsf{Chal} = \{\ell _1, \dots , \ell _t \}\) and wlog assume \(\ell _1 <_{\textsf{lex}} \ell _2 <_{\textsf{lex}} \dots <_{\textsf{lex}} \ell _t \), where \(\le _{\textsf{lex}}\) denotes lexicographical ordering. Let \((\ell _{i_1}, \dots , \ell _{i_w})\) be the w lexicographically smallest elements in \(\textsf{Chal}\) that have a pre-image under \(\textbf{label}\), and let \((x_{i_1}, \dots , x_{i_w})\) be their pre-images. Let \(\mathsf {Chal_x} := \{x_{i_1}, \dots , x_{i_w}\}\).
We say a query to \(\textbf{add}\) is new for \(\mathcal {B}\) if it satisfies the following requirements: (1) the answer to this query is not \(\bot \); (2) at least one of the input labels has not been input to queries to \(\textbf{add}\) made by \(\mathcal {B}\) before and the label belongs to \(\textsf{Chal}\). Such labels are called new labels. Let \(\textsf{New}\) be the list of pre-images to the new labels in the order as they appear in the queries. Let v be a bit string of length u that records the new queries of \(\mathcal {B}\) such that the ith bit of v is 1 if and only if the ith query made by \(\mathcal {B}\) is a new \(\textbf{add}\) query.
Given \(\mathcal {B}\) we claim that any \(\textsf{Successful}\) labeling function \(\textbf{label}\) can be fully described by z, \(\mathsf {Chal_x}\), the index set \(\{i_1, \dots , i_w\}\), v, \(\textsf{New}\) and the outputs of \(\textbf{label}\) on all input points in \(\mathbb {Z}_p \setminus \mathsf {Chal_x}\). Indeed, for any \(x \notin \mathsf {Chal_x}\), the value \(\textbf{label}(x)\) is already given. We determine the labels of \(x \in \mathsf {Chal_x}\) as follows: run \(\mathcal {B}^{\textbf{label}, \textbf{add}}(g, z)\) to get \(\textsf{Chal}\). We first explain how to reply to \(\mathcal {B}\)’s queries using the provided information.
-
1.
Answering \(\textbf{label}\) queries of \(\mathcal {B}\): By condition (ii), we know the answer does not appear in \(\textsf{Chal}\), which means the input of the query does not appear in \(\mathsf {Chal_x}\). Since \(\textbf{label}\) is completely determined on \(\mathbb {Z}_p \setminus \mathsf {Chal_x}\), we can successfully answer such queries.
-
2.
Answering \(\textbf{add}\) queries of \(\mathcal {B}\): First note that by assumption, if the answer to the query is not \(\bot \), then its pre-image must be in \(\mathsf {Chal_x}\), which means we can answer correctly assuming we know the pre-images to the input labels. In the following, we show how to find pre-images with the provided information. Using v, one can tell if the query is new.
-
Suppose the query is new. We then know both of the input labels are valid.
-
If one of the labels has pre-image in \(\mathbb {Z}_p \setminus \mathsf {Chal_x}\) or has been seen before, we can retrieve the pre-image of the other label in \(\textsf{New}\).
-
Otherwise, it must be the case that both labels are new and we can retrieve the pre-images in \(\textsf{New}\).
-
-
Suppose the query is not new.
-
If the answer query to this query is not \(\bot \), it must be the case that the labels either have pre-images in \(\mathbb {Z}_p \setminus \mathsf {Chal_x}\) or have been seen before, we can answer the queries directly.
-
Otherwise, it must be the case that the answer to this query is \(\bot \).
-
-
Thus, the set \(\textsf{Chal}\) can be retrieved. Once \(\textsf{Chal}\) is retrieved, sort its elements to get \((\ell _1, \dots \ell _t)\) and use the provided \((i_1, \dots , i_w)\) to retrieve \((\ell _{i_1}, \dots , \ell _{i_w})\). Assuming \(\mathsf {Chal_x} = (x_{i_1}, \dots , x_{i_w})\), we have \(\textbf{label}(x_{i_h}) = \ell _{i_h}\) for \(h \in [w]\).
We now count f the number of bits required to describe \(\mathsf {Chal_x}\), the indices \(\{i_1, \dots , i_w\}\) and \(\textbf{label}\)’s outputs on all of \(\mathbb {Z}_p \setminus \mathsf {Chal_x}\). We can describe the sorted set \(\mathsf {Chal_x}\) with \(\log (\left( {\begin{array}{c}p\\ w\end{array}}\right) w!)\) bits. We can describe the index set with \(\log \left( {\begin{array}{c}t\\ w\end{array}}\right) \) bits. We can describe the function \(\textbf{label}\) on \(\mathbb {Z}_p \setminus \mathsf {Chal_x}\) with \(\log \frac{(s-w)!}{(s-p)!}\) bits. The string v has length u. The list \(\textsf{New}\) can be described with \(\log w!\) bits because we can choose a permutation of the w pre-images whose initial items form the list \(\textsf{New}\). \(\square \)
B Attacks on RBE with CRS
1.1 B.1 TDP-Impossibility of PKCom with CRS
Theorem 8
For \(\epsilon := \frac{1}{\textsf{poly}(\mathrm {\kappa })}\) let \(\mathcal {E}^{\textbf{O}} :=(\textsf{CRS}^{\textbf{O}},\textsf{Key}^{\textbf{O}},\textsf{Com}^{\textbf{O}},\textsf{Enc}^{\textbf{O}},\textsf{Dec}^{\textbf{O}})\) be a \((1-\epsilon )\)-correct PKCom scheme with respect to a random TDP oracle \(\textbf{O}=(\textbf{g},\textbf{e},\textbf{d})\). Suppose a public parameter \(\textsf{pp}\) under \(\mathcal {E}^{\textbf{g}, \textbf{e}, \textbf{d}}\) satisfies \(|\textsf{pp}| \le \frac{(n-2) |\textsf{ik}|}{2} \), where n is the number of users and \(\textsf{ik}\) is a base index key (recall \(|\textsf{ik}| = 3 \mathrm {\kappa }\), Defintion 2). Also, let \(\alpha \) be the number of queries made by \(\textsf{CRS}^{\textbf{O}}(1^\mathrm {\kappa },1^n)\) to the oracle \(\textbf{O}\). Then, there exists a \((1-\epsilon )(1-\frac{1}{\alpha })\frac{(1-2^{-\mathrm {\kappa }/3})}{n}\)-correct target-restricted signature scheme relative to \(\textbf{O}=(\textbf{g},\textbf{e},\textbf{d})\)
We give the construction in Construction 9.
Construction 9
We construct a n-target-restricted signature scheme from any PKCom scheme \(\mathcal {E}^{\textbf{O}}=(\textsf{CRS}^{\textbf{O}},\textsf{Key}^{\textbf{O}},\textsf{Com}^{\textbf{O}},\textsf{Enc}^{\textbf{O}},\textsf{Dec}^{\textbf{O}})\). The construction is parameterized over an integer s, which will be parameterized later; this parameter will only affect the size of the verification key. We assume all the algorithms satisfy the assumption in Note 1.
-
\({\text {Gen}}^{\textbf{O}}(1^{\mathrm {\kappa }},h) \rightarrow (\textsf{sgk},\textsf{vrk})\) where \(h \in [n]\) is the message to be signed:
-
1.
Run \(\textsf{CRS}^{\textbf{O}}(1^{\mathrm {\kappa }},1^n) \rightarrow \textsf{crs}\) and let \(\textsf{QCRS}\) be the set of all Q-A pairs made to \(\textbf{g}\) and \(\textbf{e}\).Footnote 12
-
2.
For \(1 \le j \le n\), run \(\textsf{Key}^{\textbf{O}}(1^{\mathrm {\kappa }},\textsf{crs}) \rightarrow (\textsf{pk}_j,\textsf{sk}_j)\). Let \(\textsf{QGen}_{j}\) be the set of all Q-A pairs made to \(\textbf{g}\) and \(\textbf{e}\).
-
3.
Run \(\textsf{Com}^{\textbf{O}}(\textsf{crs},\textsf{pk}_1,\dots ,\textsf{pk}_n) \rightarrow \textsf{pp}\) and let \(\textsf{QCMP}\) be the set of all query response pairs made to \(\textbf{g}\) and \(\textbf{e}\).
-
4.
Run \(\textsf{SampleKeys }(\textsf{crs},h,\{\textsf{pk}_i\}_ {i \ne h})\) as defined in Algorithm 1 to obtain a set \(\textsf{K}\).
-
5.
Return \(\textsf{vrk}=((\textsf{pk}_1,\dots ,\textsf{pk}_n),\cup _{j \ne h} \textsf{QGen}_j \cup \textsf{QCMP},\textsf{K})\), \(\textsf{sgk}=(\textsf{sk}_h,\textsf{QGen}_h,\textsf{QCRS})\).
-
1.
-
\({\text {Sig}}(\textsf{sgk},h) \rightarrow \sigma \): For \(\textsf{sgk}\) as above, return \(\sigma =(\textsf{sk}_h,\textsf{QGen}_h,\textsf{QCRS})\).
-
\({\text {Ver}}^{\textbf{g},\textbf{e},\textbf{d}}(\textsf{vrk},\sigma ,h) = {\text {Ver1}}({\text {Ver0}}^O(\textsf{vrk}, h), \sigma )\): Parse \(\textsf{vrk}:= ((\textsf{pk}_1,\dots ,\textsf{pk}_n),\)\(\textsf{S},\textsf{K})\) and \(\sigma := (\textsf{sk}_h , \textsf{QGen}_h,\textsf{QCRS})\).
-
1.
\({\text {Ver0}}^{\textbf{g},\textbf{e},\textbf{d}}(\textsf{vrk},h) \rightarrow \alpha := (\textsf{vrk}, h , m,c,\textsf{QEnc}) \), where \((m,c) \leftarrow \textsf{Enc}^{\textbf{g},\textbf{e},\textbf{d}}(\textsf{pp},h) \) and \(\textsf{QEnc}\) is the set of all Q-A pairs made to \(\textbf{g}\) and \(\textbf{e}\).
-
2.
\({\text {Ver1}}(\alpha , \sigma )\): Retrieve \(\textsf{QEnc}\), \(\textsf{S}\) and \(\textsf{K}\) from \(\mathsf {\alpha }\). (Recall \(\textsf{S} = \cup _{j \ne h} \textsf{QGen}_j \cup \textsf{QCMP} \cup \textsf{K}\) is in \(\textsf{vk}\).) Parse \(\sigma := (\textsf{sk}_h , \textsf{QGen}_h,\textsf{QCRS})\). Let \(\textsf{All}= \textsf{S} \cup \textsf{QEnc} \cup \textsf{QGen}_h \cup \textsf{QCRS}\). Run \(\textsf{Dec}{\textsf{Sim}}(\textsf{crs},h,\textsf{sk}_h , \{ \textsf{pk}_i \} , c , (\textsf{All} , \textsf{QEnc} , \textsf{QGen}_h,\textsf{QCRS}))\), which simulates the execution of \(\textsf{Dec}^O(\textsf{crs},h , \textsf{sk}_h , \{\textsf{pk}_i\} , c)\) by rendering queries via \((\textsf{All} , \textsf{QEnc} , \textsf{QGen}_h,\textsf{QCRS})\), as follows:
-
(a)
For a given \(\textbf{g}\) or \(\textbf{e}\) query, if the answer is already provided in \(\textsf{All}\), reply with that answer; else, with a random string z of appropriate length. In case of answering with a random response, add the Q-A pair to \(\textsf{Fake}\) (initially empty).Footnote 13
-
(b)
For a given query \(\textsf{qu}:=(({\textsf{tk}},{y}) \xrightarrow [\textbf{d}]{} ?)\), if for some \({\textsf{ik}}\), \(({\textsf{tk}} \xrightarrow [\textbf{g}]{} {\textsf{ik}}) \in (\textsf{All} \cup \textsf{Fake})/(\textsf{QGen}_h \cup \textsf{QCRS})\) and \((({\textsf{ik}},{x}) \xrightarrow [\textbf{e}]{} {c}) \in \textsf{All}\) for some \({x}\), respond to the query with \({x}\). Else, if for some \({\textsf{ik}}\), \(({\textsf{tk}} \xrightarrow [\textbf{g}]{} {\textsf{ik}}) \in \textsf{QGen}_{h} \cup \textsf{QCRS}\) and \((({\textsf{ik}},{x}) \xrightarrow [\textbf{e}]{} {y}) \in (\textsf{All}/\textsf{QEnc})\cup \textsf{Fake}\) for some \({x}\), respond to the query with \({x}\). Else, respond to the query with a random value \(r \leftarrow \{0,1\}^{\mathrm {\kappa }}\).
Letting \(m'\) be the output of \(\textsf{Dec}{\textsf{Sim}}\), output 1 if \({m'}=m\) and 0 otherwise.
-
(a)
-
1.
1.2 B.2 Impossibility of PKCom with CRS in Shoup’s GGM
Now, we present the transformation of PKCom to target-restricted signatures while allowing CRS.
Theorem 10
If there exists a \((1-\epsilon )\)-correct PKCom scheme \((\textsf{CRS}^{\mathbb {G}_{RR}},\textsf{Key}^{\mathbb {G}_{RR}},\)\(\textsf{Com}^{\mathbb {G}_{RR}},\textsf{Enc}^{\mathbb {G}_{RR}},\textsf{Dec}^{\mathbb {G}_{RR}})\) in the RR generic group model, then there exists a \(\delta \)- correct target-restricted signature scheme in the same model where \(\delta =(1-\epsilon )\frac{(1-2^{-\mathrm {\kappa }/3})}{n}\).
Construction 11
We construct a target-restricted signature scheme defined over messages in [n] from any PKCom scheme in the following way.
-
\({\text {Gen}}^{\mathbb {G}_{RR}}(1^{\mathrm {\kappa }},h) \rightarrow (\textsf{sgk},\textsf{vrk})\) where \(h \in [n]\) is the message to be signed. For \(i \in [n]\) let \(\textsf{QGen}_i=\emptyset \).
-
1.
Run \(\textsf{CRS}^{\mathbb {G}_{RR}}(1^{\mathrm {\kappa }},1^n) \rightarrow \textsf{crs}\) and all Q-A pairs made to \(\mathbb {G}_{RR}\) to \(\textsf{QCRS}\).
-
2.
For \(1 \le j \le n\), run \(\textsf{Key}^{\mathbb {G}_{RR}}(1^{\mathrm {\kappa }},\textsf{crs}) \rightarrow (\textsf{pk}_j,\textsf{sk}_j)\) and add all Q-A pairs made to \(\mathbb {G}_{RR}\) to \(\textsf{QGen}_{j}\).
-
3.
Run \(\textsf{Com}^{\mathbb {G}_{RR}}(\textsf{crs},\textsf{pk}_1,\dots ,\textsf{pk}_n) \rightarrow \textsf{pp}\) and let \(\textsf{QCMP}\) be the set of all Q-A pairs made to \(\mathbb {G}_{RR}\).
-
4.
Update \(\textsf{Known}\leftarrow \textsf{Upd}(\cup _{i \ne h} \textsf{QGen}_i \cup \textsf{QCMP}\cup \textsf{QCRS})\) (Definition 10).
-
5.
Return \(\textsf{vrk}=((\textsf{pk}_1,\dots ,\textsf{pk}_n),\cup _{j \ne h} \textsf{QGen}_j \cup \textsf{QCMP},\textsf{Known},\upsilon )\), \(\textsf{sgk}=(\textsf{sk}_h,\textsf{QGen}_h,\textsf{QCRS})\).
-
1.
-
\({\text {Sig}}(\textsf{sgk},h) \rightarrow \sigma \): For \(\textsf{sgk}\) as above, return \(\sigma :=(\textsf{sk}_h,\textsf{QGen}_h,\textsf{QCRS})\).
-
\({\text {Ver}}^{\mathbb {G}_{RR}}(\textsf{vrk},\sigma ,h)={\text {Ver1}}({\text {Ver0}}^{\mathbb {G}_{RR}}(\textsf{vrk},h),\sigma ):\) Parse \(\textsf{vrk}:=((\textsf{pk}_1,\dots ,\textsf{pk}_n),\textsf{A},\textsf{Known},\upsilon )\) and \(\sigma :=(\textsf{sk}_h,\textsf{QGen}_h,\textsf{QCRS}).\)
-
1.
\({\text {Ver0}}^{\mathbb {G}_{RR}}(\textsf{vrk},h)\rightarrow \alpha := (\textsf{vrk},h,m,c,\textsf{QEnc})\), where \((m,c) \leftarrow \textsf{Enc}^{\mathbb {G}_{RR}}(\textsf{pp},h)\) and \(\textsf{QEnc}\) is the set of all Q-A pairs made to \(\mathbb {G}_{RR}\).
-
2.
\({\text {Ver1}}(\alpha ,\sigma ):\) Retrieve \(\textsf{QEnc}\), \(\textsf{A}\) and \(\textsf{Known}\) from \(\alpha \). Recall \(\textsf{A}=\cup _{j \ne h} \textsf{QGen}_j \cup \textsf{QCMP} \). Update \(\textsf{Known}\leftarrow \textsf{Upd}(\textsf{QEnc})\). Let \(\textsf{All}= \cup _{j \ne h} \textsf{QGen}_{j} \cup \textsf{QCMP} \cup \textsf{QEnc}\). Run \(\textsf{Dec}{\textsf{Sim}}\) which simulates the execution of \(\textsf{Dec}^{\mathbb {G}_{RR}}(\textsf{crs},h,\textsf{sk}_h,\{\textsf{pk}_i\},c)\) by rendering queries via \((\textsf{All},\textsf{QGen}_h,\textsf{QCRS})\), as follows: Initialize two sets \(\textsf{E}=\textsf{Eq}(\textsf{All})\) and \(\textsf{V}=\textsf{Var}(\textsf{All})\). For a given query \(\textbf{add}( \ell _1, \ell _2)\) do the following:
-
(a)
If \(\ell _1 \notin \textsf{V} \cup \textsf{Var}(\textsf{QGen}_h \cup \textsf{QCRS})\) or \(\ell _2 \notin \textsf{V} \cup \textsf{Var}(\textsf{QGen}_h \cup \textsf{QCRS})\), respond to the query with \(\bot \).
-
(b)
Else if both \(\ell _1,\ell _2 \in \textsf{V}\), if there exists \(\ell \in \textsf{V} \cup \textsf{Var}(\textsf{QGen}_h \cup \textsf{QCRS})\) such that \( x_{\ell _1}+x_{\ell _2}-x_{\ell } \in \textsf{Span}(\textsf{E} \cup \textsf{Eq}(\textsf{QGen}_h \cup \textsf{QCRS}))\), return \(\ell \). If no such an \(\ell \) is found, respond with a random label \(\ell '\), add \( x_{\ell _1}+ x_{\ell _2}-x_{\ell '}\) to \(\textsf{E}\) and add \(\ell '\) to \(\textsf{V}\). Also, set \(\textsf{Known}(\ell ')=\top \).
-
(c)
Else if there exists a label \( \ell \) such that \( x_{\ell _1}+ x_{\ell _2}-x_{\ell '} \in \textsf{Span}( \textsf{Eq}(\textsf{QCMP}\cup _i \textsf{QGen}_i \cup \textsf{QCRS}))\), return \(\ell \);
-
(d)
Else, if there exists a label \( \ell \) such that \(\textsf{Known}(\ell ) = \top \) and \( x_{\ell _1}+ x_{\ell _2}-x_{\ell } \in \textsf{Span}(\textsf{E} \cup \textsf{Eq}(\textsf{QGen}_h \cup \textsf{QCRS}))\), return \(\ell \). Else, respond with a random label \(\ell '\) and add \( x_{\ell _1}+ x_{\ell _2}-x_{\ell '}\) to \(\textsf{E}\), and add \(\ell '\) to \(\textsf{V}\). Also, set \(\textsf{Known}(\ell ')=\top \).
-
(a)
-
1.
Rights and permissions
Copyright information
© 2023 International Association for Cryptologic Research
About this paper
Cite this paper
Hajiabadi, M., Mahmoody, M., Qi, W., Sarfaraz, S. (2023). Lower Bounds on Assumptions Behind Registration-Based Encryption. In: Rothblum, G., Wee, H. (eds) Theory of Cryptography. TCC 2023. Lecture Notes in Computer Science, vol 14370. Springer, Cham. https://doi.org/10.1007/978-3-031-48618-0_11
Download citation
DOI: https://doi.org/10.1007/978-3-031-48618-0_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-48617-3
Online ISBN: 978-3-031-48618-0
eBook Packages: Computer ScienceComputer Science (R0)