17.04.2013 Views

tema 3. criptografía simétrica: cifrado en bloque - CryptULL

tema 3. criptografía simétrica: cifrado en bloque - CryptULL

tema 3. criptografía simétrica: cifrado en bloque - CryptULL

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.

–<br />

Canal seguro<br />

Clave pública Clave secreta<br />

Análisis de riesgos 1


Criptosis<strong>tema</strong>s<br />

modernos<br />

Clave secreta Clave pública<br />

Cifrado <strong>en</strong> flujo Cifrado <strong>en</strong> <strong>bloque</strong><br />

Transformación<br />

inicial<br />

Función<br />

criptográficam<strong>en</strong>te<br />

débil<br />

Transformación<br />

final<br />

Alg. de Expansión<br />

de clave<br />

Análisis de riesgos 2


!"#<br />

$ %& '(<br />

) $ * + , '<br />

$ - *<br />

( & , ' .<br />

/01 ) $<br />

2 3 + 2<br />

4'0,<br />

4 5 6 / 5<br />

) 7 # 8 2<br />

$ ,<br />

'9 2 - ) :<br />

)) ,<br />

0 * ) )<br />

) ; : ) $<br />

5 6 < 3 $<br />

) $ <<br />

) : 6 ,<br />

4'0<br />

- ,<br />

' 2 = + ,<br />

& * ) ) 5 ) ,<br />

4'0<br />

A 32 bits<br />

Entrada: 64 bits<br />

& ) $ 2 ) $ ) ) : )<br />

4'1 & >?><br />

1'0 / 2<br />

B 32 bits<br />

Análisis de riesgos 3<br />

7


4 ' ) 3<br />

0<br />

. )<br />

) ) @5 )<br />

$ 2<br />

) - ,<br />

. " - ) ) :<br />

% ) - !"#<br />

)) ,<br />

. 7 4'0<br />

) $ 2 ) -<br />

) $ ) )<br />

5 ''&&<br />

4 + !" 3 /01,<br />

' 2 ''&& .<br />

) )<br />

% 5 6 7<br />

5<br />

% ) 7 5<br />

7 )<br />

-<br />

& ) ) A<br />

0# 3 $ ) ><<br />

>#<br />

3 $ $ )<br />

= B 3 - B<br />

$ : 3 9 :<br />

$<br />

5 6 -<br />

,<br />

64-bit Input<br />

Permutation<br />

Round 1<br />

Round 2<br />

…...<br />

Round 16<br />

Permutation<br />

64-bit Output<br />

Initial Permutation<br />

48-bit K1<br />

56-bit Key<br />

48-bit K2<br />

G<strong>en</strong>erate keys<br />

48-bit K16<br />

Final Permutation<br />

Análisis de riesgos 4


) $ $ * "<br />

5 5<br />

- $ " "<br />

-<br />

) $ . #<<br />

C C.<br />

1 ) $ ) :<br />

5 -<br />

- <<br />

)<br />

- D<br />

- $ <<br />

)<br />

- E D<br />

01 02 03 04 05 06 07 08<br />

09 10 11 12 13 14 15 16<br />

17 18 19 20 21 22 23 24<br />

25 26 27 28 29 30 31 32<br />

33 34 35 36 37 38 39 40<br />

41 42 43 44 45 46 47 48<br />

49 50 51 52 53 54 55 56<br />

57 58 59 60 61 62 63 64<br />

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

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

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

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

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

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

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

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

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

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

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

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

57 49 41 33 25 17 09 01<br />

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

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

Análisis de riesgos 5<br />

.


4 : $<br />

0 $ $<br />

)= ( )<br />

9 : 5<br />

% ) 7 5<br />

* < $ 3<br />

)) 5<br />

F ) ,<br />

% $ )= (<br />

3 ) F $ GH(<br />

0 ) 5<br />

5 $<br />

A 0<br />

0 $<br />

' $ GH(<br />

) $ *6 %<br />

! "<br />

32 1 2 3 4 5<br />

4 5 6 7 8 9<br />

8 9 10 11 12 13<br />

12 13 14 15 16 17<br />

16 17 18 19 20 21<br />

20 21 22 23 24 25<br />

24 25 26 27 28 29<br />

28 29 30 31 32 1<br />

Análisis de riesgos 6


$ ) : > 7<br />

5<br />

0 = $<br />

5 ,<br />

Permutación PC-1<br />

57 49 41 33 25 17 9<br />

1 58 50 42 34 26 18<br />

10 2 59 51 43 35 27<br />

19 11 3 60 52 44 36<br />

63 55 47 39 31 23 15<br />

7 62 54 46 38 30 22<br />

14 6 61 53 45 37 29<br />

21 13 5 28 20 12 4<br />

> $ ) : ><br />

5 ) ) $ :<br />

#<br />

#<br />

0 = $ 5<br />

.< < < < < < <<br />

,<br />

& ) ) : ,<br />

Permutación PC-2<br />

4 17 11 24 1 5<br />

3 28 15 6 21 10<br />

23 19 12 4 26 8<br />

16 7 27 20 13 2<br />

41 52 31 37 47 55<br />

!" 30 !##!#$<br />

40 51 45 33 48<br />

44 49 39 56 34 53<br />

46 42 50 36 29 32<br />

Análisis de riesgos 7


4 * $<br />

I < J <


$ ! % &<br />

S 1<br />

F<br />

I<br />

