23.11.2014 Views

CRIPTOGRAFIA - FESP

CRIPTOGRAFIA - FESP

CRIPTOGRAFIA - FESP

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 permutação P é definida pela tabela a seguir. P devolve uma saída de 32 bits a<br />

partir de uma entrada de 32 bits permutando os bits do bloco de entrada.<br />

Exemplo: Da saída das oito caixas S<br />

P<br />

------------------<br />

16 7 20 21<br />

29 12 28 17<br />

1 15 23 26<br />

5 18 31 10<br />

2 8 24 14<br />

32 27 3 9<br />

19 13 30 6<br />

22 11 4 25<br />

------------------<br />

S 1<br />

(B 1<br />

)S 2<br />

(B 2<br />

)S 3<br />

(B 3<br />

)S 4<br />

(B 4<br />

)S 5<br />

(B 5<br />

)S 6<br />

(B 6<br />

)S 7<br />

(B 7<br />

)S 8<br />

(B 8<br />

) = 0101 1100 1000 0010<br />

1011 0101 1001 0111<br />

obtemos<br />

f = 0010 0011 0100 1010 1010 1001 1011 1011<br />

Agora possuimos todos os elementos necessários para calcular R 1<br />

, ou seja, R 1<br />

=<br />

L 0<br />

+ f(R 0<br />

,K 1<br />

)<br />

L 0 = 1100 1100 0000 0000 1100 1100 1111 1111<br />

f(R 0 , K 1 ) + 0010 0011 0100 1010 1010 1001 1011 1011<br />

R 1 = 1110 1111 0100 1010 0110 0101 0100 0100<br />

Na próxima rodada obteremos L 2<br />

= R 1<br />

, que é o sub-bloco que acabamos de<br />

calcular, e depois precisamos calcular R 2<br />

= L 1<br />

+ f(R 1<br />

, K 2<br />

) e assim<br />

sucessivamente por 16 rodadas. No final da décima sexta rodada temos os subblocos<br />

L 16<br />

e R 16<br />

. Invertemos então a ordem dos dois sub-blocos num bloco de 64<br />

bits, ou seja, R 16<br />

L 16<br />

, e aplicamos a permutação final IP -1 definida na seguinte<br />

tabela:<br />

IP -1<br />

---------------------------------------------<br />

40 8 48 16 56 24 64 32<br />

39 7 47 15 55 23 63 31<br />

38 6 46 14 54 22 62 30<br />

37 5 45 13 53 21 61 29<br />

36 4 44 12 52 20 60 28<br />

35 3 43 11 51 19 59 27<br />

34 2 42 10 50 18 58 26<br />

33 1 41 9 49 17 57 25<br />

---------------------------------------------

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

Saved successfully!

Ooh no, something went wrong!