Skip to main content
Log in

Privately Outsourcing Exponentiation to a Single Server: Cryptanalysis and Optimal Constructions

  • Published:
Algorithmica Aims and scope Submit manuscript

Abstract

We address the problem of speeding up group computations in cryptography using a single untrusted computational resource. We analyze the security of two efficient protocols for securely outsourcing (multi-)exponentiations. We show that the schemes do not achieve the claimed security guarantees and we present practical polynomial-time attacks on the delegation protocols which allow the untrusted helper to recover part (or the whole) of the device’s secret inputs. We then provide simple constructions for outsourcing group exponentiations in different settings (e.g. public/secret, fixed/variable bases and public/secret exponents). Finally, we prove that our attacks are unavoidable if one wants to use a single untrusted computational resource and to limit the computational cost of the limited device to a constant number of (generic) group operations. In particular, we show that our constructions are actually optimal in terms of operations in the underlying group.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Notes

  1. In this paper, following prior works, we consider only (known) prime order groups, but some of our results can be generalized to composite order groups and unknown order groups.

  2. The lower bounds on the complexity of generic delegation protocols given in Sects. 6 and 7 do hold without this assumption but with unnecessarily complicated proofs.

  3. The most studied case was \(q = 2\) but it is not interesting anymore in cryptography due to the recent impressive progress on finite field discrete logarithms [5]. However, this technique may still found applications in pairing-based cryptography.

  4. Note that the protocol from [44] can also be described without inversion in the group \(\mathbb {G}\) but to help the reader familiar with this paper, we use the same description.

  5. We do not assume that the adversary learns this value but only that the client \(\mathcal {C}\) has to output it by the correctness property.

