Integer Factorization

Size: px
Start display at page:

Download "Integer Factorization"

Transcription

1 Integer Factorization Lecture given at the Joh. Gutenberg-Universität, Mainz, July 23, 1992 by ÖYSTEIN J. RÖDSETH University of Bergen, Department of Mathematics, Allégt. 55, N-5007 Bergen, Norway 1 Introduction The security of many cryptosystems relies on the assumption that factoring of large composite integers is a computationally infeasible problem. The most famous example is the RSA public key crypto-system [40], whose security depends on our inability to factor an integer n which is the product of two large primes. So the study of integer factoring algorithms and the design of faster factoring algorithms is a subject of great importance in cryptology. But Dickson s History [14] shows that these problems have also attracted the interest of some of the great mathematicians of the past such as Fermat, Euler, Legendre, and Gauss. In this short lecture I shall present some of the ideas behind the best factoring algorithms currently in use on computing devices. Most of the useful factoring algorithms fall into one of two classes. The first class is known as combination of congruences. This class contains algorithms such as Shank s Square Forms Factorization (SQUFOF) [42], Morrison and Brillhart s Continued Fraction Algorithm (CFRAC) [32], Pomerance s Quadratic Sieve (QS) [37], Montgomery s Multiple Polynomial Quadratic Sieve (MPQS) (see [37]), Pollard et. al. s Number Field Sieve (NFS) [26]. (See also [1], [28], [38].) 1

2 The second class is groups of smooth order ; cf. [38]. (An integer is smooth if it has only small prime factors.) Among the members of this class are Pollard s p 1 method [35], Williams p + 1 method [50], Bach and Shallit s Cyclotomic Polynomial Method [4], Schnorr and Lenstra s Class Group Method [41], H. W. Lenstra s Elliptic Curve Method (ECM) [3], [29], [30]. (See also [19], [48].) For the algorithms in the first class the run time depends mainly on the size of n, the number being factored, and is not strongly dependent on the size of the factor found. In the second class the run time depends mainly on the size of f, the factor found; cf. [7]. Suppose that we want to find a proper factor in a large integer n (having perhaps 100 decimal digits); i.e. a factor f such that 1 < f < n. Usually we begin by searching for small factors (perhaps up to 10 5 ) by trial division; see [51] for some short cuts. If no such factor is found, we then make one or more pseudoprime tests until we either discover that n is composite or are strongly convinced that it must be prime. In the latter case we may perhaps wish to look for a proof of primality. But let us here assume that we have the former case. We can then run Pollard s p 1 method and Williams p + 1 method for a while (and perhaps also the Pollard Rho [36]). If still no factor is found, we choose between (MP)QS, ECM, and NFS. Each of (MP)QS and ECM majorizes the other in certain situations. If the number n is the product of two primes roughly equal in magnitude, then the best method is MPQS. Otherwise ECM is the method of choice. If the number n arose in some random or natural concept, then most likely it is not of the form pq with p q. Therefore ECM should be tried first. If this method has been tried fruitlessly for some time, we can try MPQS. If we are factoring n so as to cryptoanalyze the RSA cryptosystem with modulus n, we might immediately go to MPQS, skipping ECM completely. The NFS is a quite new factoring method. It is remarkably fast for n of special form; i. e. if n = F (m) for an integer m and some low degree polynomial F (x) with small integer coefficients. There is also a version for general n, but this version is slower than that for n of special form. Heuristic running time estimates show, however, that the general NFS probably is faster than QS for large n, and computations of Silverman [46] indicate that the crossover point is somewhere between 140 and 150 decimal digits. But we don t know for certain if the general NFS in its current form(s) is of any practical value; cf. [1]. 2

3 2 Combination of congruences Fermat factored numbers n by representing them as n = x 2 y 2, x, y Z. (1) For if (1) holds, then n = ab for a = x y and b = x + y. On the other hand, if n is odd and n = ab for some a, b Z, then (1) holds with x = (a + b)/2 and y = (a b)/2. This method works if n has a factor very close to n; for examples see [8, p. 59], [39, p. 154]. Instead of searching for integers x, y satisfying (1), Kraitchik [20], [21], [22] followed an idea of Legendre (cf. [39]) and tried to find nontrivial (i. e. x ±y) solutions to the congruence x 2 y 2 (mod n). (2) If such a pair x, y is found, then we compute d = gcd(x y, n) by the Euclidean algorithm (which is very fast; see [18]). Now, if n is composite, there should be a fairly good chance that the prime divisors of n are distributed among the divisors of both x y and x + y, so that d is possibly a proper divisor of n. For n composite and x, y a random solution to (2), suppose that we have at least a 50% chance that d is a proper divisor of n. For 10 solutions we then have a better than 99.9% chance that at least one of them will lead to a factorization of n; cf. [38]. Of course, in practice we don t find random solutions to (2), but still this scheme should look very promising. Next, consider the factor base {p 0, p 1, p 2,..., p k }, where p 0 = 1 and the other p i are primes some smoothness bound B. For integers r, let g(r) r 2 (mod n). We wish to find integers r such that g(r) factors completely over the factor base, and this is most likely to happen if g(r) is small. Therefore we require that g(r) n/2. Suppose that it is possible to find integers r j, j = 0, 1,..., k + 10, such that g(r j ) factorizes completely over the factor base, i. e. g(r j ) = k i=0 p a ij i for j = 0, 1,..., k + 10, and where the a ij are non-negative integers. (These identities are called relations.) We now consider the system Aε = 0 over the finite field F 2 consisting of the two elements 0 and 1, and where A denotes the (k + 1) (k + 11) matrix A = (a ij mod 2) and ε is the column vector of the unknowns ε 0, ε 1,..., ε k+10. This system of linear equations has at least 10 linearly independent solutions. (For the solution of large linear systems over F 2, see [23].) Let ε 0, ε 1,..., ε k+10 {0, 1} be one of these solutions. Then we have k+10 j=0 a ij ε j = 2e i, i = 0, 1,..., k, 3

4 for non-negative integers e i, and We also have so that k+10 j=0 k+10 j=0 g(r j ) ε j = g(r j ) ε j x = k i=0 k+10 k j=0 i=0 k+10 j=0 p a ijε j i = r 2ε j j p e k+10 i i, y = k i=0 p 2e i i. (mod n), is a solution to (2). Also, if rj 2 > n/2 for all j, then x ±y. There are many important tricks to enhance the performance of the algorithms in this class. Among these are the use of a multiplier, the large and small prime variations, and the double large prime variation. Let us here just look at the large prime variation: For some r we are testing, suppose that g(r) factors over the factor base except for some factor q, which is not divisible by any of the primes in the factor base, g(r) = q If this happens with the same factor q for two different values of r, include q in the factor base and proceed as before. (Note that if q p 2, where p is the largest prime in the factor base and the factor base contains all the primes B, then q is also a prime.) 2.1 The quadratic sieve k i=0 p a i i. In the basic quadratic sieve algorithm we use the polynomial g(r) = r 2 n. Since we want g(r) to be small, we consider values of r in a neighbourhood of one of the zeros ± n. Let us choose the zero + n, and consider j=0 f(i) = g(r) for r = i + n and M i M, for some positive integer M. If also M < 0.22 n, then g(r) < n/2 < r 2. Further, if an odd prime p divides f(i) = g(r) for some integer i and p n, then n is a quadratic residue mod p. Hence we only include 1, 2, and odd primes p satisfying (n/p) = 1 in our factor base. (This observation seems to be due to Gauss, cf. [39, p. 160]. By quadratic resiprosity or Euler s Criterion, it is very fast to decide whether or not n is a quadratic residue mod a prime p. For a 100-decimal digit integer n a typical factor base would contain 50,000 elements.) 4 r ε j j

