A Survey on Factoring Large Numbers ~ 巨大数の因数分解に関する調査 ~ Kanada Lab. M1 47- 56338 Yoshida Hitoshi.

Slides:



Advertisements
Similar presentations
RSA.
Advertisements

Public Key Cryptosystem
Number Theory Algorithms and Cryptography Algorithms Prepared by John Reif, Ph.D. Analysis of Algorithms.
Factoring of Large Numbers using Number Field Sieve Matrix Step Chandana Anand, Arman Gungor, and Kimberly A. Thomas ECE 646 Fall 2006.
Integer Factorization By: Josh Tuggle & Kyle Johnson.
Prime recognition and factorization
Lecture 8: Primality Testing and Factoring Piotr Faliszewski
Notation Intro. Number Theory Online Cryptography Course Dan Boneh
RSA & F ACTORING I NTEGERS BY: MIKE NEUMILLER & BRIAN YARBROUGH.
Foundations of Network and Computer Security J J ohn Black Lecture #7 Sep 14 th 2004 CSCI 6268/TLEN 5831, Fall 2004.
Abdullah Sheneamer CS591-F2010 Project of semester Presentation University of Colorado, Colorado Springs Dr. Edward RSA Problem and Inside PK Cryptography.
A Creative Way of Breaking RSA Azeem Jiva. Overview ● What is RSA? – Public Key Algorithm – Is it secure? ● Ways to break RSA – Discover the Public Key.
RSA ( Rivest, Shamir, Adleman) Public Key Cryptosystem
Foundations of Network and Computer Security J J ohn Black Lecture #11 Oct 4 th 2005 CSCI 6268/TLEN 5831, Fall 2005.
The RSA Cryptosystem and Factoring Integers (II) Rong-Jaye Chen.
Factoring 1 Factoring Factoring 2 Factoring  Security of RSA algorithm depends on (presumed) difficulty of factoring o Given N = pq, find p or q and.
Foundations of Network and Computer Security J J ohn Black Lecture #13 Sep 26 th 2007 CSCI 6268/TLEN 5831, Fall 2007.
Foundations of Network and Computer Security J J ohn Black Lecture #12 Sep 23 rd 2009 CSCI 6268/TLEN 5550, Fall 2009.
Foundations of Network and Computer Security J J ohn Black Lecture #10 Sep 29 th 2005 CSCI 6268/TLEN 5831, Fall 2005.
Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender and receiver if this key is disclosed communications.
Factoring Algorithms Ref: D. Stinson, Cryptography - Theory and Practice, 2001.
Foundations of Network and Computer Security J J ohn Black Lecture #12 Sep 24 th 2007 CSCI 6268/TLEN 5831, Fall 2007.
Dan Boneh Intro. Number Theory Modular e’th roots Online Cryptography Course Dan Boneh.
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
Tallinn University of Technology Quantum computer impact on public key cryptography Roman Stepanenko.
Dan Boneh Intro. Number Theory Intractable problems Online Cryptography Course Dan Boneh.
Topic 18: RSA Implementation and Security
Andreas Steffen, , 4-PublicKey.pptx 1 Internet Security 1 (IntSi1) Prof. Dr. Andreas Steffen Institute for Internet Technologies and Applications.
Foundations of Network and Computer Security J J ohn Black Lecture #14 Oct 1 st 2007 CSCI 6268/TLEN 5831, Fall 2007.
A Brief History of Factorization Techniques March 9 th, 2006.
Department of Mathematics and Statistics
Chapter 9 Mathematics of Cryptography Part III: Primes and Related Congruence Equations Copyright © The McGraw-Hill Companies, Inc. Permission required.
Software Security Seminar - 1 Chapter 11. Mathematical Background 발표자 : 안병희 Applied Cryptography.

