Abstract
In this paper we first present an efficient protocol for the secure computation of the extended greatest common divisor, assuming basic secure integer arithmetic common to many MPC frameworks. The protocol is based on Bernstein and Yang’s constant-time 2-adic algorithm, which we adapt to work purely over the integers. This yields a much better approach for the MPC setting, but raises a new concern about the growth of the Bézout coefficients. By a careful analysis we are able to prove that the Bézout coefficients in our protocol will never exceed \(3\max (a,b)\) in absolute value for inputs a and b. Next, we present efficient protocols for implementing class groups of imaginary quadratic number fields in the MPC setting. We start from Shanks’ original algorithms for the efficient composition of binary quadratic forms and combine these with our particular adaptation of a forms reduction algorithm due to Agarwal and Frandsen. We will formulate this result in terms of secure groups, which are introduced as oblivious data structures implementing finite groups in a privacy-preserving manner. Our results show how class group operations can be run efficiently between multiple parties operating jointly on secret-shared group elements. We have integrated secure class groups in MPyC along with other instances of secure groups such as Schnorr groups and elliptic curves.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Attema, T., Cramer, R.: Compressed \(Sigma\)-protocol theory and practical application to Plug & play secure algorithmics. In: Micciancio, D., Ristenpart, T. (eds.) CRYPTO 2020. LNCS, vol. 12172, pp. 513–543. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-56877-1_18
Algesheimer, J., Camenisch, J., Shoup, V.: Efficient computation modulo a shared secret with application to the generation of shared safe-prime products, 417–432 (2002)
Agarwal, S., Frandsen, G.S.: A new GCD algorithm for quadratic number rings with unique factorization. In: Correa, J.R., Hevia, A., Kiwi, M. (eds.) LATIN 2006. LNCS, vol. 3887, pp. 30–42. Springer, Heidelberg (2006). https://doi.org/10.1007/11682462_8
Bojanczyk, A.W., Brent, R.P.: A systolic algorithm for extended GCD computation. Comput. Math. Appl. 14(4), 233–238 (1987)
Ben-Or, M., Goldwasser, S., Wigderson, A.: Completeness theorems for non-cryptographic fault-tolerant distributed computation (extended abstract). In: Proceedings of Symposium on Theory of Computing (STOC ’88), pp. 1–10. ACM (1988)
Block, A.R., Holmgren, J., Rosen, A., Rothblum, R.D., Soni, P.: Time- and space-efficient arguments from groups of unknown order. In: Malkin, T., Peikert, C. (eds.) CRYPTO 2021. LNCS, vol. 12828, pp. 123–152. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-84259-8_5
Bar-Ilan, J., Beaver, D.: Non-cryptographic fault-tolerant computing in constant number of rounds of interaction, 201–209 (1989)
Brent, R.P., Kung, H.T.: A systolic algorithm for integer GCD computation. In 1985 IEEE 7th Symposium on Computer Arithmetic (ARITH), pages 118–125 (1985)
Buchmann, J.A., Vollmer, U.: Binary quadratic forms - an algorithmic approach, volume 20 of Algorithms and computation in mathematics. Springer (2007)
Bernstein, D.J., Yang, B.-Y.: Fast constant-time GCD computation and modular inversion. IACR Trans. Cryptogr. Hardw. Embed. Syst. 2019(3), 340–398 (2019)
Cohen, H.: A course in computational algebraic number theory, volume 138 of Graduate texts in mathematics. Springer (1993)
Cox, D.A.: Primes of the form \(x^2+ ny^2\): Fermat, class field theory, and complex multiplication, volume 34. John Wiley & Sons (2011)
Catrina, O., Saxena, A.: Secure computation with fixed-point numbers, 35–50 (2010)
David, N., Espitau, T., Hosoyamada, A.: Quantum binary quadratic form reduction. IACR Cryptol. ePrint Arch. p. 466 (2022)
Damgård, I., Fitzi, M., Kiltz, E., Nielsen, J.B., Toft, T.: Unconditionally secure constant-rounds multi-party computation for equality, comparison, bits and exponentiation, pp. 285–304 (2006)
Dobson, S., Galbraith, S., Smith, B.: Trustless unknown-order groups. Math. Cryptol. 1(2), 25–39 (2022)
Dixon, J.D.: Generating random elements in finite groups. Electron. J. Comb., 15(1) (2008)
Gennaro, R., Rabin, M.O., Rabin, T.: Simplified VSS and fast-track multiparty computations with applications to threshold cryptography. In: Proceedings of Principles of Distributed Computing, PODC ’98, pp. 101–111. ACM (1998)
Hoogh, de, S.J.A.: Design of large scale applications of secure multiparty computation : secure linear programming. PhD thesis, Technische Universiteit Eindhoven, Department of Mathematics and Computer Science (2012)
Knuth, D.E.: The art of computer programming, volume 2: Seminumerical algorithms (1969)
Dirichlet, P.L.: Vorlesungen über Zahlentheorie (1863)
Long, L.: Binary quadratic forms. GitHub https://github.com/Chia-Network/vdf-competition/blob/master/classgroups.pdf (2019). Accessed 23 Jan 2020
Menezes, A., van Oorschot, P.C., Vanstone, S.A.: Handbook of Applied Cryptography. CRC Press (1996)
Schaub, J.: Implementiering von Public-Key-Kryptosystemen über imaginär-quadratischen Ordnungen (Master’s thesis). Technische Universität Darmstadt, Fachbereich Informatik (1999)
Schielzeth, D.: Realisierung der elgamal-verschlüsselung in quadratischen zählkorpern (Master’s thesis). Technische Universität Berlin. http://www.math.tu-berlin.de/kant/publications.html (2003)
Schoenmakers, B.: MPyC secure multiparty computation in Python. GitHub https://github.com/lschoe/mpyc (2018)
Shanks, D.: Class number, a theory of factorization, and genera. In: Proceedings of the Symp. Math. Soc., 1971, volume 20, pages 41–440, 1971
Schoenmakers, B., Segers, T.: Verifiable MPC. GitHub. https://github.com/toonsegers/verifiable_mpc (2022)
Schoenmakers, B., Veeningen, M., de Vreede, N.: Trinocchio: privacy-preserving outsourcing by distributed verifiable computation. In: Manulis, M., Sadeghi, A.-R., Schneider, S. (eds.) ACNS 2016. LNCS, vol. 9696, pp. 346–366. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-39555-5_19
Stehlé, D., Zimmermann, P.: A binary recursive GCD algorithm. In: Buell, D., (edt.), Algorithmic Number Theory, pages 411–425, Berlin, Heidelberg. Springer, Berlin Heidelberg (2004)
Toft, T.: Primitives and applications for multi-party computation. PhD thesis, Aarhus University (2007)
Wesolowski, B.: Efficient verifiable delay functions. In: Ishai, Y., Rijmen, V. (eds.) EUROCRYPT 2019. LNCS, vol. 11478, pp. 379–407. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17659-4_13
Acknowledgements
We thank Alessandro Danelon, Mark Abspoel, Niek Bouman, Thomas Attema, and the anonymous reviewers for their valuable comments. This work has received funding from the European Union’s Horizon 2020 research and innovation program under grant agreement No 780477 (PRIViLEDGE).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Schoenmakers, B., Segers, T. (2023). Efficient Extended GCD and Class Groups from Secure Integer Arithmetic. In: Dolev, S., Gudes, E., Paillier, P. (eds) Cyber Security, Cryptology, and Machine Learning. CSCML 2023. Lecture Notes in Computer Science, vol 13914. Springer, Cham. https://doi.org/10.1007/978-3-031-34671-2_3
Download citation
DOI: https://doi.org/10.1007/978-3-031-34671-2_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-34670-5
Online ISBN: 978-3-031-34671-2
eBook Packages: Computer ScienceComputer Science (R0)