5 Next, we try to find integers i in the interval M i M, such that f(i) factors completely over our factor base (by trial division). But this is like looking for needles in a haystack. So this is where we set up the sieve. Before we start looking for the needles, we remove a lot of hay which at most contains only a few needles. We start with a vector (x M, x M+1,..., x M ), where x i = log f(i) for all i. (Only low precision calculations required.) For each of the odd primes in the factor base we compute the solutions t 1, t 2 to the congruence f(t) 0 (mod p). (Fast probabilistic polynomial time algorithms for solving quadratic congruences mod p are given in [2], [24], [34]; see also [43].) Then we subtract log p from the coordinate x i whenever i t 1 or t 2 (mod p). The prime 2 requires special treatment [12]. We may, for instance, assume that n 1 (mod 8), which is no restriction since we can assume n odd, and if necessary replace n by pn, for some (large) prime p 3, 5, or, 7 (mod 8). Then 8 divides f(i) whenever i + n is odd, and we subtract log 8 from all the corresponding coordinates x i. After this procedure, if i is one of of the needles we are searching for, and f(i) is not divisible by a high power of some prime in the factor base, then the corresponding coordinate x i should be close to 0. (The coordinate would be exactly 0 if there were no round-off errors for our logs and if the special value f(i) were not divisible by the square of an odd prime from the factor base, and if also 8 divided f(i) exactly if f(i) were even.) Thus after sieving, a scan of the vector and a report of any coordinate whose value is below some preset threshold will point out to us (not all, but most of) the special values of i we are searching for. There may also be a few false reports, but with a proper choice of threshold, this is not a big problem; see [45]. 2.2 The multiple polynomial quadratic sieve An f(i) is most likely to factor over the factor base when f(i) is small; that is when i is close to zero. The idea is now to take shorter intervals for i, but use several different quadratic polynomials in i. For integers a, b, c we look at Then F (i) = ai 2 + 2bi + c, n = b 2 ac, a 0. af (i) = (ai + b) 2 n, and the rest goes as before. In particular we can use the same factor base as above. Some recommendations for the choice of a can be found in [38]. In particular, it is best to use an odd a with known prime factorization. Then it is easy to 5

6 determine an integer b satisfying b 2 n (mod a), b < a 2, and we put c = (b 2 n)/a. The parabola y = F (x) attains its minimum at the point x = b/a, which is now between 1/2 and 1/2. As before, we only want to consider values of i for which F (i) is small. Once more we therefore let M i M, and we choose the optimal situation F (±M) F ( b/a). For a prescribed M, this is accomplished by setting a 2n/M. This scheme is of course excellent suited for parallelization. Run different polynomials on different nodes to produce columns for the matrix A. Then solve the system of linear equations mod 2 etc. on the host computer (perhaps a 16K MasPar). But even with only one processor the multiple polynomial variation of the QS algorithm works so well that we optimize performance by switching polynomials as fast as possible; cf. [38]. 2.3 The number field sieve The main idea behind the NFS is roughly as follows. First choose a non-negative integer d. If there are integers e, r, s such that n = r e s with r, e > 0 and r, s small, let k = e/d, m = r k, c = sr kd e, and put F (x) = x d c. Otherwise, choose an integer m but close to n 1/d. Write n as n = c 0 + c 1 m + c d m d, with non-negative integers c i < m, and put F (x) = c 0 + c 1 x + + c d x d. Since n F (m), and also n = F (m) in the second case, a non-trivial factorization of the polynomial F (x) will probably give us a proper factor of n. So let us assume that F (x) is irreducible in Z[x], and put K = Q(α) for some zero α of F (x). A homomorphism φ : Z[α] Z/nZ is defined by putting φ(α) = m and letting the restriction of φ to Z be the natural homomorphism. Next, put p 0 = 1, and let p 1 < p 2 < < p k be rational primes the smoothness bound B. Also, let γ 1, γ 2,..., γ M Z[α]. We now try to find pairs of coprime rational integers a j, b j such that a j + mb j = k i=0 p a ij i, a j + αb j = M i=1 γ a k+i,j i, 0 a ij Z, j = 0, 1,..., L. Suppose that L > k + M. As in Section 2, we then find ɛ i {0, 1}, not all zero, such that Now it is easily seen that L a ij ɛ j = 2e i, 0 e i Z, i = 0, 1,..., k + M. j=0 x = k i=0 p e i i, y = 6 M φ(γ i ) e k+i i=1

7 is a solution to (2). In applications, K has class number 1 and each γ has norm ±p i for some i = 0, 1,..., k. Also, sieve methods corresponding to the one in Section 2.1 are used to find pairs of coprime rational integers a, b such that both a + mb and the norm of a + αb factor over our factor base {p 0,..., p k }; for details see [26]. 3 Groups of smooth order Also in this case we want to find an integer X such that X 0 (mod n) and X 0 (mod p) for some prime factor p of n. For then we have that gcd(x, n) is a proper divisor of n. The method of using groups of smooth order for the determination of candidates for X is best illustrated by the Pollard p 1 method below. Futher we shall also look at the elliptic curve method which can be considered as obtained from the Pollard p 1 by replacing the multiplicative group F p by the group of points on a random elliptic curve over F p. 3.1 The Pollard p 1 Suppose that p 1 k! for some prime factor p n and some preset choice of k. (Perhaps k = 10 5 or k = Instead of k! some people prefer to use lcm{1, 2,..., k} or some slightly more complicated expression; also in the ECM below. In any case, the success of the methods in this class also depends on a lucky choice of k, which must be not too small and not too large; usually we have to try several values of k.) Let a be an integer prime to n. From Fermat s little theorem we have a p 1 1 (mod p), so that a k! 1 (mod p). Putting X = a k! 1, we have p d = gcd(x, n), so if X 0 (mod n), then d is a proper divisor of n. Here it is, of course, important that d can be computed without knowing p. 3.2 The elliptic curve method Let F be a field of characteristic 2, 3. For a, b F, put and suppose that 0. Then the set = 4a 3 27b 2, E a,b (F ) = {(x, y) F 2 y 2 = x 3 + ax + b} {O}, 7

8 where O is the so-called point at infinity, is called an elliptic curve (on Weierstrass normal form) over F with parameters a and b. There is a well-known way (the chord and tangent method ; see [3], [17], [44], [47]) of defining a point addition that makes E a,b (F ) into an Abelian group with identity O. To see how this is done, let us first consider the case F = R, the field of real numbers. Then we have a mental picture of what the curve E = E a,b (R) looks like, and we think of O as lying infinitely far off in the direction of the y-axis. Consider a line that meets E in two points P and Q. (If P = Q, we take the tangent at the point P = Q.) Suppose that this line is not parallel to the y-axis. Then it follows by simple algebra that this line meets E in a unique third point R = (x, y). We then define P + Q = (x, y). If the axiliary line is parallel to the y-axis, then we put P + Q = O. Finally we put P + O = O + P = P for any P E. Now, it is not hard to see that the elliptic curve E is an Abelian group under this point addition. So, the rules are as follows. and if P = (x 1, y 1 ), Q = (x 2, y 2 ), then P + O = O + P = P for all P E, P + Q = O if x 1 = x 2 and y 1 = y 2, P + Q = (λ 2 x 1 x 2, λ 3 + λ(2x 1 + x 2 ) y 1 ) otherwise, where λ is the slope of the line joining P and Q, λ = y 1 y 2 x 1 x 2 if x 1 x 2, 3x a 2y 1 if P = Q and y 1 0. (3) Now, let us return to the integer n we want to factor. Let a, b Z satisfy gcd(6, n) = 1. (4) We then get an elliptic curve mod n E a,b (n) by replacing the field F above by the ring Z/nZ. We also use the formulas above to define a pseudo-addition on E a,b (n). Now, equality means congruence mod n. Further, for the inverses of x 1 x 2 and y 1 to be defined in (3), the conditions x 1 x 2 and y 1 0 have to be replaced by gcd(x 1 x 2, n) = 1 and gcd(y 1, n) = 1, respectively. When n is composite, this does not make E a,b (n) into a group, for the addition is not defined for all pair of points. However, if we find two points P = (x 1, y 1 ) and Q = (x 2, y 2 ) for which the sum is not defined, then gcd(x, n) > 1 for X = x 1 x 2 or X = y 1, and we have a possible proper factor of n. 8

