Skip to main content

Decentralized Evaluation of Quadratic Polynomials on Encrypted Data

  • Conference paper
  • First Online:
  • 1018 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 11723))

Abstract

Since the seminal paper on Fully Homomorphic Encryption (FHE) by Gentry in 2009, a lot of work and improvements have been proposed, with an amazing number of possible applications. It allows outsourcing any kind of computations on encrypted data, and thus without leaking any information to the provider who performs the computations. This is quite useful for many sensitive data (finance, medical, etc.).

Unfortunately, FHE fails at providing some computation on private inputs to a third party, in cleartext: the user that can decrypt the result is able to decrypt the inputs. A classical approach to allow limited decryption power is distributed decryption. But none of the actual FHE schemes allows distributed decryption, at least with an efficient protocol.

In this paper, we revisit the Boneh-Goh-Nissim (BGN) cryptosystem, and the Freeman’s variant, that allow evaluation of quadratic polynomials, or any 2-DNF formula. Whereas the BGN scheme relies on integer factoring for the trapdoor in the composite-order group, and thus possesses one public/secret key only, the Freeman’s scheme can handle multiple users with one general setup that just needs to define a pairing-based algebraic structure. We show that it can be efficiently decentralized, with an efficient distributed key generation algorithm, without any trusted dealer, but also efficient distributed decryption and distributed re-encryption, in a threshold setting. We then provide some applications of computations on encrypted data, without central authority.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. Abdalla, M., Benhamouda, F., Kolhweiss, M., Waldner, H.: Decentralizing inner-product functional encryption. Cryptology ePrint Archive, Report 2019/020 (2019). https://eprint.iacr.org/2019/020

  2. Attrapadung, N., Hanaoka, G., Mitsunari, S., Sakai, Y., Shimizu, K., Teruya, T.: Efficient two-level homomorphic encryption in prime-order bilinear groups and a fast implementation in WebAssembly. In: Kim, J., Ahn, G.J., Kim, S., Kim, Y., López, J., Kim, T. (eds.) ASIACCS 2018, pp. 685–697. ACM Press (2018)

    Google Scholar 

  3. Baltico, C.E.Z., Catalano, D., Fiore, D., Gay, R.: Practical functional encryption for quadratic functions with applications to predicate encryption. In: Katz, J., Shacham, H. (eds.) CRYPTO 2017. LNCS, vol. 10401, pp. 67–98. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63688-7_3

    Chapter  Google Scholar 

  4. Blaze, M., Bleumer, G., Strauss, M.: Divertible protocols and atomic proxy cryptography. In: Nyberg, K. (ed.) EUROCRYPT 1998. LNCS, vol. 1403, pp. 127–144. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0054122

    Chapter  Google Scholar 

  5. Boneh, D., Goh, E.-J., Nissim, K.: Evaluating 2-DNF formulas on ciphertexts. In: Kilian, J. (ed.) TCC 2005. LNCS, vol. 3378, pp. 325–341. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-30576-7_18

    Chapter  Google Scholar 

  6. Boneh, D., Sahai, A., Waters, B.: Functional encryption: definitions and challenges. In: Ishai, Y. (ed.) TCC 2011. LNCS, vol. 6597, pp. 253–273. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-19571-6_16

    Chapter  Google Scholar 

  7. Catalano, D., Fiore, D.: Using linearly-homomorphic encryption to evaluate degree-2 functions on encrypted data. In: Ray, I., Li, N., Kruegel, C. (eds.) ACM CCS 2015, pp. 1518–1529. ACM Press, October 2015

    Google Scholar 

  8. Chase, M., Chow, S.S.M.: Improving privacy and security in multi-authority attribute-based encryption. In: Al-Shaer, E., Jha, S., Keromytis, A.D. (eds.) ACM CCS 2009, pp. 121–130. ACM Press, November 2009

    Google Scholar 

  9. Chotard, J., Dufour Sans, E., Gay, R., Phan, D.H., Pointcheval, D.: Decentralized multi-client functional encryption for inner product. In: Peyrin, T., Galbraith, S. (eds.) ASIACRYPT 2018. LNCS, vol. 11273, pp. 703–732. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03329-3_24

    Chapter  Google Scholar 

  10. Chotard, J., Sans, E.D., Gay, R., Phan, D.H., Pointcheval, D.: Multi-client functional encryption with repetition for inner product. Cryptology ePrint Archive, Report 2018/1021 (2018). https://eprint.iacr.org/2018/1021

  11. Culnane, C., Pereira, O., Ramchen, K., Teague, V.: Universally verifiable MPC with applications to IRV ballot counting. Cryptology ePrint Archive, Report 2018/246 (2018). https://eprint.iacr.org/2018/246

  12. Dorfman, R.: The detection of defective members of large populations. Ann. Math. Stat. 14(4), 436–440 (1943)

    Article  Google Scholar 

  13. Fiat, A., Naor, M.: Broadcast encryption. In: Stinson, D.R. (ed.) CRYPTO 1993. LNCS, vol. 773, pp. 480–491. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-48329-2_40

    Chapter  Google Scholar 

  14. Frederiksen, T.K., Lindell, Y., Osheter, V., Pinkas, B.: Fast distributed RSA key generation for semi-honest and malicious adversaries. In: Shacham, H., Boldyreva, A. (eds.) CRYPTO 2018. LNCS, vol. 10992, pp. 331–361. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96881-0_12

    Chapter  Google Scholar 

  15. Freeman, D.M.: Converting pairing-based cryptosystems from composite-order groups to prime-order groups. In: Gilbert, H. (ed.) EUROCRYPT 2010. LNCS, vol. 6110, pp. 44–61. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13190-5_3

    Chapter  Google Scholar 

  16. Garg, S., Gentry, C., Halevi, S., Raykova, M., Sahai, A., Waters, B.: Candidate indistinguishability obfuscation and functional encryption for all circuits. In: 54th FOCS, pp. 40–49. IEEE Computer Society Press, October 2013

    Google Scholar 

  17. Gay, R.: Functional encryption for quadratic functions, and applications to predicate encryption. Cryptology ePrint Archive, Report 2016/1106 (2016). http://eprint.iacr.org/2016/1106

  18. Gentry, C.: Fully homomorphic encryption using ideal lattices. In: Mitzenmacher, M. (ed.) 41st ACM STOC, pp. 169–178. ACM Press, May/June 2009

    Google Scholar 

  19. Goldwasser, S., et al.: Multi-input functional encryption. In: Nguyen, P.Q., Oswald, E. (eds.) EUROCRYPT 2014. LNCS, vol. 8441, pp. 578–602. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-55220-5_32

    Chapter  Google Scholar 

  20. Goldwasser, S., Goyal, V., Jain, A., Sahai, A.: Multi-input functional encryption. Cryptology ePrint Archive, Report 2013/727 (2013). http://eprint.iacr.org/2013/727

  21. Goldwasser, S., Kalai, Y.T., Popa, R.A., Vaikuntanathan, V., Zeldovich, N.: Reusable garbled circuits and succinct functional encryption. In: Boneh, D., Roughgarden, T., Feigenbaum, J. (eds.) 45th ACM STOC, pp. 555–564. ACM Press, June 2013

    Google Scholar 

  22. Gordon, S.D., Katz, J., Liu, F.H., Shi, E., Zhou, H.S.: Multi-input functional encryption. Cryptology ePrint Archive, Report 2013/774 (2013). http://eprint.iacr.org/2013/774

  23. Kawai, Y., Matsuda, T., Hirano, T., Koseki, Y., Hanaoka, G.: Proxy re-encryption that supports homomorphic operations for re-encrypted ciphertexts. IEICE Trans. Fundam. Electron. Commun. Comput. Sci. E102.A, 81–98 (2019)

    Article  Google Scholar 

  24. Lewko, A., Waters, B.: Decentralizing attribute-based encryption. In: Paterson, K.G. (ed.) EUROCRYPT 2011. LNCS, vol. 6632, pp. 568–588. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-20465-4_31

    Chapter  Google Scholar 

  25. Naor, D., Naor, M., Lotspiech, J.: Revocation and tracing schemes for stateless receivers. In: Kilian, J. (ed.) CRYPTO 2001. LNCS, vol. 2139, pp. 41–62. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44647-8_3

    Chapter  Google Scholar 

  26. Phan, D.H., Pointcheval, D., Strefler, M.: Decentralized dynamic broadcast encryption. In: Visconti, I., De Prisco, R. (eds.) SCN 2012. LNCS, vol. 7485, pp. 166–183. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-32928-9_10

    Chapter  Google Scholar 

  27. Sahai, A., Waters, B.: Fuzzy identity-based encryption. In: Cramer, R. (ed.) EUROCRYPT 2005. LNCS, vol. 3494, pp. 457–473. Springer, Heidelberg (2005). https://doi.org/10.1007/11426639_27

    Chapter  Google Scholar 

  28. Schapire, R.: Computer science 511 - theoretical machine learning (2014). http://www.cs.princeton.edu/courses/archive/spring14/cos511/

  29. Shamir, A.: How to share a secret. Commun. Assoc. Comput. Mach. 22(11), 612–613 (1979)

    MathSciNet  MATH  Google Scholar 