1 AN EFFICIENT METHOD FOR FACTORING RABIN SCHEME SATTAR J ABOUD 1, 2 MAMOUN S. AL RABABAA and MOHAMMAD A AL-FAYOUMI 1 1 Middle East University for Graduate.
Problems with symmetric (private-key) encryption 1) secure distribution of keys 2) large number of keys Solution to both problems: Public-key (asymmetric)
Copyright, Yogesh Malhotra, PhD, 2013www.yogeshmalhotra.com SPECIAL PURPOSE FACTORING ALGORITHMS Special Purpose Factoring Algorithms For special class.
CS 627 Elliptic Curves and Cryptography Paper by: Aleksandar Jurisic, Alfred J. Menezes Published: January 1998 Presented by: Sagar Chivate.
Prabhas Chongstitvatana1 Factorizing large integers Finding the unique decomposition of n into a product of prime factors. Factorize(n) if n is prime done.
Introduction to Algorithms Second Edition by Cormen, Leiserson, Rivest & Stein Chapter 31.
Factorization of a 768-bit RSA modulus Jung Daejin Lee Sangho.
SNFS versus (G)NFS and the feasibility of factoring a 1024-bit number with SNFS Arjen K. Lenstra Citibank, New York Technische Universiteit Eindhoven.
Strength of Cryptographic Systems Dr. C F Chong, Dr. K P Chow Department of Computer Science and Information Systems The University of Hong Kong.
1 Number Theory and Advanced Cryptography 5. Cryptanalysis of RSA Chih-Hung Wang Sept Part I: Introduction to Number Theory Part II: Advanced Cryptography.
Lecture 8 Overview. Analysis of Algorithms Algorithms – Time Complexity – Space Complexity An algorithm whose time complexity is bounded by a polynomial.
6.4 Factoring.
Foundations of Network and Computer Security J J ohn Black CSCI 6268/TLEN 5550, Spring 2013.
Scott CH Huang COM 5336 Cryptography Lecture 6 Public Key Cryptography & RSA Scott CH Huang COM 5336 Cryptography Lecture 6.
Public Key Cryptosystems RSA Diffie-Hellman Department of Computer Engineering Sharif University of Technology 3/8/2006.
Elliptic Curve Cryptography
RSA The algorithm was publicly described in 1977 by Ron Rivest, Adi Shamir, and Leonard Adleman at MIT Partly used for PGP (Pretty Good Privacy) to encrypt.
Chapter 9 Public Key Cryptography and RSA. Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender.
Fall 2002CS 395: Computer Security1 Chapter 9: Public Key Cryptography.
7. Key Length Public key length Kim Hyoung-Shick.
9.1 Primes and Related Congruence Equations 23 Sep 2013.
Key Generation Bob generates his keys as follows –Choose two large distinct random primes p, q –Set n = pq (in Z… no finite groups yet) –Compute  (n)
Introduction to Elliptic Curve Cryptography CSCI 5857: Encoding and Encryption.
Chapter 9 – Public Key Cryptography and RSA Every Egyptian received two names, which were known respectively as the true name and the good name, or the.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
CS480 Cryptography and Information Security
Lecture 6. RSA Use in Encryption to encrypt a message M the sender: – obtains public key of recipient PU={e,n} – computes: C = M e mod n, where 0≤M
Copyright © Zeph Grunschlag, RSA Encryption Zeph Grunschlag.
RSA Algorithm Date: 96/10/17 Wun-Long Yang. Outline Introduction to RSA algorithm RSA efficient implementation & profiling.
Public Key Encryption Major topics The RSA scheme was devised in 1978
D. Cheung – IQC/UWaterloo, Canada D. K. Pradhan – UBristol, UK
RSA and El Gamal Cryptosystems
RSA Cryptosystem Bits PCs Memory MB ,000 4GB 1,020
Parallel Quadratic Sieve
Factoring RSA Moduli: Current State of the Art J
Mathematical Background for Cryptography
Presentation transcript:

A Survey on Factoring Large Numbers ~ 巨大数の因数分解に関する調査 ~ Kanada Lab. M Yoshida Hitoshi

page2 Introduction Factoring a number means representing it as the product of smaller numbers. It is difficult to factor a large number. Some cryptosystems are based on the difficulty of the factoring integer problem. It measures the security of the cryptosystems to factor large numbers in short time.

page3 Contents Introduction Factoring Methods Calculation Records Cryptosystem Security

page4 Contents Introduction Factoring Methods Calculation Records Cryptosystem Security

page5 Trial Division Difference of Squares Euler’s Method Pollard’s (p-1)-Method Pollard’s (p+1)-Method Pollard’s ρ Method Square Forms Factorization Continued Fraction Method Quadratic Sieve Multiple Polynomial Quadratic Sieve General Number Field Sieve Elliptic Curve Method Trial Division Difference of Squares Euler’s Method Pollard’s (p-1)-Method Pollard’s (p+1)-Method Pollard’s ρ Method Square Forms Factorization Continued Fraction Method Quadratic Sieve Multiple Polynomial Quadratic Sieve General Number Field Sieve Elliptic Curve Method Factoring Methods

page6 Trial Division Algorithm Check if “n mod i = 0” for i = 2,3,4,… Merit It can factor a number into prime numbers. Demerit ‘i’ may be nearly when n is the product of 2 primes of same size.

page7 Trial Division Improvement Don’t use multiples of 2,3,5 for “i”. Use only prime numbers for “i”. Cannot reduce operational costs. This method can use at most π(10 15 )=29,844,570,422,669 ≒ 30T If one trial division can do in 50 clock π(10 15 )×50[clock]÷3G[Hz] = 500K [sec] = 5.8[day]

page8 Difference of Squares Algorithm Find x and y which implement x 2 -y 2 =n Factor n with x 2 -y 2 =(x+y)(x-y) Demerit May not factor a number into prime numbers. Merit Factor a large composite number into small numbers Operational cost O(y)

page9 Improvement How about using “x 2 -y 2 ≡0 (mod n)” ? ≡0 (mod 143) ⇒ 65 ・ 55≡0 65 or 55 must have prime factor(s) of 143. GCD(65,143)=13, GCD(55,143)=11 How to find such x, y that implement “x 2 –y 2 ≡0 (mod n)”?  Find many (a i, b i ) pairs that implement a i ≡b i (mod n)  Make a combination that implements Πa i =x 2, Πb i =y 2 Difference of Squares 14 ・ 67≡ 3 mod ・ 67≡20 mod ・ 31≡60 mod 187 (14 ・ 31 ・ 67 ) 2 ≡60 2 mod 187