9 Hence we want to find two points in E a,b (n) for which the sum is not defined. Usually we start by choosing integers a, x, y in the interval ( n/2, n/2), and determine b Z such that b y 2 x 3 ax (mod n), b < n/2. Check if (4) holds. If (4) doesn t hold, we have a possible proper factor of n. If the gcd in (4) equals n, try a new set of values of a, x, y. Now suppose that (4) holds. For R = (x, y) and some preset choice of k, we then try to compute k!r = R + R + + R (k! terms) by the binary method. If this attempt fails, then we have probably discovered a proper divisor of n. To see why the chances are good that the process fails for some choice of a, x, y, we consider a prime factor p of n. So far we have performed our calculations mod n. But then these calculations are also valid mod p. The elliptic curve E a,b (p) = E a,b (F p ) is a finite Abelian group (of rank 1 or 2; cf. [10]). A celebrated theorem of Hasse [16] is that p p < #E a,b (p) < p p, and by a theorem of Deuring [13] we have that every integer in this interval is attained as #E a,b (p) for some choice of a, b F p with 0. Suppose that m k! for some integer m in the interval p p < m < p p. Then the idea is to randomly choose a, x, y until we find a curve satisfying #E a,b (p) = m. By Deuring s theorem there is a possibility of of success, and by results of Birch [5], Waterhouse [49] and others on the distribution of the orders #E a,b (p), the chances are particularly good if m lies in the interval p p < m < p + p. (Also in Pollard s p 1 we needed an m k!, but then we had only one possible choice for m, namely m = p 1.) So, let us assume that #E a,b (p) k!. Also suppose that we succeeded in computing k!r and that k!r O in E a,b (n). In this computation, let P + Q = k!r be the last addition for which P = (x 1, y 1 ) and Q = (x 2, y 2 ) both are O. Then P + Q = k!r = O in E a,b (p), and so that x 1 x 2 y 1 y 2 (mod p), p gcd(x 1 x 2, n) p gcd(y 1 + y 2, n). Hence P + Q is not defined in E a,b (n); a contradiction. Thus we either have k!r = O in E a,b (n), or our attempt to compute k!r in E a,b (n) will eventually lead us to two points for which the sum is not defined, and then we have probably also found a proper factor of n. In summary, the steps in the ECM are: Choose a and R = (x, y). Try to compute k!r in E a,b (n). If this doesn t give a proper factor of n, we try other points R. After many unsuccessful attempts, we try another a. Here we also see 9

10 that the ECM can be distributed over any number of machines, since it consists of a number of independent factorization trials. For an interesting implementation of the ECM on a 16K MasPar, see [15]. There are, of course, various tricks to speed up the performance of the ECM. We can use a different parametrization (instead of the Weierstrass form), we can use homogeneous coordinates, and we have the so-called second step ; cf. [31], [38]. 4 Running time As usual, by running time we mean the number of bit operations required to perform a task. The running time estimates for many factoring algorithms are not rigorously proved, but relies usually on some (unproved but commonly accepted) hypothesis concerning the distribution of divisors in integers. In particular, this is so for the running time estimates given below for (MP)QS, NFS, and ECM. A polynomial time algorithm for factoring n, is one which runs in time O((log n) c ) for some constant c. However, no such algorithm is known. The (MP)QS and ECM run in time O(n σ ) for any σ > 0; cf. [7]. The heuristic expected run time estimates are, however, better than this. Put L x [r, c] = exp((c + ɛ)(log x) r (log log x) 1 r ), where ɛ 0 as x. Note that for c and r fixed, then as x, L x [r, c] grows faster than any power of log x and more slowly than x σ for any σ > 0. The expected run time of the (MP)QS to factor n is L n [1/2, 1] (cf. [33], [37]) and that of the ECM is O((log n) 2 L p [1/2, 2]), where p is the smallest prime factor of n; cf. [29]. Further, a suitable version of the NFS seems to factor an n of special form in expected time L n [1/3, c], where c = 2(2/3) 2/ , while the general NFS also runs in time L n [1/3, c], but with a bigger value for c (c = 2 2/ [26], c 1.92 [1], c 1.90 [11]). 5 Numerical examples The Cunningham Project [9] is the standard reference for explicit numerical results of the various factorization algorithms. In particuler, CFRAC and Pollard s p 1 have factored hundreds of numbers in this project. Here we shall only mention a few of the most recent results. Brent [6] completed the factorization of the eleventh Fermat number Actually he factored the c 606 = F 11 /( ) as p 21 p 22 p 564. (We use c i to denote a composite integer with i decimal digits, and p i now denotes a prime with i decimal digits.) Here the p 21 and the p 22 were found using the ECM, and then 10

11 the remaining 564-decimal digit cofactor was proved prime. The factorization took less than 2 hours on a Fujitsu VP 100 vector processor. Using the MPQS and a worldwide distibuted network of work stations communicating with the host computer by electronic mail, Lenstra and Manasse [27] have factored numbers having up to 106 decimal digits (a divisor c 106 of , which it took them four months to factor); the last of the numbers factored was c 103 = ( )/( ), which factored as p 43 p 61. Using an improved version of the MPQS and 80 Firefly stations (each with 5 processors), Lenstra and Manasse [28] factored a c 107 in 50 days, using a factor base of 65,000 elements. Lenstra and Manasse [28] further used MPQS and their electronic mail network to factor two c 111 using a factor base of 80,000 elements. One of the numbers factored was c 111 = ( )/(p 2 p 3 p 6 p 10 p 10 ), which factored as p 50 p 61 (in two months). In the latter half of 1990, they increased the factorbase to 120,000 elements in an attempt to factor a c 116 ; cf. [38]. It took 400 MIP years to complete this job; cf. [25]. In the spring of 1990 Lenstra et. al. used their NFS [26] and the electronic mail network to factorize the ninth Fermat number F 9 = Actually, they factored the c 148 = F 9 / , which factored as p 49 p 99. In comparison, the largest prime factors ever dicovered by the ECM is a p 40 by Dixon and A. K. Lenstra, and a p 42 by Rusin; cf. [15]. Also, a c 148 is far too big for the current implementations of the MPQS. Finally, RSA crytposystems are being used nowadays with keys of 512 bits; that is, the modulus is a c 155. But factoring a c 155 is not as impossible as many people would like it to be; cf. [25], [27]. It is, however, recommended to use a modulus pq, where each of the primes p and q has approximately 100 decimal digits. References [1] L. Adleman, Factoring numbers using singular integers, Proc. 23rd Ann. ACM Symp. on Theory of Computing, New Orleans 1991, pp [2] L. Adleman, K. Manders and G. Miller, On taking square roots in finite fields, Proc. 20th Ann. Symp. Foundations Comp. Sci. (1979), pp [3] E. Bach, Lenstra s algorithm for factoring with elliptic curves, Exposé, Comp. Sci. Dept., Univ. Wisconsin, Madison [4] E. Bach and J. Shallit, Factoring with cyclotomic polynomials, Math. Comp. 52 (1989) [5] B. J. Birch, How the number of points of an elliptic curve over a fixed prime field varies, J. London Math. Soc. 43 (1968)

