Tables of Fibonacci and Lucas Factorizations
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Fast Tabulation of Challenge Pseudoprimes Andrew Shallue and Jonathan Webster
THE OPEN BOOK SERIES 2 ANTS XIII Proceedings of the Thirteenth Algorithmic Number Theory Symposium Fast tabulation of challenge pseudoprimes Andrew Shallue and Jonathan Webster msp THE OPEN BOOK SERIES 2 (2019) Thirteenth Algorithmic Number Theory Symposium msp dx.doi.org/10.2140/obs.2019.2.411 Fast tabulation of challenge pseudoprimes Andrew Shallue and Jonathan Webster We provide a new algorithm for tabulating composite numbers which are pseudoprimes to both a Fermat test and a Lucas test. Our algorithm is optimized for parameter choices that minimize the occurrence of pseudoprimes, and for pseudoprimes with a fixed number of prime factors. Using this, we have confirmed that there are no PSW-challenge pseudoprimes with two or three prime factors up to 280. In the case where one is tabulating challenge pseudoprimes with a fixed number of prime factors, we prove our algorithm gives an unconditional asymptotic improvement over previous methods. 1. Introduction Pomerance, Selfridge, and Wagstaff famously offered $620 for a composite n that satisfies (1) 2n 1 1 .mod n/ so n is a base-2 Fermat pseudoprime, Á (2) .5 n/ 1 so n is not a square modulo 5, and j D (3) Fn 1 0 .mod n/ so n is a Fibonacci pseudoprime, C Á or to prove that no such n exists. We call composites that satisfy these conditions PSW-challenge pseudo- primes. In[PSW80] they credit R. Baillie with the discovery that combining a Fermat test with a Lucas test (with a certain specific parameter choice) makes for an especially effective primality test[BW80]. -
Fast Generation of RSA Keys Using Smooth Integers
1 Fast Generation of RSA Keys using Smooth Integers Vassil Dimitrov, Luigi Vigneri and Vidal Attias Abstract—Primality generation is the cornerstone of several essential cryptographic systems. The problem has been a subject of deep investigations, but there is still a substantial room for improvements. Typically, the algorithms used have two parts – trial divisions aimed at eliminating numbers with small prime factors and primality tests based on an easy-to-compute statement that is valid for primes and invalid for composites. In this paper, we will showcase a technique that will eliminate the first phase of the primality testing algorithms. The computational simulations show a reduction of the primality generation time by about 30% in the case of 1024-bit RSA key pairs. This can be particularly beneficial in the case of decentralized environments for shared RSA keys as the initial trial division part of the key generation algorithms can be avoided at no cost. This also significantly reduces the communication complexity. Another essential contribution of the paper is the introduction of a new one-way function that is computationally simpler than the existing ones used in public-key cryptography. This function can be used to create new random number generators, and it also could be potentially used for designing entirely new public-key encryption systems. Index Terms—Multiple-base Representations, Public-Key Cryptography, Primality Testing, Computational Number Theory, RSA ✦ 1 INTRODUCTION 1.1 Fast generation of prime numbers DDITIVE number theory is a fascinating area of The generation of prime numbers is a cornerstone of A mathematics. In it one can find problems with cryptographic systems such as the RSA cryptosystem. -
The Quadratic Sieve Factoring Algorithm
The Quadratic Sieve Factoring Algorithm Eric Landquist MATH 488: Cryptographic Algorithms December 14, 2001 1 1 Introduction Mathematicians have been attempting to find better and faster ways to fac- tor composite numbers since the beginning of time. Initially this involved dividing a number by larger and larger primes until you had the factoriza- tion. This trial division was not improved upon until Fermat applied the factorization of the difference of two squares: a2 b2 = (a b)(a + b). In his method, we begin with the number to be factored:− n. We− find the smallest square larger than n, and test to see if the difference is square. If so, then we can apply the trick of factoring the difference of two squares to find the factors of n. If the difference is not a perfect square, then we find the next largest square, and repeat the process. While Fermat's method is much faster than trial division, when it comes to the real world of factoring, for example factoring an RSA modulus several hundred digits long, the purely iterative method of Fermat is too slow. Sev- eral other methods have been presented, such as the Elliptic Curve Method discovered by H. Lenstra in 1987 and a pair of probabilistic methods by Pollard in the mid 70's, the p 1 method and the ρ method. The fastest algorithms, however, utilize the− same trick as Fermat, examples of which are the Continued Fraction Method, the Quadratic Sieve (and it variants), and the Number Field Sieve (and its variants). The exception to this is the El- liptic Curve Method, which runs almost as fast as the Quadratic Sieve. -
Cryptology and Computational Number Theory (Boulder, Colorado, August 1989) 41 R
http://dx.doi.org/10.1090/psapm/042 Other Titles in This Series 50 Robert Calderbank, editor, Different aspects of coding theory (San Francisco, California, January 1995) 49 Robert L. Devaney, editor, Complex dynamical systems: The mathematics behind the Mandlebrot and Julia sets (Cincinnati, Ohio, January 1994) 48 Walter Gautschi, editor, Mathematics of Computation 1943-1993: A half century of computational mathematics (Vancouver, British Columbia, August 1993) 47 Ingrid Daubechies, editor, Different perspectives on wavelets (San Antonio, Texas, January 1993) 46 Stefan A. Burr, editor, The unreasonable effectiveness of number theory (Orono, Maine, August 1991) 45 De Witt L. Sumners, editor, New scientific applications of geometry and topology (Baltimore, Maryland, January 1992) 44 Bela Bollobas, editor, Probabilistic combinatorics and its applications (San Francisco, California, January 1991) 43 Richard K. Guy, editor, Combinatorial games (Columbus, Ohio, August 1990) 42 C. Pomerance, editor, Cryptology and computational number theory (Boulder, Colorado, August 1989) 41 R. W. Brockett, editor, Robotics (Louisville, Kentucky, January 1990) 40 Charles R. Johnson, editor, Matrix theory and applications (Phoenix, Arizona, January 1989) 39 Robert L. Devaney and Linda Keen, editors, Chaos and fractals: The mathematics behind the computer graphics (Providence, Rhode Island, August 1988) 38 Juris Hartmanis, editor, Computational complexity theory (Atlanta, Georgia, January 1988) 37 Henry J. Landau, editor, Moments in mathematics (San Antonio, Texas, January 1987) 36 Carl de Boor, editor, Approximation theory (New Orleans, Louisiana, January 1986) 35 Harry H. Panjer, editor, Actuarial mathematics (Laramie, Wyoming, August 1985) 34 Michael Anshel and William Gewirtz, editors, Mathematics of information processing (Louisville, Kentucky, January 1984) 33 H. Peyton Young, editor, Fair allocation (Anaheim, California, January 1985) 32 R. -
Primality Testing and Sub-Exponential Factorization
Primality Testing and Sub-Exponential Factorization David Emerson Advisor: Howard Straubing Boston College Computer Science Senior Thesis May, 2009 Abstract This paper discusses the problems of primality testing and large number factorization. The first section is dedicated to a discussion of primality test- ing algorithms and their importance in real world applications. Over the course of the discussion the structure of the primality algorithms are devel- oped rigorously and demonstrated with examples. This section culminates in the presentation and proof of the modern deterministic polynomial-time Agrawal-Kayal-Saxena algorithm for deciding whether a given n is prime. The second section is dedicated to the process of factorization of large com- posite numbers. While primality and factorization are mathematically tied in principle they are very di⇥erent computationally. This fact is explored and current high powered factorization methods and the mathematical structures on which they are built are examined. 1 Introduction Factorization and primality testing are important concepts in mathematics. From a purely academic motivation it is an intriguing question to ask how we are to determine whether a number is prime or not. The next logical question to ask is, if the number is composite, can we calculate its factors. The two questions are invariably related. If we can factor a number into its pieces then it is obviously not prime, if we can’t then we know that it is prime. The definition of primality is very much derived from factorability. As we progress through the known and developed primality tests and factorization algorithms it will begin to become clear that while primality and factorization are intertwined they occupy two very di⇥erent levels of computational di⇧culty. -
Computational Number Theory Estimable Men, They Try the Patience of Even the Prac- Ticed Calculator
are so laborious and difficult that even for numbers that do not exceed the limits of tables constructed by Computational Number Theory estimable men, they try the patience of even the prac- ticed calculator. And these methods do not apply at C. Pomerance all to larger numbers. Further, the dignity of the sci- ence itself seems to require that every possible means be explored for the solution of a problem so elegant and so celebrated. 1 Introduction Factorization into primes is a very basic issue in Historically, computation has been a driving force in number theory, but essentially all branches of number the development of mathematics. To help measure the theory have a computational component. And in some sizes of their fields, the Egyptians invented geometry. areas there is such a robust computational literature To help predict the positions of the planets, the Greeks that we discuss the algorithms involved as mathemat- invented trigonometry. Algebra was invented to deal ically interesting objects in their own right. In this with equations that arose when mathematics was used article we will briefly present a few examples of the to model the world. The list goes on, and it is not just computational spirit: in analytic number theory (the historical. If anything, computation is more important distribution of primes and the Riemann hypothesis); than ever. Much of modern technology rests on algo- in Diophantine equations (Fermat’s last theorem and rithms that compute quickly: examples range from the abc conjecture); and in elementary number theory the wavelets that allow CAT scans, to the numer- (primality and factorization). -
Integer Factoring
Designs, Codes and Cryptography, 19, 101–128 (2000) c 2000 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Integer Factoring ARJEN K. LENSTRA [email protected] Citibank, N.A., 1 North Gate Road, Mendham, NJ 07945-3104, USA Abstract. Using simple examples and informal discussions this article surveys the key ideas and major advances of the last quarter century in integer factorization. Keywords: Integer factorization, quadratic sieve, number field sieve, elliptic curve method, Morrison–Brillhart Approach 1. Introduction Factoring a positive integer n means finding positive integers u and v such that the product of u and v equals n, and such that both u and v are greater than 1. Such u and v are called factors (or divisors)ofn, and n = u v is called a factorization of n. Positive integers that can be factored are called composites. Positive integers greater than 1 that cannot be factored are called primes. For example, n = 15 can be factored as the product of the primes u = 3 and v = 5, and n = 105 can be factored as the product of the prime u = 7 and the composite v = 15. A factorization of a composite number is not necessarily unique: n = 105 can also be factored as the product of the prime u = 5 and the composite v = 21. But the prime factorization of a number—writing it as a product of prime numbers—is unique, up to the order of the factors: n = 3 5 7isthe prime factorization of n = 105, and n = 5 is the prime factorization of n = 5. -
Algorithms for Factoring Integers of the Form N = P * Q
Algorithms for Factoring Integers of the Form n = p * q Robert Johnson Math 414 Final Project 12 March 2010 1 Table of Contents 1. Introduction 3 2. Trial Division Algorithm 3 3. Pollard (p – 1) Algorithm 5 4. Lenstra Elliptic Curve Method 9 5. Continued Fraction Factorization Method 13 6. Conclusion 15 2 Introduction This paper is a brief overview of four methods used to factor integers. The premise is that the integers are of the form n = p * q, i.e. similar to RSA numbers. The four methods presented are Trial Division, the Pollard (p -1) algorithm, the Lenstra Elliptic Curve Method, and the Continued Fraction Factorization Method. In each of the sections, we delve into how the algorithm came about, some background on the machinery that is implemented in the algorithm, the algorithm itself, as well as a few eXamples. This paper assumes the reader has a little eXperience with group theory and ring theory and an understanding of algebraic functions. This paper also assumes the reader has eXperience with programming so that they might be able to read and understand the code for the algorithms. The math introduced in this paper is oriented in such a way that people with a little eXperience in number theory may still be able to read and understand the algorithms and their implementation. The goal of this paper is to have those readers with a little eXperience in number theory be able to understand and use the algorithms presented in this paper after they are finished reading. Trial Division Algorithm Trial division is the simplest of all the factoring algorithms as well as the easiest to understand. -
Smooth Numbers and the Quadratic Sieve
Algorithmic Number Theory MSRI Publications Volume 44, 2008 Smooth numbers and the quadratic sieve CARL POMERANCE ABSTRACT. This article gives a gentle introduction to factoring large integers via the quadratic sieve algorithm. The conjectured complexity is worked out in some detail. When faced with a large number n to factor, what do you do first? You might say, “Look at the last digit,” with the idea of cheaply pulling out possible factors of 2 and 5. Sure, and more generally, you can test for divisibility cheaply by all of the very small primes. So it may as well be assumed that the number n has no small prime factors, say below log n. Since it is also cheap to test for probable primeness, say through the strong probable prime test, and then actually prove primality as in [Schoof 2008] in the case that you become convinced n is prime, it also may as well be assumed that the number n is composite. Trial division is a factoring method (and in the extreme, a primality test) that involves sequentially trying n for divisibility by the consecutive primes. This method was invoked above for the removal of the small prime factors of n. The only thing stopping us from continuing beyond the somewhat arbitrary cut off of log n is the enormous time that would be spent if the smallest prime factor of n is fairly large. For example, if n were a modulus being used in the RSA cryptosystem, then as current protocols dictate, n would be the product of two primes of the same order of magnitude. -
Public-Key Crypto Basics Paul Garrett [email protected] University Of
Public-Key Crypto Basics Paul Garrett [email protected] University of Minnesota 1 Terminology A symmetric or private-key cipher is one in which knowledge of the encryption key is explicitly or implicitly equivalent to knowing the decryption key. A asymmetric or public-key cipher is one in which the encryption key is effectively public knowledge, without giving any useful information about the decryption key. Until 30 years ago all ciphers were private- key. The very possibility of public-key crypto did not exist until the secret work of some British CESG-at-GCHQ people Ellis- Cocks-Williamson in the 1960's, and public- domain work of Merkle, Diffie-Hellman, and Rivest-Shamir-Adleman in the 1970's. 2 Examples of symmetric/private-key ciphers Cryptograms (substitution ciphers) [broken: letter frequencies, small words] Anagrams (permutation ciphers) [broken: double anagramming] Vigen`ere[broken: Kasiski attack, Friedman attack] Enigma, Purple [broken: key distribution problems, too small keyspace] DES [broken: too small keyspace] 3DES [slow] Blowfish [in use], Arcfour [in use], TEA, IDEA Serpent, Twofish, RC6, MARS [AES finalists] AES (Rijndael) 3 Examples of asymmetric/public-key ciphers RSA (Rivest-Shamir-Adlemen) ElGamal Elliptic curve cipher (∼ abstracted ElGamal) Knapsack ciphers [discredited] Coding-theory ciphers [out of fashion...] NTRU Arithmetica (word-problem ciphers) 4 Basic public-key examples and background RSA cipher Diffie-Hellman key exchange classical number-theoretic algorithms: Euclidean algorithm fast exponentiation factorization algorithms: futility of trial division Pollard's rho quadratic sieve elliptic curve sieve number field sieve primality-testing algorithms: Fermat Miller-Rabin primality certificates further protocols 5 Feasible and infeasible computations The only cipher provably impervious to every hostile computation is the One-Time Pad (sometimes called Vernam cipher). -
Integer Factorization Algorithms
INTEGER FACTORIZATION ALGORITHMS Thesis for a Bachelor’s degree in mathematics Joakim Nilsson Supervisor Examiner Klas Markström Gerold Jäger 0 Integer factorization algorithms Abstrakt Det matematiska området heltalsfaktorisering har kommit en lång väg sedan de tidiga åren av Pierre de Fermat och med enklare algoritmer som utvecklats under det förra seklet med exempel som Trial division och Pollards rho algoritm till de mer komplexa metoderna som det Kvadratiska sållet har vi nu kommit till Det generella talkroppssållet vilket har blivit erkänt som den snabbaste algoritmen för att faktorisera väldigt stora heltal. Idag har forskningen kring heltalsfaktorisering många användningsområden, exempelvis inom säkerhet kring krypteringsmetoder som exempelvis den kända RSA algoritmen. I denna uppsats kommer jag att beskriva och ge exempel på de heltalsfaktoriseringsmetoder som jag nämnt. Jag kommer även att göra en jämförelse av hur snabbheten för Trial division, Pollards rho metod samt Fermats metod. För programmeringen i denna uppsats kommer jag att använda mig av Python. För exemplet med tidskomplexitet kommer jag att använda Wolfram Mathematica. Abstract The mathematical area of integer factorization has gone a long way since the early days of Pierre de Fermat, and with simpler algorithms developed in the last century such as the Trial division and Pollards rho algorithm to the more complex method of the Quadratic sieve algorithm (QS), we have now arrived at the General Number Field Sieve (GNFS) which has been recognized as the fastest integer factorization algorithm for very large numbers. Today the research of integer factorization has many applications, among others in the security systems of encryption methods like the famous RSA algorithm. -
Improved Trial Division Technique for Primality Checking in RSA Algorithm
I. J. Computer Network and Information Security, 2013, 9, 51-57 Published Online July 2013 in MECS (http://www.mecs-press.org/) DOI: 10.5815/ ijcn is.2013.09.07 Improved Trial Division Technique for Primality Checking in RSA Algorithm Kumarjit Banerjee, Satyendra Nath Mandal, Sanjoy Ku mar Das Systems Engineer- Tata Consultancy Services, Dept. of I.T, Kalyani Govt. Engg College, Kalyani, Nadia (W.B), India University of Kalyani, Nadia (W.B), India [email protected], [email protected], [email protected] Abstract — The RSA cryptosystem, invented by Ron deciphering key d, called the private key, is kept secret. Rivest, Adi Shamir and Len Adleman was first publicized The cryptosystem must satisfy the property that it is in the August 1977 issue of Scientific American. The computationally infeasible to compute d from e [16]. The security level of this algorithm very much depends on RSA algorithm first requires two sufficiently large primes two large prime numbers. To check the primality of large to be chosen [11]. For this purpose the primality tests on number in personal computer is huge time consuming the numbers has to be computed. The trial d ivision using the best known trial division algorithm. The time algorithm has been considered which can be used both for complexity for primality testing has been reduced using primality testing and factorization of numbers [12]. The the representation of divisors in the form of 6n±1. time complexity for the algorithm has been reduced each According to the fundamental theorem of Arithmetic, time with each new approach [4] from slightly higher every number has unique factorization.