L<br />

A<br />

S<br />

S 2<br />

F<br />

I<br />

L<br />

A<br />

S<br />

0<br />

1<br />

2<br />

3<br />

0<br />

1<br />

2<br />

3<br />

C O L U M N A S<br />

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5<br />

14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7<br />

0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8<br />

4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0<br />

15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13<br />

C O L U M N A S<br />

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5<br />

15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10<br />

3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5<br />

0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15<br />

13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9<br />

$ ! ' (<br />

S 3<br />

F<br />

I<br />

L<br />

A<br />

S<br />

S 4<br />

F<br />

I<br />

L<br />

A<br />

S<br />

0<br />

1<br />

2<br />

3<br />

0<br />

1<br />

2<br />

3<br />

C O L U M N A S<br />

""%""" """%<br />

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5<br />

10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8<br />

13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1<br />

13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7<br />

1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12<br />

C O L U M N A S<br />

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5<br />

7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15<br />

13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9<br />

10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4<br />

3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14<br />

Análisis de riesgos 9


$ ! ) *<br />

S 5<br />

F<br />

I<br />

L<br />

A<br />

S<br />

S 6<br />

F<br />

I<br />

L<br />

A<br />

S<br />

0<br />

1<br />

2<br />

3<br />

0<br />

1<br />

2<br />

3<br />

C O L U M N A S<br />

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5<br />

2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9<br />

14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 6<br />

4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14<br />

11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3<br />

C O L U M N A S<br />

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5<br />

12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11<br />

10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8<br />

$ ! + ,<br />

S 7<br />

F<br />

I<br />

L<br />

A<br />

S<br />

S 8<br />

F<br />

I<br />

L<br />

A<br />

S<br />

0<br />

1<br />

2<br />

3<br />

0<br />

1<br />

2<br />

3<br />

9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6<br />

4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13<br />

C O L U M N A S<br />

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5<br />

4 11 2 14 15 0 8 13 3 12 9 7 5 10 6 1<br />

13 0 11 7 4 9 1 10 14 3 5 12 2 15 8 6<br />

1 4 11 13 12 3 7 14 10 15 6 8 0 5 9 2<br />

6 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12<br />

C O L U M N A S<br />

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5<br />

13 2 8 4 6 15 11 1 10 9 3 14 5 0 12 7<br />

1 15 13 8 10 3 7 4 12 5 6 11 0 14 9 2<br />

7 11 4 1 9 12 14 2 0 6 10 13 15 3 5 8<br />

2 1 14 7 4 10 8 13 15 12 9 0 3 5 6 11<br />

Análisis de riesgos 10<br />

.


!<br />

Permutación P<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 />

Análisis de riesgos 11


$ ) : -<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 />

& $ $<br />

) )<br />

)<br />

) ; 7< ; < ; < ; <<br />

; < ; < ; < ; .< ; < ; < ; 7< ; <<br />

; < ; < ; < ; ,<br />

% * $<br />

5 )<br />

) ) : *<br />

= ) )= ,<br />

Análisis de riesgos 12


!<br />

' ) ) ! ; '! # $ ) 5 6<br />

9 ) ) @ ) ):<br />

9 ) - 3 8 ) <<br />

) $ 8 $ 5 ): )<br />

): ) $ A ,<br />

- ) 5 6 ) ) ; - $<br />

% ) : ) $<br />

) : 9 ) ,<br />

L 5 6 ) : ! 6 9<br />

) 8 ) ) $ 8 ) ,<br />

/ 5 6<br />

/ ) $ $ A<br />

5 6 ,<br />

VI<br />

VI vector de<br />

inicialización<br />

E función de<br />

<strong>cifrado</strong><br />

!<br />

= ! ); = ) -<br />

) $ 5 6<br />

! 6 9 ) 8 )<br />

) $ 8 ) $ $ ) 3<br />

$ $ ) ) *) :<br />

' ) $ = ) 6 ) $ ) A<br />

5 6 9 ) 9 A 3<br />

% ) : ) $ - )<br />

) - ,<br />

m 1<br />

+<br />

E<br />

c 1<br />

m 2<br />

+<br />

E<br />

c 2<br />

Análisis de riesgos 13<br />

m 3<br />

+<br />

E<br />

c 3<br />

m 4<br />

+<br />

E<br />

c 4<br />

m 5<br />

+<br />

E<br />

c 5<br />

7


!<br />

= ! ); ) -<br />

$ ) :<br />

5 6 ,<br />

> $ ) -<br />

$2 6 + 6<br />

5 6 53 #,<br />

0<br />

* $ 7 5<br />

) ) ) L,<br />

!.<br />

H ! ); ) -<br />

$ ) :<br />

5 6<br />

" 3 ) !<<br />

6 5<br />

) - 5 6 A<br />

) $ $ ) :<br />

) $ ,<br />

' ) 6 ) :<br />

< 3 6<br />

5 ) - : - )<br />

5 ,<br />

% ) ) ) -<br />

9 ) ,<br />

Análisis de riesgos 14<br />

& '<br />

+ " , +-<br />

. / "<br />

& '<br />

