Skip to main content
Log in

Cryptanalysis of elliptic curve hidden number problem from PKC 2017

  • Published:
Designs, Codes and Cryptography Aims and scope Submit manuscript

Abstract

In PKC 2017, the elliptic curve hidden number problem (EC-HNP) was revisited in order to rigorously assess the bit security of the elliptic curve Diffie–Hellman key exchange protocol. In this paper, we solve EC-HNP by using the Coppersmith technique which combines the idea behind the second lattice method of Boneh, Halevi and Howgrave-Graham for solving the modular inversion hidden number problem. We show that the hidden point in EC-HNP can be recovered asymptotically if about half of the most significant bits of the x-coordinates of the corresponding points are given. A similar result is also obtained for the least significant bits. We provide better bounds than the one in the work of PKC 2017, which needs about 5/6 of the bits as a result of a rigorous algorithm. However, our solution is based on a heuristic assumption. We verify the validity of our heuristic algorithm by computer experiments.

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.

Similar content being viewed by others

Notes

  1. First, \(r=\dim ({\mathcal {L}}(n,d))\) is equal to the dimension of lattice \({\mathcal {L}}(n,d)\). Note that the basis matrix of \({\mathcal {L}}(n,d)\) is square, and the number of columns of the matrix represents the number w of monomials. Hence, \(w=r=\dim ({\mathcal {L}}(n,d))\).

