14.07.2013 Views

dissertacao.pdf

dissertacao.pdf

dissertacao.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

In 1984 an even stronger attack against Common Modulus RSA was discov-<br />

ered by DeLaurentis[12]. He proved that you don’t even need two encryptions<br />

of a plain text to actually decrypt all the encrypted messages. The theorem<br />

states that any user of the system can actually create a new private key which<br />

will work with any other chosen public key. Here is the result:<br />

Theorem 20. Let < e, N > be a valid RSA public key with corresponding<br />

private key < d, N >. Let < e1, N > be the public key from another user such<br />

that e1 = e. Then a private key < d1, N > corresponding to < e1, N > can be<br />

computed by:<br />

d1 = e −1<br />

1<br />

in time polynomial in log(N).<br />

Proof. We rewrite the key equation<br />

(mod<br />

ed − 1<br />

) (39)<br />

(e1, ed − 1)<br />

ed ∼ = 1 (mod φ(N)) ⇔ ed − 1 = kφ(N) (40)<br />

and notice also that, as e1 is a public exponent it satisfies (e1, φ(N)) = 1 and<br />

therefore (e1, kφ(N)) = k ′ for some k ′ that divides k. Now let k ′′ = k<br />

k ′ . The<br />

modulus in computation (39) can be written as:<br />

So e1 and d1 satisfy:<br />

ed − 1 kφ(N)<br />

=<br />

(e1, ed − 1) k ′ = k′′ φ(N) (41)<br />

d1 ∼ = e −1<br />

1 (mod k ′′ φ(N)) =⇒ d1e1 ∼ = 1 (mod φ(N)) (42)<br />

Therefore d1 is a valid private exponent corresponding to e1. All computations<br />

can be done in time polynomial in log(N).<br />

The implementation of this attack is presented in the appendix. The experi-<br />

mental results obtained, again for different values of the size of n are represented<br />

in Table 3.<br />

The abnormal values for n = 32 and n = 64 are probably due to the fact that<br />

the only relevant operation depending on the size of N timed was a modular<br />

exponentiation.<br />

There is one approach even more simple. Using his pair of private/public<br />

keys, any user can compute a multiple of φ(N) through the key equation<br />

ed − 1 = kφ(N). Then, by the results of Miller [33], he can use a probabilistic<br />

35

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

Saved successfully!

Ooh no, something went wrong!