Examining and Improving the Security of Elliptic Curve Cryptography
Total Page:16
File Type:pdf, Size:1020Kb
Masaryk University Faculty of Informatics Examining and improving the security of elliptic curve cryptography Ph.D. Thesis Proposal Mgr. Vladimír Sedláček Brno, Fall 2019 Masaryk University Faculty of Informatics Examining and improving the security of elliptic curve cryptography Ph.D. Thesis Proposal Mgr. Vladimír Sedláček Advisor: prof. RNDr. Václav Matyáš, M.Sc., Ph.D. Brno, Fall 2019 Signature of Thesis Advisor Acknowledgements I would like to thank Vashek Matyáš, Petr Švenda, Marek Sýs, Ján Jančár and other CRoCS lab members for their guidance, support, inspiration and many fruitful discussions. i Abstract The focus of the proposed research is to analyze whether elliptic curve cryptography really provides the expected level of security. This in- cludes closely inspecting standardized curves in a new way, trying to link public keys to the source that produced them, finding new theoret- ical weaknesses or vulnerable implementations and finally examining the post-quantum schemes based on isogenies of supersingular curves in more depth. ii Keywords elliptic curve cryptography, vulnerabilities, standardized curves, key fingerprinting, factorization, primality testing iii Contents 1 Introduction 1 1.1 Elliptic curves and their applications .............1 1.2 Classical ECC .........................2 1.3 Post-quantum ECC ......................3 2 State of the Art 5 2.1 Classical ECC .........................5 2.2 Post-quantum ECC ...................... 10 2.3 Integer factorization ...................... 12 2.4 Primality testing ....................... 14 3 Thesis aim 17 3.1 Problem statement ...................... 17 3.2 Research focus ......................... 18 3.3 Work plan ........................... 21 4 Achieved results 23 4.1 The 4p 1 factorization method ............... 23 4.2 Fooling− primality tests on smartcards ............ 25 4.3 Bases of circular units ..................... 27 4.4 Publications .......................... 28 Bibliography 29 A Attached papers 37 A.1 4p 1 factorization ...................... 37 A.2 Bases− of circular units ..................... 50 v 1 Introduction This dissertation thesis proposal aims to introduce the motivation for the study of the security of elliptic curve cryptography and relevant areas, cover the state of the art and present my research plan and the results achieved so far. This section gives an introduction to elliptic curves in general, as well as elliptic curve cryptography (ECC). Chapter 2 gives the current state of the art in several areas related to ECC, namely classical ECC, post-quantum ECC, factorization and primality testing. Chapter 3 specifies the research aims with particular applications and plans. Chapter 4 summarizes the achieved results with the list of publications. Appendix A contains attached publications. 1.1 Elliptic curves and their applications Elliptic curves have been studied by mathematicians for a very long time and provide a very rich interplay between many areas, such as algebra, geometry, number theory and analysis. With the advent of computers, they also became an important computational tool, as they can be used for many different tasks, including integer factorization and primality proving. Yet currently their high popularity in applica- tions stems from the fact that the discrete logarithm problem in the group of points of an elliptic curve over a finite field seems intractable, which allows us to use several very efficient cryptosystems based on this problem (abbreviated as ECDLP from now on). The isogenies of elliptic curves (i.e., rational maps between two elliptic curves that preserve the point at infinity) are also an important tool both for certain computations and for cryptanalysis, and they are becoming increasingly more important with the preparation for the post-quantum era, especially in the context of supersingular curves. Last but not least, the pairing functions (which map two points on an elliptic curve into a group of roots of unity) can be used to construct examples of cryptographic schemes such as identity-based encryption, short signatures or zero-knowledge proofs, thus forming the basis of the so-called pairing-based cryptography. 1 1. Introduction 1.2 Classical ECC Public-key algorithms form a fundamental part of modern cryptog- raphy, and ECC is its prominent constituent. Widespread usage of elliptic curves started in 2006 when the NIST standardized EC Digital Signature Algorithm (ECDSA). The popularity of elliptic curves in cryptography has grown ever since. Besides ECDSA, elliptic curve Diffie-Hellman (ECDH) is also widely used – nowadays, both are deployed in protocols like TLS or SSH that form a backbone of a se- cure Internet. Practical benefits of elliptic curves come with smaller key sizes and more efficient implementations at the same security level when compared to other public-key schemes like RSA or ElGa- mal. Elliptic curves are attractive, namely for security applications where computational power and integrated circuit space are limited (e.g., smartcards or wireless devices) [KMV00]. Elliptic curves are also deployed in government-issued eIDs of many countries like Austria or Belgium, where ECDSA is used as an equivalent to hand-written signatures. ECC is also at the core of cryptocurrencies like Bitcoin, Ethereum or Monero. Security: All ECC practical schemes ECDH, ECDSA, EdDSA, ECIES are defined over standardized curves. Vulnerabilities of these schemes can be divided into two broad classes: mathematical ones and those specific to implementations. The mathematical vulnerabilities of ECC schemes relate to parameters of the standardized curves such as the order of the elliptic curve, the complex multiplication (CM) field dis- criminant and others. There are documented instances of standards being manipulated (e.g., known back-door in the Dual EC PRNG [BLN15]). Hence also the curve generation process for hidden vulner- abilities of standardized curves has been examined recently [Ber+15a]. Also, the standards are often very problematic, as they do not explicitly protect against certain attacks and create tensions between simplicity and security (so that producing correct and secure implementations becomes very hard), while not providing optimal performance [BLa]. As a result, many ECC-based systems could be potentially vulnerable. 2 1. Introduction 1.3 Post-quantum ECC Most of the public key cryptosystems currently used in practice are easily broken by sufficiently large quantum computers, as there are quantum polynomial algorithms for solving both integer factorization and the discrete logarithm problem [RNSL17]. Thus there are various activities aiming to move towards so-called post-quantum cryptosys- tems for the future. Notably, in 2016, NIST initiated a competition to standardize new post-quantum public-key algorithms [ST16]. The second round of the competition was recently announced in January 2019. However, as these systems are quite recent, they require deeper security analyses of various kinds [Ala+19]. Even though most post-quantum algorithms are not based on el- liptic curves anymore, some problems utilizing isogenies (especially between supersingular curves) seem to be hard even for quantum computers. The two main candidates in this isogeny-based cryptog- raphy are SIKE (Supersingular isogeny key encapsulation) [Aza+17], which was submitted to the NIST competition, and CSIDH (Commuta- tive Supersingular Isogeny Diffie-Hellman) [Cas+18], which appeared only recently (November 2018, too late to enter the competition). 3 2 State of the Art This chapter presents a brief overview of state of the art for classical ECC (Section 2.1), post-quantum ECC (Section 2.2), integer factoriza- tion (Section 2.3) and primality testing (Section 2.4). Even though the latter two might seem somewhat less relevant to elliptic curves at first glance, there are in fact several important connections. 2.1 Classical ECC Note that in this section, we will only consider curves over Fp, the finite field with p elements, where p is prime, which is the cased most often encountered in real-world cryptography. The other case, where the characteristic of the field is 2, is rarely seen in practice (even though there exist standardized curves of this type) and we will not discuss it, as it is much more complicated to estimate its security, even though the general attacks and some ideas still apply. We also discuss only ECDLP-based issues, disregarding the pairing- based cryptography almost completely, as it is much less prevalent (though to be fair, most pairing-based schemes also rely on the ECDLP intrinsically). General attacks: While the DLP can be defined in any finite cyclic group, its difficulty might drastically differ for varying groups. In the multiplicative group Z×p (or its subgroup), where p is a prime, there is the subexponential index calculus algorithm, which results in long keys for the DH and DSA schemes that operate in these groups. In contrast, despite several attempts, there does not exist an efficient analog of this algorithm for elliptic curves over prime fields, which is the reason ECC keys might be much shorter while still providing the same level of security. It seems so far that besides certain weak classes of curves (the publicly known ones are described below), the only eligible attacks against ECDLP are those that could be applied to any finite cyclic group. Assuming the group has prime order (otherwise we can use the Pohlig-Hellman attack [PH78] to reduce it to this case), the best 5 2. State of the