( '<br />

+ " , +-<br />

. / "<br />

( '<br />

( ')"<br />

( ')"<br />

+ '<br />

( *<br />

+ '<br />

( *


'9 ) ) 85 ' ; ' ; $## I $<br />

5) ) ) ,<br />

0000000000000000 FFFFFFFFFFFFFFFF<br />

0101010101010101 FEFEFEFEFEFEFEFE<br />

EOEOEOEOF1F1F1F1 1F1F1F1F0E0E0E0E<br />

'9 ) ) $ 85 ' ; ' ; $## I<br />

$<br />

(01FE01FE01FE01FE, FE01FE01FE01FE01)<br />

(1FE01FE00EF10EF1, E01FE01FF10EF10E)<br />

(01E001E001F101F1, E001E001F101F101)<br />

(1FFE1FFE0EFE0EFE, FE1FFE1FFE0EFE0E)<br />

(011F011F010E010E, 1F011F010E010E01)<br />

(E0FEE0FEF1FEF1FE, FEE0FEE0FEF1FEF1)<br />

'9 ) 2 : ) - ) # 5<br />

9 $ 9 ) - ) 3<br />

) - )<br />

)<br />

$ + ) ) /H ) - 5<br />

> - * 5 $ ...<br />

' @ $ ) :<br />

) - * 5 =<br />

0 $5 $ 3 * < 6<br />

4 $ A ) M # )<br />

5 ) ) 5 ) +<br />

5 - ) =<br />

% $ A ) : 4'0 ) ) ) $<br />

4'0 4'0# 6 ) ) 4'0 ) ,<br />

Análisis de riesgos 15<br />

.


0 # 1<br />

4'0 ) ' ; ' ; $## J ' ; E; $#<br />

k 1<br />

M C’<br />

C<br />

DES DES<br />

0 ) : ) $ 5 6 6 $ =<br />

$ : ) E ) ,<br />

, 0 * 6 - * 5 ) ) $<br />

) 5 , 0 5 ) A 5 N,<br />

, O 9 $ PN - $ 5 9<br />

) - ) ) ) ; ,<br />

, 0 ) - 9 ) " ) ) ) ) ; 5 3<br />

) $ ) N< * $29 $<br />

)2) ,<br />

) : & ) 3 = *<br />

@$ $ 6 E I E )2) , % )<br />

E ,<br />

2 3 4<br />

Texto claro<br />

K 1<br />

K 2<br />

Análisis de riesgos 16<br />

k 2<br />

A B<br />

E D E<br />

k 1 y k 2 son claves n bits<br />

& * ) 3 A ) ) $ ,<br />

% - ) ) 5 ,<br />

& * 0' 3 >?>,<br />

Texto <strong>cifrado</strong><br />

K 1<br />

CIFRADO<br />

DESCIFRADO<br />

K 2<br />

K 1<br />

K 1<br />

B A<br />

D E D<br />

Texto <strong>cifrado</strong><br />

Texto claro


.<br />

4 ' ) 3<br />

1 =$<br />

G A % 3 Q$ " 3<br />

R )=< .. #<br />

' ) ) 4'0<br />

! 6 7 5<br />

5<br />

5<br />

' 5 6<br />

7 5<br />

0 5) 7<br />

5 ) $<br />

5<br />

& 7 )<br />

3 - $ ) : - )<br />

) ) :<br />

)<br />

⊕<br />

5 6 7 5<br />

- $ 7<br />

)<br />

E $ 7 7 I 7 7#<br />

⊗ $ 7 E #, 1 $<br />

* 9 )<br />

, ' ) ∈ R<br />

) ∈<br />

R E<br />

1 A $ ⊗ I 7<br />

⊗ $ 7 E # I $<br />

7 E # I 7<br />

7 $ 7 E # I 7<br />

X1 X2 X3 X4<br />

X1 X2 X3 X4<br />

Análisis de riesgos 17


. #<br />

2<br />

' 5 6 5 5 6<br />

7 5 G < G < G < G ,<br />

F ) 5) 7<br />

5 ,<br />

H ) )<br />

I G ⊗ F $ 7 E #<br />

I G E F $ 7 #<br />

I G E F $ 7 #<br />

I G ⊗ F $ 7 E #<br />

I ⊕<br />

7 I ⊕<br />

I ⊗ F $ 7 E #<br />

I 7 ⊕<br />

. I ⊗ F 7 $ 7 E #<br />

I E . $ 7 #<br />

I 7 ⊕<br />

I ⊕ .<br />

I ⊕<br />

I ⊕<br />

0 ) $5 5 6 ) 8<br />

) : ,<br />

0 * - $ )<br />

⊗ F . $ 7 E #<br />

E F $ 7 #<br />

E F $ 7 #<br />

⊗ F $ 7 E #<br />

Análisis de riesgos 18<br />

7


5 #<br />

1 5 <<br />

5) ) - 7 5 ,<br />

% $ 5) ) ) )<br />

5 6 7 5 , > ) )<br />

)= ) 5<br />

*6 3 , ( )<br />

) ,<br />

5 #<br />

( * "#<br />

0 *<br />

" # 1 $#<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23<br />

26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48<br />

51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73<br />

76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98<br />

101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123<br />

126 127 128<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23<br />

26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48<br />

51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73<br />

76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98<br />

101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123<br />

126 127 128 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20<br />

23 24 25<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23<br />

51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73<br />

76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98<br />

101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123<br />

126 127 128 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20<br />

23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45<br />

48 49 50<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23<br />

76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98<br />

101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123<br />

126 127 128 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20<br />

23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45<br />

48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70<br />

73 74 75<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23<br />

101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123<br />

126 127 128 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20<br />

23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45<br />

48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70<br />

73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95<br />

98 99 100<br />

Análisis de riesgos 19


0 $ $ $ ) )<br />

) - < $2<br />

