Вы находитесь на странице: 1из 40

Tema 9

Cifrado en Flujo con Clave Secreta

Curso de Seguridad Informtica


Ultima actualizacin: 10/02/02
Archivo con 40 diapositivas
Material Docente de
Libre Distribucin

Dr. Jorge Rami Aguirre


Universidad Politcnica de Madrid

Este archivo forma parte de un curso completo sobre Seguridad Informtica y


Criptografa. Se autoriza su uso, reproduccin en computador e impresin en
papel slo para fines docentes, respetando siempre los derechos del autor.
Curso de Seguridad Informtica Jorge Rami Aguirre

El cifrador de Vernam
Siguiendo las propuesta de cifrador hecha en 1917 por
Vernam, los cifradores de flujo usan:
Una cifra basada en la funcin XOR.
Una secuencia cifrante binaria aleatoria.
Un algoritmo de cifrado es igual que el de descifrado por la
involucin de la funcin XOR.
Clave K
Algoritmo
Determinstico

MENSAJE

Madrid (Espaa) 2002

Criptograma

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Clave K

secuencia cifrante

S
M

Algoritmo
Determinstico

MENSAJE

Tema 9: Cifrado

La secuencia cifrante Si
Condiciones para una clave segura
Perodo:
La clave deber ser tanto o ms larga que el mensaje. En
la prctica se usar una semilla de unos 120 a 250 bits
para generar perodos del orden de 10 30.
Distribucin de bits:
Rachas y AC(k)
Distribucin uniforme de unos y ceros que represente
una secuencia pseudoaleatoria (Postulados Golomb).
Rachas de dgitos: uno o ms bits entre dos bits distintos.
Funcin de Autocorrelacin Fuera de Fase AC(k):
desplazamiento de k bits sobre la misma secuencia S.

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

Rachas de dgitos
Rachas de una secuencia S de perodo 15
Bit anterior
es un 0

11 11 11 11 00 11 00 11 11 00 00 11 00 00 00

Prximo
bit es un 1

Rachas de 1s
Rachas de 0s
Un 0 entre dos 1s

Racha de 1111s
Un 1111 entre dos 0s

Un 1 entre dos 0s

Racha de 00s

Racha de 11s
Un 11 entre dos 0s

Un 00 entre dos 1s

Racha de 000s
Un 000 entre dos 1s

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

Distribucin de las rachas de dgitos


Las rachas, es decir la secuencia de dgitos iguales entre
dos dgitos distintos, debern seguir una distribucin
estadstica de forma que la secuencia cifrante Si tenga un
comportamiento de clave aleatoria o pseudoaleatoria.
Para que esto se cumpla, es obvio que habr ms rachas
cortas que rachas largas como en el ejemplo anterior.
Como veremos ms adelante, esta distribucin seguir
una progresin geomtrica. Por ejemplo una secuencia Si
podra tener 8 rachas de longitud uno, 4 de longitud dos,
2 de longitud tres y 1 de longitud cuatro.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

Autocorrelacin fuera de fase AC(k)


Funcin de Autocorrelacin:
Autocorrelacin AC(k) fuera de fase de una secuencia
Si de perodo T desplazada k bits a la izquierda:
AC(k) = (A - F) / T
Aciertos bits iguales
Fallos bits diferentes

Ejemplo

Si
A=

1 1 1 0 1 0 1 1 0 0 1 0 0 0 1

F=

A=7; F=8
AC(1)= -1/15

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Si k = 1

1 1 1 1 0 1 0 1 1 0 0 1 0 0 0

Madrid (Espaa) 2002

Tema 9: Cifrado

Importancia de una AC(k) constante


Si

1 1 1 1 0 1 0 1 1 0 0 1 0 0 0

Como ejercicio, compruebe que para esta secuencia cifrante


Si la Autocorrelacin Fuera de Fase AC(k) para todos los
valores de k (1 k 14) es constante e igual a -1/15.
Esto ser importante para la calidad de la clave.
Para que una secuencia cifrante sea considerada segura,
adems de cumplir con la distribucin de rachas, deber
tener una AC(k) constante como veremos ms adelante.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

Imprevisibilidad e implementacin de Si
Imprevisibilidad:
Aunque se conozca una parte de la secuencia Si, la
probabilidad de predecir el prximo dgito no debe ser
superior al 50%.
Esto se define a partir de la Complejidad Lineal.

Facilidad de implementacin:
Debe ser fcil construir un generador de secuencia
cifrante con circuitos electrnicos y chips, con bajo
coste, alta velocidad, bajo consumo, un alto nivel de
integracin, etc.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

Primer postulado de Golomb G1


