ebook img

Springer-Verlag Cryptanalytic Attacks on RSA PDF

268 Pages·1.784 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Springer-Verlag Cryptanalytic Attacks on RSA

Cryptanalytic Attacks on RSA by Song Y. Yan University of Bedfordshire, UK and Massachusetts Institute of Technology, USA Song Y. Yan, PhD Professor of Computer Science and Mathematics Director, Institute for Research in Applicable Computing University of Bedfordshire Bedfordshire LU1 3JU UK [email protected] and Visiting Professor Department of Mathematics Massachusetts Institute of Technology Cambridge, MA 02139-4307 USA [email protected] ISBN-13: 978-0-387-48741-0 e-ISBN-13: 978-0-387-48742-7 Library of Congress Control Number: 2007934650 © 2008 Springer Science+Business Media, LLC. All rights reserved. This work may not be translated or copied in whole or in part without the written permission of the publisher (Springer Science+Business Media, LLC, 233 Spring Street, New York, NY 10013, USA), except for brief excerpts in connection with reviews or scholarly analysis. Use in connection with any form of information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed is forbidden. The use in this publication of trade names, trademarks, service marks and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. Printed on acid-free paper. 9 8 7 6 5 4 3 2 1 springer.com Dedicated to Professor Glyn James on the occasion of his 70th birthday with gratitude for his encouragement and support Table of Contents Preface ....................................................... xi Notations..................................................... xv 1. Computational/Mathematical Preliminaries.............. 1 1.1 Introduction ............................................... 1 1.2 Computability, Complexity and Intractability .................. 4 1.3 Efficient Number-Theoretic Algorithms........................ 15 1.4 Intractable Number-Theoretic Problems ....................... 41 1.5 Chapter Notes and Further Reading .......................... 54 2. RSA Public-Key Cryptography .......................... 55 2.1 Introduction ............................................... 55 2.2 Public-Key Cryptography ................................... 60 2.3 RSA Public-Key Cryptography............................... 66 2.4 RSA Problem and RSA Assumption .......................... 71 2.5 RSA-Type Crytposystems ................................... 73 2.6 Chapter Notes and Further Readings.......................... 88 3. Integer Factorization Attacks ............................ 91 3.1 Introduction ............................................... 91 3.2 Fermat Factoring Attack .................................... 93 3.3 The “p±1” and ECM Attacks ............................... 94 3.4 Quadratic Sieve Attack...................................... 98 3.5 Successful QS Attack ....................................... 103 3.6 Number Field Sieve Attack .................................. 105 3.7 Chapter Notes and Further Reading .......................... 110 4. Discrete Logarithm Attacks .............................. 111 4.1 Introduction ............................................... 111 4.2 Baby-Step Giant-Step Attack ................................ 115 4.3 Silver–Pohlig–Hellman Attack................................ 118 4.4 Index Calculus Attacks...................................... 122 4.5 Xedni Calculus Attack ...................................... 127 viii Table of Contents 4.6 Chapter Notes and Further Reading .......................... 132 5. Quantum Computing Attacks ............................ 135 5.1 Introduction ............................................... 135 5.2 Order Finding Problem ..................................... 137 5.3 Quantum Order Finding Attack .............................. 139 5.4 Quantum Integer Factorization Attack ........................ 142 5.5 Quantum Discrete Logarithm Attack.......................... 146 5.6 Chapter Notes and Further Reading .......................... 148 6. Simple Elementary Attacks .............................. 149 6.1 Introduction ............................................... 149 6.2 Guessing Plaintext Attacks .................................. 150 6.3 Blinding Attack on RSA Signatures........................... 151 6.4 Guessing φ(N) Attack ...................................... 152 6.5 Guessing d Attack .......................................... 155 6.6 eth Root Attack ............................................ 159 6.7 Common Modulus Attack ................................... 161 6.8 Fixed-Point Attack ......................................... 164 6.9 Chapter Notes and Further Readings.......................... 166 7. Public Exponent Attacks................................. 169 7.1 Introduction ............................................... 169 7.2 A Theorem of Coppersmith.................................. 170 7.3 Short e Attacks for Same Messages ........................... 173 7.4 Short e Attacks for Related Messages ......................... 177 7.5 Lattice Attack for Stereotyped Messages....................... 183 7.6 Chapter Notes and Further Reading .......................... 187 8. Private Exponent Attacks................................ 189 8.1 Introduction ............................................... 189 8.2 Diophantine Attack......................................... 190 8.3 Extended Diophantine Attacks ............................... 195 8.4 Small Private CRT-Exponent Attacks......................... 198 8.5 Partial Private Key Exposure Attacks......................... 201 8.6 Chapter Notes and Further Reading .......................... 205 9. Side-Channel Attacks .................................... 207 9.1 Introduction ............................................... 207 9.2 Modular Exponentiation Revisited............................ 208 9.3 Timing Attacks ............................................ 209 9.4 Time Attacks on RSA in OpenSSL ........................... 212 9.5 Power (Analysis) Attacks.................................... 215 9.6 Random Fault Attacks ...................................... 216 9.7 Chapter Notes and Further Reading .......................... 222 Table of Contents ix 10. The Road Ahead......................................... 223 10.1 Introduction ............................................... 223 10.2 Elliptic Curve-Based Cryptography ........................... 224 10.3 Coding-Based Cryptography ................................. 225 10.4 Lattice-Based Cryptography ................................. 227 10.5 Quantum Cryptography..................................... 229 10.6 Conclusions................................................ 230 10.7 Chapter Notes and Further Reading .......................... 232 Bibliography.................................................. 233 Index......................................................... 251 About the Author ............................................ 255 Preface The art of war teaches us to rely not on the likelihood of the enemy’s not coming, but on our own readiness to receive him; not on the chance of his not attacking, but rather on the fact that we have made our position unassailable. Sun Tzu The Art of War (500 BC) The book is about the cryptanalytic attacks on RSA. RSA is the first work- able and practical public-key cryptographic system, invented in 1977 and published in 1978, by Rivest, Shamir and Adleman, then all at the Mas- sachusetts Institute of Technology (MIT), and is still the most widely used cryptographic systems in e.g., online transactions, emails, smartcards, and more generally electronic and mobile commerce over the Internet, for which its three inventors received the year 2002 Turing Award, a prize considered to be the equivalent Nobel Prize for Computer Science. The security of RSA relies on the computational intractability of the Integer Factorization Prob- lem (IFP), for which, no efficient (i.e., polynomial-time) algorithm is known. To get an idea how difficult the integer factorization is, let us consider the following 2048 bits (617 digits) composite number, known as RSA-2048: 251959084756578934940271832400483985714292821262040320277771378360 436620207075955562640185258807844069182906412495150821892985591491 761845028084891200728449926873928072877767359714183472702618963750 149718246911650776133798590957000973304597488084284017974291006424 586918171951187461215151726546322822168699875491824224336372590851 418654620435767984233871847744479207399342365848238242811981638150 106748104516603773060562016196762561338441436038339044149526344321 901146575444541784240209246165157233507787077498171257724679629263 863563732899121548314381678998850404453640235273819513786365643912 12010397122822120720357. It is a product of two prime numbers. The RSA Data Security Incorpora- tion currently offers a $200,000 prize for the first person or group finding xii Preface its two prime factors. The basic idea of RSA encryption and decryption is, surprisingly, rather simple: C ≡Me (mod N), M ≡Cd (mod N), whereN =pqwithpandqprime,M,C,eanddaretheplaintext,ciphertext, encryptionexponentanddecryptionexponent,respectively.Notethateandd mustbesatisfiedwiththeconditionthated≡1(mod φ(N)),whereφ(N)= (p−1)(q−1) is Euler’s φ-function. Let, for example, e = 65537, N be the above mentioned number RSA-2048, and C the following number: 218598056144555493024019389629177159753811144728543422921500499254 181211032562087679022259831067991286101190897695119357754765408522 697956638242922870637083231694404873947694078432775781998614979942 064361669462614088852741600217233052059574880668463536030287944235 822627708134997061064700771693064600712629809165416998449992925313 374281387325903328781863209595468701560742767599157207314869432305 892651836189508103764678721683360183118994273706398707795480800698 501878875875150532123738006235671958527639461339868604410378449818 383913059864587128396200112815989134558427750667427151537609736712 04647757116059031684587. To recover M from C one requires to find d; to find d one needs to calculate φ(N);tocalculateφ(N)oneneedstofactorN.Butunfortunately,factorizing N isintractablewhenN islarge(inthepresentcase,N isa2048-bitnumber, which is far beyond the computing power of any factoring algorithm on any computer at present); no polynomial-time factoring algorithm is known so far. Thus, RSA is secure and C is safe since it is difficult to recover M from C without factoring N. This is essentially the whole idea of RSA! One can trytodecrypttheabovegivenRSAciphertextC ortrytofactorthenumber RSA-2048inordertogetanideahowdifficultitistobreakRSAortofactor a large number. The book consists of ten chapters. Chapter 1 presents some computational and mathematical preliminaries, particularly the theory and practice of tractable and intractable computations in number theory. Chapter 2 intro- ducesthebasicconceptsandtheoryoftheRSAcryptographicsystemandits variants in a broad sense. As the security of RSA is based on the intractabil- ity of the Integer Factorization Problem (IFP), which is also closely related to the Discrete Logarithm Problem (DLP), the attacks based on solutions to IFP problem are discussed in Chapter 3, whereas the attacks based on solutionstoDLPproblemarediscussedinChapter4.Asquantumalgorithm is applicable to both the IFP problem and the DLP problem, Chapter 5 will discuss some quantum attacks on RSA via quantum order finding, quantum factoringandquantumdiscretelogarithmsolving.Chapter6concentrateson somesimpleelementarynumber-theoreticattacksonRSA,includinge.g.,for- wardattack,shortplaintextattack,commonmodulusattackandfixed-point Preface xiii attack.Itiscommonthattospeed-upthecomputationofRSAencryption,a short public exponent e is often used. It is also true for the RSA decryption if a short private exponent d is used. However, the use of short exponent e or d can be dangerous. So, in Chapter 7 we shall discuss some cryptanalytic attacks on the short RSA public exponent e, whereas in Chapter 8 we shall discuss some attacks on the short RSA private exponent d. In Chapter 9, a completelydifferenttypeofattacks,namely,theside-channelattacksonRSA, are discussed. Unlike the mathematical/algorithmic attacks in the previous chapters, side-channel attacks do not exploit the mathematical properties or weakness of the RSA algorithm/system itself, but exploit the hardware im- plementation issues of the system. In other words, these attacks are nothing to do with the RSA algorithm/system itself but have something to do with thehardwareimplementationoftheRSAalgorithm/system.Chapter10,the final chapter, presents some quantum resistant, non-factoring based crypto- graphic systems as an alternative/replacement to RSA, such as lattice based and code-based cryptosystems, so that once RSA is proved to be insecure, there is an immediate replacement to the insecure RSA. The book is self-contained and the materials presented in the book have been extensively classroom tested for various courses in Cryptography and CryptanalysisatAstonandCoventryUniversitiesinEngland,andtheSouth ChinaUniversityofTechnologyandNankaiUniversityinChina.Manyparts of the materials in the book have also been presented in seminars in various universitiesaroundtheworld.Hence,thebookissuitableeitherasaresearch reference for public-key cryptology in general and for RSA cryptology in particular, or as a graduate text in the field. Acknowledgments TheauthorwouldliketothankProfSushilJajodiaofGeorgeMasonUniver- sity,USA,ProfGlynJamesandDrAnneJamesofCoventryUniversity,UK, Prof Stephen Cook of the University of Toronto, Canada, and Prof Richard Brent of Oxford University and Australian National University for their en- couragement,supportandhelpduringthewritingofthebook.Specialthanks mustalsobegiventoSusanLagerstrom-FifeandSharonPalleschi,theeditors at Springer in Boston, USA, for their encouragement, support and help. Parts of book were written while the author visited the following three places: the Department of Computer Science at the University of Toronto (UT) in March-April 2005, hosted by Prof Stephen Cook and supported by UTandtheRoyalSocietyLondon,theMathematicalScienceInstituteatthe AustralianNationalUniversity(ANU)inOctober-November2006,hostedby Prof Richard Brent and supported by ANU and the Royal Society London, xiv Preface and the Department of Mathematics at the Massachusetts Institute of Tech- nology(MIT)inJuly-Sept2007,hostedbyProfMichaelSipserandsupported by MIT. Special thanks must also be given to Prof Glyn James at Coventry Uni- versityandProfRichardBrentatOxfordUniversityandAustralianNational Universityforreadingthewholemanuscriptofthebook,toProfBrainScot- ney at Ulster University for his constant encouragement during the writing of the book, and to Prof Michael Sipser for inviting me to visit and work at MIT where the book was finally completed. The struggle between code-makers and code-breakers is endless. The struggle between attacks and anti-attacks on RSA is also endless as soon as RSA is till in use. New ideas and new attacks on RSA may be conceived andinventedanytime.Socomments,correctionsandsuggestionsonthebook, and new ideas and news attacks on RSA are particularly very welcome from thereaders,andcanbesenttoanyoneofmyfollowingthreeemailaddresses: [email protected], [email protected], or [email protected], so that I can incorporate them into a future edition of the book. Thank you for your help in advance. Cambridge, Massachusetts, August 2007 S. Y. Y.

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.