Download references

Acknowledgments

This work was supported in part by the European Community’s Seventh Framework Programme (FP7/2007-2013 Grant Agreement no. 339563 – CryptoCloud) and the French ANR ALAMBIC Project (ANR16-CE39-0006).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to David Pointcheval .

Editor information

Editors and Affiliations

A Freeman’s Approach

A Freeman’s Approach

1.1 A.1 Description

For the Freeman’s construction, we will use the brackets notation, also extended to vectors and matrices, as explained in Fig. 2.

Fig. 2.
figure 2

Bracket notations

The main goal of Freeman’s approach was to generalize the BGN cryptosystem to any hard-subgroup problems. We instantiate a variant of the Freeman’s cryptosystem allowing multiple users, without the twin ciphertexts (in G and H). Since we will work in groups \(\mathbb {G}_1\), \(\mathbb {G}_2\), and , the algorithms \(\mathsf {Keygen},\mathsf {Encrypt}\) and \(\mathsf {Decrypt}\) will take a sub-script s to precise the group \(\mathbb {G}_s\) in which they operate, but the \(\mathsf {Setup}\) is common.

  • \(\mathsf {Setup}(\lambda )\): Given a security parameter \(\lambda \), run and output .

  • \(\mathsf {Keygen}_{s}(\mathsf {param})\): For \(s \in \{1,2\}\), choose \(\mathbf {B}_{s}\overset{{}_\$}{\leftarrow }\mathrm {GL}_{2}(\mathbb {Z}_{p})\), let \(\mathbf {P}_{s} = \mathbf {B}_{s}^{-1}\mathbf {U}_2\mathbf {B}_{s}\) (where \(\mathbf {U}_2\) is the canonical matrix for projection on the first coordinate, in dimension 2) and \(\mathbf {p}_{s} \in \ker (\mathbf {P}_{s})\setminus \{\mathbf {0}\}\), and output the public key \(\mathsf {pk}_{s} = [\mathbf {p}_{s}]_{s}\) and the private key \(\mathsf {sk}_{s} = \mathbf {P}_{s}\). In the following, we always implicitly assume that the public keys contain the public parameters \(\mathsf {param}\), and the private keys contain the public keys. From \((\mathsf {pk}_1,\mathsf {sk}_1)\leftarrow \mathsf {Keygen}_1(\mathsf {param})\) and \((\mathsf {pk}_2,\mathsf {sk}_2)\leftarrow \mathsf {Keygen}_2(\mathsf {param})\), one can consider \(\mathsf {pk}_{T}=(\mathsf {pk}_{1},\mathsf {pk}_{2})\) and \(\mathsf {sk}_{T} = (\mathsf {sk}_{1},\mathsf {sk}_{2})\).

  • \(\mathsf {Encrypt}_{s}(\mathsf {pk}_{s},m,A_{s})\): For \(s \in \{1,2\}\), to encrypt a message \(m\in \mathbb {Z}_{p}\) using public key \(\mathsf {pk}_{s}\) and \(A_{s } = [\mathbf {a}]_{s}\in \mathbb {G}_{s}^{2}\), choose \(r \overset{{}_\$}{\leftarrow }\mathbb {Z}_{p}\) and output the ciphertext . For \(s = T\), with \(A_{s} = ([\mathbf {a}_{1}]_{1},[\mathbf {a}_{2}]_{2})\), set , choose \([\mathbf {r}_{1}]_{1} \overset{{}_\$}{\leftarrow }\mathbb {G}_{1}^{2},[\mathbf {r}_{2}]_{2} \overset{{}_\$}{\leftarrow }\mathbb {G}_{2}^{2}\), and output .

  • \(\mathsf {Decrypt}_{s}(\mathsf {sk}_{s},C_{s})\): For \(s \in \{1,2\}\), given \(C_{s}=([\mathbf {c}_{s,1}]_{s},[\mathbf {c}_{s,2}]_{s})\) and \(\mathsf {sk}_{s} = \mathbf {P}_{s}\), let \(C'_{s}=([\mathbf {c}_{s,1}]_{s} \cdot \mathbf {P}_{s},[\mathbf {c}_{s,2}]_{s} \cdot \mathbf {P}_{s})\). For \(s = T\), compute \(C'_{T}=([\mathbf {c}_{T,1}]_{T} \cdot (\mathbf {P}_{1}\otimes \mathbf {P}_{2}),[\mathbf {c}_{T,2}]_{T} \cdot (\mathbf {P}_{1}\otimes \mathbf {P}_{2}))\).

    In both cases, output the logarithm of the first component of \(\mathbf {c}'_{s,1}\) in base the first component of \(\mathbf {c}'_{s,2}\).