12 [6] R. P. Brent, Factorization of the eleventh Fermat number, AMS Abstracts 10 (1989) 89T [7] R. P. Brent, Parallel algorithms for integer factorisation, in: J. H. Loxton (ed.), Number Theory and Cryptography, London Math. Soc. Lecture Note Series 154, Cambridge Univ. Press 1990, pp [8] D. M. Bressoud, Factorization and Primality Testing, Springer-Verlag, New York [9] J. Brillhart, D. H. Lehmer, J. L. Selfridge, B. Tuckerman and S. S. Wagstaff, Jr., Factorizations of b n ± 1 for b = 2, 3, 5, 6, 7, 11, 12 up to high powers, second edition, Amer. Math. Soc., Providence [10] J. W. S. Cassels, Diophantine equations with special reference to elliptic curves, J. London Math. Soc. 41 (1966) [11] D. Coppersmith, Modifications to the number field sieve, IBM Research Report #RC 16264, Nov. 1990, updated Mar [12] J. A. Davis, D. B. Holdrige and G. J. Simmons, Status report on factoring, in: T. Beth, N. Cot and I. Ingemarsson (eds.), Advances in Cryptology EUROCRYPT 84, Lecture Notes in Comput. Sci. vol. 209, Springer-Verlag 1985, pp [13] M. Deuring, Die Typen der Multiplikatorenringe elliptischer Funktionenkörper, Abh. Math. Sem. Hansischen Univ. 14 (1941) [14] L. E. Dickson, History of the Theory of Numbers, vol. 1 (reprint), Chelsea, New York [15] B. Dixon and A. K. Lenstra, Massively parallel elliptic curve factoring, Extended Abstracts of EUROCRYPT 92, Budapest 1992, pp [16] H. Hasse, Abstrakte Begründung der komplexen Multiplikation und riemannsche Vermutung in Funktionenkörpern, Abh. Math. Sem. Hamburg 10 (1934) [17] K. Ireland and M. Rosen, A Clasical Introduction to Number Theory, 2nd ed., Graduate Texts in Mathematics no. 84, Springer-Verlag, New York [18] D. E. Knuth, The Art of Computer Programming, vol. 2, Seminumerical Algorithms, Second ed., Addison-Wesley, Reading, MA [19] N. Koblitz, A Course in Number Theory and Cryptography, Graduate Texts In Mathematics no. 114, Springer-Verlag, New York

13 [20] M. Kraitchik, Théorie des Nombres, Gauthier-Villars, Paris 1922, pp [21] M. Kraitchik, Théorie des Nombres. Tome II, Gauthier-Villars, Paris 1926, pp [22] M. Kraitchik, Recherches sur la théorie des nombres. Tome II, Factorisation, Gauthier-Villars, Paris [23] B. A. LaMacchia and A. M. Odlyzko, Solving large sparse linear systems over finite fields, in: A. J. Menezes and S. A. Vanstone (eds.), Advances in Cryptology CRYPTO 90, Springer-Verlag, Berlin 1991, pp [24] D. H. Lehmer, Computer technology applied to the theory of numbers, in: W. J. LeVeque (ed.), Studies in Number Theory, Prentice-Hall Inc., N. J. 1969, [25] A. K. Lenstra, in: Public-Key Cryptography: State of the Art and Future Directions, E.I.S.S.-Workshop, Tagungsbericht 28a/1991, Math. Forschungsinstitut Oberwolfach [26] A. K. Lenstra, H. W. Lenstra, Jr., M. S. Manasse and J. M. Pollard, The number field sieve, Proc. 22nd Ann. ACM Symp. on Theory of Computing, Baltimore 1990, pp [27] A. K. Lenstra and M. S. Manasse, Factoring by electronic mail, in: J.-J. Quisquater and J. Vandewalle (eds.), Advances in Cryptology EUROCRYPT 89, Lecture Notes in Comput. Sci. vol. 434, Springer-Verlag, Berlin 1990, pp [28] A. K. Lenstra and M. S. Manasse, Factoring with two large primes, in: I. B. Damgård (ed.), Advances in Cryptology EUROCRYPT 90, Lecture Notes in Comput. Sci. vol. 473, Springer-Verlag, Berlin 1991, pp [29] H. W. Lenstra, Jr., Factoring integers with elliptic curves, Ann. of Math. 126 (1987) [30] H. W. Lenstra, Jr., Elliptic curves and number-theoretic algorithms, in: A. M. Gleason (ed.), Proc. Int l. Cong. Math., vol. 1, Amer. Math. Soc. 1987, pp [31] P. L. Montgomery, Speeding up the Pollard and elliptic curve methods of factorization, Math. Comp. 48 (1987) [32] M. A. Morrison and J. Brillhart, A method of factoring and the factorization of F 7, Math. Comp. 29 (1975)

14 [33] P. C. van Oorschot, A comparison of practical public key cryptosystems based on integer factorization and discrete logarithms, in: G. J. Simmons (ed.), Contemporary Cryptology, IEEE Press, New York [34] R. C. Peralta, A simple and fast probabilistic algorithm for computing square roots modulo a prime number, IEEE Trans. Inform. Theory 32 (1986) [35] J. M. Pollard, Theorems on factorization and primality testing, Proc. Camb. Phil. Soc. 76 (1974) [36] J. M. Pollard, A Monte Carlo method for factorization, BIT 15 (1975) [37] C. Pomerance, Analysis and comparison of some integer factoring algorithms, in: H. W. Lenstra, Jr. and R. Tijdeman (eds.), Computational Methods in Number Theory, Part I, Math. Centre Tract no. 154, Math. Centrum, Amsterdam [38] C. Pomerance, Factoring, in: C. Pomerance (ed.), Cryptology and Computational Number Theory, Proc. Symp. Applied Math., vol. 42, Amer. Math. Soc. 1990, pp [39] H. Riesel, Prime Numbers and Computer Methods for Factorization, Birkhauser, Boston [40] R. Rivest, A. Shamir and L. M. Adleman, A method for obtaining digital signatures and public key cryptosystems, Comm. ACM 21 (1978) [41] C. P. Schnorr and H. W. Lenstra, Jr., A Monte Carlo factoring algorithm with linear storage, Math. Comp. 43 (1984) [42] D. Shanks, Class number, a theory of factorization, and genera, Proc. Symp. Pure Math., vol. 20, Amer. Math. Soc. 1971, pp [43] R. Schoof, Elliptic curves over finite fields and the computation of square roots mod p, Math. Comp. 44 (1985) [44] J. H. Silverman, The Arithmetic of Elliptic Curves, Graduate Texts in Mathematics no. 106, Springer-Verlag, New York [45] R. D. Silverman, The multiple polynomial quadratic sieve, Math. Comp. 48 (1987) [46] R. D. Silverman, Computational experience with the general Number Field Sieve, Tagungsbericht 29/1991 Computational Number Theory, Math. Forschungsinstitut Oberwolfach

15 [47] J. T. Tate, The arithmetic of elliptic curves, Invent. Math. 23 (1974) [48] S. S. Wagstaff, Jr. and J. W. Smith, Methods of factoring large integers, in: D. V. Chudnovsky, G. V. Chudnovsky, H. Cohn and M. B. Nathanson (eds.), Number Theory, Lecture Notes in Mathematics no. 1240, Springer-Verlag, Berlin 1987, pp [49] W. C. Waterhouse, Abelian varieties over finite fields, Ann. Sci. Ecole Norm. Sup. (4) 2 (1969) [50] H. C. Williams, A p+1 method of factoring, Math. Comp. 39 (1982) [51] H. C. Williams, Factoring on a computer, Math. Intelligencer 6 (1984)

The Quadratic Sieve Factoring Algorithm

The Quadratic Sieve Factoring Algorithm The Quadratic Sieve Factoring Algorithm Eric Landquist MATH 488: Cryptographic Algorithms December 14, 2001 1 Introduction Mathematicians have been attempting to find better and faster ways to factor composite

More information

International Journal of Information Technology, Modeling and Computing (IJITMC) Vol.1, No.3,August 2013

International Journal of Information Technology, Modeling and Computing (IJITMC) Vol.1, No.3,August 2013 FACTORING CRYPTOSYSTEM MODULI WHEN THE CO-FACTORS DIFFERENCE IS BOUNDED Omar Akchiche 1 and Omar Khadir 2 1,2 Laboratory of Mathematics, Cryptography and Mechanics, Fstm, University of Hassan II Mohammedia-Casablanca,

