04.11.2012 Views

1 Montgomery Modular Multiplication in Hard- ware

1 Montgomery Modular Multiplication in Hard- ware

1 Montgomery Modular Multiplication in Hard- ware

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

FEI KEMT<br />

3.3.2 ECM Algorithm<br />

In 1987, H. Lenstra came up with the idea of translat<strong>in</strong>g Pollard’s method from<br />

the groups Gp and Gn to the groups of po<strong>in</strong>ts on elliptic curves E modulo n and<br />

modulo q [82]. Indeed, a group operation <strong>in</strong> E(Zn) can be def<strong>in</strong>ed by us<strong>in</strong>g the<br />

given addition formulae [32].<br />

The correspond<strong>in</strong>g homomorphism φ to the one def<strong>in</strong>ed <strong>in</strong> Equation 3.2 is:<br />

φ : E(Zn) → E(Zq) (reduction of coord<strong>in</strong>ates modulo q) (3.3)<br />

The exponentiation <strong>in</strong> Pollard’s (p−1) method is replaced by a po<strong>in</strong>t multiplication.<br />

Let n be an <strong>in</strong>teger without small prime factors which is divisible by at least two<br />

different primes, one of them q. Such numbers appear after trial division and a quick<br />

prime power test. Let E(Zn) be an elliptic curve with good reduction at all prime<br />

divisors of n (this can be checked by calculat<strong>in</strong>g the gcd of n and the discrim<strong>in</strong>ant<br />

of E, which very rarely yields a prime factor of n) and a po<strong>in</strong>t P ∈ E(Zn) �= O.<br />

A factor of n is found if k · P is not equal to the identity element <strong>in</strong> E(Zn) but<br />

k · φ(P ) equals to the identity element <strong>in</strong> E(Zq), i.e.<br />

∀k1 ∈ N : k �= k1 · ordE(Zn)(P ),<br />

∃k2 ∈ N : k = k2 · ordE(Zq)(φ(P )).<br />

Let the elliptic curve E be def<strong>in</strong>ed by the homogeneous Weierstrass Equation:<br />

y 2 z = x 3 + axz 2 + bz 3<br />

(3.4)<br />

In this case, above conditions yield two properties for the z-coord<strong>in</strong>ate zQ of the<br />

result<strong>in</strong>g po<strong>in</strong>t Q = k · P :<br />

k �= k1 · ordE(Zn)(P ) ⇐ n ∤ zQ<br />

k = k2 · ordE(Zq)(φ(P )) ⇐ q | zQ.<br />

Under these conditions, a non-trivial factor d of n is obta<strong>in</strong>ed by d = gcd(zQ, n).<br />

With the assumption that the order of P is B1-smooth and does not conta<strong>in</strong><br />

any prime power larger than B2, the scalar k is computed <strong>in</strong> the same way as e <strong>in</strong><br />

Equation 3.1 as<br />

k =<br />

�<br />

pi∈P,pi≤B1<br />

p ep i<br />

i , epi = max{r ∈ N : pr i ≤ B2} . (3.5)<br />

49

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!