O P< 2 )<br />

) ) : 6<br />

,<br />

!<br />

Inverso XOR: se aplica la misma función<br />

Inverso aditivo: suma mod 2 16<br />

Inverso multiplicativo: producto mod 2 16 +1<br />

! #<br />

d1 = k49 -1 d2 = -k50 d3 = -k51 d4 = k52 -1 d5 = k47 d6 = k48<br />

d7 = k43 -1 d8 = -k45 d9 = -k44 d10 = k46 -1 d11 = k41 d12 = k42<br />

d13 = k37 -1 d14 = -k39 d15 = -k38 d16 = k40 -1 d17 = k35 d18 = k36<br />

-1 -1<br />

d19 = k31 d20 = -k33 d21 = -k32 d22 = k34 d23 = k29 d24 = k30<br />

-1 -1<br />

d25 = k25 d26 = -k27 d27 = -k26 d28 = k28 d29 = k23 d30 = k24<br />

-1 -1<br />

d31 = k19 d32 = -k21 d33 = -k20 d34 = k22 d35 = k17 d36 = k18<br />

d37 = k13 -1 d38 = -k15 d39 = -k14 d40 = k16 -1 d41 = k11 d42 = k12<br />

d43 = k7 -1 d44 = -k9 d45 = -k8 d46 = k10 -1 d47 = k5 d48 = k6<br />

d49 = k1 -1 d50 = -k2 d51 = -k3 d52 = k4 -1<br />

Análisis de riesgos 20<br />

.


5 - 6 5 ) 2<br />

- ) ,<br />

85 Q 4 $ ) 5 .. 6<br />

) ; I < < 9 < < < 9<<br />

9999< 9 = 9 ) $ ) , 0<br />

- ) 6 ) 9 ) , %<br />

) 9 ) 6 @$ = 9 ) $ ,<br />

! ) 0)= ..7 S $3 < = 5<br />

$ ) 5 ); =$ 5 = 5 ) =<br />

$ ,S < ,# B < 53 ...<br />

= B ) $$ 4'1 =<br />

5 3 - - =$ < $<br />

) 3 3 < = - ,<br />

6 # 7<br />

' .. / 0 ) - ) 4'0 3 ) )<br />

) ) $ 2 ,<br />

4'0 )= > $ ) (01<br />

. .. 4'0 = , 0 $ ) .7<br />

) , 6 @<br />

, $ ) , 0: 9$ :<br />

M 5 ) ,<br />

.. 4'0 = , 0 $ ) .<br />

) 6 5 5 , 6<br />

, $ ) , 0<br />

: M 5 ) ,<br />

A .. 4'0 = , ' ) )<br />

' ) 4'0 ); T , # 3 7<br />

= $ ) . , $ )<br />

,<br />

... 4'0 = , 0 $26 4'0<br />

); 3 5 , ) ,<br />

) ) $ ) = <<br />

, $ ) , 0<br />

: M ) ) ,<br />

Análisis de riesgos 21


!8$<br />

4 + !8 ) ( A$ 3 4 $ #,<br />

' 2 1'0# ''&& ,<br />

) )<br />

% 5 5 6 3 ) < . <<br />

7 5 ,<br />

/@$ ) - 9 5 < < ,<br />

H ) 53 < ) 5 53<br />

/<br />

$ $ ) : - ) 3 ) ) 6 $<br />

2) $ * 5<br />

> 5 $ $ ) : A<br />

= DD) ), , D ) 3 D D<br />

. ! 5 3& , 4<br />

& 52 ) - $ ) : 53 ,<br />

0 $ 3 $ ) ) : , 0 )2) $ ? ? #<br />

) 5 , > )) : 9 2<br />

$ $ 9# I 9 E 9 E 9 E 9 E ,<br />

4 6 ) - ) < ) $<br />

53<br />

0 $ GH(<br />

" ) ) : =- U GH(<br />

1 I ! I 1 E ! I V<br />

1 I 7 I ! I 7 I<br />

0 ) ) $ ? #<br />

1 I I 9 7 E 9 E 9 E 9 E<br />

! I I 9 E 9 E<br />

1 E ! I 9 7 E 9 E 9 E 9 E # E 9 E 9 E # $<br />

1 E ! I 9 E 9 7 E 9 E 9 E 9 E # $ I 9 E 9 7 E 9 E 9 I<br />

I 7<br />

) ) H 9)<br />

⊕ I I 7<br />

Análisis de riesgos 22


. ! 5 3& , 4<br />

> ) 9, ' ) : ) ) ) $ 9 $ #<br />

6 ) )) :<br />

9 , > $ $ -2) $ )<br />

* $ 3 ) 9) ,<br />

1 I 7 I ! I 7 I<br />

1 I I 9 7 E 9 E 9 E 9 E<br />

! I I 9 E 9 E<br />

1K ! I 9 7 E 9 E 9 E 9 E # 9 E 9 E #<br />

1 K ! I 9 E 9 E 9 . E 9 E 9 E 9 7 E 9 E 9 E 9 E 9<br />

E 9 E # I 9 E 9 E 9 . E 9 E 9 7 E 9 E 9 E 9 E<br />

( ) 8 9# I 9 E 9 E 9 E 9 E<br />