Postulado G1:
Deber existir igual nmero de ceros que de unos. Se
acepta como mximo una diferencia igual a la unidad.
S1

1 1 1 1 0 1 0 1 1 0 0 1 0 0 0
En la secuencia S1 de 15 bits, hay 8 unos y 7
ceros, luego cumple con el postulado G1.

S2

1 1 0 1 0 1 0 1 0 0 0 1 0 0 0 1
En la secuencia S2 de 16 bits, hay 7 unos y 9
ceros, luego no cumple con el postulado G1.

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

Significado del postulado G1


Si

1 1 1 1 0 1 0 1 1 0 0 1 0 0 0

Qu significa esto?
Si una secuencia Si cumple con G1, quiere decir que la
probabilidad de recibir un bit 1 es igual a la de recibir un
bit 0, es decir un 50%.
A lo largo de una secuencia Si, en media ser igualmente
probable recibir un 1 que un 0 pues hay una mitad de
valores uno y otra mitad de valores cero.

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

10

Segundo postulado de Golomb G2


Postulado G2:
En un perodo T, la mitad de las rachas de Si sern de
longitud 1, la cuarta parte de longitud 2, la octava
parte de longitud 3, etc.
Las rachas de
Si

1 1 1 1 0 1 0 1 1 0 0 1 0 0 0

esta secuencia
estn en una
diapositiva
anterior

En la secuencia Si de 15 bits, hay 4 rachas de longitud uno, 2


rachas de longitud dos, 1 racha de longitud tres y 1 racha de
longitud cuatro. Este tipo de distribucin en las rachas para
perodos impares, es tpica de las denominadas m-secuencias
como veremos ms adelante en el apartado generadores LFSR.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

11

Significado del postulado G2


Si

1 1 1 1 0 1 0 1 1 0 0 1 0 0 0

Qu significa esto?
Si una secuencia Si cumple con G2, quiere decir que la
probabilidad de recibir un bit 1 0 despus de haber
recibido un 1 o un 0 es la misma, es decir un 50%.
Es decir, recibido por ejemplo un 1, la cadena 10 es
igualmente probable que la cadena 11. Lo mismo sucede
con un 0 al comienzo, un 00, 01, 10, 11, 000, 001, etc.
Comprobaremos ms adelante que la secuencia pasa por
todos sus estados, es decir todos sus restos.

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

12

Tercer postulado de Golomb G3 (1)


Postulado G3:
La autocorrelacin AC(k) deber ser constante para
todo valor de desplazamiento de k bits.

Si

0 1 1 1 0 1 0 0

Secuencia original

Desplazamiento de un bit a la izquierda

k=1

1 1 1 0 1 0 0 0

AC(1) = (4-4)/8 = 0

k=2

1 1 0 1 0 0 0 1

AC(2) = (4-4)/8 = 0

k=3

1 0 1 0 0 0 1 1

AC(3) = (2-6)/8 = -1/2

k=4

0 1 0 0 0 1 1 1

AC(4) = (4-4)/8 = 0 sigue

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

13

Tercer postulado de Golomb G3 (2)


Si

0 1 1 1 0 1 0 0

Secuencia original

k=5

1 0 0 0 1 1 1 0

AC(5) = (2-6)/8 = -1/2

k=6

0 0 0 1 1 1 0 1

AC(6) = (4-4)/8 = 0

k=7

0 0 1 1 1 0 1 0

AC(7) = (4-4)/8 = 0

k=8

0 1 1 1 0 1 0 0

Secuencia original en fase

La secuencia Si = 01110100 de 8 bits no cumple con G3.


Si = 10101100 s cumple. Compruebe que AC(k) = - .
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

14

Significado del postulado G3


Si

0 1 1 1 0 1 0 0

No cumple con G3

Si

1 0 1 0 11 0 0

S cumple con G3

Qu significa esto?
Si una secuencia cumple con el postulado G3 quiere decir
que, independientemente del trozo de secuencia elegido por
el atacante, no habr una mayor cantidad de informacin que
en la secuencia anterior. Ser imposible aplicar ataques
estadsticos a la secuencia recibida u observada.

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

15

Generador de congruencia lineal (1)


xi+1 = (axi b)(mod n) secuencia cifrante
Los valores a, b, n caracterizan al generador y se
utilizan como clave secreta.
El valor x0 se conoce como semilla; es el que
inicia el proceso generador de la clave X i.
La secuencia se genera de i = 0 hasta i = n-1.
Tiene como debilidad que resulta relativamente
fcil atacar la secuencia, de forma similar a los
cifradores afines de la criptografa clsica.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