References

  1. Bauer A., Vergnaud D., Zapalowicz J.-C.: Inferring sequences produced by nonlinear pseudorandom number generators using coppersmith’s methods. In: Proceedings of the Public Key Cryptography—PKC 2012—15th International Conference on Practice and Theory in Public Key Cryptography, Darmstadt, Germany, May 21–23, 2012, pp. 609–626 (2012).

  2. Blake I.F., Garefalakis T., Shparlinski I.E.: On the bit security of the Diffie–Hellman key. Appl. Algebra Eng. Commun. Comput. 16(6), 397–404 (2006).

    Article  MathSciNet  Google Scholar 

  3. Boneh D.: The decision Diffie–Hellman problem. In: Proceedings of the Algorithmic Number Theory, Third International Symposium, ANTS-III, Portland, Oregon, USA, June 21–25, 1998, pp. 48–63 (1998).

    Google Scholar 

  4. Boneh D., Halevi S., Howgrave-Graham N.: The modular inversion hidden number problem. In: ASIACRYPT 2001, pp. 36–51. Springer, Berlin (2001).

    Chapter  Google Scholar 

  5. Boneh D., Venkatesan R.: Hardness of computing the most significant bits of secret keys in Diffie–Hellman and related schemes. In: CRYPTO 1996, pp. 129–142. Springer, Berlin (1996).

    Chapter  Google Scholar 

  6. Coppersmith D.: Finding a small root of a bivariate integer equation; factoring with high bits known. In: EUROCRYPT 1996, pp. 178–189. Springer, Berlin (1996).

    Chapter  Google Scholar 

  7. Coppersmith D.: Finding a small root of a univariate modular equation. In: EUROCRYPT 1996, pp. 155–165. Springer, Berlin (1996).

    Chapter  Google Scholar 

  8. Coppersmith D.: Small solutions to polynomial equations, and low exponent RSA vulnerabilities. J. Cryptol. 10(4), 233–260 (1997).

    Article  MathSciNet  Google Scholar 

  9. Cox D.A., Little J., O’Shea D.: Ideals, Varieties, and Algorithms—An Introduction to Computational Algebraic Geometry and Commutative Algebra, 4th edn. Undergraduate Texts in MathematicsSpringer, Berlin (2015).

    MATH  Google Scholar 

  10. Galbraith S.D.: Mathematics of Public Key Cryptography. Cambridge University Press, Cambridge (2012).

    Book  Google Scholar 

  11. Hankerson D., Menezes A.J., Vanstone S.: Guide to Elliptic Curve Cryptography. Springer, Berlin (2006).

    MATH  Google Scholar 

  12. Herrmann M., May A.: Attacking power generators using unravelled linearization: when do we output too much? In: Advances in Cryptology–ASIACRYPT 2009, pp. 487–504. Springer, Berlin (2009).

    Chapter  Google Scholar 

  13. Howgrave-Graham N.: Finding small roots of univariate modular equations revisited. In: Crytography and Coding, pp. 131–142. Springer, Berlin (1997).

    Chapter  Google Scholar 

  14. Jao D., Jetchev D., Venkatesan R.: On the bits of elliptic curve Diffie–Hellman keys. Progress in Cryptology-INDOCRYPT 2007, pp. 33–47 (2007).

  15. Jochemsz E., May A.: A strategy for finding roots of multivariate polynomials with new applications in attacking RSA variants. In: ASIACRYPT 2006, pp. 267–282. Springer, Berlin (2006).

    Chapter  Google Scholar 

  16. Lenstra A.K., Lenstra H.W., Lovász L.: Factoring polynomials with rational coefficients. Mathematische Annalen 261(4), 515–534 (1982).

    Article  MathSciNet  Google Scholar 

  17. Li W.-C.W., Näslund M., Shparlinski I.E.: Hidden number problem with the trace and bit security of XTR and LUC. In: Proceedings of the Advances in Cryptology—CRYPTO 2002, 22nd Annual International Cryptology Conference, Santa Barbara, California, USA, August 18–22, 2002, pp. 433–448 (2002).

  18. Ling S., Shparlinski I.E., Steinfeld R., Wang H.: On the modular inversion hidden number problem. J. Symb. Comput. 47(4), 358–367 (2012).

    Article  MathSciNet  Google Scholar 

  19. May A.: Using LLL-reduction for solving RSA and factorization problems. In: The LLL Algorithm—Survey and Applications, pp. 315–348 (2010).

    Chapter  Google Scholar 

  20. Nguyen P.Q., Stehlé D.: An LLL algorithm with quadratic complexity. SIAM J. Comput. 39(3), 874–903 (2009).

    Article  MathSciNet  Google Scholar 

  21. Shani B.: On the bit security of elliptic curve Diffie–Hellman. In: Proceedings of the Public-Key Cryptography—PKC 2017—20th IACR International Conference on Practice and Theory in Public-Key Cryptography, Amsterdam, The Netherlands, March 28–31, 2017, Part I, pp. 361–387 (2017).

  22. Shparlinski I.E.: Playing hide-and-seek with numbers: the hidden number problem, lattices, and exponential sums. In: Proceeding of Symposia in Applied Mathematics, vol. 62, pp. 153–177 (2005).

  23. Vasco M.I.G., Shparlinski I.E.: On the security of Diffie–Hellman bits. In: Cryptography and Computational Number Theory, pp. 257–268. Springer, Berlin (2001).

    Chapter  Google Scholar 

  24. Verheul E.R.: Certificates of recoverability with scale recovery agent security. In: Proceedings of the Public Key Cryptography, Third International Workshop on Practice and Theory in Public Key Cryptography, PKC 2000, Melbourne, Victoria, Australia, January 18–20, 2000, pp. 258–275 (2000).

  25. Xu J., Hu L., Huang Z., Peng L.: Modular inversion hidden number problem revisited. In: Proceedings of the Information Security Practice and Experience—10th International Conference, ISPEC 2014, Fuzhou, China, May 5–8, 2014, pp. 537–551 (2014).

    Chapter  Google Scholar 

  26. Xu J., Sarkar S., Hu L., Huang Z., Peng L.: Solving a class of modular polynomial equations and its relation to modular inversion hidden number problem and inversive congruential generator. Des. Codes Cryptogr. 86, 1997–2033 (2017).

    Article  MathSciNet  Google Scholar 

Download references

Acknowledgements

The authors would like to thank the anonymous reviewers for their helpful comments and suggestions. This work was supported by the National Natural Science Foundation of China (Grants 61732021, 61502488). J. Xu is supported by Introducing Excellent Young Talents of Institute of Information Engineering, Chinese Academy Sciences and China Scholarship Council (No. 201804910206). S. Sarkar thanks Department of Science & Technology, India for partial support.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Santanu Sarkar.

Additional information

Communicated by A. Enge.

Publisher's Note

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

Appendices

Appendix

Proof of Lemma 3

Proof

Our goal is to prove the invertibility of matrix \(\mathbf {M{[j_1, \ldots , j_s]}}\) over \({\mathbb {Z}}_{p^{s-1}}\), where \(1\le j_1<\cdots <j_s \le n\). Since p is a prime, our goal is translated into show that \(\mathbf {M{[j_1, \ldots , j_s]}}\) is invertible over prime field \(\mathbb {{\mathbb {F}}}_{p}\).

Based on (10), we get that the row vectors of \(\mathbf {M{[j_1, \ldots , j_s]}}\) are the corresponding coefficient vectors of polynomials \(g_{l,v}\) with respect to monomials \(y_{j_1}\ldots y_{j_s},~x_0y_{j_1}\ldots y_{j_s}, \ldots ,~x^{2s-1}_0y_{j_1}\ldots y_{j_s}\) for \(l=1, \ldots , s\) and \(v=0,1\). According to (9), we have