. ! 5 3& , 4<br />

9 E 9 E 9 . E 9 E 9 7 E 9 E 9 E 9 E 9 E 9 E 9 E 9 E<br />

9 E 9<br />

9 E 9 . E 9 E 9 7 E 9 $ ) 9# 9<br />

9 E 9 E 9 E ) $<br />

9 E 9 E 9 7 E 9 E 9 $ ) 9# 9<br />

9 E 9 7 E ) $<br />

( 1 K ! I 9 E 9 7 E I I ) 7<br />

Análisis de riesgos 23<br />

7


. ! 5 3& , 4<br />

H $ ) )<br />

9 $ 9 E 9 E 9 E 9 E # I 9 E 9 E 9 E<br />

1∗! I 9 E 9 E 9 . E 9 E 9 7 E 9 E 9 E 9 E<br />

9 I 9 ∗9 I 9 ∗ 9 E 9 E 9 E # I 9 . E 9 E 9 7 E 9 I 9 K<br />

9 E 9 E 9 7 E 9 I 9 ∗ 9 E 9 E 9 E # E 9 E 9 E 9 E<br />

# E 9 7 E 9 I 9 E 9 E 9 E 9# E 9 E 9 E 9 E # E 9 7<br />

E 9 I 9 7 E 9 E 9 E<br />

9 I 9 ∗9 I 9 K 9 E 9 E 9 E # I 9 E 9 7 E 9 E 9<br />

9 . I 9∗9 I 9 K 9 E 9 E 9 E # I 9 E 9 E 9 E 9<br />

9 I 9 E 9 E 9 E<br />

1 K ! I 9 7 E 9 E 9 E E 9 E 9 7 E 9 E 9 E 9 E 9 E 9 E<br />

9 E 9 E 9 E 9 E E 9 7 E 9 E 9 E 9 E I 9 E 9 7 E<br />

9 E 9 E 9 E 9 E 9 E I 9 E9 7 E<br />

!8$<br />

1 ) @$ $ 5 5 6<br />

) $ $ * - 3 /5 ) $ , %<br />

) ) $ $ * - 3 /;<br />

) $ ,<br />

0 ! 5 6 ) - < 3 0 $ *<br />

$ 1'0 )<br />

) ;


!8$<br />

' ) ) : * )<br />

0 ) : ) 53<br />

$ ) ? #<br />

) $ 9# I 9 E 9 E 9 E 9 E<br />

, 4 8 )<br />

- $ ) : - ,<br />

4 *$ *6<br />

) 53 @$ $<br />

) 6 /5<br />

> ) ) ) $<br />

$ *<br />

GH( 5) 3 - $ ) :<br />

$ )<br />

4 ) - H )<br />

8$<br />

Análisis de riesgos 25<br />

.


) : $ ) $<br />

) : , ' $<br />

$ '0 14H,<br />

% $ ) 5 6 ,<br />

' ) $ $ * )<br />

53 < - 3 ) $<br />

% ) $5 8 ) $ * )<br />

53 < - 3 ) $ ,<br />

' @$ ) 6 *<br />

: $ 6 ) $ <<br />

)<br />

Análisis de riesgos 26


8 9 :3 894<br />

H( 'G %&0 L1 5 6<br />

3 ) ) - , '<br />

'0 14H / '("'4 H<br />

' -7 .<br />

32 88 31 e0<br />

43 5a 31 37<br />

f6 30 98 07<br />

a8 8d a2 34<br />

2 "#<br />

5 7 7 5 - . )- - )<br />

2b 28 ab 09<br />

7e ae f7 cf<br />

15 d2 15 4f<br />

16 a6 88 3c<br />

( * 2<br />

"#<br />

2 %; :<br />

19 a0 9a e9<br />

3d f4 c6 f8<br />

e3 e2 8d 48<br />

be 2b 2a 08<br />

0 ) : 53 $ *<br />

5 0 A 6 ) 53<br />

53 ,<br />

, 0 ) ) ? #<br />

, - $ ) : - 5 ? #<br />

5 X I 5 ⊕ 5 E #$ ⊕ 5 E #$ ⊕ 5 E7#$ ⊕ 5 E #$ ⊕ )<br />

4 ≤ < < 5 8 $ 5 53 3 ) 8 $ 5<br />

53 ) ) 3 Y7 Z 7<br />

S 0,0 S 0,1 S 0,2 S 0,3<br />

S 1,0 S 1,1 S 1,2 S 1,3<br />

S 2,0 S 2,1 S 2,2 S 2,3<br />

S 3,0 S 3,1 S 3,2 S 3,3<br />

S-Box<br />

Análisis de riesgos 27<br />

,<br />

S’ 0,0 S’ 0,1 S’ 0,2 S’ 0,3<br />

S’ 1,0 S’ 1,1 S’ 1,2 S’ 1,3<br />

S’ 2,0 S’ 2,1 S’ 2,2 S’ 2,3<br />

S’ 3,0 S’ 3,1 S’ 3,2 S’ 3,3


2 #<br />

8 ! :<br />

b’ 0<br />

b’ 1<br />

b’ 2<br />

b’ 3<br />

b’ 4<br />

b’ 5<br />

b’ 6<br />

b’ 7<br />

1 0 0 0 1 1 1 1<br />

1 1 0 0 0 1 1 1<br />

1 1 1 0 0 0 1 1<br />