16

Generador de congruencia lineal (2)


Sea:
Sea:
aa==55 bb==11
16 xx0==10
10
nn==16
0

xi+1 = (axi b)(mod n)


Si = 10, 3, 0, 1, 6, 15, 12, 13, 2, 11, 8, 9, 14, 7, 4, 5

x1 = (510+1) mod 16 = 3
x3 = (50+1) mod 16 = 1
x5 = (56+1) mod 16 = 15
x7 = (512+1) mod 16 = 13
x9 = (52+1) mod 16 = 11
x11 = (58+1) mod 16 = 9
x13 = (514+1) mod 16 = 7
x15 = (54+1) mod 16 = 5
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

x2 = (53+1) mod 16 = 0
x4 = (51+1) mod 16 = 6
x6 = (515+1) mod 16 = 12
x8 = (513+1) mod 16 = 2
x10 = (511+1) mod 16 = 8
x12 = (59+1) mod 16 = 14
x14 = (57+1) mod 16 = 4
x16 = (55+1) mod 16 = 10
Tema 9: Cifrado

17

Generador de congruencia lineal (3)


xi+1 = (axi b)(mod n)
Ejercicios

Qusucede
sucedesisi
Qu
aa==55 bb==22
16 xx0==10?
10?
nn==16
0

Qusucede
sucedesisi
Qu
aa==55 bb==22
16 xx0==1?
1?
nn==16
0

Qusucede
sucedesisi
Qu
aa==44 bb==11
16 xx0==10?
10?
nn==16
0

Saque sus propias conclusiones.


No ser un generador criptogrficamente interesante.

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

18

Registros de desplazamiento
Generador de secuencia cifrante con registros de desplazamiento
Realimentacin

g[a(t-1)a(t-2) ...a(t-n+1)]a(t-n)
?

Si es un bit 0 1

Conexiones de puertas

S1

S2

S3

S4

a(t-1)

a(t-2)

a(t-3)

a(t-4)

Desplazamiento

Sn-1

Sn

Si

Bit que se pierde

a(t-n+1) a(t-n)

a(i) es el contenido de la celda i

Genera una secuencia con un perodo mximo 2n


NLFSR

Registros de Desplazamiento Realimentados No Linealmente


Registros de Desplazamiento Realimentados Linealmente

LFSR
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

19

Generador NLFSR de 4 celdas (1)


Generador de cuatro celdas (n = 4)
1

Primera
operacin

XOR

1
0

OR

AND

NOT

S01

S12

S13

S14

S1

S2

S3

S4

Sea la semilla: S1S2S3S4 = 0111


Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Este es el estado
de las celdas y
las operaciones
previas antes de
producirse el
desplazamiento
de un bit hacia a
la derecha.

Si
Operaciones

Tema 9: Cifrado

20

Generador NLFSR de 4 celdas (2)


1

XOR

1
0

OR

AND

NOT

S101

S012

S13

S14

S1

S2

S3

S4

Observe que
primero se
transmite
S4S3S2S1
Si
1

Semilla: S1S2S3S4 = 0111

Continuando la secuencia Si = 1110 1100 1010 0001


Tmx = 2n = 24 = 16 (Secuencia de De Bruijn)
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

21

Generadores lineales LFSR (1)


a(t) = C1a(t-1) C2a(t-2) C3a(t-3) ... Cna(t-n)
Ci = {1,0} conexin/no conexin celda Cn = 1
Funcin nica: XOR

Tmx = 2n - 1

Polinomio asociado:

f(x) = Cnxn + Cn-1xn-1 + .... + C2x2 + C1x + 1


XOR
C1

S1

C2

S2

C3

S3

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

C4

S4

Generador
Generador
LFSRde
de44
LFSR
etapas/celdas
etapas/celdas
Si

Tema 9: Cifrado

22

Generadores lineales LFSR (2)


En funcin del polinomio asociado tendremos:
LFSR con polinomios factorizables
No sern criptogrficamente interesantes.
LFSR con polinomios irreducibles
No sern criptogrficamente interesantes.
LFSR con polinomios primitivos
Este tipo de polinomio que genera todo el cuerpo
de trabajo ser el que nos entregue una secuencia
cifrante de inters criptogrfico, de acuerdo a los
postulados de Golomb.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

23

Generador LFSR con f(x) factorizable


Generador f(x) factorizable de cuatro celdas (n = 4)

Sea f(x) = x4 + x2 + 1
f(x) es factorizable porque:

S1 S2 S3 S4

Sea f(x1) = f(x2) = (x +x+1)


2

Problema

f(x) = f(x1) f(x2)


