Grained Integers and Applications to Cryptography
Total Page:16
File Type:pdf, Size:1020Kb
poses. These works may not bemission posted of elsewhere the without copyright the holder. explicit (Last written update per- 2017/11/29-18 :20.) . Grained integers and applications to cryptography Rheinischen Friedrich-Willhelms-Universität Bonn Mathematisch-Naturwissenschaftlichen Fakultät ing any of theseeach documents will copyright adhere holder, to and the in terms particular and use constraints them invoked only by for noncommercial pur- Erlangung des Doktorgrades (Dr. rer. nat.) . Dissertation, Mathematisch-Naturwissenschaftliche Fakultät der Rheinischen Daniel Loebenberger Bonn, Januar 2012 Dissertation vorgelegt von Nürnberg aus der der zur are maintained by the authors orthese by works other are copyright posted holders, here notwithstanding electronically. that It is understood that all persons copy- http://hss.ulb.uni-bonn.de/2012/2848/2848.htm Grained integers and applications to cryptography (2012). OEBENBERGER L ANIEL D Friedrich-Wilhelms-Universität Bonn. URL This document is provided as aand means to technical ensure work timely dissemination on of a scholarly non-commercial basis. Copyright and all rights therein Angefertigt mit Genehmigung der Mathematisch-Naturwissenschaftlichen Fakultät der Rheinischen Friedrich-Wilhelms-Universität Bonn 1. Gutachter: Prof. Dr. Joachim von zur Gathen 2. Gutachter: Prof. Dr. Andreas Stein Tag der Promotion: 16.05.2012 Erscheinungsjahr: 2012 iii Οἱ πρῶτοι ἀριθμοὶ πλείους εἰσὶ παντὸς τοῦ προτένθος πλήθους πρώτων ἀριθμῶν.1 (Euclid) Problema, numeros primos a compositis dignoscendi, hosque in factores suos primos resolvendi, ad gravissima ac ultissima totius arithmeticae pertinere [...] tam notum est, ut de hac re copiose loqui superfluum foret. [...] Praetereaque scientiae dignitas requirere videtur, ut omnia subsidia ad solutionem problematis tam elegantis ac celibris sedulo excolantur.2 (C. F. Gauß) L’algèbre est généreuse, elle donne souvent plus qu’on lui demande.3 (J. D’Alembert) 1Die Menge der Primzahlen ist größer als jede vorgelegte Menge von Primzahlen. 2Dass die Aufgabe, die Primzahlen von den zusammengesetzten zu unterscheiden und letztere in ihre Primfactoren zu zerlegen, zu den wichtigsten und nützlichsten der gesamten Arithmetik gehört und die Bemühungen und den Scharfsinn sowohl der alten wie auch der neueren Geometer in Anspruch genommen hat, ist so bekannt, dass es überflüssig wäre, hierüber viele Worte zu verlieren. [...] Weiter dürfte es die Würde der Wissenschaft erheischen, alle Hilfsmittel zur Lösung jenes so eleganten und berühmten Problems fleissig zu vervollkommnen. 3Die Algebra ist großzügig, sie gibt häufig mehr als man von ihr verlangt. iv Selbständigkeitserklärung Ich versichere, dass ich die Arbeit ohne fremde Hilfe und ohne Benutzung anderer als der angegebenen Quellen angefertigt habe und dass die Arbeit in gleicher oder ähnlicher Form noch keiner anderen Prüfungsbehörde vorgelegen hat und von dieser als Teil einer Prüfungsleistung angenommen wurde. Alle Ausführungen, die wörtlich oder sinngemäß übernommen wurden, sind als solche gekennzeichnet. Daniel Loebenberger Bonn, den 07.01.2012 v vi Zusammenfassung Um den Ansprüchen der modernen Kommunikationsgesellschaft gerecht zu werden, ist es notwendig, kryptographische Techniken gezielt einzusetzen. Dabei sind insbesondere solche Techniken von Vorteil, deren Sicherheit sich auf die Lösung bekannter zahlentheo- retischer Probleme reduzieren lässt, für die bis heute keine effizienten algorithmischen Verfahren bekannt sind. Demnach führt jeglicher Einblick in die Natur eben dieser Pro- bleme indirekt zu Fortschritten in der Analyse verschiedener, in der Praxis eingesetzten kryptographischen Verfahren. In dieser Arbeit soll genau dieser Aspekt detaillierter untersucht werden: Wie kön- nen die teils sehr anwendungsfernen Resultate aus der reinen Mathematik dazu genutzt werden, völlig praktische Fragestellungen bezüglich der Sicherheit kryptographischer Verfahren zu beantworten und konkrete Implementierungen zu optimieren und zu be- werten? Dabei sind zwei Aspekte besonders hervorzuheben: Solche, die Sicherheit ge- währleisten, und solche, die von rein kryptanalytischem Interesse sind. Nachdem wir — mit besonderem Augenmerk auf die historische Entwicklung der Resultate — zunächst die benötigten analytischen und algorithmischen Grundlagen der Zahlentheorie zusammengefasst haben, beschäftigt sich die Arbeit zunächst mit der Fra- gestellung, wie die Punktaddition auf elliptischen Kurven spezieller Form besonders ef- fizient realisiert werden kann. Die daraus resultierenden Formeln sind beispielsweise für die Kryptanalyse solcher Verfahren von Interesse, für deren Sicherheit es notwendig ist, dass die Zerlegung großer Zahlen einen hohen Berechnungsaufwand erfordert. Der Rest der Arbeit ist solchen Zahlen gewidmet, deren Primfaktoren nicht zu klein, aber auch nicht zu groß sind. Inwiefern solche Zahlen in natürlicher Art und Weise in kryptographi- schen und kryptanalytischen Verfahren auftreten und wie deren Eigenschaften für die Beantwortung sehr konkreter, praktischer Fragestellungen eingesetzt werden können, wird anschließend anhand von zwei Anwendungen diskutiert: Der Optimierung einer Hardware-Realisierung des Kofaktorisierungsschrittes des allgemeinen Zahlkörpersiebs, sowie der Analyse verschiedener, standardisierter Schlüsselerzeugungsverfahren. vii viii Synopsis To meet the requirements of the modern communication society, cryptographic tech- niques are of central importance. In modern cryptography, we try to build cryptographic primitives whose security can be reduced to solving a particular number theoretic prob- lem for which no fast algorithmic method is known by now. Thus, any advance in the understanding of the nature of such problems indirectly gives insight in the analysis of some of the most practical cryptographic techniques. In this work we analyze exactly this aspect much more deeply: How can we use some of the purely theoretical results in number theory to answer very practical questions on the security of widely used cryptographic algorithms and how can we use such results in concrete implementations? While trying to answer these kinds of security-related ques- tions, we always think two-fold: From a cryptographic, security-ensuring perspective and from a cryptanalytic one. After we outlined — with a special focus on the historical development of these results — the necessary analytic and algorithmic foundations of number theory, we first delve into the question how point addition on certain elliptic curves can be done efficiently. The resulting formulas have their application in the cryptanalysis of crypto systems that are insecure if factoring integers can be done efficiently. The rest of the thesis is devoted to the study of integers, all of whose prime factors are neither too small nor too large. We show with the help of two applications how one can use the properties of such kinds of integers to answer very practical questions in the design and the analysis of cryptographic primitives: The optimization of a hardware-realization of the cofactorization step of the General Number Field Sieve and the analysis of different standardized key-generation algorithms. ix x Acknowledgments The results in this thesis would not be the same without the long discussions I had with my friends and colleagues of the working group cosec at the Bonn-Aachen International Center for Information Technology. In particular, I want to thank Dr. Michael Nüsken for guiding me through some of the imponderabilities when working on the results presented in this thesis and for adding his invaluable experience to the work I was doing. Additionally, I would like to thank my supervisor, Prof. Dr. Joachim von zur Gathen, for giving me the opportunity to work on the topic presented here, by pointing me to interesting projects related to this work, and for selecting the right people that lead to the good working climate at cosec. Special thanks go to Konstantin Ziegler, who introduced me to the computer algebra system sage, a tool I really learned to appreciate, and to Yona Raekow and Cláudia Oliveira Coelho for always being there for me when I needed someone to talk to. I would also like to thank Dr. Jérémie Detrey for the long fruitful discussions we had while he was working at cosec and for his invaluable comments on various topics. I also want to thank my former supervisor Dr. Helmut Meyn for his support. Last but not least I would like to thank Martin Hielscher and the rest of my family for supporting me all the time. I dedicate this thesis to Dr. Herta Bergmann, to Liselotte Ammon and in particular to Dr. Fotini Pfab. Daniel Loebenberger 07.01.2012 xi xii Contents 1 Introduction 1 1.1 Developmentoftheresults. 1 1.2 Structureofthethesis . .. .. .. .. .. .. .. .. 3 2 Prime numbers 5 2.1 Thedistributionofprimes . 5 2.2 Moreonanalyticnumbertheory . 11 2.3 Counting other classes of integers . 20 3 Algorithmic number theory 25 3.1 Basicalgorithms ............................... 25 3.2 Newton: Recognizing perfect powers . 34 3.3 Primalitytesting ............................... 35 3.4 Factoring algorithms by sieving . 45 3.5 Factoring algorithms using elliptic curves . ....... 50 4 Differential addition in Edwards form 61 4.1 Stateoftheart ................................ 61 4.2 Edwardsform................................. 63 4.3 RepresentingpointsinEdwardsform. 64 4.4 Atriplingformula .............................. 66 4.5 Recovering the x-coordinate......................... 67 4.6 A parametrization using squares only . 69 5