One can note that matrices \(\mathbf {B}_{1}\) and \(\mathbf {B}_{2}\) are drawn independently, so the keys in \(\mathbb {G}_1\) and \(\mathbb {G}_2\) are independent. For any pair \((\mathsf {pk}_{1}=[\mathbf {p}_1]_1,\mathsf {pk}_{2}=[\mathbf {p}_2]_2)\), one can implicitly define a public key for the target group. To decrypt in the target group, both private keys \(\mathsf {sk}_{1}=\mathbf {P}_1\) and \(\mathsf {sk}_{2} = \mathbf {P}_2\) are needed. Actually, one just needs \(\mathbf {P}_{1}\otimes \mathbf {P}_{2}\) to decrypt: \(C'_{T}=([\mathbf {c}_{T,1}]_{T} \cdot (\mathbf {P}_{1}\otimes \mathbf {P}_{2}),[\mathbf {c}_{T,2}]_{T} \cdot (\mathbf {P}_{1}\otimes \mathbf {P}_{2}))\), but \(\mathbf {P}_{1}\otimes \mathbf {P}_{2}\) and \((\mathbf {P}_{1},\mathbf {P}_{2})\) contain the same information and the latter is more compact.

1.2 A.2 Distributed Decryption

When a third-party performs the decryption, it is important to be able to prove the correct decryption, which consists of classical zero-knowledge proofs. But this is even better if the decryption process can be distributed among several servers, under the assumption that only a small fraction of them can be corrupted or under the control of an adversary.

To decrypt a ciphertext in \(\mathbb {G}_{s}\) with \(s \in \{1,2\}\), one needs to compute \(([\mathbf {c}_{s,1}]_{s} \cdot \mathsf {sk}_{s},[\mathbf {c}_{s,2}]_{s} \cdot \mathsf {sk}_{s})\). In a Shamir’s like manner [29], one can perform a t-out-of-n threshold secret sharing by distributing \(\mathsf {sk}_{s}\) such that \(\mathsf {sk}_{s} = \sum _{i \in I} \lambda _{I,i}\mathsf {sk}_{s,i}\) with \(I \subset \{1, \ldots , n \}\) a subset of t users, and for all \(i \in I\), \(\lambda _{I,i} \in \mathbb {Z}_{p}\) and \(\mathsf {sk}_{s,i}\) is the secret key of the party \(P_{i}\). For \(s = T\) and with just the distribution of \(\mathsf {sk}_{1}\) and \(\mathsf {sk}_{2}\), it is also possible to perform a distributed decryption, using the relation \(\mathsf {sk}_{1} \otimes \mathsf {sk}_{2} = (\mathsf {sk}_{1} \otimes \mathbf {1}) \times (\mathbf {1} \otimes \mathsf {sk}_{2})\). One can thus make a two-round decryption, first in \(\mathbb {G}_1\) and then in \(\mathbb {G}_2\).

However, in this scheme, the secret key must be a projection matrix, which is not easy to generate at random: for this key generation algorithm, a trusted dealer is required, which is not ideal when nobody is trusted.

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Hébant, C., Phan, D.H., Pointcheval, D. (2019). Decentralized Evaluation of Quadratic Polynomials on Encrypted Data. In: Lin, Z., Papamanthou, C., Polychronakis, M. (eds) Information Security. ISC 2019. Lecture Notes in Computer Science(), vol 11723. Springer, Cham. https://doi.org/10.1007/978-3-030-30215-3_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-30215-3_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-30214-6

  • Online ISBN: 978-3-030-30215-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics