Professional Documents
Culture Documents
UPC
UPC
Transmisin de Datos
Introduccin a la Criptografa
Introduccin
Criptologa:Criptografa y Criptoanlisis
Criptografa: Comunicaciones en un
ambiente:
Hostil
Vulnerable
Desconfianza mutua entre los comunicantes
UPC
rdenes de Magnitud
1018 IPS
Tiempo:
Memoria:
1064(2212 )aos
1077(2256 )
UPC
UPC
Objetivos Criptoanalticos
Ruptura Parcial
Informacin Parcial
UPC
Seguridad de un Algoritmo
Seguridad Incondicional
P(M|C) =
P(M)
Vernam
UPC
Nivel de Seguridad
2 Recetas
(de Perogrullo?):
UPC
UPC
Los Personajes
Comunicante Desprotegido
Enemigo Operativo
UPC
Ataque Pasivo
Alicia
Blas
Carlos
Alicia
Blas
Carlos
Francisco Rico: Introduccin a la Criptografa
10
UPC
Ataque Activo
Alicia
Blas
Carlos
Alicia
Blas
Carlos
Francisco Rico: Introduccin a la Criptografa
UPC
11
Servicios de Seguridad
Contiene un fichero de 256K cifrado!!
Confidencialidad
Autenticidad
Verificabilidad (Firma Digital)
Coordenabilidad (Esteganografa)
12
UPC
No se puede Detectar
Puede Contrarrestarse
Ataque Pasivo
Confidencialidad
Alicia
Blas
Carlos
Confidencialidad y verificabilidad
Alicia
Blas
Carlos
Francisco Rico: Introduccin a la Criptografa
UPC
13
No se puede Evitar
Puede Detectarse
Ataque Activo
Confidencialidad y Autenticidad
Alicia
Blas
Carlos
Confidencialidad y Verificabilidad
Alicia
Blas
Carlos
Francisco Rico: Introduccin a la Criptografa
14
UPC
UPC
CRIPTOGRAFA CLSICA
Criptografa Clsica
16
UPC
Cifrado de Csar
CLAVE:
a b c d e f g h i j k l m n o p q r s t u v w x y z
h i j k l m n o p q r s t u v w x y z a b c d e f g
Francisco Rico: Introduccin a la Criptografa
UPC
17
Mtodo de Vigenre
E+H=L
L
18
UPC
E L M A R T E S E N T R A R E M O S E N L A P L A Z A Y T O M A R E M O S L A F O R T A L E Z A
H I N O J O H I N O J O H I N O J O H I N O J O H I N O J O H I N O J O H I N O J O H I N O J O
L T Z O A H L A R B C F H Z R A X G L V Y O Y Z H H N M C C T I E S V C Z T N T X F A I Y S I O
Texto Aleatorio:
P (coincidencias ) =
1 1
26 = 3.84%
26 26
Texto Castellano:
2
P (coincidencias ) = p ( A) 2 + p ( B) 2 + L + p ( Z ) 2 = cast
= 6.8%
L
4,2% O
4,2% I
4,2% S
2,1% Y
0,0% I
6,3% A
T
L
O
I
S
Y
I
Z
T
L
O
I
S
Y
O
Z
T
L
O
I
S
A
O
Z
T
L
O
I
H
A
O
Z
T
L
O
L
H
A
O
Z
T
L
A
L
H
A
O
Z
T
R
A
L
H
A
O
Z
B
R
A
L
H
A
O
C
B
R
A
L
H
A
F
C
B
R
A
L
H
H
F
C
B
R
A
L
Z
H
F
C
B
R
A
R
Z
H
F
C
B
R
A
R
Z
H
F
C
B
X
A
R
Z
H
F
C
G
X
A
R
Z
H
F
L
G
X
A
R
Z
H
V
L
G
X
A
R
Z
Y
V
L
G
X
A
R
O
Y
V
L
G
X
A
Y
O
Y
V
L
G
X
Z
Y
O
Y
V
L
G
H
Z
Y
O
Y
V
L
H
H
Z
Y
O
Y
V
N
H
H
Z
Y
O
Y
M
N
H
H
Z
Y
O
C
M
N
H
H
Z
Y
C
C
M
N
H
H
Z
T
C
C
M
N
H
H
I
T
C
C
M
N
H
E
I
T
C
C
M
N
S
E
I
T
C
C
M
V
S
E
I
T
C
C
C
V
S
E
I
T
C
Z
C
V
S
E
I
T
T
Z
C
V
S
E
I
N
T
Z
C
V
S
E
T
N
T
Z
C
V
S
X
T
N
T
Z
C
V
F
X
T
N
T
Z
C
A
F
X
T
N
T
Z
I
A
F
X
T
N
T
Y
I
A
F
X
T
N
S
Y
I
A
F
X
T
I
S
Y
I
A
F
X
O
I
S
Y
I
A
F
19
UPC
Criptoanlisis de Vigenre
L
V
Y
O
Y
Z
H
H
N
M
C
C
T
I
E
S
V
C
Z
T
N
T
X
F
A
I
Y
S
I
O
B
I
J
O
P
Y
D
C
J
K
P
Q
Z
E
D
K
L
Q
R
A
F
E
L
M
R
S
B
G
L
T
Z
O
A
H
L
A
R
B
C
F
H
Z
R
A
X
G
N O X C
L
H
E
T Z O A H L A R B C F H Z R A X G L V Y O Y Z H H N M C C T I E S V C Z T N T X F A I Y S I
I N O X C H I N O X C H I N O X C H I N O X C H I N O X C H I N O X C H I N O X C H I N O X
L M A D F E S E N F D A R E M A E E N L A B X A Z A Y F A M A R E Y A S L A F A D T A L E L
H
I
N
O
X
C
L
T
R Y
S
A
H
I
N
O
X
C
T U V W X
F G H I
20
10
UPC
Vernam
Requisitos:
Clave aleatoria
De un slo uso
Tan larga como el mensaje
Ejemplo:
Mensaje:
000100100100100100100
Clave:
001011111010001000011
Criptograma: 001111011110101100111
Francisco Rico: Introduccin a la Criptografa
UPC
21
Mtodo de Playfair
E N U N L U G A R D E L A M A N C H A
O W/
U X/Z
C G C A V Z N J H V Z Q T U J T D C J U
Francisco Rico: Introduccin a la Criptografa
22
11
UPC
Mtodos de Transposicin
ELCAMINOESTASEMBRADODETRAMPAS
EITBDMLNAREPCOSATAAEEDRSMSMOAX
ELCAMINOESTASEMBRADODETRAMPAS
UPC
23
Criptografa Clsica
Sistemas Clsicos
Sustitucin
Transposicin
Esctalo
MonoAlfabtica
Monogrmica
Poligrmica
Csar
Playfair
Polialfabtica
Peridica
Vigenre
Aperidica
Vernam
24
12
UPC
UPC
CRIPTOGRAFA MODERNA
ALGORITMOS SIMTRICOS
Criptografa Moderna
26
13
UPC
Simtricos
Una nica clave para cifrar y descifrar
Ventajas: Rapidez
Inconvenientes: Gestin de Claves
UPC
27
Algoritmos Simtricos
c1
Sin
Memoria
mn
c2
cm
K
K
r
C = (c1,L,cn ) = EK (m1,L,mn )
mi
Con
Memoria
ci
K
K
ci = EZ mi
Z = f (K ,i)
28
14
UPC
Iv
Cifrador
Cifrador
en flujo
en flujo
ci
mi
mi
UPC
29
mi
Registro
Registro
Cifrador
Cifrador
en flujo
en flujo
ci
mi
30
15
UPC
LFSR
Francisco Rico: Introduccin a la Criptografa
UPC
31
Topologa
s0
c0
s1
c1
s2
c2
s3
c3
s4
c4
c5
Ecuaciones de Estado
si(n) = s4(n-1)ci+si-1(n-1)
Francisco Rico: Introduccin a la Criptografa
32
16
UPC
Descripcin Polinmica
s0
c0
s1
c1
s2
c2
s3
c3
s4
c4
c5
Polinomio de Conexiones
UPC
33
Cuerpos de Galois
34
17
UPC
UPC
35
Aritmtica Modular
Trabajaremos Mdulo 5
Resto al dividir por 5
Ejemplo:
13=2*5+3 => 13=3 md 5
17=3*5+2 => 17=2 md 5
Francisco Rico: Introduccin a la Criptografa
36
18
UPC
inverso
UPC
37
38
19
UPC
Divisores de Cero
a 0, b 0 y ab = 0 a, b divisores de cero
Si el mdulo no es primo tendr divisores, y
por tanto habrn divisores de cero
M = 18
Ejemplo:
2*9=3*6=6*6=4*9=12*3=0 mod 18
Francisco Rico: Introduccin a la Criptografa
UPC
39
40
20
UPC
Suma de Polinomios
_______________________________________________________________________
D +D
Es una operacin interna (no aumenta el
grado)
1+1=0 => Sumar y restar es lo mismo
UPC
41
Producto de Polinomios
D + D+ 1
2
D+ 1
_____________
3
D
5
+ D+ 1
D +D +D
______________________
5
D +
D + D+ 1
42
21
UPC
D +
D + D +1
D +
D +D
_____________________
1
|___________
D + D+ 1
D
UPC
43
Polinomios Irreducibles
X + 1 en el cuerpo Real
44
22
UPC
Polinomio Generador
2
D + D+ 1
00
01
10
11
D+1
UPC
45
46
23
UPC
Polinomios Primitivos
C(D) irreducible
(n+)
(n+)
(D) = D S
< D -1
UPC
47
(n-1)
(D)= D S
(D) md C(D)
48
24
UPC
Otra topologa
s0
c0
s1
c1
s2
c2
s3
c3
s4
c4
c5
Un slo sumador
Si el Polinomio de Conexiones es primitivo la
secuencia es de longitud mxima
Francisco Rico: Introduccin a la Criptografa
UPC
Dato
32 bits
DES
(64 bits)
IP
L0
32 bits
R0
f
PC2
48 bits
56 bits
L1
R1
L15
R15
f
L16
PC2
49
PC1
28 bits
C0
D0
Ls
Ls
C1
D1
Ls
Ls
C16
D16
R16
IP-1
Dato
(64 bits)
50
25
UPC
Estructura de f
Ri-1(32 bits)
E
E(Ri-1) 48bits
S1
S2
Ki 48bits
S3
S4
S5
S6
S7
S8
P
F(Ri-1,Ki)
Francisco Rico: Introduccin a la Criptografa
UPC
51
Xi+1=
DES
(Xi,Xi),
DES-1 (Xi,Xi),
i Par
i Impar
x16=1B1A2DDB4C642438
52
26
UPC
Modos ms Usados
ECB
CBC
CFB
OFB
PBC
PFB
UPC
53
Cifrado:
C(n) = Ek{M(n)}
M(n) = Dk={C(n)}
Descifrado:
Cifrado:
Ek{M(n) C(n-1)}
DES: ModosC(n)
de Operacin
Descifrado: M(n) = Dk {C(n)} C(n-1)
Modos msCifrado:
Usados
ECB
CBC
CFB
OFB
PBC
PFB
54
27
UPC
MODO
ECB
CBC
CFB
PBC
PFB
CIFRADO
C(n)=E[M(n),k]
C(n)=E[M(n)+C(n-1),k]
C(n)=M(n)+E[C(n-1),k]
C(n)=M(n-1)+E[M(n),k]
C(n)=M(n)+E[M(n-1),k]
DESCIFRADO
M(n)=D[C(n),k]
M(n)=C(n-1)+D[C(n),k]
M(n)=C(n)+E[C(n-1),k]
M(n)=D[M(n-1)+C(n),k]
M(n)=C(n)+E[M(n-1),k]
UPC
55
Regularidades en DES
Complementariedad
DESk(m)=DESk(m)
56
28
UPC
Cifrado Doble
Seguro para la mayora de propsitos
UPC
57
DESk1
Ataque en el Centro:
DESk2
C
256 2 = 2 57
256 almacenamientos
!!! 500 millones de Gbytes !!!
Francisco Rico: Introduccin a la Criptografa
58
29
UPC
UPC
59
30
UPC
UPC
61
Definiciones Bsicas
Funcin Fcil
Funcin Difcil
fcil
difcil
Funcin Trampa
f: fcil
f-1:dificil si no se conoce cierta informacin
Francisco Rico: Introduccin a la Criptografa
62
31
UPC
Problemas Intratables
Factorizacin Entera
Dado N encontrar sus factores primos
Logaritmo Discreto
Dado aX mod p hallar x (con a conocido)
UPC
63
Aritmtica Modular
a n b n divide a a b
Ejemplo:
13 = 7 = 1= -5 mod 6
Propiedad Bsica:
64
32
UPC
p es un primo fuerte
es un elemento primitivo del cuerpo
XA, XB son aleatorios
Francisco Rico: Introduccin a la Criptografa
UPC
65
Protocolo de Diffie-Hellman
Alicia
Blas
M AB = X A mod p
M AB
M BA = X B mod p
M BA
( M BA )X mod p
( M AB ) X mod p
= X B XA mod p
= X A X B mod p
66
33
UPC
Protocolo de Diffie-Hellman
, p, M AB , M BA
Valores pblicos:
AXB
UPC
67
Protocolo de Diffie-Hellman
Alicia
Carlos
CXA
AXC
Blas
B XC
CXB
Punto en Claro
68
34
UPC
Principios de Funcionamiento
1.2.3.4.5.-
UPC
69
Secreto:
C AB = E KpB (M AB )
Firma:
C AB = DKs A (M AB )
Firma y Secreto:
C AB = E KpB (DKs A (M AB ))
EKs B (C AB ) = DKs A (M AB )
EKp A (C AB ) = M AB
70
35
UPC
RSA (Rivest-Shamir-Adleman)
UPC
71
Teorema de Euler:
M k ( N ) 1mod N , k , mcd( N , M ) = 1
Funcin de Euler:
( N ) = cardinal CRRN
M ( N ) M M mod N
M k ( N )+1 M mod N
Francisco Rico: Introduccin a la Criptografa
72
36
UPC
Teorema de Euler:
k ( N )
Si p es primo ( p ) = p 1
1mod N , k , mcd( N , M ) = 1
Funcin de Euler:
( N ) = cardinal CRR
Si N = pq ( N ) = ( pN 1)(q 1)
CRRN = { 0 < < N mcd( N , ) = 1}
M ( N ) M M mod N
Corolario:
M k ( N )+1 M mod N
Francisco Rico: Introduccin a la Criptografa
UPC
73
RSA: Funcionamiento
Si
ed = k ( N ) + 1
e , d = inversos mdulo N
C = M e = Criptograma
( )d = M ed
e
Cd = M
= M k ( N )+1 = M
Clave Pblica
Clave Secreta
e,N
d
Francisco Rico: Introduccin a la Criptografa
74
37
UPC
(N) =(p-1)q(-1)
N=p q,
75
Ataque Cclico
) L) = Entorno
C de Claves RSA
Test de Primalidad
e e
(C ) L = M
Rabin
Elegir los primos p y q
UPC
((
Si C
e e
la factorizacin de N y el
(N) =(p-1)q(-1)
ataque Cclico
Tpicamente
Eleccin de e como un
primo e = 65.537=216+1
(nmero primo de Fermat)
d = e-1 modulo (N)
Publicar e y N. Guardar d,p,q y (N)
Francisco Rico: Introduccin a la Criptografa
76
38
UPC
RSA Ejemplo
P = 433
313
N = 135529 (N)=134784
e = 101
d = 2669
ed=269669=2x134784+1=2(N)+1
Secreto:
26e = 33480 33480d = 26
Firma:
26d = 129978 129978e = 26
Francisco Rico: Introduccin a la Criptografa
UPC
77
VALORES PBLICOS
p : primo
q : factor primo de ( p 1) (160 bits)
g = h ( p 1) / q mod p, 0 < h < p 1, g 1, g : generador
CLAVE PBLICA : y = g x mod p
CLAVE PRIVADA : x
78
39
UPC
FIRMA DE m
k aleatorio
r = ( g k mod p ) mod q
s = k 1 (m + xr ) mod q
FIRMA : terna (m,r,s)
Francisco Rico: Introduccin a la Criptografa
UPC
79
VALORES PBLICOS
w = s 1 mod q
u1 = (mw) mod q
u 2 = (rw) mod q
v = (( g u1 y u 2 ) mod p ) mod q
CONDICIN DE VALIDEZ : v = r
Francisco Rico: Introduccin a la Criptografa
80
40
UPC
v = (( g u1 y u 2 ) mod p ) mod q
v = (( g mw g xrw mod p ) mod q =
v = (( g mw+ xrw mod p ) mod q ) =
v = (( g w( m + xr ) mod p ) mod q ) =
v = (( g k ( m + xr )
( m + xr )
mod p ) mod q )
v = (( g k mod p ) mod q ) = r
Francisco Rico: Introduccin a la Criptografa
UPC
81
Funciones de Hash
82
41
UPC
UPC
83
84
42
UPC
UPC
85
TARJETAS INTELIGENTES
43
UPC
Introduccin
Parmetros de Calidad
Capacidad de Almacenamiento
Seguridad:
En la Informacin
En la Identificacin
Francisco Rico: Introduccin a la Criptografa
UPC
87
Tarjetas de Identificacin
TARJETAS DE
IDENTIFICACIN
ISO 7810
Banda Magntica
ISO 7811,7812,7813
ISO 7816
De Memoria
De Memoria con
Proteccin Lgica
INTELIGENTES
88
44
UPC
Estructura
TARJETA
Vcc
GND
RST
CLK
MEMORIA
BUSES CPU
PTO SERIE
UPC
89
Tipologa de Ataques
Ataques
A la Comunicacin
Pasivo
A la Tarjeta
Activo
Proceso de Fabricacin
Desarrollo Produccin
Esttico Dinmico
90
45
Dimensiones y Contactos
Vcc
RST
CLK
RFU
GND
Vpp
I/O
RFU
UPC
UPC
91
Activacin y Comunicacin
Tarjeta
Terminal
Activacin Contactos y Reset
ATR
Peticin PTS
SI
Protocol Type Selection
Respuesta PTS
NO
Comando 1
Respuesta 1
92
46
UPC
El servidor
La Identificacin
identifica la tarjeta
El portador
identifica la tarjeta
La tarjeta
identifica al servidor
La tarjeta
identifica al portador
Francisco Rico: Introduccin a la Criptografa
UPC
93
Alicia
Blas
Carlos
Requisitos:
Carlos no debe poder suplantar a Alicia
Alicia confa en Blas
Francisco Rico: Introduccin a la Criptografa
94
47
UPC
Pregunta-Respuesta(reto)
Z
random
Si/No
X=DESk(Z)
Z=Z ?
X
Z=DES-1k(X)
Id
ALICIA
BLAS
UPC
95
Problema de Alicia:
Alicia
Blas
Carlos
Requisitos:
Carlos no debe poder suplantar a Alicia
Alicia NO confa en Blas
Francisco Rico: Introduccin a la Criptografa
96
48
UPC
Pregunta-Respuesta(reto)
Z
random
X=Zd mod(N)
Si/No
Z=Z ?
X
Z=Xe mod(N)
Id
ALICIA
BLAS
UPC
97
Contador EEPROM ++
RESET
Contador ++
Contador
3DESKtarjeta
RANDOM
Francisco Rico: Introduccin a la Criptografa
98
49
UPC
Ataques a la Tarjeta
Ataques
A la Comunicacin
Pasivo
A la Tarjeta
Activo
Proceso de Fabricacin
Desarrollo
Microprocesador
S. Operativo
Produccin
Esttico
Anlisis de Comportamiento
Dinmico
Intrusiones
UPC
99
100
50
UPC
Ataques a la Tarjeta
Ataques
A la Comunicacin
Pasivo
A la Tarjeta
Activo
Proceso de Fabricacin
Desarrollo
Produccin
Esttico
Anlisis de Comportamiento
Dinmico
Tecnologa Sem.
Test de Capa de Pasivacin
Clulas NO Estndares
Test de Tensin de Alimentacin
Estructuras Falsas
Test de Reloj
Aleatorizacin de Buses
Capas de Proteccin
Borrado Inmediato de Claves en RAM
Aleatorizacin de Memoria
Encripcin de PIN y Claves
UPC
101
102
51
UPC
UPC
103
104
52
UPC
Anlisis de Comportamineto
Ataques
A la Comunicacin
Pasivo
A la Tarjeta
Activo
Proceso de Fabricacin
Desarrollo
Esttico
Produccin
Dinmico
Anlisis de Comportamiento
Homogeneizacin de Consumo
Homogeneizacin de Tiempos
UPC
105
Icc
MUL
JMP
NOP
NOP
106
53
UPC
UPC
107
Microprocesadores Comerciales
Para Tarjetas Inteligentes
Fabricante
Amtel
Amtel
Hitachi
Motorola
Philips
ST Micro
Infineon
108
54
UPC
Microprocesadores de Seguridad
UPC
109
110
55