Abstract
On-line/off-line encryption schemes enable the fast encryption of a message from a pre-computed coupon. The paradigm was put forward in the case of digital signatures.
This work introduces a compact public-key additively homomorphic encryption scheme. The scheme is semantically secure under the decisional composite residuosity (DCR) assumption. Compared to Paillier cryptosystem, it merely requires one or two integer additions in the on-line phase and no increase in the ciphertext size. This work also introduces a compact on-line/off-line trapdoor commitment scheme featuring the same fast on-line phase. Finally, applications to chameleon signatures are presented.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
In practice, there is no need to check that \(\gcd (r, N) = 1\). This condition is verified with overwhelming probability, namely with probability \(1 - \frac{1}{N-1-\#(\mathbb {Z}/N\mathbb {Z})^*} > 1 - \frac{1}{\sqrt{N}}\).
- 2.
That is, where the randomness used during encryption can be recovered together with the message by the decryption algorithm.
- 3.
As noted in [14, § 4.2], it is important to append \( pk _R\) (along with a description of the chameleon hash function \({\textsf{Com}}\)) in the evaluation of augmented message \(\hat{m}\). Otherwise, the signer or the recipient could claim that the chameleon hash was generated under a different hash function.
References
Ateniese, G., de Medeiros, B.: Identity-based chameleon hash and applications. In: Juels, A. (ed.) FC 2004. LNCS, vol. 3110, pp. 164–180. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-27809-2_19
Ateniese, G., de Medeiros, B.: On the key exposure problem in chameleon hashes. In: Blundo, C., Cimato, S. (eds.) SCN 2004. LNCS, vol. 3352, pp. 165–179. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-30598-9_12
Bellare, M., Ristov, T.: A characterization of chameleon hash functions and new, efficient designs. J. Cryptol. 27(4), 799–823 (2014). https://doi.org/10.1007/s00145-013-9155-8
Bellare, M., Rogaway, P.: Random oracles are practical: a paradigm for designing efficient protocols. In: Denning, D.E., et al. (eds.) 1st Conference on Computer and Communications Security (ACM CCS 1993), pp. 62–73. ACM Press (1993). https://doi.org/10.1145/168588.168596
Brassard, G., Chaum, D., Crépeau, C.: Minimum disclosure proofs of knowledge. J. Comput. Syst. Sci. 37(2), 156–189 (1988). https://doi.org/10.1016/0022-0000(88)90005-0
Bresson, E., Catalano, D., Pointcheval, D.: A simple public-key cryptosystem with a double trapdoor decryption mechanism and its applications. In: Laih, C.-S. (ed.) ASIACRYPT 2003. LNCS, vol. 2894, pp. 37–54. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-40061-5_3
Catalano, D., Gennaro, R., Howgrave-Graham, N., Nguyen, P.Q.: Paillier’s cryptosystem revisited. In: Reiter, M.K., Samarati, P. (eds.) 8th Conference on Computer and Communications Security (ACM CCS 2001), pp. 206–214. ACM Press (2001). https://doi.org/10.1145/501983.502012
Catalano, D., Nguyen, P.Q., Stern, J.: The hardness of Hensel lifting: the case of RSA and discrete logarithm. In: Zheng, Y. (ed.) ASIACRYPT 2002. LNCS, vol. 2501, pp. 299–310. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36178-2_19
Chen, X., Zhang, F., Kim, K.: Chameleon hashing without key exposure. In: Zhang, K., Zheng, Y. (eds.) ISC 2004. LNCS, vol. 3225, pp. 87–98. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30144-8_8
Even, S., Goldreich, O., Micali, S.: On-line/off-line digital signatures. J. Cryptol. 9(1), 35–67 (1996). https://doi.org/10.1007/BF02254791
Goldreich, O., Micali, S., Wigderson, A.: Proofs that yield nothing but their validity or all languages in NP have zero-knowledge proof systems. J. ACM 38(3), 690–728 (1991). https://doi.org/10.1145/116825.116852
Goldwasser, S., Micali, S.: Probabilistic encryption. J. Comput. Syst. Sci. 28(2), 270–299 (1984). https://doi.org/10.1016/0022-0000(84)90070-9
Joye, M.: An efficient on-line/off-line signature scheme without random oracles. In: Franklin, M.K., Hui, L.C.K., Wong, D.S. (eds.) CANS 2008. LNCS, vol. 5339, pp. 98–107. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89641-8_7
Krawczyk, H., Rabin, T.: Chameleon signatures. In: Network and Distributed System Security Symposium (NDSS 2000). The Internet Society (2000). https://www.ndss-symposium.org/ndss2000/chameleon-signatures/
Kurosawa, K., Takagi, T.: One-wayness equivalent to general factoring. IEEE Trans. Inf. Theory 55(9), 4249–4262 (2009). https://doi.org/10.1109/TIT.2009.2025532
Menezes, A.J., van Oorschot, P.C., Vanstone, S.A.: Handbook of Applied Cryptography. CRC Press, Boca Raton (1997). https://doi.org/10.1201/9780429466335
Paillier, P.: Public-key cryptosystems based on composite degree residuosity classes. In: Stern, J. (ed.) EUROCRYPT 1999. LNCS, vol. 1592, pp. 223–238. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48910-X_16
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
Public-Key Encryption
A public-key encryption scheme (see e.g. [16, Chapter 8]) is a tuple of three polynomial-time algorithms, \(({\textsf{KeyGen}}, {\textsf{Enc}}, {\textsf{Dec}})\):
-
Key generation. The key generation algorithm \({\textsf{KeyGen}}\) is a probabilistic algorithm that takes on input a security parameter \(\kappa \) and outputs a pair of public and private key: \(( pk , sk ) {\mathop {\leftarrow }\limits ^{\scriptscriptstyle \$}}{\textsf{KeyGen}}(1^\kappa )\).
-
Encryption. Let \(\mathcal {M}\) denote the message space. The encryption algorithm \({\textsf{Enc}}\) is a randomized algorithm that takes on input a public key \( pk \) and a plaintext \(m \in \mathcal {M}\), and returns a ciphertext C. We write \(c \leftarrow {\textsf{Enc}}_ pk (m)\).
-
Decryption. The decryption algorithm \({\textsf{Dec}}\) takes on input secret key \( sk \) (matching \( pk \)) and ciphertext C. It returns the corresponding plaintext m or a special symbol \(\bot \) indicating that the ciphertext is invalid. We write \(m\leftarrow {\textsf{Dec}}_ sk (C)\) if C is a valid ciphertext and \(\bot \leftarrow {\textsf{Dec}}_ sk (C)\) if it is not.
It is required that for all \(( pk , sk ) {\mathop {\leftarrow }\limits ^{\scriptscriptstyle \$}}{\textsf{KeyGen}}(1^\kappa )\), \({\textsf{Dec}}_ sk \bigl ({\textsf{Enc}}_ pk (m)\bigr ) = m\) for any message \(m \in \mathcal {M}\).
Security Proofs
1.1 One-Wayness
One-wayness is the minimal security requirement an encryption scheme must meet: An adversary should not be able to recover the plaintext given its encryption.
The cryptosystem of Sect. 3.1 fulfills this requirement under the Hensel Lifting assumption [8].
Assumption 1
(Hensel Lifting). Let \(\kappa \) be a security parameter. Let also \({\textsf{RSAgen}}(1^\kappa )\) be a probabilistic polynomial-time algorithm that generates two equal-size primes p and q. The Composite Residuosity assumption conjectures that for all probabilistic polynomial-time algorithms \(\mathcal {B}\),
is negligible in \(\kappa \).
The proof is by reduction. We assume that there exists an adversary \(\mathcal {A}\) against the one-wayness property of the scheme. We will use this adversary to break the Hensel Lifting assumption. Consider the following algorithm \(\mathcal {B}\) receiving as an input a challenge \((\hat{N},\hat{y})\) where \(\hat{N} {\mathop {\leftarrow }\limits ^{\scriptscriptstyle \$}}{\textsf{RSAgen}}(1^\kappa )\) and \(\hat{y} = \hat{x}^{N} \bmod N\) with \(\hat{x} {\mathop {\leftarrow }\limits ^{\scriptscriptstyle \$}}(\mathbb {Z}/N\mathbb {Z})^*\):
-
1.
\(\mathcal {B}\) sets \(N = \hat{N}\) and defines \( pk = N\). It also sets \(u = \hat{y}\), draws \(v {\mathop {\leftarrow }\limits ^{\scriptscriptstyle \$}}\{0,1, \dots , N-1\}\), and lets \(C = (u,v)\). It gives public key \( pk \) and challenge ciphertext C to \(\mathcal {A}\).
-
2.
\(\mathcal {A}\) returns a plaintext m—remark here that all ciphertexts are valid.
-
3.
From the received m, \(\mathcal {B}\) outputs \(Y {:}{=} u + Nu(v-m) \mod N^2\).
Observe that \(u = \hat{x}^N \bmod N\) and, if \(m = {\textsf{Dec}}_ sk (C)\), that \(v - m \equiv \varUpsilon _{\!N}(\hat{x}^N \bmod N^2) \pmod N\). As a result, we have \(Y \equiv (\hat{x}^N \bmod N) + N \Bigl \lfloor \frac{\hat{x}^N \bmod N^2}{N} \Bigr \rfloor \equiv \hat{x}^N \pmod {N^2}\).
In turn, as shown in [8, Theorem 2], we get that the one-wayness of the cryptosystem holds under the Computational Composite Residuosity (CCR) assumption.
Assumption 2
(Computational Composite Residuosity [17]). Let \(\kappa \) be a security parameter and let \({\textsf{RSAgen}}(1^\kappa )\) be a probabilistic polynomial-time algorithm that generates two equal-size primes p and q. The CCR assumption conjectures that for all probabilistic polynomial-time algorithms \(\mathcal {B}\),
is negligible in \(\kappa \).
1.2 Semantic Security
We now show that the cryptosystem of Sect. 3.1 is semantically secure [12] under the Decisional Composite Residuosity (DCR) assumption.
Assumption 3
(Decisional Composite Residuosity [17]). Let \(\kappa \) be a security parameter and let \({\textsf{RSAgen}}(1^\kappa )\) be a probabilistic polynomial-time algorithm that generates two equal-size primes p and q. Consider the distributions \(\text {dist}_0(\kappa )\) and \(\text {dist}_1(\kappa )\) given by
and
The DCR assumption conjectures that for all probabilistic polynomial-time algorithms \(\mathcal {B}\), the function
is negligible in \(\kappa \).
The semantic security game between a challenger \(\mathcal {B}\) and an adversary \(\mathcal {A}\) proceeds as follows. The challenger is given a DCR challenge \((N,R) {\mathop {\leftarrow }\limits ^{\scriptscriptstyle \$}}\text {dist}_\beta (\kappa )\) with \(\beta {\mathop {\leftarrow }\limits ^{\scriptscriptstyle \$}}\{0,1\}\). Its goal is to tell if \(\beta = 0\) or \(\beta = 1\). For this purpose, \(\mathcal {B}\) has access to adversary \(\mathcal {A}\). The advantage of \(\mathcal {A}\) in breaking the semantic security of the cryptosystem (i.e., to correctly recover b) is denoted by \(\text {adv}_\mathcal {A}^{\text {IND-CPA}}(\kappa )\). We need to show that this advantage is negligible.
Suppose that \(\mathcal {B}\) runs as follows:
-
1.
\(\mathcal {B}\) sets the public key \( pk = N\) and gives it to \(\mathcal {A}\).
-
2.
Let \(\mathcal {M}= \{0, \dots , N-1\}\). \(\mathcal {A}\) selects a pair of equal-length messages \(m_0, m_1 \in \mathcal {M}\), \(m_0 \ne m_1\).
-
3.
\(\mathcal {B}\) chooses at random \(b {\mathop {\leftarrow }\limits ^{\scriptscriptstyle \$}}\{0,1\}\) and returns to \(\mathcal {A}\) the challenge ciphertext \(C^* {:}{=} \bigl (R \bmod N, (m_b + \varUpsilon _{\!N}(R)) \bmod N\bigr )\) as the encryption of \(m_b\).
-
4.
\(\mathcal {A}\) returns its guess \(b' \in \{0,1\}\) that \(C^*\) is the encryption of \(m_{b'}\).
-
5.
\(\mathcal {B}\) outputs 1 if \(b' = b\), and 0 otherwise.
There are two cases to consider:
-
Case I: \((N,R) \in \text {dist}_0(\kappa )\). In this case, R is uniform over \((\mathbb {Z}/N^2\mathbb {Z})^*\). As a consequence, \(u^* {:}{=} R \bmod N\) is a uniformly random value in \((\mathbb {Z}/N\mathbb {Z})^*\) and \(v^* {:}{=} (m_b + \varUpsilon _{\!N}(R)) \bmod N\) is a uniformly random value in \(\mathbb {Z}/N\mathbb {Z}\) since \(\varUpsilon _{\!N}(R)\) is uniform over \(\mathbb {Z}/N\mathbb {Z}\). Message \(m_b\) is therefore completely hidden from the view of \(\mathcal {A}\). Hence, we get \(\Pr [\mathcal {B}(N,R) = 1] = \tfrac{1}{2}\).
-
Case II: \((N,R) \in \text {dist}_1(\kappa )\). In this case, \(\mathcal {B}\) perfectly emulates the semantic security game. Indeed, we have \(R = r^N \bmod N^2\) with \(r \leftarrow (\mathbb {Z}/N^2\mathbb {Z})^*\), which is equivalent to \(R = {r}^N \bmod N^2\) where \( {r} {:}{=} r \bmod N\) satisfies \( {r} \in [1, N)\) and \(\gcd ( {r},N) = 1\). We so get
$$ \Bigl |\Pr [\mathcal {B}(N,R) = 1] - \tfrac{1}{2} \Bigr | = \Bigl | \Pr [b' = b] - \tfrac{1}{2} \Bigr | = \text {adv}_\mathcal {A}^{\text {IND-CPA}}(\kappa ). $$
Under the DCR assumption, we know that \(\mathcal {B}\) cannot distinguish \(\text {dist}_0(\kappa )\) from \(\text {dist}_1(\kappa )\)—with non-negligible probability. Combining the above two cases, we so deduce that
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Joye, M. (2023). On-Line/Off-Line DCR-Based Homomorphic Encryption and Applications. In: Rosulek, M. (eds) Topics in Cryptology – CT-RSA 2023. CT-RSA 2023. Lecture Notes in Computer Science, vol 13871. Springer, Cham. https://doi.org/10.1007/978-3-031-30872-7_5
Download citation
DOI: https://doi.org/10.1007/978-3-031-30872-7_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-30871-0
Online ISBN: 978-3-031-30872-7
eBook Packages: Computer ScienceComputer Science (R0)