page10 Difference of Squares How can we find those numbers efficiently? Quadratic Sieve (QS) Cf. Multiple Polynomial Quadratic Sieve (MPQS) General Number Field Sieve (GNFS)

page11 Quadratic Sieve Algorithm 1. for i = [√n]±1,2,…, factor i 2 -n into prime numbers (i 2 ≡i 2 -n=p 1 p 2 p 3 …) 2. search a combination that make every exponent number even 3. x=Πi and y=√(Πprimes) implements x 2 -y 2 ≡0

page12 n=3937, √n=62.7 i= ≡63 2 -n= 32=2 5 i= ≡64 2 -n=159=3 ・ 53 i= ≡65 2 -n=288=2 5 ・ 3 2 i= ≡66 2 -n=419=419 i= ≡67 2 -n=552=2 3 ・ 3 ・ 23 Quadratic Sieve Example

page13 n=3937, √n=62.7 i= ≡63 2 -n= 32=2 5 i= ≡64 2 -n=159=3 ・ 53 i= ≡65 2 -n=288=2 5 ・ 3 2 i= ≡66 2 -n=419=419 i= ≡67 2 -n=552=2 3 ・ 3 ・ 23 ( 63 ・ 65 ) 2 ≡2 10 ・ 3 2 = ( 2 5 ・ 3 ) 2 ∴ GCD ( 63 ・ ・ 3, n ) =31 Quadratic Sieve Example

page14 Quadratic Sieve Operational cost O(exp((9/8)(logn) 1/2 (loglogn) 1/2 )) Now, QS is one of the fastest method to factor 30~60 decimal digit numbers. Make faster Large prime factors appear rarely Smaller number has smaller primes. How can we get small numbers efficiently?

page15 n=3937, √n=62.7 i= ≡63 2 -n= 32=2 5 i= ≡64 2 -n=159=3 ・ 53 i= ≡65 2 -n=288=2 5 ・ 3 2 i= ≡66 2 -n=419=419 i= ≡67 2 -n=552=2 3 ・ 3 ・ 23 ( 63 ・ 65 ) 2 ≡2 10 ・ 3 2 = ( 2 5 ・ 3 ) 2 ∴ GCD ( 63 ・ ・ 3, n ) =31 Quadratic Sieve Example

page16 Quadratic Sieve Operational cost O(exp((9/8)(logn) 1/2 (loglogn) 1/2 )) Now, QS is one of the fastest method to factor 30~60 decimal digit numbers. Make faster Large prime factors appear rarely Smaller number has smaller primes. How can we get small numbers efficiently?

page17 Quadratic Sieve Make faster MPQS (Multiple Polynomial QS) ; i 2 -n ⇒ (ai+b) 2 -n MPQS is the fastest to factor 60 ~ 120 digit numbers QSMPQS

page18 General Number Field Sieve (GNFS) Original “Number Field Sieve” was for special numbers ⇒ Special Number Field Sieve (SNFS) Algorithm Polynomial definition step Sieving step Matrix solving step Making square root step Operational cost O(exp((64/9) 1/3 (logn) 1/3 (loglogn) 2/3 )) [Cf. QS→O(exp((9/8)(logn) 1/2 (loglogn) 1/2 )) ]

page19 Contents Introduction Factoring Methods Calculation Records Cryptosystem Security

page20 Calculation Records Factoring records

page21 Calculation Records Factoring records decimal digits number (RSA200) Bonn university Algorithm : GNFS Sieving step Various machines and time Dec 2003 ~ Oct 2004 ( ≒ 2.2GHz Opteron × 55 years) Matrix step 80 × 2.2GHz Opteron (Cluster) × 3 months (Dec 2004 ~ ) May 2005 factoring completed

page22 Calculation Records Factoring records decimal digits number (A factor of ) Yuji Kida (Rikkyo university) and NTT laboratory Algorithm : GNFS Sieving step Various machines ( ≒ 3.2GHz Pentium4 × 9.7 years) 16 Mar 2005 ~ 12 Apr 2005 (27days) Matrix step 32 × 3.2GHz Pentium4 (Cluster) × 2.5 days Apr 2005 factoring completed

page23 Contents Introduction Factoring Methods Calculation Records Cryptosystem Security

page24 Cryptosystem Security RSA use 1024 bit length key How long does it take to factor 1024bit number? 5.8×10 5 ~ 1.4×10 6 years(?) [Kida, 2003] RSA Factoring Challenge 8 composite numbers (576 ~ 2048bit) to factor 576 bit number was factored (Dec 3, 2003) 200 decimal digit number (old problem) was factored 640 bit number is 193 decimal digit

page25 Cryptosystem Security TWIRL Make sieving step of GNFS in device It will take 1 year to sieve 1024bit length number Not in practice yet Quantum Computing Shor’s algorithm may run very fast Quantum computer is not in practice

page26 That’s All Thank you