$$\begin{aligned} g_{l,v}=\bigg (x_0^vy_{j_1}\ldots y_{j_s} \cdot \prod \limits _{t\ne l}(x_0^2+A_{j_t}x_0+B_{j_t})\bigg )+h_{l,v} \end{aligned}$$

Based on (5), we obtain \(A_{j_t}=2(h_0-x_{Q_{j_t}})~\mathrm {mod}~p\) and \(B_{j_t} =(h_0-x_{Q_{j_t}})^2~\mathrm {mod}~p\) for \(t\in [1, \ldots , s]\). Thus \(x_0^2+A_{j_t}x_0+B_{j_t} \equiv (x_0+h_0-x_{Q_{j_t}})^2~\mathrm {mod}~p\). Therefore, we can write

$$\begin{aligned} g_{l,v} \equiv \bigg (x_0^vy_{j_1}\ldots y_{j_s} \cdot \prod \limits _{t\ne l}(x_0+h_0-x_{Q_{j_t}})^2\bigg )+h_{l,v}~(\mathrm {mod}~p^{s-1}) \end{aligned}$$

Let univariate polynomials \(G_{j_t}(x_0) =x_0+h_0-x_{Q_{j_t}}\) and \({\widetilde{G}}_{j_l}(x_0)=\prod \limits _{t\ne l}G_{j_t}(x_0)\). Based on the above relation, we get

$$\begin{aligned} g_{l,v} \equiv x_0^vy_{j_1}\ldots y_{j_s} \cdot {\widetilde{G}}^2_{j_l}(x_0)+h_{l,v}~(\mathrm {mod}~p^{s-1})~\mathrm {for}~l=1, \ldots , s~\mathrm {and}~v=0,1. \end{aligned}$$

We use the matrix equation to express the above relation:

$$\begin{aligned} \begin{pmatrix} g_{1,0} \\ \vdots \\ g_{s,0} \\ g_{1,1} \\ \vdots \\ g_{s,1} \\ \end{pmatrix} \equiv \begin{pmatrix} {\widetilde{G}}^2_{j_1}(x_0) \\ \vdots \\ {\widetilde{G}}^2_{j_s}(x_0) \\ x_0{\widetilde{G}}^2_{j_1}(x_0) \\ \vdots \\ x_0{\widetilde{G}}^2_{j_s}(x_0) \\ \end{pmatrix} \cdot (y_{j_1}\ldots y_{j_s}) + \begin{pmatrix} h_{1,0} \\ \vdots \\ h_{s,0} \\ h_{1,1} \\ \vdots \\ h_{s,1} \\ \end{pmatrix} ~\mathrm {mod}~p^{s-1}. \end{aligned}$$

According to (10), i.e.,

$$\begin{aligned} \begin{pmatrix} g_{1,0} \\ \vdots \\ g_{s,0} \\ g_{1,1} \\ \vdots \\ g_{s,1} \\ \end{pmatrix} = \mathbf {M{[j_1, \ldots , j_s]}}\cdot \begin{pmatrix} y_{j_1}\ldots y_{j_s} \\ x_0y_{j_1}\ldots y_{j_s} \\ \vdots \\ \vdots \\ \vdots \\ x^{2s-1}_0y_{j_1}\ldots y_{j_s} \end{pmatrix}+ \begin{pmatrix} h_{1,0} \\ \vdots \\ h_{s,0} \\ h_{1,1} \\ \vdots \\ h_{s,1} \\ \end{pmatrix}, \end{aligned}$$

we deduce that the rows of matrix \(\mathbf {M{[j_1, \ldots , j_s]}}\) (in the sense of modulo prime p) correspond to the coefficient vectors of \({\widetilde{G}}^2_{j_1}(x_0), \ldots ,\)\( {\widetilde{G}}^2_{j_s}(x_0),\)\( x_0{\widetilde{G}}^2_{j_1}(x_0), \ldots , x_0{\widetilde{G}}^2_{j_s}(x_0)\) on a basis \((1, x_0, \ldots , x^{2s-1}_0)\) over prime field \({\mathbb {F}}_p\). Therefore, \(\mathbf {M{[j_1, \ldots , j_s]}}\) is invertible in \({\mathbb {F}}_p\) if and only if polynomials