= 1 1 1 1 0 0 0 1 +<br />

1 1 1 1 1 0 0 0<br />

0 1 1 1 1 1 0 0<br />

0 0 1 1 1 1 1 0<br />

0 0 0 1 1 1 1 1<br />

Análisis de riesgos 28<br />

b 0<br />

b 1<br />

b2 b3 b 4<br />

b 5<br />

b 6<br />

b 7<br />

Es el inverso del<br />

valor de <strong>en</strong>trada<br />

1<br />

1<br />

0<br />

0<br />

0<br />

1<br />

1<br />

0<br />

Valor {63} 16 o<br />

{011000011} 2<br />

7


2 :<br />

19 a0 9a e9<br />

3d f4 c6 f8<br />

e3 e2 8d 48<br />

be 2b 2a 08<br />

d4 e0 b8 1e<br />

27 bf b4 41<br />

11 98 5d 52<br />

ae f1 e5 30<br />

2 &! < 8 =<br />

* *6 53 -<br />

6 ) - $ $ * ) ,<br />

- I < < < * $ )<br />

-<br />

% -<br />

%<br />

%<br />

%<br />

-<br />

-<br />

-<br />

53<br />

53<br />

53<br />

d4 e0 b8 1e<br />

27 bf b4 41<br />

11 98 5d 52<br />

d4 e0 b8 1e<br />

bf b4 41 27<br />

5d 52 11 98<br />

S 0,0 S 0,1 S 0,2 S 0,3<br />

S 1,0 S 1,1 S 1,2 S 1,3<br />

S 2,0 S 2,1 S 2,2 S 2,3<br />

S 3,0 S 3,1 S 3,2 S 3,3<br />

ae f1 e5 30<br />

Análisis de riesgos 29<br />

'<br />

30 ae f1 e5<br />

S 0,0 S 0,1 S 0,2 S 0,3<br />

S 1,1 S 1,2 S 1,3 S 1,0<br />

S 2,2 S 2,3 S 2,0 S 2,1<br />

S 3,3 S 3,0 S 3,1 S 3,2


2 '! "<br />

L - $ $ ) < O)P )<br />

) $ 6 )<br />

H 5 ) $ ) 2 ) $<br />

$ 5 ? # $ ) ) $ $:<br />

9 E $ - A 9# 6 ) $ ) 9<br />

E 9 ) ) - ) 2<br />

9 = 9 ) $ #,<br />

9# I Y Z9 E Y Z9 E Y Z9 E Y Z<<br />

Y Z I 9 E < Y Z I 9< Y Z I ,<br />

S’ 0,C<br />

S’ 1,C<br />

S’ 2,C<br />

S’ 3,C<br />

2 '! "<br />

=<br />

02 03 01 01<br />

01 02 03 01<br />

01 01 02 03<br />

03 01 01 02<br />

Análisis de riesgos 30<br />

S 0,C<br />

S 1,C<br />

S 2,C<br />

S 3,C<br />

H $ 9<br />

0X < I Y Z • 0 < # ⊕ Y Z • 0 < # ⊕ 0 < ⊕ 0 <<br />

0X < I 0 < ⊕ Y Z • 0 < # ⊕ Y Z • 0 < # ⊕ 0 <<br />

0X < I 0 < ⊕ 0 < ⊕ Y Z • 0 < # ⊕ Y Z • 0 < #<br />

0X < I Y Z • 0 < # ⊕ 0 < ⊕ 0 < ⊕ Y Z • 0 < #<br />

'A $<br />

0X < I Y Z ⊕ Y Z5- ⊕ ⊕ I<br />

d4 e0 b8 1e<br />

bf b4 41 27<br />

5d 52 11 98<br />

30 ae f1 e5<br />

04 e0 48 28<br />

66 cb f8 06<br />

81 19 d3 26<br />

e5 9a 7a 4c<br />

7<br />

.


2 (! 8 9 :<br />

' - $ ) : ) H( 'G %&0 LH<br />

' $ 3 5) 6<br />

) ) - ,<br />

04 e0 48 28<br />

66 cb f8 06<br />

81 19 d3 26<br />

e5 9a 7a 4c<br />

a0 88 23 2a<br />

fa 54 a3 6c<br />

fe 2c 39 76<br />

17 b1 39 05<br />

! " #<br />

a4 68 6b 02<br />

9c 9f 5b 6a<br />

7f 35 ea 50<br />

f2 2b 43 49<br />

0 2 ) $ ) $ [<br />

5 53 3 ) /5∗ / E #,<br />

Bloque /<br />

Clave<br />

Nb = 4<br />

128 bits<br />

Nb = 6<br />

192 bits<br />

Nb = 8<br />

256 bits<br />

Nk = 4<br />

(128 bits)<br />

Nr = 10<br />

1.408 bits =<br />

4*11*4*8<br />

Nr = 12<br />

2.304 bits<br />

Nr = 14<br />

<strong>3.</strong>840 bits<br />

Nk = 6<br />

(192 bits)<br />

Nr = 12<br />

1.664 bits<br />

Nr = 12<br />

2.496 bits<br />

Nr = 14<br />

<strong>3.</strong>328 bits<br />

Análisis de riesgos 31<br />

,<br />

Nk = 8<br />

(256 bits)<br />

Nr = 14<br />

1.920 bits<br />

Nr = 14<br />

2.880 bits<br />

Nr = 14<br />