f(x) = (x2+x+1) (x2+x+1)
f(x) = x4+2x3+3x2+2x+1
Tras la reduccin mdulo 2
Luego f(x) = x4 + x2 +1

T depender de la semilla
n T 2n - 1
Y adems, habr perodos
secundarios divisores de T

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Si

Tema 9: Cifrado

24

Ejemplo de LFSR con f(x) factorizable (1)


f(x) = x4 + x2 + 1

Sea la semilla:
S1S2S3S4 = 1101

S11 S12 S03 S14

Primer bit:
resultado de
la operacin
S1 = S2 S4

Registro

Bit Si

1101
0110
1011
1101

1
0
1
1

Si = 101
T=3

. . . semilla

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Si
Observe que
en este caso la
secuencia Si es
incluso menor
que la semilla.

Tema 9: Cifrado

25

Ejemplo de LFSR con f(x) factorizable (2)


f(x) = x4 + x2 + 1

Sea ahora la semilla:


S1S2S3S4 = 0111

S01 S12 S13 S14

Primer bit:
resultado de
la operacin
S1 = S2 S4

Registro

Bit Si

Registro

Bit Si

0111
0011
1001
1100

1
1
1
0

1110

1111
0111

1
1

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Si

. . . semilla

Si = 111001 T = 6
Tema 9: Cifrado

26

Generador LFSR con f(x) irreducible


Generador f(x) irreducible de cuatro celdas (n = 4)

Sea f(x) = x4 + x3 + x2 + x + 1
Es imposible factorizar
en mdulo 2 la funcin
f(x) mediante dos
polinomios f(x1) y f(x2)
de grado menor

S1 S2 S3 S4

Si

Problema

Ahora T ya no depende de la semilla


pero ser un factor de Tmx = 2n 1 y
no obtendremos un perodo mximo.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

27

Ejemplo de LFSR con f(x) irreducible


f(x) = x4 + x3 + x2 + x + 1
Sea ahora la semilla:
S1S2S3S4 = 0001

S01 S02 S03 S14

Primer bit:
resultado de
la operacin
S1 = S2 S4

Registro

Bit Si

Registro

Bit Si

0001
1000
1100
0110

1
0
0
0

0011

0001

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Si

. . . semilla

Si = 100011 T = 5 siendo
Tmx = 2n - 1 = 24- 1 = 15
Tema 9: Cifrado

28

Generador LFSR con f(x) primitivo


Generador f(x) primitivo de cuatro celdas (n = 4)
Sea f(x) = x4 + x + 1
f(x) no es factorizable
como f(x1)f(x2) en
mdulo dos. Es adems
un generador del grupo.
Habr(2
(2nn--1)/n
1)/n
Habr
polinomiosprimitivos
primitivos
polinomios
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

S1 S2 S3 S4

Si

T ya no depender de la
semilla y ser un valor
mximo Tmx = 2n - 1.
Se generan m-secuencias
Tema 9: Cifrado

29

Ejemplo de LFSR con f(x) primitivo


Generador f(x) primitivo de cuatro celdas (n = 4)
f(x) = x4 + x + 1
S1S2S3S4 = 1001
Registro

Bit Si

1001
0100
0010
0001
1000
1100

1
0
0
1
0
0

S1 = S1 S4

1110
1111
0111
1011
0101

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Si

S11 S02 S03 S14

Madrid (Espaa) 2002

0
1
1
1
1

T = 2n - 1
T = 24 - 1
T = 15

1010
1101
0110
0011

0
1
0
1

1001

T = 15

Tema 9: Cifrado

30

Secuencia Si de LFSR con f(x) primitivo


Caractersticas
Secuencia mxima de 2n - 1 bits
Cumple con G1:
Hay 2n bits 1 y 2n-1 bits 0

Cumple con G2:

m-secuencia

Distribucin de rachas de m-secuencia

Cumple con G3:


Los aciertos (A) sern iguales a 2n-1 - 1
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

31

Rachas en Si de LFSR con f(x) primitivo


Rachas de Longitud

1
2
...
p
...
n-2
n-1
n
TOTAL

Rachas de Ceros

Rachas de Unos

2n-3
2n-4
...
2n-p-2
...
1
1
0
2n-2

2n-3
2n-4
...
2n-p-2
...
1
0
1
2n-2

Rachas de una m-secuencia


Sin embargo, no es un generador ideal para la cifra porque su
Complejidad Lineal es muy baja.

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

32

Debilidad de un LFSR con f(x) primitivo