$$\begin{aligned} {\widetilde{G}}^2_{j_1}(x_0), \ldots , {\widetilde{G}}^2_{j_s}(x_0), x_0{\widetilde{G}}^2_{j_1}(x_0), \ldots , x_0{\widetilde{G}}^2_{j_s}(x_0) \end{aligned}$$

are linearly independent over \({\mathbb {F}}_p\).

Suppose that there exist \(u_1, \ldots , u_s, v_1, \ldots , v_s\in {\mathbb {F}}_p\) such that \(u_1{\widetilde{G}}^2_{j_1}(x_0)+\cdots +u_s{\widetilde{G}}^2_{j_s}(x_0)+v_1x_0{\widetilde{G}}^2_{j_1}(x_0)+v_sx_0{\widetilde{G}}^2_{j_1}(x_0)=0\), i.e.,

$$\begin{aligned} (u_1+x_0v_1)\cdot {\widetilde{G}}^2_{j_1}(x_0)+\cdots +(u_s+x_0v_s)\cdot {\widetilde{G}}^2_{j_s}(x_0)=0. \end{aligned}$$
(14)

Note that \({\widetilde{G}}_{j_l}(x_0)=\prod \limits _{t\ne l}G_{j_t}(x_0)\) for all \(1\le l\le s\). Then taking modulo \(G^2_{j_l}(x_0)\) on both sides of (14), we get

$$\begin{aligned} (u_i+x_0v_i)\cdot {\widetilde{G}}^2_{j_l}(x_0)\equiv 0~(\mathrm {mod}~G^2_{j_l}(x_0))~\mathrm {for~all}~l=1, \ldots , s. \end{aligned}$$
(15)

According to \(G_{j_l}(x_0)=x_0+h_0-x_{Q_{j_l}}\) for \(l \in [1, \ldots , s]\). Note that \(1\le j_1< \cdots < j_s \le n\), and \(x_{Q_1}, \ldots , x_{Q_n}\) are different over \({\mathbb {F}}_p\) (see the analysis of Sect. 3). It implies that \(x_{Q_{j_1}}, \ldots , x_{Q_{j_s}}\) are also different. Furthermore, univariate linear polynomials \({G}_{j_1}(x_0), \ldots ,\)\( {G}_{j_s}(x_0)\) have different roots over \({\mathbb {F}}_p\), which are \(x_{Q_{j_1}}-h_0, \ldots ,\)\(x_{Q_{j_s}}-h_0\) respectively. Therefore, \({G}_{j_{1}}(x_0), \ldots ,\)\( {G}_{j_{s}}(x_0)\) are pairwise coprime. Based on \({\widetilde{G}}_{j_l}(x_0)=\prod \limits _{t\ne l}G_{j_t}(x_0)\), we also have \(\gcd (G_{j_l}(x_0)),{\widetilde{G}}_{j_l}(x_0))=1\) for all \(1\le l\le s\). Thus, from (15) we have

$$\begin{aligned} u_l+x_0v_l\equiv 0~(\mathrm {mod}~G^2_{j_l}(x_0))~\mathrm {for}~l\in [1,\ldots , s]. \end{aligned}$$

Since \(\deg (G^2_{j_l}(x_0))=2\) and \(\deg (u_l+x_0v_l)\le 1\), we get \(u_l+x_0v_l= 0\) for all \(l=1, \ldots , s\), i.e.,

$$\begin{aligned} u_1=v_1=\cdots =u_s=v_s=0. \end{aligned}$$

It implies that \(u_1{\widetilde{G}}^2_{j_1}(x_0)+\cdots +u_s{\widetilde{G}}^2_{j_s}(x_0)+v_1x_0{\widetilde{G}}^2_{j_1}(x_0)+v_sx_0{\widetilde{G}}^2_{j_1}(x_0)=0\) if and only if \(u_1=v_1=\cdots =u_s=v_s=0\). Hence, \({\widetilde{G}}^2_{j_1}(x_0), \ldots , {\widetilde{G}}^2_{j_s}(x_0), x_0{\widetilde{G}}^2_{j_1}(x_0), \ldots , x_0{\widetilde{G}}^2_{j_1}(x_0)\) are linearly independent over \({\mathbb {F}}_p\), that is, \(\mathbf {M{[j_1, \ldots , j_s]}}\) is invertible over \({\mathbb {F}}_p\).

\(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Xu, J., Hu, L. & Sarkar, S. Cryptanalysis of elliptic curve hidden number problem from PKC 2017. Des. Codes Cryptogr. 88, 341–361 (2020). https://doi.org/10.1007/s10623-019-00685-y

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10623-019-00685-y

Keywords

Mathematics Subject Classification

Navigation