Taxonomy and Practical Evaluation of Primality Testing Algorithms
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]. -
Introduction to Experimental Mathematics
15-355: Modern Computer Algebra Introduction to Experimental Mathematics Introduction to Experimental Mathematics Victor Adamchik Carnegie Mellon University Integer Relation Algorithms "Computers are useless. They can only give you answers." Pablo Picasso "The purpose of computing is insight, not numbers." Richard Humming Given a vector of real number {x1, ...,x n}, find a vector of integers {p1, ...,p n} such that a linear combination of given numbers is zero, namely p1 x1 + ...+p n xn =0 The algorithm was discovered iun 1979 by Ferguson and Forcade [1]. In 1982 it was improved by Lenstra, Lenstra, Lovász [2]. 1992, more improvements by Ferguson and Bailey - PSLQ algorithm[3]. 2D case: Suppose there are two numbers x,y. Find integers n,m such that x n+ym= 0. If x and b are integers, we use the Euclidean algorithm x=y*q 1 +r 1, 0≤r 1 <y y=r 1 *q 2 +r 2, 0≤r 2 <r 1 r1 =r 2 *q 3 +r 3, 0≤r 3 <r 2 ... ... ... rk-2 =r k-1 *q k +r k, 0≤r k <r k-1 rk-1 =r k *q k+1 +0 What if we apply this idea to real numbers? GCD 2 , 1 1.414214 = 1 * 1 + 0.414214 1 = 2 * 0.414214 + 0.171573 2 Introduction to Experimental Mathematics 0.414214 = 2 * 0.171573 + 0.071068 0.171573 = 2 * 0.071068 + 0.029437 0.071068 = 2 * 0.029437 + 0.012193 and so on Since remainders rk → 0 on each iteration, we will get either an exact relation or an approximation. -
Lecture 9: Arithmetics II 1 Greatest Common Divisor
DD2458, Problem Solving and Programming Under Pressure Lecture 9: Arithmetics II Date: 2008-11-10 Scribe(s): Marcus Forsell Stahre and David Schlyter Lecturer: Douglas Wikström This lecture is a continuation of the previous one, and covers modular arithmetic and topics from a branch of number theory known as elementary number theory. Also, some abstract algebra will be discussed. 1 Greatest Common Divisor Definition 1.1 If an integer d divides another integer n with no remainder, d is said to be a divisor of n. That is, there exists an integer a such that a · d = n. The notation for this is d | n. Definition 1.2 A common divisor of two non-zero integers m and n is a positive integer d, such that d | m and d | n. Definition 1.3 The Greatest Common Divisor (GCD) of two positive integers m and n is a common divisor d such that every other common divisor d0 | d. The notation for this is GCD(m, n) = d. That is, the GCD of two numbers is the greatest number that is a divisor of both of them. To get an intuition of what GCD is, let’s have a look at this example. Example Calculate GCD(9, 6). Say we have 9 black and 6 white blocks. We want to put the blocks in boxes, but every box has to be the same size, and can only hold blocks of the same color. Also, all the boxes must be full and as large as possible . Let’s for example say we choose a box of size 2: As we can see, the last box of black bricks is not full. -
Arxiv:2107.06030V2 [Math.HO] 18 Jul 2021 Jonathan Michael Borwein
Jonathan Michael Borwein 1951 { 2016: Life and Legacy Richard P. Brent∗ Abstract Jonathan M. Borwein (1951{2016) was a prolific mathematician whose career spanned several countries (UK, Canada, USA, Australia) and whose many interests included analysis, optimisation, number theory, special functions, experimental mathematics, mathematical finance, mathematical education, and visualisation. We describe his life and legacy, and give an annotated bibliography of some of his most significant books and papers. 1 Life and Family Jonathan (Jon) Michael Borwein was born in St Andrews, Scotland, on 20 May 1951. He was the first of three children of David Borwein (1924{2021) and Bessie Borwein (n´eeFlax). It was an itinerant academic family. Both Jon's father David and his younger brother Peter Borwein (1953{2020) are well-known mathematicians and occasional co-authors of Jon. His mother Bessie is a former professor of anatomy. The Borweins have an Ashkenazy Jewish background. Jon's father was born in Lithuania, moved in 1930 with arXiv:2107.06030v4 [math.HO] 15 Sep 2021 his family to South Africa (where he met his future wife Bessie), and moved with Bessie to the UK in 1948. There he obtained a PhD (London) and then a Lectureship in St Andrews, Scotland, where Jon was born and went to school at Madras College. The family, including Jon and his two siblings, moved to Ontario, Canada, in 1963. In 1971 Jon graduated with a BA (Hons ∗Mathematical Sciences Institute, Australian National University, Canberra, ACT. Email: <[email protected]>. 1 Math) from the University of Western Ontario. It was in Ontario that Jon met his future wife and lifelong partner Judith (n´eeRoots). -
Primality Testing and Integer Factorisation
Primality Testing and Integer Factorisation Richard P. Brent, FAA Computer Sciences Laboratory Australian National University Canberra, ACT 2601 Abstract The problem of finding the prime factors of large composite numbers has always been of mathematical interest. With the advent of public key cryptosystems it is also of practical importance, because the security of some of these cryptosystems, such as the Rivest-Shamir-Adelman (RSA) system, depends on the difficulty of factoring the public keys. In recent years the best known integer factorisation algorithms have improved greatly, to the point where it is now easy to factor a 60-decimal digit number, and possible to factor numbers larger than 120 decimal digits, given the availability of enough computing power. We describe several recent algorithms for primality testing and factorisation, give examples of their use and outline some applications. 1. Introduction It has been known since Euclid’s time (though first clearly stated and proved by Gauss in 1801) that any natural number N has a unique prime power decomposition α1 α2 αk N = p1 p2 ··· pk (1.1) αj (p1 < p2 < ··· < pk rational primes, αj > 0). The prime powers pj are called αj components of N, and we write pj kN. To compute the prime power decomposition we need – 1. An algorithm to test if an integer N is prime. 2. An algorithm to find a nontrivial factor f of a composite integer N. Given these there is a simple recursive algorithm to compute (1.1): if N is prime then stop, otherwise 1. find a nontrivial factor f of N; 2. -
Computing Prime Divisors in an Interval
MATHEMATICS OF COMPUTATION Volume 84, Number 291, January 2015, Pages 339–354 S 0025-5718(2014)02840-8 Article electronically published on May 28, 2014 COMPUTING PRIME DIVISORS IN AN INTERVAL MINKYU KIM AND JUNG HEE CHEON Abstract. We address the problem of finding a nontrivial divisor of a com- posite integer when it has a prime divisor in an interval. We show that this problem can be solved in time of the square root of the interval length with a similar amount of storage, by presenting two algorithms; one is probabilistic and the other is its derandomized version. 1. Introduction Integer factorization is one of the most challenging problems in computational number theory. It has been studied for centuries, and it has been intensively in- vestigated after introducing the RSA cryptosystem [18]. The difficulty of integer factorization has been examined not only in pure factoring situations but also in various modified situations. One such approach is to find a nontrivial divisor of a composite integer when it has prime divisors of special form. These include Pol- lard’s p − 1 algorithm [15], Williams’ p + 1 algorithm [20], and others. On the other hand, owing to the importance and the usage of integer factorization in cryptog- raphy, one needs to examine this problem when some partial information about divisors is revealed. This side information might be exposed through the proce- dures of generating prime numbers or through some attacks against crypto devices or protocols. This paper deals with integer factorization given the approximation of divisors, and it is motivated by the above mentioned research. -
An Analysis of Primality Testing and Its Use in Cryptographic Applications
An Analysis of Primality Testing and Its Use in Cryptographic Applications Jake Massimo Thesis submitted to the University of London for the degree of Doctor of Philosophy Information Security Group Department of Information Security Royal Holloway, University of London 2020 Declaration These doctoral studies were conducted under the supervision of Prof. Kenneth G. Paterson. The work presented in this thesis is the result of original research carried out by myself, in collaboration with others, whilst enrolled in the Department of Mathe- matics as a candidate for the degree of Doctor of Philosophy. This work has not been submitted for any other degree or award in any other university or educational establishment. Jake Massimo April, 2020 2 Abstract Due to their fundamental utility within cryptography, prime numbers must be easy to both recognise and generate. For this, we depend upon primality testing. Both used as a tool to validate prime parameters, or as part of the algorithm used to generate random prime numbers, primality tests are found near universally within a cryptographer's tool-kit. In this thesis, we study in depth primality tests and their use in cryptographic applications. We first provide a systematic analysis of the implementation landscape of primality testing within cryptographic libraries and mathematical software. We then demon- strate how these tests perform under adversarial conditions, where the numbers being tested are not generated randomly, but instead by a possibly malicious party. We show that many of the libraries studied provide primality tests that are not pre- pared for testing on adversarial input, and therefore can declare composite numbers as being prime with a high probability. -
FACTORING COMPOSITES TESTING PRIMES Amin Witno
WON Series in Discrete Mathematics and Modern Algebra Volume 3 FACTORING COMPOSITES TESTING PRIMES Amin Witno Preface These notes were used for the lectures in Math 472 (Computational Number Theory) at Philadelphia University, Jordan.1 The module was aborted in 2012, and since then this last edition has been preserved and updated only for minor corrections. Outline notes are more like a revision. No student is expected to fully benefit from these notes unless they have regularly attended the lectures. 1 The RSA Cryptosystem Sensitive messages, when transferred over the internet, need to be encrypted, i.e., changed into a secret code in such a way that only the intended receiver who has the secret key is able to read it. It is common that alphabetical characters are converted to their numerical ASCII equivalents before they are encrypted, hence the coded message will look like integer strings. The RSA algorithm is an encryption-decryption process which is widely employed today. In practice, the encryption key can be made public, and doing so will not risk the security of the system. This feature is a characteristic of the so-called public-key cryptosystem. Ali selects two distinct primes p and q which are very large, over a hundred digits each. He computes n = pq, ϕ = (p − 1)(q − 1), and determines a rather small number e which will serve as the encryption key, making sure that e has no common factor with ϕ. He then chooses another integer d < n satisfying de % ϕ = 1; This d is his decryption key. When all is ready, Ali gives to Beth the pair (n; e) and keeps the rest secret. -
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. -
EXPERIMENTAL MATHEMATICS: the ROLE of COMPUTATION in NONLINEAR SCIENCE Dedicated to the Memory of Our Friend and Colleague, Stanislaw M
SPECIAL SECTION EXPERIMENTAL MATHEMATICS: THE ROLE OF COMPUTATION IN NONLINEAR SCIENCE Dedicated to the memory of our friend and colleague, Stanislaw M. Ulam. Computers have expanded the range of nonlinear phenomena that can be explored mathematically. An “experimental mathematics facility,” containing both special-purpose dedicated machines and general-purpose mainframes, may someday provide the ideal context for complex nonlinear problems. DAVID CAMPBELL, JIM CRUTCHFIELD, DOYNE FARMER, and ERICA JEN It would be hard to exaggerate the role that computers properties, and how can it be solved? The second prob- and numerical simulations have played in the recent lem involves what we call modeling: Given a process in progress of nonlinear science. Indeed, the term experi- the “real” world, how can we write down the best mental mathematics has been coined to describe mathematical description or model? As scientists we computer-based investigations into nonlinear problems want both to model the real world and to be able to that are inaccessible to analytic methods. The experi- solve the resulting models, and so we must address mental mathematician uses the computer to simulate both problems, for the interplay between them is cru- the solutions of nonlinear equations and thereby to gain cial. It is easy, for example, to write down the Navier- insights into their behavior and to suggest directions for Stokes equations describing fluid motion; this does very future analytic research. In the last 20 years, the sym- little to reveal the nature of turbulent fluid flow, how- biotic interplay between experimental and theoretical ever. Similarly, intuition about the qualitative aspects mathematics has caused a revolution in our under- of nonlinear behavior can be very valuable as a guide standing of nonlinear problems [17, 25, 301. -
The Pseudoprimes to 25 • 109
MATHEMATICS OF COMPUTATION, VOLUME 35, NUMBER 151 JULY 1980, PAGES 1003-1026 The Pseudoprimes to 25 • 109 By Carl Pomerance, J. L. Selfridge and Samuel S. Wagstaff, Jr. Abstract. The odd composite n < 25 • 10 such that 2n_1 = 1 (mod n) have been determined and their distribution tabulated. We investigate the properties of three special types of pseudoprimes: Euler pseudoprimes, strong pseudoprimes, and Car- michael numbers. The theoretical upper bound and the heuristic lower bound due to Erdös for the counting function of the Carmichael numbers are both sharpened. Several new quick tests for primality are proposed, including some which combine pseudoprimes with Lucas sequences. 1. Introduction. According to Fermat's "Little Theorem", if p is prime and (a, p) = 1, then ap~1 = 1 (mod p). This theorem provides a "test" for primality which is very often correct: Given a large odd integer p, choose some a satisfying 1 <a <p - 1 and compute ap~1 (mod p). If ap~1 pi (mod p), then p is certainly composite. If ap~l = 1 (mod p), then p is probably prime. Odd composite numbers n for which (1) a"_1 = l (mod«) are called pseudoprimes to base a (psp(a)). (For simplicity, a can be any positive in- teger in this definition. We could let a be negative with little additional work. In the last 15 years, some authors have used pseudoprime (base a) to mean any number n > 1 satisfying (1), whether composite or prime.) It is well known that for each base a, there are infinitely many pseudoprimes to base a. -
1 Introduction and Contents
University of Padova - DEI Course “Introduction to Natural Language Processing”, Academic Year 2002-2003 Term paper Fast Matrix Multiplication PhD Student: Carlo Fantozzi, XVI ciclo 1 Introduction and Contents This term paper illustrates some results concerning the fast multiplication of n × n matrices: we use the adjective “fast” as a synonym of “in time asymptotically lower than n3”. This subject is relevant to natural language processing since, in 1975, Valiant showed [27] that Boolean matrix multiplication can be used to parse context-free grammars (or CFGs, for short): as a consequence, a fast boolean matrix multiplication algorithm yields a fast CFG parsing algorithm. Indeed, Valiant’s algorithm parses a string of length n in time proportional to TBOOL(n), i.e. the time required to multiply two n × n boolean matrices. Although impractical because of its high constants, Valiant’s algorithm is the asymptotically fastest CFG parsing solution known to date. A simpler (hence nearer to practicality) version of Valiant’s algorithm has been devised by Rytter [20]. One might hope to find a fast, practical parsing scheme which do not rely on matrix multiplica- tion: however, some results seem to suggest that this is a hard quest. Satta has demonstrated [21] that tree-adjoining grammar (TAG) parsing can be reduced to boolean matrix multiplication. Subsequently, Lee has proved [18] that any CFG parser running in time O gn3−, with g the size of the context-free grammar, can be converted into an O m3−/3 boolean matrix multiplication algorithm∗; the constants involved in the translation process are small. Since canonical parsing schemes exhibit a linear depen- dence on g, it can be reasonably stated that fast, practical CFG parsing algorithms can be translated into fast matrix multiplication algorithms.