Hardware-Based Implementations of Factoring Algorithms

12
1 Hardware-Based Hardware-Based Implementations Implementations of Factoring Algorithms of Factoring Algorithms Factoring Estimates for a 1024-Bit RSA Modulus A. Lenstra, E. Tromer, A. Shamir, W. Kortsmit, B. Dodson, J. Hughes, and P. Leyland Springer On-line, Lecture Notes in CS 2894, pp. Springer On-line, Lecture Notes in CS 2894, pp. 55-74 (2003) 55-74 (2003) (E. Tromer’s presentation)

description

Hardware-Based Implementations of Factoring Algorithms. (E. Tromer’s presentation). Factoring Estimates for a 1024-Bit RSA Modulus A. Lenstra, E. Tromer, A. Shamir, W. Kortsmit, B. Dodson, J. Hughes, and P. Leyland Springer On-line, Lecture Notes in CS 2894, pp. 55-74 (2003). - PowerPoint PPT Presentation

Transcript of Hardware-Based Implementations of Factoring Algorithms

Page 1: Hardware-Based Implementations of Factoring Algorithms

1

Hardware-Based ImplementationsHardware-Based Implementationsof Factoring Algorithmsof Factoring Algorithms

Factoring Estimates for a 1024-Bit RSA Modulus

A. Lenstra, E. Tromer, A. Shamir, W. Kortsmit,B. Dodson, J. Hughes, and P. Leyland

Springer On-line, Lecture Notes in CS 2894, pp. 55-74 (2003)Springer On-line, Lecture Notes in CS 2894, pp. 55-74 (2003)

(E. Tromer’s presentation)

Page 2: Hardware-Based Implementations of Factoring Algorithms

2Bicycle chain sieve [D. H. Lehmer, 1928]Bicycle chain sieve [D. H. Lehmer, 1928]

Page 3: Hardware-Based Implementations of Factoring Algorithms

3

The Quadratic Sieve How to find S such that is a square?

Look at the factorization of f1(a):f1(0)=102

f1(1)=33

f1(2)=1495

f1(3)=84

f1(4)=616

f1(5)=145

f1(6)=42

24325072112

This is a square, because all exponents are even.

=2 317

=311

=51323

=2237

=23711

=529

=237

Page 4: Hardware-Based Implementations of Factoring Algorithms

4

Comparison:

• Number Field Sieve (NFS):

e(α+o(1))·(log n)1/3·(log log n)2/3

• Quadratic Sieve (QS):

(log n)^(1/2)*(log log n)^(1/2)

• L_a(n): Exp{ (c +o(1))*

(log n)^a * (log log n)^(1-a)},

Then a = 0 polynomial, a=1 exponential.

e

Page 5: Hardware-Based Implementations of Factoring Algorithms

5

The Sieving ProblemInput: a set of arithmetic progressions. Each progression has a prime interval p and value log p.

OOO

OOO

OOOOO

OOOOOOOOO

OOOOOOOOOOOO

Output: indices where the sum of values exceeds a threshold.

Page 6: Hardware-Based Implementations of Factoring Algorithms

6

Example: handling large primes• Primary consideration:

efficient storage between contributions.• Each memory+processor unit handle many progressions.

It computes and sends contributions across the bus, where they are added at just the right time. Timing is critical.

Memory

Pro

cess

or

Memory

Pro

cess

or

Page 7: Hardware-Based Implementations of Factoring Algorithms

7

Handling large primes (cont.)• The memory used by past events can be reused.

• Think of the processor as rotating around the cyclic memory:

• By appropriate choice of parameters, we guarantee that new events are always written just behind the read head.

• There is a tiny (1:1000) window of activity which is “twirling” around the memory bank. It is handled by an SRAM-based cache. The bulk of storage is handled in compact DRAM.

Pro

cess

or

Page 8: Hardware-Based Implementations of Factoring Algorithms

8

Rational vs. algebraic sieves• We actually have two sieves: rational and algebraic.

We are looking for the indices that accumulated enough value in both sieves.

• The algebraic sieve has many more progressions, and thus dominates cost.

• We cannot compensate by making s much larger, since the pipeline becomes very wide and the device exceeds the capacity of a wafer.

rational algebraic

Page 9: Hardware-Based Implementations of Factoring Algorithms

9

Estimating NFS parameters

• Predicting cost requires estimating the NFS parameters (smoothness bounds, sieving area, frequency of candidates etc.).

• Methodology: [Lenstra,Dodson,Hughes,Leyland]

• Find good NFS polynomials for the RSA-1024 and RSA-768 composites.

• Analyze and optimize relation yield for these polynomials according to smoothness probability functions.

• Hope that cycle yield, as a function of relation yield, behaves similarly to past experiments.

Page 10: Hardware-Based Implementations of Factoring Algorithms

10

1024-bit NFS sieving parameters

• Smoothness bounds:• Rational: 3.5£109

• Algebraic: 2.6£1010

• Region:•a2{-5.5£1014,…,5.5£1014}

•b2{1,…,2.7£108}

• Total: 3£1023 (£6/2)

Page 11: Hardware-Based Implementations of Factoring Algorithms

11

TWIRL for 1024-bit composites

• A cluster of 9 TWIRLScan process a sieve line (1015 indices) in 34 seconds.

• To complete the sieving in 1 year, use 194 clusters.

• Initial investment (NRE): ~$20M

• After NRE, total cost of sieving for a given 1024-bit composite: ~10M $year(compared to ~1T $year).

A

R

R R

RR

R R

R

Page 12: Hardware-Based Implementations of Factoring Algorithms

12

.