References

  1. Albrecht, M., Bai, S., Cadé, D., Pujol, X., Stehlé, D.: fplll-4.0, a floating-point LLL implementation. http://perso.ens-lyon.fr/damien.stehle

  2. Ateniese, G., Burns, R.C., Curtmola, R., Herring, J., Kissner, L., Peterson, Z.N.J., Song, D.X.: Provable data possession at untrusted stores. In: Ning, P., De Capitani di V., Sabrina, S., Paul F. (eds.), Proceedings of the 2007 ACM Conference on Computer and Communications Security, CCS 2007, Alexandria, Virginia, USA, October 28–31, 2007, ACM, pp. 598–609 (2007)

  3. Avanzi, R.M.: The complexity of certain multi-exponentiation techniques in cryptography. J. Cryptol. 18(4), 357–373 (2005)

    Article  MathSciNet  Google Scholar 

  4. Babai, L.: On Lovász’ lattice reduction and the nearest lattice point problem. Combinatorica 6(1), 1–13 (1986)

    Article  MathSciNet  Google Scholar 

  5. Barbulescu, R., Gaudry, P., Joux, A., Thomé, E.: A heuristic quasi-polynomial algorithm for discrete logarithm in finite fields of small characteristic. In: Nguyen, P.Q., Oswald, E. (eds.) Advances in Cryptology - EUROCRYPT 2014. Lecture Notes in Computer Science, vol. 8441, pp. 1–16. Springer, Heidelberg, Germany (2014)

    Chapter  Google Scholar 

  6. Boneh, D., Lynn, B., Shacham, H.: Short signatures from the Weil pairing. In: Boyd, C. (ed.) Advances in Cryptology—ASIACRYPT 2001. Lecture Notes in Computer Science, vol. 2248, pp. 514–532. Gold Coast, Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  7. Boneh, D., Lynn, B., Shacham, H.: Short signatures from the Weil pairing. J. Cryptol. 17(4), 297–319 (2004)

    Article  MathSciNet  Google Scholar 

  8. Boyko, V., Peinado, M., Venkatesan, R.: Speeding up discrete log and factoring based schemes via precomputations. In: Nyberg, K. (ed.) Advances in Cryptology—EUROCRYPT’98. Lecture Notes in Computer Science, vol. 1403, pp. 221–235. Springer, Espoo (1998)

    Chapter  Google Scholar 

  9. Brickell, E.F., Gordon, D.M., McCurley, K.S., Wilson, D.B.: Fast exponentiation with precomputation (extended abstract). In: Rueppel, R.A. (ed.) Advances in Cryptology—EUROCRYPT’92. Lecture Notes in Computer Science, vol. 658, pp. 200–207. Springer, Heidelberg (1993)

    Chapter  Google Scholar 

  10. Canard, S., Devigne, J., Sanders, O.: Delegating a pairing can be both secure and efficient. In: Boureanu, I., Owesarski, P., Vaudenay, S. (eds.), ACNS 14: 12th International Conference on Applied Cryptography and Network Security, Lecture Notes in Computer Science, Springer, Heidelberg, vol. 8479, pp. 549–565 (2014)

  11. Cavallo, B., Di Crescenzo, G., Kahrobaei, D., Shpilrain, V.: Efficient and secure delegation of group exponentiation to a single server. In: Radio Frequency Identification. Security and Privacy Issues - 11th International Workshop, RFIDsec 2015, LNCS, pp. 156–173 (2015)

  12. Chen, X., Li, J., Ma, J., Tang, Q., Lou, W.: New algorithms for secure outsourcing of modular exponentiations. In: Foresti, S., Yung, M., Martinelli, F. (eds.) ESORICS 2012: 17th European Symposium on Research in Computer Security, Lecture Notes in Computer Science, Springer, Heidelberg, vol. 7459 pp. 541–556 (2012)

  13. Chevalier, C., Laguillaumie, F., Vergnaud, D.: Privately outsourcing exponentiation to a single server: Cryptanalysis and optimal constructions. In: Askoxylakis, I.G., Ioannidis, S., Katsikas, S.K., Meadows, C.A., (eds.) ESORICS 2016: 21st European Symposium on Research in Computer Security, Part I, Lecture Notes in Computer Science, Springer, Heidelberg, vol. 9878, pp. 261–278 (2016)

  14. Chevallier-Mames, B., Coron, J., McCullagh, N., Naccache, D., Scott, M.: Secure delegation of elliptic-curve pairing. In: Smart Card Research and Advanced Application, 9th IFIP WG 8.8/11.2 International Conference, CARDIS 2010, LNCS, Springer, vol. 6035, pp. 24–35 (2010)

  15. Coppersmith, D.: Finding a small root of a bivariate integer equation; factoring with high bits known. In: Maurer, U.M. (ed.) Advances in Cryptology—EUROCRYPT’96, Lecture Notes in Computer Science, Springer, vol. 1070, pp. 178–189 (1996)

  16. Coppersmith, D.: Finding a small root of a univariate modular equation. In: Maurer, U.M. (ed.) Advances in Cryptology—EUROCRYPT’96, Lecture Notes in Computer Science, Springer, Heidelberg, vol. 1070, pp. 155–165 (1996)

  17. Di Crescenzo, G., Khodjaeva, M., Kahrobaei, D., Shpilrain, V.: Secure delegation to a single malicious server: Exponentiation in RSA-type groups. In: 7th IEEE Conference on Communications and Network Security, CNS 2019, Washington, DC, USA, June 10–12, 2019, pp. 1–9. IEEE (2019)

  18. de Rooij, P.: Efficient exponentiation using precomputation and vector addition chains. In: De Santis, A., (ed.) Advances in Cryptology—EUROCRYPT’94, Lecture Notes in Computer Science, Perugia, Italy, Springer, Heidelberg, Germany, vol. 950, pp. 389–399 (1995)

  19. de Rooij, P.: On Schnorr’s preprocessing for digital signature schemes. J. Cryptol. 10(1), 1–16 (1997)

    Article  Google Scholar 

  20. Ding, Y., Xu, Z., Ye, J., Choo, K.-K.R.: Secure outsourcing of modular exponentiations under single untrusted programme model. J. Comput. Syst. Sci. 90, 1–13 (2017)

    Article  MathSciNet  Google Scholar 

  21. Galbraith, SD.: Mathematics of Public Key Cryptography. Cambridge University Press, Cambridge (2012)

    Book  Google Scholar 

  22. Gallant, R.P., Lambert, R.J., Vanstone, S.A.: Faster point multiplication on elliptic curves with efficient endomorphisms. In: Kilian, J. (ed.) Advances in Cryptology - CRYPTO 2001. Lecture Notes in Computer Science, vol. 2139, pp. 190–200. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  23. Guillevic, A., Vergnaud, D.: Algorithms for outsourcing pairing computation. In: Joye, M., Moradi, A. (eds.) Smart Card Research and Advanced Applications—13th International Conference, CARDIS 2014, Paris, France, November 5-7, 2014. Revised Selected Papers, Lecture Notes in Computer Science, Springer, vol. 8968 pp. 193–211 (2014)

  24. Herrmann, M.: Lattice-based Cryptanalysis using Unravelled Linearization. PhD Thesis, Ruhr-Universität Bochum (2011)

  25. Hohenberger, S., Lysyanskaya, A.: How to securely outsource cryptographic computations. In: Kilian, J. (ed.) TCC 2005: 2nd Theory of Cryptography Conference, Lecture Notes in Computer Science, Cambridge, Springer, Heidelberg, Germany, vol. 3378, pp. 264–282 (2005)

  26. Howgrave-Graham, N.: Finding small roots of univariate modular equations revisited. In: Darnell, M. (ed.) 6th IMA International Conference on Cryptography and Coding, Lecture Notes in Computer Science, Cirencester, UK, Springer, Heidelberg, Germany, vol. 1355, pp. 131–142 (1997)

  27. Juels, A., Kaliski, B.S. Jr.: Pors: proofs of retrievability for large files. In: Ning et al. [37], pp. 584–597

  28. Jutla, C.S.: On finding small solutions of modular multivariate polynomial equations. In: Nyberg, K. (ed.) Advances in Cryptology–EUROCRYPT’98. Lecture Notes in Computer Science, vol. 1403, pp. 158–170. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  29. Kiraz, MS., Uzunkol, O.: Efficient and verifiable algorithms for secure outsourcing of cryptographic computations. Int. J. Inf. Secur. 15, 1–19 (2015)

    Google Scholar 

  30. Lenstra, A.K., Lenstra Jr., H.W., Lovász, L.: Factoring polynomials with rational coefficients. Math. Ann. 261, 515–534 (1982)

    Article  MathSciNet  Google Scholar 

  31. Lim, C.H., Lee, P.J.: More flexible exponentiation with precomputation. In: Desmedt, Y. (ed.) Advances in Cryptology—CRYPTO’94. Lecture Notes in Computer Science, vol. 839, pp. 95–107. Springer, Heidelberg, Germany (1994)

    Google Scholar 

  32. Mefenza, T., Vergnaud, D.: Cryptanalysis of server-aided RSA protocols with private-key splitting. Comput. J. 62(8), 1194–1213 (2019)

    MathSciNet  Google Scholar 

  33. Micali, S., Pass, R., Rosen, A.: Input-indistinguishable computation. In: 47th Annual Symposium on Foundations of Computer Science, IEEE Computer Society Press, Berkeley, CA, USA, pp. 367–378 (2006)

  34. Möller, B.: Algorithms for multi-exponentiation. In: Vaudenay, S., Youssef, A.M. (eds.) SAC 2001: 8th Annual International Workshop on Selected Areas in Cryptography, Lecture Notes in Computer Science, Toronto, Ontario, Canada, Springer, Heidelberg, Germany, vol. 2259, pp. 165–180 (2001)

  35. Nguyen, P.Q., Shparlinski, I.E., Stern, J.: Distribution of modular sums and the security of server aided exponentiation. In: Workshop on Comp. Number Theory and Crypt, pp. 1–16 (1999)

  36. Nguyen, P.Q., Stehlé, D.: Floating-point LLL revisited. In: Cramer, R. (ed.) Advances in Cryptology—EUROCRYPT 2005, Lecture Notes in Computer Science, Aarhus, Denmark, Springer, Heidelberg, Germany, vol. 3494, pp. 215–233 (2005)

  37. Sage Mathematics Software (2012) http://www.sagemath.org

  38. Schnorr, C.-P.: Efficient signature generation by smart cards. J. Cryptol. 4(3), 161–174 (1991)

    Article  Google Scholar 

  39. Shacham, H., Waters, B.: Compact proofs of retrievability. In: Pieprzyk, J. (ed.) Advances in Cryptology – ASIACRYPT 2008, Lecture Notes in Computer Science, Melbourne, Australia, Springer, Heidelberg, Germany, vol. 5350, pp. 90–107 (2008)

  40. Shah, M.A., Baker, M., Mogul, J.C., Swaminathan, R.: Auditing to keep online storage services honest. In: Hunt, G.C. (ed.) Proceedings of HotOS’07: 11th Workshop on Hot Topics in Operating Systems, May 7–9, 2005, San Diego, California, USA, USENIX Association (2007)

  41. Shoup, V.: Lower bounds for discrete logarithms and related problems. In: Fumy, Walter (ed.) Advances in Cryptology—EUROCRYPT’97, Lecture Notes in Computer Science, Konstanz, Germany, Springer, Heidelberg, Germany, vol. 1233, pp. 256–266 (1997)

  42. Smith, B.: Easy scalar decompositions for efficient scalar multiplication on elliptic curves and genus 2 Jacobians. Contemp. Math. Ser. 637, 15 (2015)

    MathSciNet  MATH  Google Scholar 

  43. Straus, E.G.: Problems and solutions: addition chains of vectors. Am. Math. Mon. 71, 806–808 (1964)

    Google Scholar 

  44. Wang, Y., Wu, Q., Wong, D.S., Qin, B., Chow, S.S.M., Liu, Z., Tan, X.: Securely outsourcing exponentiations with single untrusted program for cloud storage. In: Kutylowski, M., Vaidya, J. (eds.) ESORICS 2014: 19th European Symposium on Research in Computer Security, Part I, of Lecture Notes in Computer Science, Wroclaw, Poland, Springer, Heidelberg, Germany, vol. 8712, pp. 326–343 (2014)

  45. Yie, I.: Cryptanalysis of Elgamal type digital signature schemes using integer decomposition. Trends Math. 8(1), 167–175 (2005)

    Google Scholar 