More information

Factorizations of a n ± 1, 13 a < 100

Factorizations of a n ± 1, 13 a < 100 Factorizations of a n ± 1, 13 a < 100 Richard P. Brent Computer Sciences Laboratory, Australian National University GPO Box 4, Canberra, ACT 2601, Australia e-mail: [email protected] and Herman J. J.

More information

Factorization Methods: Very Quick Overview

Factorization Methods: Very Quick Overview Factorization Methods: Very Quick Overview Yuval Filmus October 17, 2012 1 Introduction In this lecture we introduce modern factorization methods. We will assume several facts from analytic number theory.

More information

Arithmetic algorithms for cryptology 5 October 2015, Paris. Sieves. Razvan Barbulescu CNRS and IMJ-PRG. R. Barbulescu Sieves 0 / 28

Arithmetic algorithms for cryptology 5 October 2015, Paris. Sieves. Razvan Barbulescu CNRS and IMJ-PRG. R. Barbulescu Sieves 0 / 28 Arithmetic algorithms for cryptology 5 October 2015, Paris Sieves Razvan Barbulescu CNRS and IMJ-PRG R. Barbulescu Sieves 0 / 28 Starting point Notations q prime g a generator of (F q ) X a (secret) integer

More information

An Overview of Integer Factoring Algorithms. The Problem

An Overview of Integer Factoring Algorithms. The Problem An Overview of Integer Factoring Algorithms Manindra Agrawal IITK / NUS The Problem Given an integer n, find all its prime divisors as efficiently as possible. 1 A Difficult Problem No efficient algorithm

More information

Primality Testing and Factorization Methods

Primality Testing and Factorization Methods Primality Testing and Factorization Methods Eli Howey May 27, 2014 Abstract Since the days of Euclid and Eratosthenes, mathematicians have taken a keen interest in finding the nontrivial factors of integers,

More information

Primality - Factorization

Primality - Factorization Primality - Factorization Christophe Ritzenthaler November 9, 2009 1 Prime and factorization Definition 1.1. An integer p > 1 is called a prime number (nombre premier) if it has only 1 and p as divisors.

More information

Integer Factorization using the Quadratic Sieve

Integer Factorization using the Quadratic Sieve Integer Factorization using the Quadratic Sieve Chad Seibert* Division of Science and Mathematics University of Minnesota, Morris Morris, MN 56567 [email protected] March 16, 2011 Abstract We give

More information

2 Primality and Compositeness Tests

2 Primality and Compositeness Tests Int. J. Contemp. Math. Sciences, Vol. 3, 2008, no. 33, 1635-1642 On Factoring R. A. Mollin Department of Mathematics and Statistics University of Calgary, Calgary, Alberta, Canada, T2N 1N4 http://www.math.ucalgary.ca/

More information

FACTORING. n = 2 25 + 1. fall in the arithmetic sequence

FACTORING. n = 2 25 + 1. fall in the arithmetic sequence FACTORING The claim that factorization is harder than primality testing (or primality certification) is not currently substantiated rigorously. As some sort of backward evidence that factoring is hard,

More information

Factoring Algorithms

Factoring Algorithms Factoring Algorithms The p 1 Method and Quadratic Sieve November 17, 2008 () Factoring Algorithms November 17, 2008 1 / 12 Fermat s factoring method Fermat made the observation that if n has two factors

More information

LUC: A New Public Key System

LUC: A New Public Key System LUC: A New Public Key System Peter J. Smith a and Michael J. J. Lennon b a LUC Partners, Auckland UniServices Ltd, The University of Auckland, Private Bag 92019, Auckland, New Zealand. b Department of

More information

STUDY ON ELLIPTIC AND HYPERELLIPTIC CURVE METHODS FOR INTEGER FACTORIZATION. Takayuki Yato. A Senior Thesis. Submitted to

STUDY ON ELLIPTIC AND HYPERELLIPTIC CURVE METHODS FOR INTEGER FACTORIZATION. Takayuki Yato. A Senior Thesis. Submitted to STUDY ON ELLIPTIC AND HYPERELLIPTIC CURVE METHODS FOR INTEGER FACTORIZATION by Takayuki Yato A Senior Thesis Submitted to Department of Information Science Faculty of Science The University of Tokyo on

More information

MATH 168: FINAL PROJECT Troels Eriksen. 1 Introduction

MATH 168: FINAL PROJECT Troels Eriksen. 1 Introduction MATH 168: FINAL PROJECT Troels Eriksen 1 Introduction In the later years cryptosystems using elliptic curves have shown up and are claimed to be just as secure as a system like RSA with much smaller key

More information

Update # 5 to Factorizations of b n ± 1

Update # 5 to Factorizations of b n ± 1 Update # 5 to Factorizations of b n ± 1 Samuel S. Wagstaff, Jr. The following tables present the updates made to Factorizations of b n ± 1from October 23, 1982, when the first edition went to press, to

More information

NEW DIGITAL SIGNATURE PROTOCOL BASED ON ELLIPTIC CURVES

NEW DIGITAL SIGNATURE PROTOCOL BASED ON ELLIPTIC CURVES NEW DIGITAL SIGNATURE PROTOCOL BASED ON ELLIPTIC CURVES Ounasser Abid 1, Jaouad Ettanfouhi 2 and Omar Khadir 3 1,2,3 Laboratory of Mathematics, Cryptography and Mechanics, Department of Mathematics, Fstm,

More information

Optimization of the MPQS-factoring algorithm on the Cyber 205 and the NEC SX-2

Optimization of the MPQS-factoring algorithm on the Cyber 205 and the NEC SX-2 Optimization of the MPQS-factoring algorithm on the Cyber 205 and the NEC SX-2 Walter Lioen, Herman te Riele, Dik Winter CWI P.O. Box 94079, 1090 GB Amsterdam, The Netherlands ABSTRACT This paper describes

More information

Study of algorithms for factoring integers and computing discrete logarithms

Study of algorithms for factoring integers and computing discrete logarithms Study of algorithms for factoring integers and computing discrete logarithms First Indo-French Workshop on Cryptography and Related Topics (IFW 2007) June 11 13, 2007 Paris, France Dr. Abhijit Das Department

More information

The number field sieve

The number field sieve The number field sieve A.K. Lenstra Bellcore, 435 South Street, Morristown, NJ 07960 H.W. Lenstra, Jr. Department of Mathematics, University of California, Berkeley, CA 94720 M.S. Manasse DEC SRC, 130

More information

U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009. Notes on Algebra

U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009. Notes on Algebra U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009 Notes on Algebra These notes contain as little theory as possible, and most results are stated without proof. Any introductory

More information

Elements of Applied Cryptography Public key encryption

Elements of Applied Cryptography Public key encryption Network Security Elements of Applied Cryptography Public key encryption Public key cryptosystem RSA and the factorization problem RSA in practice Other asymmetric ciphers Asymmetric Encryption Scheme Let

More information

Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

More information

A Factoring and Discrete Logarithm based Cryptosystem

A Factoring and Discrete Logarithm based Cryptosystem Int. J. Contemp. Math. Sciences, Vol. 8, 2013, no. 11, 511-517 HIKARI Ltd, www.m-hikari.com A Factoring and Discrete Logarithm based Cryptosystem Abdoul Aziz Ciss and Ahmed Youssef Ecole doctorale de Mathematiques

More information

Elementary factoring algorithms

Elementary factoring algorithms Math 5330 Spring 013 Elementary factoring algorithms The RSA cryptosystem is founded on the idea that, in general, factoring is hard. Where as with Fermat s Little Theorem and some related ideas, one can

More information

Runtime and Implementation of Factoring Algorithms: A Comparison

Runtime and Implementation of Factoring Algorithms: A Comparison Runtime and Implementation of Factoring Algorithms: A Comparison Justin Moore CSC290 Cryptology December 20, 2003 Abstract Factoring composite numbers is not an easy task. It is classified as a hard algorithm,