<strong>3.</strong>840 bits<br />

7<br />

7


" #<br />

% $ /; 5 ) 2 ) ) ,<br />

% /5∗ / E # /; 5 2<br />

$ $ 6 2 - /; ≤ 7 5<br />

/; \ 7,<br />

0 /; ≤ 7<br />

0 ) : 3 [ # $@ /;<br />

[ # I [ /;# 9 ]!3 0 5 ( [ ][ #^# 9 ()<br />

D/;#^<br />

0 ) : 3 [ # $@<br />

/;<br />

[ # I [ /;# 9 [ #<br />

0 /; \ 7<br />

' 5 5 - ) 9 : $ /;<br />

I ,<br />

% 5 5) ) ) 2<br />

[ # I [ /;# 9 !3 0 5 ][ #^<br />

" 7 >9>? %&,<br />

0 F 5 < /; I , 0 $ 5 6<br />

9 5 /5 I #,<br />

% 3 [ 2 K] E ^# I 5<br />

53 ,<br />

' ) $ ) # ) )<br />

) F,<br />

% 5 ) ≤ ≤<br />

# ) ) 2 $<br />

> [ # ) $@ /; < < < 7< < <<br />

< < 7< #< 5 53 ) ) 2 $<br />

5 6 2 ) ) 6 < 3<br />

* ) : 9 ) - ) :<br />

- $ ) : !3 0 5 ( [ () # 5 6<br />

) ) : 6 ) ,<br />

> < 7< < .< ,,,< < < #<br />

5 53 ) ) 2 * ) : 9<br />

5 6 ) ) )<br />

3 3 5 6 ) ) : 6<br />

)<br />

Análisis de riesgos 32<br />

7<br />

7


. #<br />

( [ ) : *6 53<br />

5 , 0 5 53 < 5< )< # ( B<br />

2 5< )< < #,<br />

F 5 7 7 5 - . )- - )<br />

2b 28 ab 09<br />

7e ae f7 cf<br />

15 d2 15 4f<br />

16 a6 88 3c<br />

7e ae f7 cf<br />

15 d2 15 4f<br />

16 a6 88 3c<br />

2b 28 ab 09<br />

() ) () A# I ]( A#< Y Z< Y Z<<br />

Y Z^ 5 3 ( A# $ ? #<br />

) 9 A ,<br />

$ " #<br />

2) [ # ) 5<br />

2b 28 ab 09<br />

7e ae f7 cf<br />

15 d2 15 4f<br />

16 a6 88 3c<br />

W(0) W(1) W(2) W(3)<br />

W(0) = 2b 7e 15 16<br />

W(1) = 28 ae d2 a6<br />

W(2) = ab f7 15 88<br />

W(3) = 09 cf 4f 3c<br />

2) [ # ) I < $@ /;<br />

$ ← [ # I . )- - )<br />

$ ← ( [ $ # I )- ) ) .<br />

$ ← !3 0 5 $ # I 5<br />

() D # I () #_ A I 9 A I 9 I<br />

() # I ] < < < ^<br />

a0 88 23 2a<br />

$ ← ()<br />

[ # I [ # 9<br />

# 9<br />

$<br />

$ I 5 5 fa 54 # a3 6c<br />

fe 2c 39 76<br />

2b 7e 15 16<br />

⊕ 8b 84 eb 01<br />

17 b1 39 05<br />

a0 fa fe 17<br />

Análisis de riesgos 33<br />

7<br />

77


$ " #<br />

2) [ # ) 5<br />

2b 28 ab 09<br />

7e ae f7 cf<br />

15 d2 15 4f<br />

16 a6 88 3c<br />

W(0) W(1) W(2) W(3)<br />

W(0) = 2b 7e 15 16<br />

W(1) = 28 ae d2 a6<br />

W(2) = ab f7 15 88<br />

W(3) = 09 cf 4f 3c<br />

2) [ # ) I < $@ /;<br />

[ # I [ /;# 9 [ #<br />

[ # I [ ` # 9 [ ` #<br />

[ # I [ # 9 [ #<br />

$ [ # I - -<br />

28 ae d2 a6<br />

⊕ a0 fa fe 17<br />

88 54 2c b1<br />

a0 88 23 2a<br />

fa 54 a3 6c<br />

fe 2c 39 76<br />

17 b1 39 05<br />

' $ ) - < )<br />

- $ ) ) *<br />

) - < 3 5) ,<br />

- $ ) : , !3 0 5 0 A #<br />

Análisis de riesgos 34<br />

7<br />

7


!2 &; # < 8 =<br />

0 * $ $ ) 6 ) -<br />

* )= 53<br />

- 6 ) - $ $ * ) ,<br />

S 0,0 S 0,1 S 0,2 S 0,3<br />

S 1,0 S 1,1 S 1,2 S 1,3<br />

S 2,0 S 2,1 S 2,2 S 2,3<br />

S 3,0 S 3,1 S 3,2 S 3,3<br />

S 0,0 S 0,1 S 0,2 S 0,3<br />

S 1,3 S 1,0 S 1,1 S 1,2<br />

S 2,2 S 2,3 S 2,0 S 2,1<br />

S 3,1 S 3,2 S 3,3 S 3,0<br />

!2 '; # "<br />

$ - $ ) : " 9 $ $ ) 5<br />

$ - A 9# I Y Z9 E Y Z9 E Y Z9 E<br />