Como este LFSR genera una secuencia de longitud
mxima, sta ser previsible y se puede encontrar la
secuencia completa Si de 2n - 1 bits ...
con slo conocer 2n bits !
Por ejemplo, si en un sistema de 4 celdas con perodo
24 - 1 = 15 conocemos 24 = 8 bits, seremos capaces
de encontrar las conexiones de las celdas o valores de
Ci y generar as la secuencia completa Si.
Esto se conoce como el ataque mediante el algoritmo
de Berlekamp-Massey.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

33

Ejemplo de ataque Berlekamp-Massey (1)


Si conocemos 2n = 8 bits S1S2S3S4S5S6S7S8 de un LFSR
de 4 celdas C1C2C3C4, tenemos el sistema de ecuaciones:

C1 C2 C3

C4=1

S1 S2 S3 S4

Si

S5 = C1S1 C2S2 C3S3 C4S4


S6 = C1S5 C2S1 C3S2 C4S3
S7 = C1S6 C2S5 C3S1 C4S2
S8 = C1S7 C2S6 C3S5 C4S1
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Si asignamos valores
de esos 2n = 8 bits
S1S2S3S4S5S6S7S8
seremos capaces de
resolver este sistema
Primero se transmite
S4S3S2S1 (semilla) y
luego bits S5S6S7S8.

Tema 9: Cifrado

34

Ejemplo de ataque Berlekamp-Massey (2)


S5 = C1S1 C2S2 C3S3 C4S4
S6 = C1S5 C2S1 C3S2 C4S3
S7 = C1S6 C2S5 C3S1 C4S2
S8 = C1S7 C2S6 C3S5 C4S1

Si los 8 bits
S1S2S3S4S5S6S7S8
son 1100 1000
S1 = 0 S5 = 1

1 = C10 C20 C31 C41

S2 = 0 S6 = 0

0 = C11 C20 C30 C41

S4 = 1 S8 = 0

S3 = 1 S7 = 0

0 = C10 C21 C30 C40

C1 = 1

C2 = 0

0 = C10 C20 C31 C40

C3 = 0

C4 = 1

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

35

Ejemplo de ataque Berlekamp-Massey (3)


CONCLUSIONES:
Como se conoce la configuracin del generador
LFSR, y Si es una m-secuencia de perodo 2n - 1,
entonces por el conjunto de n celdas pasarn todos
los restos del campo de Galois de 2n menos la cadena
de n ceros que est prohibida.
Para el ejemplo, esto quiere decir que cualquier
grupo de 4 dgitos correlativos de los 8 conocidos
permite generar la secuencia mxima.
La solucin es aumentar la complejidad lineal del
generador por ejemplo conectando varios LFRs.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

36

Algoritmos de cifrado en flujo


Sistemas ms conocidos:
RC4:
Algoritmo de RSA (Rivest Cipher #4) desarrollado en el
ao 1987 (usado en Lotus Notes).

SEAL:
Algoritmo propuesto por IBM en 1994.

A5:
Algoritmo no publicado propuesto en 1994. Versiones
A5/1 fuerte (Europa) y A5/2 dbil (exportacin).

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

37

El algoritmo de cifra A5
El uso habitual de este algoritmo lo encontramos en el
cifrado del enlace entre el abonado y la central de un
telfono mvil (celular) tipo GSM.
Con ms de 100 millones de usuarios en Europa y
otros 100 millones de usuarios en el resto del mundo,
el sistema ha sucumbido a un ataque en diciembre de
1999 realizado por Alex Biryukov y Adi Shamir.
... y su futuro es incierto.
Curso de Seguridad Informtica.
Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

38

Esquema del algoritmo de cifra A5


18

13

C1

3 LFSR con

R1

m-secuencia

C1: bit
de reloj

Si

21

R2
C2: bit
de reloj

19
nn11==19
22
nn22==22

C2

22

C3

R3

23
nn33==23
Clave = 64 bits

Curso de Seguridad Informtica.


Jorge Rami Aguirre

C3: bit
de reloj

Madrid (Espaa) 2002

Tema 9: Cifrado

39

Consideraciones sobre el perodo de A5


El perodo T vendr dado por el mximo comn
mltiplo de los tres perodos individuales:
T = mcm (2n1 - 1, 2n2 - 1, 2n3 - 1)
Como n1, n2 y n3 son primos entre s, tambin lo sern
los valores (2n1 -1), (2n2 - 1) y (2n3 - 1). Entonces el
perodo T ser el producto de estos tres perodos:
T = T1T2T3
En todo caso T < 264 es un valor demasiado bajo
Fin del Tema 9

Curso de Seguridad Informtica.


Jorge Rami Aguirre

Madrid (Espaa) 2002

Tema 9: Cifrado

40