More information

Faster deterministic integer factorisation

Faster deterministic integer factorisation David Harvey (joint work with Edgar Costa, NYU) University of New South Wales 25th October 2011 The obvious mathematical breakthrough would be the development of an easy way to factor large prime numbers

More information

Cryptography and Network Security Chapter 8

Cryptography and Network Security Chapter 8 Cryptography and Network Security Chapter 8 Fifth Edition by William Stallings Lecture slides by Lawrie Brown (with edits by RHB) Chapter 8 Introduction to Number Theory The Devil said to Daniel Webster:

More information

How To Factor In Prime Numbers

How To Factor In Prime Numbers USING LUCAS SEQUENCES TO FACTOR LARGE INTEGERS NEAR GROUP ORDERS Zhenxiang Zhang* Dept. of Math., Anhui Normal University, 241000 Wuhu, Anhui, P.R. China e-mail: [email protected] (Submitted

More information

http://wrap.warwick.ac.uk/

http://wrap.warwick.ac.uk/ Original citation: Hart, William B.. (2012) A one line factoring algorithm. Journal of the Australian Mathematical Society, Volume 92 (Number 1). pp. 61-69. ISSN 1446-7887 Permanent WRAP url: http://wrap.warwick.ac.uk/54707/

More information

Short Programs for functions on Curves

Short Programs for functions on Curves Short Programs for functions on Curves Victor S. Miller Exploratory Computer Science IBM, Thomas J. Watson Research Center Yorktown Heights, NY 10598 May 6, 1986 Abstract The problem of deducing a function

More information

The Mathematics of the RSA Public-Key Cryptosystem

The Mathematics of the RSA Public-Key Cryptosystem The Mathematics of the RSA Public-Key Cryptosystem Burt Kaliski RSA Laboratories ABOUT THE AUTHOR: Dr Burt Kaliski is a computer scientist whose involvement with the security industry has been through

More information

' DEC SRC, 130 Lytton Avenue, Palo Alto, CA 94301, U.S.A

' DEC SRC, 130 Lytton Avenue, Palo Alto, CA 94301, U.S.A On the factorization of RSA-120 T. Denny1, B. Dodson2, A. K. Lenstra3, M. S. Manasse4 * Lehrstuhl Prof. Buchmann, Fachbereich Informatik, Universitit des Saarlandes, Postfach 1150, 66041 Saarbriicken,

More information

Principles of Public Key Cryptography. Applications of Public Key Cryptography. Security in Public Key Algorithms

Principles of Public Key Cryptography. Applications of Public Key Cryptography. Security in Public Key Algorithms Principles of Public Key Cryptography Chapter : Security Techniques Background Secret Key Cryptography Public Key Cryptography Hash Functions Authentication Chapter : Security on Network and Transport

More information

Factoring Algorithms

Factoring Algorithms Institutionen för Informationsteknologi Lunds Tekniska Högskola Department of Information Technology Lund University Cryptology - Project 1 Factoring Algorithms The purpose of this project is to understand

More information

CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY

CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY January 10, 2010 CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY The set of polynomials over a field F is a ring, whose structure shares with the ring of integers many characteristics.

More information

Smooth numbers and the quadratic sieve

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

More information

Notes on Factoring. MA 206 Kurt Bryan

Notes on Factoring. MA 206 Kurt Bryan The General Approach Notes on Factoring MA 26 Kurt Bryan Suppose I hand you n, a 2 digit integer and tell you that n is composite, with smallest prime factor around 5 digits. Finding a nontrivial factor

More information

The Sieve Re-Imagined: Integer Factorization Methods

The Sieve Re-Imagined: Integer Factorization Methods The Sieve Re-Imagined: Integer Factorization Methods by Jennifer Smith A research paper presented to the University of Waterloo in partial fulfillment of the requirement for the degree of Master of Mathematics

More information

The van Hoeij Algorithm for Factoring Polynomials

The van Hoeij Algorithm for Factoring Polynomials The van Hoeij Algorithm for Factoring Polynomials Jürgen Klüners Abstract In this survey we report about a new algorithm for factoring polynomials due to Mark van Hoeij. The main idea is that the combinatorial

More information

ELLIPTIC CURVES AND LENSTRA S FACTORIZATION ALGORITHM

ELLIPTIC CURVES AND LENSTRA S FACTORIZATION ALGORITHM ELLIPTIC CURVES AND LENSTRA S FACTORIZATION ALGORITHM DANIEL PARKER Abstract. This paper provides a foundation for understanding Lenstra s Elliptic Curve Algorithm for factoring large numbers. We give

More information

CONTINUED FRACTIONS AND FACTORING. Niels Lauritzen

CONTINUED FRACTIONS AND FACTORING. Niels Lauritzen CONTINUED FRACTIONS AND FACTORING Niels Lauritzen ii NIELS LAURITZEN DEPARTMENT OF MATHEMATICAL SCIENCES UNIVERSITY OF AARHUS, DENMARK EMAIL: [email protected] URL: http://home.imf.au.dk/niels/ Contents

More information

RSA Question 2. Bob thinks that p and q are primes but p isn t. Then, Bob thinks Φ Bob :=(p-1)(q-1) = φ(n). Is this true?

RSA Question 2. Bob thinks that p and q are primes but p isn t. Then, Bob thinks Φ Bob :=(p-1)(q-1) = φ(n). Is this true? RSA Question 2 Bob thinks that p and q are primes but p isn t. Then, Bob thinks Φ Bob :=(p-1)(q-1) = φ(n). Is this true? Bob chooses a random e (1 < e < Φ Bob ) such that gcd(e,φ Bob )=1. Then, d = e -1

More information

Mathematics of Computation, Vol. 41, No. 163. (Jul., 1983), pp. 287-294.

Mathematics of Computation, Vol. 41, No. 163. (Jul., 1983), pp. 287-294. Factoring Large Numbers with a Quadratic Sieve Joseph L. Gerver Mathematics of Computation, Vol. 41, No. 163. (Jul., 1983), pp. 287-294. Stable URL: http://links.jstor.org/sici?sici=0025-5718%28198307%2941%3a163%3c287%3aflnwaq%3e2.0.co%3b2-4

More information

SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES

SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES www.arpapress.com/volumes/vol8issue1/ijrras_8_1_10.pdf SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES Malek Jakob Kakish Amman Arab University, Department of Computer Information Systems, P.O.Box 2234,

More information

Factoring integers, Producing primes and the RSA cryptosystem Harish-Chandra Research Institute

Factoring integers, Producing primes and the RSA cryptosystem Harish-Chandra Research Institute RSA cryptosystem HRI, Allahabad, February, 2005 0 Factoring integers, Producing primes and the RSA cryptosystem Harish-Chandra Research Institute Allahabad (UP), INDIA February, 2005 RSA cryptosystem HRI,

More information

I. Introduction. MPRI Cours 2-12-2. Lecture IV: Integer factorization. What is the factorization of a random number? II. Smoothness testing. F.

I. Introduction. MPRI Cours 2-12-2. Lecture IV: Integer factorization. What is the factorization of a random number? II. Smoothness testing. F. F. Morain École polytechnique MPRI cours 2-12-2 2013-2014 3/22 F. Morain École polytechnique MPRI cours 2-12-2 2013-2014 4/22 MPRI Cours 2-12-2 I. Introduction Input: an integer N; logox F. Morain logocnrs

More information

Recent Breakthrough in Primality Testing

Recent Breakthrough in Primality Testing Nonlinear Analysis: Modelling and Control, 2004, Vol. 9, No. 2, 171 184 Recent Breakthrough in Primality Testing R. Šleževičienė, J. Steuding, S. Turskienė Department of Computer Science, Faculty of Physics

More information

Determining the Optimal Combination of Trial Division and Fermat s Factorization Method

Determining the Optimal Combination of Trial Division and Fermat s Factorization Method Determining the Optimal Combination of Trial Division and Fermat s Factorization Method Joseph C. Woodson Home School P. O. Box 55005 Tulsa, OK 74155 Abstract The process of finding the prime factorization

More information

On Generalized Fermat Numbers 3 2n +1

On Generalized Fermat Numbers 3 2n +1 Applied Mathematics & Information Sciences 4(3) (010), 307 313 An International Journal c 010 Dixie W Publishing Corporation, U. S. A. On Generalized Fermat Numbers 3 n +1 Amin Witno Department of Basic

More information

Constructing Pairing-Friendly Elliptic Curves with Embedding Degree 10

Constructing Pairing-Friendly Elliptic Curves with Embedding Degree 10 with Embedding Degree 10 University of California, Berkeley, USA ANTS-VII, 2006 Outline 1 Introduction 2 The CM Method: The Basic Construction The CM Method: Generating Families of Curves 3 Outline 1 Introduction

More information

Public Key Cryptography: RSA and Lots of Number Theory

Public Key Cryptography: RSA and Lots of Number Theory Public Key Cryptography: RSA and Lots of Number Theory Public vs. Private-Key Cryptography We have just discussed traditional symmetric cryptography: Uses a single key shared between sender and receiver

More information

Lecture 13 - Basic Number Theory.

Lecture 13 - Basic Number Theory. Lecture 13 - Basic Number Theory. Boaz Barak March 22, 2010 Divisibility and primes Unless mentioned otherwise throughout this lecture all numbers are non-negative integers. We say that A divides B, denoted

More information

Modern Factoring Algorithms

Modern Factoring Algorithms Modern Factoring Algorithms Kostas Bimpikis and Ragesh Jaiswal University of California, San Diego... both Gauss and lesser mathematicians may be justified in rejoicing that there is one science [number

More information

Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and

Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and Breaking The Code Ryan Lowe Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and a minor in Applied Physics. As a sophomore, he took an independent study

More information

RSA Attacks. By Abdulaziz Alrasheed and Fatima

RSA Attacks. By Abdulaziz Alrasheed and Fatima RSA Attacks By Abdulaziz Alrasheed and Fatima 1 Introduction Invented by Ron Rivest, Adi Shamir, and Len Adleman [1], the RSA cryptosystem was first revealed in the August 1977 issue of Scientific American.

More information

Factoring & Primality

Factoring & Primality Factoring & Primality Lecturer: Dimitris Papadopoulos In this lecture we will discuss the problem of integer factorization and primality testing, two problems that have been the focus of a great amount

More information

How To Solve The Prime Factorization Of N With A Polynomials

How To Solve The Prime Factorization Of N With A Polynomials THE MATHEMATICS OF PUBLIC KEY CRYPTOGRAPHY. IAN KIMING 1. Forbemærkning. Det kan forekomme idiotisk, at jeg som dansktalende og skrivende i et danskbaseret tidsskrift med en (formentlig) primært dansktalende

More information

A SOFTWARE COMPARISON OF RSA AND ECC

A SOFTWARE COMPARISON OF RSA AND ECC International Journal Of Computer Science And Applications Vol. 2, No. 1, April / May 29 ISSN: 974-13 A SOFTWARE COMPARISON OF RSA AND ECC Vivek B. Kute Lecturer. CSE Department, SVPCET, Nagpur 9975549138

More information

Discrete Mathematics, Chapter 4: Number Theory and Cryptography

Discrete Mathematics, Chapter 4: Number Theory and Cryptography Discrete Mathematics, Chapter 4: Number Theory and Cryptography Richard Mayr University of Edinburgh, UK Richard Mayr (University of Edinburgh, UK) Discrete Mathematics. Chapter 4 1 / 35 Outline 1 Divisibility

More information

Factoring integers and Producing primes

Factoring integers and Producing primes Factoring integers,..., RSA Erbil, Kurdistan 0 Lecture in Number Theory College of Sciences Department of Mathematics University of Salahaddin Debember 4, 2014 Factoring integers and Producing primes Francesco

More information

THE SEARCH FOR AURIFEUILLIAN-LIKE FACTORIZATIONS

THE SEARCH FOR AURIFEUILLIAN-LIKE FACTORIZATIONS THE SEARCH FOR AURIFEUILLIAN-LIKE FACTORIZATIONS S. S. Wagstaff, Jr. 1 Department of Computer Science, Purdue University, West Lafayette, IN 47097, USA [email protected] Received:, Revised:, Accepted:,

More information

Computer and Network Security

Computer and Network Security MIT 6.857 Computer and Networ Security Class Notes 1 File: http://theory.lcs.mit.edu/ rivest/notes/notes.pdf Revision: December 2, 2002 Computer and Networ Security MIT 6.857 Class Notes by Ronald L. Rivest

More information

FACTORING WITH TWO LARGE PRIMES

FACTORING WITH TWO LARGE PRIMES mathematics of computation volume 63, number 208 october 1994, pages 785-798 FACTORING WITH TWO LARGE PRIMES A. K. LENSTRA AND M. S. MANASSE Abstract. We describe a modification to the well-known large

More information

Integer Factorization: Solution via Algorithm for Constrained Discrete Logarithm Problem

Integer Factorization: Solution via Algorithm for Constrained Discrete Logarithm Problem Journal of Computer Science 5 (9): 674-679, 009 ISSN 1549-3636 009 Science Publications Integer Factorization: Solution via Algorithm for Constrained Discrete Logarithm Problem Boris S. Verkhovsky Department

More information

Prime Numbers and Irreducible Polynomials

Prime Numbers and Irreducible Polynomials Prime Numbers and Irreducible Polynomials M. Ram Murty The similarity between prime numbers and irreducible polynomials has been a dominant theme in the development of number theory and algebraic geometry.

More information

Lecture Note 5 PUBLIC-KEY CRYPTOGRAPHY. Sourav Mukhopadhyay

Lecture Note 5 PUBLIC-KEY CRYPTOGRAPHY. Sourav Mukhopadhyay Lecture Note 5 PUBLIC-KEY CRYPTOGRAPHY Sourav Mukhopadhyay Cryptography and Network Security - MA61027 Modern/Public-key cryptography started in 1976 with the publication of the following paper. W. Diffie

More information

FACTORING WITH CONTINUED FRACTIONS, THE PELL EQUATION, AND WEIGHTED MEDIANTS

FACTORING WITH CONTINUED FRACTIONS, THE PELL EQUATION, AND WEIGHTED MEDIANTS Fizikos ir matematikos fakulteto Seminaro darbai, iauliu universitetas, 6, 2003, 120130 FACTORING WITH CONTINUED FRACTIONS, THE PELL EQUATION, AND WEIGHTED MEDIANTS Jörn STEUDING, Rasa LEšEVIƒIEN E Johann

More information

Factoring. Factoring 1

Factoring. Factoring 1 Factoring Factoring 1 Factoring Security of RSA algorithm depends on (presumed) difficulty of factoring o Given N = pq, find p or q and RSA is broken o Rabin cipher also based on factoring Factoring like

More information

Factoring a semiprime n by estimating φ(n)

Factoring a semiprime n by estimating φ(n) Factoring a semiprime n by estimating φ(n) Kyle Kloster May 7, 2010 Abstract A factoring algorithm, called the Phi-Finder algorithm, is presented that factors a product of two primes, n = pq, by determining

More information

ECE 842 Report Implementation of Elliptic Curve Cryptography

ECE 842 Report Implementation of Elliptic Curve Cryptography ECE 842 Report Implementation of Elliptic Curve Cryptography Wei-Yang Lin December 15, 2004 Abstract The aim of this report is to illustrate the issues in implementing a practical elliptic curve cryptographic

More information

MATH10040 Chapter 2: Prime and relatively prime numbers

MATH10040 Chapter 2: Prime and relatively prime numbers MATH10040 Chapter 2: Prime and relatively prime numbers Recall the basic definition: 1. Prime numbers Definition 1.1. Recall that a positive integer is said to be prime if it has precisely two positive

More information

Index Calculation Attacks on RSA Signature and Encryption

Index Calculation Attacks on RSA Signature and Encryption Index Calculation Attacks on RSA Signature and Encryption Jean-Sébastien Coron 1, Yvo Desmedt 2, David Naccache 1, Andrew Odlyzko 3, and Julien P. Stern 4 1 Gemplus Card International {jean-sebastien.coron,david.naccache}@gemplus.com

More information

THE NUMBER OF REPRESENTATIONS OF n OF THE FORM n = x 2 2 y, x > 0, y 0

THE NUMBER OF REPRESENTATIONS OF n OF THE FORM n = x 2 2 y, x > 0, y 0 THE NUMBER OF REPRESENTATIONS OF n OF THE FORM n = x 2 2 y, x > 0, y 0 RICHARD J. MATHAR Abstract. We count solutions to the Ramanujan-Nagell equation 2 y +n = x 2 for fixed positive n. The computational

More information

An Approach to Shorten Digital Signature Length

An Approach to Shorten Digital Signature Length Computer Science Journal of Moldova, vol.14, no.342, 2006 An Approach to Shorten Digital Signature Length Nikolay A. Moldovyan Abstract A new method is proposed to design short signature schemes based

More information

Factoring Polynomials

Factoring Polynomials Factoring Polynomials Sue Geller June 19, 2006 Factoring polynomials over the rational numbers, real numbers, and complex numbers has long been a standard topic of high school algebra. With the advent

More information

A Comparison Of Integer Factoring Algorithms. Keyur Anilkumar Kanabar

A Comparison Of Integer Factoring Algorithms. Keyur Anilkumar Kanabar A Comparison Of Integer Factoring Algorithms Keyur Anilkumar Kanabar Batchelor of Science in Computer Science with Honours The University of Bath May 2007 This dissertation may be made available for consultation

More information

ELEMENTARY THOUGHTS ON DISCRETE LOGARITHMS. Carl Pomerance

ELEMENTARY THOUGHTS ON DISCRETE LOGARITHMS. Carl Pomerance ELEMENTARY THOUGHTS ON DISCRETE LOGARITHMS Carl Pomerance Given a cyclic group G with generator g, and given an element t in G, the discrete logarithm problem is that of computing an integer l with g l

More information

JUST THE MATHS UNIT NUMBER 1.8. ALGEBRA 8 (Polynomials) A.J.Hobson

JUST THE MATHS UNIT NUMBER 1.8. ALGEBRA 8 (Polynomials) A.J.Hobson JUST THE MATHS UNIT NUMBER 1.8 ALGEBRA 8 (Polynomials) by A.J.Hobson 1.8.1 The factor theorem 1.8.2 Application to quadratic and cubic expressions 1.8.3 Cubic equations 1.8.4 Long division of polynomials

More information

Number Theory. Proof. Suppose otherwise. Then there would be a finite number n of primes, which we may

Number Theory. Proof. Suppose otherwise. Then there would be a finite number n of primes, which we may Number Theory Divisibility and Primes Definition. If a and b are integers and there is some integer c such that a = b c, then we say that b divides a or is a factor or divisor of a and write b a. Definition

More information

Is n a Prime Number? Manindra Agrawal. March 27, 2006, Delft. IIT Kanpur

Is n a Prime Number? Manindra Agrawal. March 27, 2006, Delft. IIT Kanpur Is n a Prime Number? Manindra Agrawal IIT Kanpur March 27, 2006, Delft Manindra Agrawal (IIT Kanpur) Is n a Prime Number? March 27, 2006, Delft 1 / 47 Overview 1 The Problem 2 Two Simple, and Slow, Methods

More information

Integer Factorization

Integer Factorization Master Thesis D I K U Department of Computer Science University of Copenhagen Fall 2005 This document is typeset using L A TEX 2ε. ii Abstract Many public key cryptosystems depend on

More information

Public-Key Cryptanalysis 1: Introduction and Factoring

Public-Key Cryptanalysis 1: Introduction and Factoring Public-Key Cryptanalysis 1: Introduction and Factoring Nadia Heninger University of Pennsylvania July 21, 2013 Adventures in Cryptanalysis Part 1: Introduction and Factoring. What is public-key crypto

More information

HYPERELLIPTIC CURVE METHOD FOR FACTORING INTEGERS. 1. Thoery and Algorithm

HYPERELLIPTIC CURVE METHOD FOR FACTORING INTEGERS. 1. Thoery and Algorithm HYPERELLIPTIC CURVE METHOD FOR FACTORING INTEGERS WENHAN WANG 1. Thoery and Algorithm The idea of the method using hyperelliptic curves to factor integers is similar to the elliptic curve factoring method.

More information

CHAPTER 5. Number Theory. 1. Integers and Division. Discussion

CHAPTER 5. Number Theory. 1. Integers and Division. Discussion CHAPTER 5 Number Theory 1. Integers and Division 1.1. Divisibility. Definition 1.1.1. Given two integers a and b we say a divides b if there is an integer c such that b = ac. If a divides b, we write a

More information

a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.

a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2. Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given

More information

Library (versus Language) Based Parallelism in Factoring: Experiments in MPI. Dr. Michael Alexander Dr. Sonja Sewera.

Library (versus Language) Based Parallelism in Factoring: Experiments in MPI. Dr. Michael Alexander Dr. Sonja Sewera. Library (versus Language) Based Parallelism in Factoring: Experiments in MPI Dr. Michael Alexander Dr. Sonja Sewera Talk 2007-10-19 Slide 1 of 20 Primes Definitions Prime: A whole number n is a prime number

More information

ALGEBRAIC APPROACH TO COMPOSITE INTEGER FACTORIZATION

ALGEBRAIC APPROACH TO COMPOSITE INTEGER FACTORIZATION ALGEBRAIC APPROACH TO COMPOSITE INTEGER FACTORIZATION Aldrin W. Wanambisi 1* School of Pure and Applied Science, Mount Kenya University, P.O box 553-50100, Kakamega, Kenya. Shem Aywa 2 Department of Mathematics,

More information

Modern Algebra Lecture Notes: Rings and fields set 4 (Revision 2)

Modern Algebra Lecture Notes: Rings and fields set 4 (Revision 2) Modern Algebra Lecture Notes: Rings and fields set 4 (Revision 2) Kevin Broughan University of Waikato, Hamilton, New Zealand May 13, 2010 Remainder and Factor Theorem 15 Definition of factor If f (x)

More information

Implementation of Elliptic Curve Digital Signature Algorithm

Implementation of Elliptic Curve Digital Signature Algorithm Implementation of Elliptic Curve Digital Signature Algorithm Aqeel Khalique Kuldip Singh Sandeep Sood Department of Electronics & Computer Engineering, Indian Institute of Technology Roorkee Roorkee, India

More information

The cyclotomic polynomials

The cyclotomic polynomials The cyclotomic polynomials Notes by G.J.O. Jameson 1. The definition and general results We use the notation e(t) = e 2πit. Note that e(n) = 1 for integers n, e(s + t) = e(s)e(t) for all s, t. e( 1 ) =

More information

Factoring Cubic Polynomials

Factoring Cubic Polynomials Factoring Cubic Polynomials Robert G. Underwood 1. Introduction There are at least two ways in which using the famous Cardano formulas (1545) to factor cubic polynomials present more difficulties than

More information

FACTORING LARGE NUMBERS, A GREAT WAY TO SPEND A BIRTHDAY

FACTORING LARGE NUMBERS, A GREAT WAY TO SPEND A BIRTHDAY FACTORING LARGE NUMBERS, A GREAT WAY TO SPEND A BIRTHDAY LINDSEY R. BOSKO I would like to acknowledge the assistance of Dr. Michael Singer. His guidance and feedback were instrumental in completing this

More information