Download references

Acknowledgements

The authors are supported in part by the French ANR ALAMBIC (ANR-16-CE39-0006). The authors thank Guillaume Hanrot and Damien Stehlé for helpful discussions, and Olivier Billet for his comments and for pointing out references.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Damien Vergnaud.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This is the full and updated version of the ESORICS 2016 paper [13] with additional material.

Appendices

Appendix A: Practical Example of the Attack on Wang et al.’s Algorithm

In this section, we provide a concrete example of the attack described in Sect. 4.

For p a 256-bit prime, recovering roots which have less than 110 bits implies the reduction of lattice of a dimension 3 with entries of largest bit-size around 360. Indeed, as mentioned in Sect. 4, we construct the matrix

$$\begin{aligned} M=\left( \begin{array}{lll} p &{} \quad 0 &{}\quad 0 \\ 0 &{}\quad pY &{}\quad 0 \\ c &{}\quad bY &{}\quad X \end{array}\right) \end{aligned}$$

whose rows are formed by the coefficients of the polynomials p, pyY and P(xXyY) in the basis (1, XY).

Let us consider a 256-bit prime

$$\begin{aligned} p = \begin{array}[t]{cccc} \mathtt {10A98A92} &{} \mathtt {2EC19799} &{} \mathtt {E81125D6} &{} \mathtt {D3B0C1EB} \\ \mathtt {0D6FE6D8} &{} \mathtt {67D32C56} &{} \mathtt {492FC5521} &{} \mathtt {D1398C33}. \end{array} \end{aligned}$$

