14.07.2013 Views

dissertacao.pdf

dissertacao.pdf

dissertacao.pdf

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

A.4 Related Plaintext Attack<br />

rrp = {};<br />

b = 3;<br />

While[b < 10,<br />

nbits = 2∧ nbits = 2 b; ∧ nbits = 2 b; ∧b; i = 3;<br />

g = 50;<br />

nlist = {};<br />

primos = {};<br />

While[Length[nlist] < g,<br />

e = Prime[RandomInteger[{2, 5}]];<br />

p = RandomPrime[{2∧ (nbits − 1), 2∧ p = RandomPrime[{2 nbits − 1}];<br />

∧ (nbits − 1), 2∧ p = RandomPrime[{2 nbits − 1}];<br />

∧ (nbits − 1), 2∧nbits − 1}];<br />

q = RandomPrime[{2∧ (nbits − 1), 2∧ q = RandomPrime[{2 nbits − 1}];<br />

∧ (nbits − 1), 2∧ q = RandomPrime[{2 nbits − 1}];<br />

∧ (nbits − 1), 2∧nbits − 1}];<br />

While[Intersection[{p}, primos] = = = {},<br />

p = RandomPrime[{2∧ (nbits − 1), 2∧ p = RandomPrime[{2 nbits − 1}]; ];<br />

∧ (nbits − 1), 2∧ p = RandomPrime[{2 nbits − 1}]; ];<br />

∧ (nbits − 1), 2∧nbits − 1}]; ];<br />

While[Intersection[{q}, primos] = = = {}p {}p {}p == q,<br />

q = RandomPrime[{2∧ (nbits − 1), 2∧ q = RandomPrime[{2 nbits − 1}]; ];<br />

∧ (nbits − 1), 2∧ q = RandomPrime[{2 nbits − 1}]; ];<br />

∧ (nbits − 1), 2∧nbits − 1}]; ];<br />

n = p ∗ q;<br />

neuler = (p − 1)(q − 1);<br />

If[GCD[e, neuler] == 1,<br />

nlist = Append[nlist, {e, n}];<br />

primos = Append[primos, p];<br />

primos = Append[primos, q],<br />

nbits = nbits + 1;<br />

];<br />

];<br />

l = Max[Table[nlist[[i, 1]] ∗ 2, {i, 1, g}]];<br />

coef = Table[{RandomInteger[{0, 2}], i}, {i, 1, l}];<br />

poli = Function[{i, m},<br />

Mod[m∧ Mod[m coef[[i, 1]] + coef[[i, 2]], nlist[[i, 2]]]<br />

∧ Mod[m coef[[i, 1]] + coef[[i, 2]], nlist[[i, 2]]]<br />

∧coef[[i, 1]] + coef[[i, 2]], nlist[[i, 2]]]<br />

];<br />

deg = Function[i, coef[[i, 1]]];<br />

max = Max[Table[nlist[[i, 1]] ∗ deg[i], {i, 1, l}]];<br />

i = 2;<br />

n0 = nlist[[1, 2]];<br />

59

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

Saved successfully!

Ooh no, something went wrong!