Y Z< $ ) 9 E < 2,<br />

5 9# I Y !Z9 E Y 4Z9 E Y .Z9 E Y 'Z<br />

S’ 0,C<br />

S’ 1,C<br />

S’ 2,C<br />

S’ 3,C<br />

=<br />

0e 0b 0d 09<br />

09 0e 0b 0d<br />

0d 09 0e 0b<br />

0b 0d 09 0e<br />

Análisis de riesgos 35<br />

S 0,C<br />

S 1,C<br />

S 2,C<br />

S 3,C<br />

7.


3 4<br />

0 @ 5 ) < 9 @ $ ) $<br />

1 $ 6 $2 - ) 6<br />

6 - * 5 ,<br />

' + 2$ 1 $ ) $ /@$<br />

) < @$ ) 53 <<br />

0 A < )< - = ) 5<br />

1 $ - 6 ) ) ) $<br />

2 4- )<br />

2 %<br />

' $ 6 ) ) $ -<br />

5 ) .. < $ : ) $<br />

7 ) < ) $ 6 ( A<br />

< ) ) ,<br />

@ $<br />

(14H'/ !%Ha&'<br />

' $ ) - ) 5 ) 5 6<br />

$ A $ $ ) ,<br />

L A 4 A<br />

1 - : ! A ) ) -<br />

4 )) : 5 6 - > ) :<br />

(14H'/ %&QH<br />

' $ ) - ) 5 ) 5 $ A<br />

5 ) ) ) ,<br />

L A 4 A<br />

1 ) ) - ! A - :<br />

/ , L 5 )<br />

Análisis de riesgos 36


5 #<br />

? ) : < 5 ) : < $ ) $ < $ <<br />

)) : 3 ) ) : ) ) )<br />

) ,<br />

% )<br />

' )) : ) ) ) 6<br />

)) , ? ) : ,<br />

$ ) )= ) ) 6<br />

) $2 $ )<br />

$ 5 5 6 ) $ $<br />

$ 3 2 + ) ) $ $ < 3 6<br />

- $ ) : ) ) 6 ) 5 ,<br />

$ 3 2 ) : 5 ,<br />

$2 -2) * ) 2 ) $ )= 9<br />

) - ) $ $ ) ,<br />

5 #<br />

Q 6 ) )<br />

: $ ) -<br />

3 6 ) * - ) $ ,<br />

) - ) )<br />

: ,<br />

$ 5 $ $ 3 *<br />

) - ) )<br />

) $5 ,<br />

Análisis de riesgos 37


A<br />

k AE<br />

k AB<br />

Definición previa:<br />

X<br />

kXY kXY kYX Y<br />

E<br />

k AD<br />

k AC<br />

B<br />

k BE<br />

#<br />

k BD<br />

k BC<br />

Análisis de riesgos 38<br />

k DE<br />

k CE<br />

D<br />

Número Claves:<br />

n (n-1)<br />

2<br />

k CD<br />

N = nº de claves<br />

C<br />

2 3 4 5 usuarios: N N = = 101<br />

36<br />

La gestión de las claves es una tarea muy difícil<br />

# !<br />

7 -A<br />

escoge secreto x A<br />

calcula y A=α xA (mod p)<br />

g<strong>en</strong>era k= y B xA (mod p)<br />

escoge secreto x B<br />

calcula<br />

y B=α xB (mod p)<br />

g<strong>en</strong>era<br />

k= y A xB (mod p)<br />

7


) 5 $ #<br />

" 8<br />

( ) : 5 5 5 I 5 E 5 E, , , E 5<br />

0 ) ) ) 1 A<br />

) A I = <<br />

@$ 5 6 ! 5 ,<br />

0: $ ) ) 6<br />

) : A ! 5 ) ,<br />

Calcular x = 1237 mod 221 = 207 12<br />

B = 3710 = 1001012 A = 12 j 0 1 2 3 4 5<br />

2 mod 221<br />

1442 (primer cálculo)<br />

mod 221<br />

Bits 5 4 3 2 1 0<br />

A 2j<br />

mod 221<br />

" 8<br />

12 144 183 118 1 1<br />

x = 12∗183∗1 mod 221 = 207<br />

9 I 1 ! $<br />

> H5 ) : 5 9 ! ;<br />

5<br />

! → 5 ; 5 ; ,,,5 ,,,5 5<br />

> ) 9 I<br />

> > I ; < ,,,< = )<br />

9 I 9 $<br />

0 5 I # )<br />

9 I 9∗1 $<br />

Análisis de riesgos 39


# !<br />

7 6 < - <<br />

> ) ) *<br />

0 ) ) : 0# 6<br />

) ) $ 3 )<br />

> ) ) $ ) ) : 0 5<br />

- ) ) : < ) - ) )<br />

) ,<br />

> 1→0 1< !< 1<br />

> 0 →1 ' F10 1 ! →1 ' !#<br />

> 1 →! ' ! #<br />

: 2 $ 0 ) 5 6<br />

) :<br />

8 7 #@ 7<br />

- )<br />

1 ) ) :<br />

)<br />

0 - $<br />

% 6 +<br />

L )<br />

/@$<br />

L )<br />

- )<br />

1 ) ) :<br />

- $<br />

%<br />

L<br />

/@$ )<br />

L ) 5 A<br />

Análisis de riesgos 40<br />

.

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

Saved successfully!

Ooh no, something went wrong!