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.
Similar content being viewed by others
Notes
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
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).
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).
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).
Boneh D., Halevi S., Howgrave-Graham N.: The modular inversion hidden number problem. In: ASIACRYPT 2001, pp. 36–51. Springer, Berlin (2001).
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).
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).
Coppersmith D.: Finding a small root of a univariate modular equation. In: EUROCRYPT 1996, pp. 155–165. Springer, Berlin (1996).
Coppersmith D.: Small solutions to polynomial equations, and low exponent RSA vulnerabilities. J. Cryptol. 10(4), 233–260 (1997).
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).
Galbraith S.D.: Mathematics of Public Key Cryptography. Cambridge University Press, Cambridge (2012).
Hankerson D., Menezes A.J., Vanstone S.: Guide to Elliptic Curve Cryptography. Springer, Berlin (2006).
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).
Howgrave-Graham N.: Finding small roots of univariate modular equations revisited. In: Crytography and Coding, pp. 131–142. Springer, Berlin (1997).
Jao D., Jetchev D., Venkatesan R.: On the bits of elliptic curve Diffie–Hellman keys. Progress in Cryptology-INDOCRYPT 2007, pp. 33–47 (2007).
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).
Lenstra A.K., Lenstra H.W., Lovász L.: Factoring polynomials with rational coefficients. Mathematische Annalen 261(4), 515–534 (1982).
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).
Ling S., Shparlinski I.E., Steinfeld R., Wang H.: On the modular inversion hidden number problem. J. Symb. Comput. 47(4), 358–367 (2012).
May A.: Using LLL-reduction for solving RSA and factorization problems. In: The LLL Algorithm—Survey and Applications, pp. 315–348 (2010).
Nguyen P.Q., Stehlé D.: An LLL algorithm with quadratic complexity. SIAM J. Comput. 39(3), 874–903 (2009).
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).
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).
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).
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).
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).
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).
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
Corresponding author
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
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
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
We use the matrix equation to express the above relation:
According to (10), i.e.,
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
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.,
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
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
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.,
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
About this article
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
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10623-019-00685-y