The bound X and Y are set as

$$\begin{aligned} X=Y= \begin{array}[t]{cccc} \mathtt {42E0EA80}&\mathtt {D850A1EF}&\mathtt {BDAFD0E7}&\mathtt {6115D4.} \end{array} \end{aligned}$$

The Coppersmith matrix M constructed as previously mentioned and the corresponding LLL-reduced matrix \(M_{\textsf {red} }\) are given in Fig. 7.

Fig. 7
figure 7

Example of an attack against [44]

The two first vectors allow to recover

$$\begin{aligned} \left\{ \begin{array}[t]{cccc}x_0= \mathtt {37921F2A} &{} \mathtt {890AA857} &{} \mathtt {DAC77BBF} &{} \mathtt {803B5D} \\ y_0= \mathtt {2379CD0E} &{} \mathtt {21A56BC1} &{} \mathtt {33CAA48C} &{} \mathtt {43B4B2.} \end{array} \right. \end{aligned}$$

in less than 0.1 second on a standard laptop, using Sage math software [37] and fplll [1] . These vectors are of norms of size respectively 245 and 256 bits.

Remark 9

Note that an alternative attack can also be adapted from Yie’s paper [45], which aimed at recovering an ElGamal signature secret key when two signatures with small message nonces are available. Indeed, during the verification of an ElGamal signature, an equation of the form \(h(m) = xr+ks \mod q\) is verified, where x (the secret key) and k (the nonce) are unknown, and r and s are part of the signature of the message m. Two such equations make it possible to get rid of x, and we are back to an equation like Eq. 5. Yie adapted the algorithm of Gallant, Lambert and Vanstone \(\mathrm {GLV\text {-}Dec}\). This algorithm uses the extended Euclidean algorithm and has a complexity of \(O(\log _2(q)^3)\).

Appendix B: Outsourcing Exponentiations in Groups with Efficient Inverses

Let \(\textsf {GroupGen}\) be a group generator which takes as input a security parameter \(\lambda\). It provides a set params which contains a description of a (multiplicative) group \((\mathbb {G},\cdot )\), the group order, say \(p = \vert \mathbb {G}\vert\), and one generator g. In this Appendix, we consider a variant of the generic group model in \(\mathbb {G}\) where the computation of group inverse is easy. This generic group is still implemented by choosing a random encoding \(\sigma : \mathbb {G}\longrightarrow \{0,1\}^m\) (with \(2^m > p\)). As above, a generic algorithm \(\mathcal {A}\) takes as input (in addition to the group order p) their image under \(\sigma\). This way, all \(\mathcal {A}\) can test is group elements equality (by encoding equality). \(\mathcal {A}\) is also given access to an oracle \(\mathcal {G}\) computing group multiplication: taking \(\sigma (g_1)\) and \(\sigma (g_2)\) encodings of two group elements \(g_1,g_2 \in \mathbb {G}\) and a sign in \(s \in \{-1,+1\}\) as inputs and returning \(\sigma (g_1 \cdot g_2^{s})\) the encoding of the product \(g_1 \cdot g_2^{s} \in G\) (i.e., \(g_1 \cdot g_2\) or \(g_1/g_2\)) . We assume again that \(\mathcal {A}\) submits to the oracle only encodings of elements it had previously received. In this enhanced generic group model, we have the following lemma analogous to Lemma 1:

Lemma 4

Considering this enhanced generic group model, let \(\textsf {GroupGen}\) be a group generator, let \(\mathbb {G}\) be a group of prime order p output by \(\textsf {GroupGen}\) and let \(\mathcal {A}\) be a generic algorithm in \(\mathbb {G}\). If \(\mathcal {A}\) is given as inputs encodings \(\sigma (g_1)\),... ,\(\sigma (g_n)\) of group elements \(g_1,\dots ,g_n \in \mathbb {G}\) (for \(n \in \mathbb {N}\)) and outputs the encoding \(\sigma (h)\) of a group element \(h \in \mathbb {G}\) in time \(\tau\), then there exists integers \(\alpha _1,\dots ,\alpha _n \in \mathbb {Z}\) such that \(h = g_1^{\alpha _1} \dots g_n^{\alpha _n}\) and \(\max (|\alpha _1|,\dots ,|\alpha _n|) \le 2^{\tau }\).

Proof

We can—as in the proof of Lemma 1—define a map \(\pi : \{0,1\}^m \rightarrow \mathbb {Z}^n\) which associates to each encoding obtained by \(\mathcal {A}\) during its execution an n-dimensional vector in \(\mathbb {Z}^n\). For each input encoding \(\sigma (g_i)\), \(\pi (\sigma (g_i))\) is defined as the i-th vector from the \(\mathbb {Z}^n\) canonical basis (for \(i \in \{1,\dots ,n\}\)) and for each encoding \(\sigma (h_1)\) and \(\sigma (h_2)\) and each sign \(s \in \{-1,1\}\) queried to \(\mathcal {G}\), \(\pi (\sigma (h_1 \cdot h_2)^{s}) = \pi (\sigma (h_1)) + s \cdot \pi (\sigma (h_2)\). By construction, during the whole execution of \(\mathcal {A}\), we have \(\pi (\sigma (h)) = (\alpha _1,\dots ,\alpha _n)\) if and only if \(h = g_1^{\alpha _1} \dots g_n^{\alpha _n}\) for all encodings \(\sigma (h)\). As in the proof of Lemma 1, the \(\ell _\infty\)-norm of \(\pi (\sigma (h_1 \cdot h_2^s))\) is upper-bounded by \(\ell _\infty (\pi (\sigma (h_1))) + \ell _\infty (\pi (\sigma (h_2))\) Since the \(\ell _\infty\)-norm of the input encodings \(\pi (\sigma (g_i))\) is equal to 1 (for \(i \in \{1,\dots ,n\}\)) and the \(\ell _\infty\)-norm of encodings at most doubles for each query to \(\mathcal {G}\), we obtained the claimed result. \(\square\)

In this setting, we can consider a variant of Algorithm 1 that computes the multi-exponentiation \(\prod _{i=1}^t g_i^{x_i}\), for \(g_1,\dots ,g_t \in \mathbb {G}\) and \(x_1,\dots ,x_t \in \mathbb {N}\) by interleaving signed expansions of exponents. In particular, we can use the w-ary non-adjacent form method which guarantees that on average there will be fewer group multiplications for the same window size w (see [3, 34] for details). In this case, the precomputation stage generates \(\prod _{1 \le i \le t} g_i^{E_i}\) (and the algorithm can use the values \(\prod _{1 \le i \le t} g_i^{-E_i}\)) for all non-zero t-tuples \((E_1,\dots ,E_t) \in \{0, \dots , 2^w - 1\}^t\) at no extra storage-cost). The total cost is thus for the precomputation phase \(t2^{tw-2} - t\) multiplications and t squarings and overall less than \(\ell /(w+1/t) \le \ell /w\) multiplications on average and \(\ell\) squarings. For \(t=2\), the cost is again minimal for w around \(1/2 \log \ell - \log \log \ell\) with \(\ell (1+3/\log \ell ) = \ell (1+o(1))\) multiplications overall. Therefore, the method does not improve the asymptotic complexity (at least when the precomputation stage and the storage are not strongly limited). We can replace the use of Algorithm 1 by this variant but this does not improve the asymptotic complexity of the delegation protocols in the number of generic group operations (even with efficient inverses).

Actually, this fact is not surprising, since we can replace the use of Lemma 1 in the proof of our lower bound complexities (Theorems 27) by the use of Lemma 4 to obtain the same lower bounds for delegation protocols in the enhanced generic group model with inverses.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Chevalier, C., Laguillaumie, F. & Vergnaud, D. Privately Outsourcing Exponentiation to a Single Server: Cryptanalysis and Optimal Constructions. Algorithmica 83, 72–115 (2021). https://doi.org/10.1007/s00453-020-00750-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00453-020-00750-2

Keywords

Navigation