Tipos de Cifradores
Mensaje en Claro
Cifradores en Flujo:
• Son los que cifran el mensaje símbolo a Generador Secuencia Cifrante
símbolo, o bit a bit, de modo secuencial.
• Cada cifrado es independiente de los
Clave E +
demás cifrados en el seno del mensaje.
- Vigenere con autoclave, Vernam, etc.
Criptograma
Mensaje en Claro
Cifradores en Bloques:
• Son sistemas que tratan un bloque de
texto en claro cada vez (n bits), y dan como
resultado un bloque de texto cifrado. Clave E
• La operación de cifrado dentro del bloque
es en paralelo
Criptograma
Objetivos de Shannon
Objetivo:
• Dificultar el criptoanálisis basado en análisis estadístico del criptograma o del
posible lenguaje del texto en claro (estadística de la fuente).
• En un cifrado ideal toda la estadística del criptograma es independiente de las
propiedades del mensaje y de la clave utilizada.
Método:
• Shannon propone que los cifrados se diseñen de modo que la Confusión y
Difusión sean máximas.
Difusión y Confusión
Difusión: Confusión:
• Las propiedades estadísticas del texto en • Intenta hacer que la relación entre
claro deben disiparse, distribuirse y la estadística del criptograma y el
mezclarse para dar las estadísticas de valor de la clave de cifrado sea tan
todo el criptograma. compleja como sea posible.
• Cada símbolo del texto en claro debe • Se consigue utilizando complejos e
afectar el valor de todos los símbolos en irreversibles procesos de
el criptograma. sustitución.
• Se consigue abundantes permutaciones
de bits
k
yn mn i (mod 26) H
i 0
Permutación
elementos
de 16
Cifrador de 4-bits:
• La entrada es alguno de los 16 posibles valores y
se la relaciona con alguna de las 16 posibles Codificador 4-bits
salidas.
• Hay 16! formas de hacer esta asignación; es decir
2.092×1013 posibilidades.
• El cifrado y descifrado se pueden definir en forma
Si se usan bloques grandes,
de tablas de sustitución.
su realización es ineficaz y su
• Si se usan bloques pequeños, los cifradores velocidad de proceso baja.
resultan débiles frente a los análisis estadísticos de
las frecuencias de aparición.
El Cifrado de Feistel
• ¿Es posible aproximarse a la situación ideal que representan
los bloques grandes construyendo los cifradores con bloques
más pequeños y mas fácilmente realizables?
• Se puede aproximar el cifrado por sustitución utilizando el
concepto de Cifrado Producto:
Feistel, H.: “Cryptography and Computer Privacy”. Scientific American, May 1973
Feistel, H.;Notz,W.;Smith, J.: “Some Cryptographic Techniques for Machine-to-Machine
Data Communications”. Proceedings of the IEEE, November 1975
El Cifrado de Feistel
Parámetros de Entrada: Un bloque de 2w bits y una clave
I0 D0
(K = [ k1, k2, k3, …, k16 ]).
1 Los bloques de entrada se dividen en dos mitades
(I0 y D0). F
K1
2 Los bloques de entrada se procesan a través de n
etapas (rounds) K2
3 Antes de salir se concatenan los dos bloques F
resultantes (I4 y D4).
K3
F
• Todas las etapas tienen la misma estructura.
• Se aplica una función de etapa F con una de las partes
y el resultado se suma a la otra.
K16
• El proceso de descifrado es el mismo que el cifrado. F
• Descifrado: Se opera en sentido inverso, cambiando el
orden de las claves intermedias.
• No es necesario desarrollar dos algoritmos distintos I0 D0
para el cifrado y el descifrado.
Parámetros de un Cifrado Feistel
1 Tamaño del Bloque: Grandes bloques significa mayor
difusión, mayor seguridad pero menor velocidad de
proceso.
2 Tamaño de la Clave: Claves largas suponen mayor
seguridad ya que son mas difíciles de adivinar, pero
también son más difíciles de manejar y generar.
3 Número de Etapas: Una etapa en sí no aporta gran
seguridad pero varias repetidas aportan una seguridad
creciente.
4 Algoritmo de Claves Intermedias: Cuanto mayor sea
su complejidad, mayor será su resistencia al
Criptoanálisis.
5 Función de Etapa: Cuanto mayor sea su complejidad,
mayor será su resistencia frente al Criptoanálisis, pero F
más baja la eficiencia del sistema.
DES = Data Encryption Standard
Antecedentes:
• Un proyecto de IBM dirigido por H. Feistel y finalizado en
1971 produjo el algoritmo “Lucifer”.
• Lucifer trabaja con bloques de 64 bits y usa claves de 128
bits.
• Lucifer fue vendido a Lloyd’s of London para proteger
transacciones bancarias en cajeros automáticos de IBM.
Proyecto:
• Proyecto de IBM dirigido por W. Tuchman y C. Meyer en el
que participó activamente la NSA.
• El DES es una redefinición del cifrador Lucifer con una
clave de longitud menor para que cupiese en un chip.
• Adoptado en 1977 por el NIST como estándar Federal
(FIPS PUB 46) para el uso civil con datos confidenciales No
Clasificados.
• Trabaja sobre bloques de 64 bits y tiene una clave de 56
bits.
El DES
Ha recibió muchas críticas desde el mismo día en
que se publicó:
- Longitud de clave muy corta (72 bit menos que en
Lucifer) que lo hace sensible a ataques por fuerza
bruta.
- Criterios de Diseño “CLASIFICADOS” por la NSA lo
que hace pensar que hayan podido introducir
“debilidades” sólo conocidas por ellos.
Hechos:
• Lleva funcionando más de 20 años bajo el
escrutinio público y nadie lo ha roto.
• El Criptoanálisis Diferencial actual, ha
demostrado que su estructura es muy sólida.
• En 1999 el DES ha expirado como estándar
NIST y ha sido sustituido por el AES2000.
Esquema General del DES
P1
I0 D0
• El procesado sigue tres fases:
<< <<
1. Permutación Inicial que no tiene
K1 P2 K
implicaciones criptográficas (no F
dibujada) << <<
32 01 02 03 04 05 32-bits Ki
04 05 06 07 08 09 Combina un bloque
08 09 10 11 12 13 expandido de datos
12 13 15 14 15 17 con la clave
15 17 18 19 20 21 Expansión intermedia de etapa.
20 21 22 23 24 25 Es la fuente de toda la
24 25 26 27 28 29 resistencia
28 29 30 31 32 01 48 - bits 48 - bits criptográfica del DES.
Expansión
6-bits
1 2 3 4 5 6 7 8
Permutación 4-bits
16 07 20 21 29 12 28 17
Sus criterios de
01 15 23 26 05 18 31 10
P
02 08 24 14 32 27 03 09 diseño son secretos.
19 13 30 06 22 11 04 25 Ha demostrado ser
32-bits muy buena.
Cajas de Sustitución
• Hay 8 cajas diferentes definidas como Tablas
E4D12FB83A6C5907 F18E6B34972DC05A
de Sustitución. 0F74E2D1A6CB9538 3D47F28EC01A69B5
• Cada una tiene 6 bits de entrada y 4 de salida 41E8D62BFC973A50 0E7BA4D158C6932F
(compresión). FC8249175B3EA06D D8A13F42B67C05E9
• Los elementos de la tabla son los dígitos
A09E63F51DC7B428 7DE3069A1285BC4F
hexadecimales [0,1,...,E,F]. D709346A285ECBF1 D8B56F03472C1AE9
• Los 2 bits extremos determinan la fila dentro D6498F30B12C5AE7 A690CB7DF13E5284
de la caja y los 4 bits centrales determinan la 1AD069874FE3B52C 3F06A1D8945BC72E
columna.
2C417AB6853FD0E9 C1AF92680D34E75B
EB2C47D150FA3986 AF427C9561DE0B38
421BAD78F9C5630E 9EF528C3704A1DB6
S4 B8C71E2D6F09A453 432C95FABE17608D
4B2EF08D3C975A61 D2846FB1A93E50C7
7DE3069A1285BC4F D0B7491AE35C2F86 1FD8A374C56B0E92
D8B56F03472C1AE9 14BDC37EAF680592 7B419CE206ADF358
A690CB7DF13E5284 6BD814A7950FE23C 21E74A8DFC90356B
3F06A1D8945BC72E
Efecto de Avalancha
Ava ncha de la Entra da Avalancha de la Clave
50
50
40 40
Bits cambiados
Bits cambiados
30 30
20
20
10
10
0
0 1 3 5 7 9 11 13 15 17
11
13
15
17
Round
Round
Propiedad:
– Un pequeño cambio en el texto en claro o en la clave debe producir un
cambio significativo e imprevisible en el criptograma.
– Si se cambia un bit en la entrada o en la clave, todos los bits del criptograma
deben verse afectados y cambiarán con una probabilidad de ½.
• El DES muestra un fuerte efecto de avalancha.
• Tras cuatro etapas, los bits del bloque de salida dependen de todos
los bits de la entrada y de todos los bits de la clave en igual manera.
Ataques por Fuerza Bruta al DES
Diffie y Hellman
• En 1977, postularon que la tecnología para construir una
máquina masivamente paralela (106 chips x 106 DES/s) bajaría
el tiempo de ataque a 10 horas y sólo costaría $20 millones.
Rocke Verser
• Desarrolla un programa de ataque y lo distribuye por Internet.
Empieza el 18 de Febrero de 1997 y 96 días después soluciona
un reto de RSA (por $10.000).
• Con el software utilizado, un Pentium a 200 MHz podía probar 1
millón de claves/segundo. A esta velocidad costarían 2.285
años barrer todo el espacio de claves.
• El número de PCs involucrados al final llego a 78,000 diferentes
direcciones IP, alcanzándose un máximo de 14,000 máquinas
en 24 horas.
• En el momento en el que se encontró la clave se había recorrido DES cracker (aka "Deep
una cuarta parte del espacio de claves y la velocidad de Crack") de la Electronic
búsqueda era de 7 billones de claves por segundo. Frontier Foundation en 1998
Ataques al DES
Criptoanálisis Diferencial (1990).
• Permite reducir la complejidad del ataque hasta 247
textos en claro elegidos (interés teórico).
• Parece ser que los diseñadores del DES ya conocían
(1974) ese ataque y se protegieron contra él en el diseño
de las cajas-S.
Eli Biham Adi Shamir
• Es un ataque bastante complejo.
·······
Ci-1 Ci
·
Cipher FeedBack y Output FeedBack
** Ver https://porsche.ls.fi.upm.es/Material/Varios/MeetInTheMiddle_3DES.pdf
IDEA = International Data Encryption
Algorithm.
• Propuesto en 1990 y refinado en 1992, por Xuejia Lai y James
L. Massey.
• Es un cifrador simétrico de bloques de 64 bits con una clave
larga de 128 bits, y es la alternativa Europea al DES.
• Es un algoritmo patentado pero puede utilizarse públicamente James L. Massey
sin problemas legales conocidos.
• Esta incluido en muchas aplicaciones de dominio público.
Longitud de la Clave:
• Es suficientemente larga para evitar los ataques por fuerza
bruta.
IDEA: Operaciones Básicas
Operaciones utilizadas: Fa Fb
– La función OR exclusiva bit a bit; []
– La suma de enteros módulo 216; [+] Za +
– La multiplicación de enteros módulo
216+1; []
Las entradas son de 16 bits y el cero lo representa el 216. + Zb
Propiedades:
Ga Gb
o Ningún par de las tres operaciones
satisface la propiedad distributiva;
a + (b*c) (a + b) * (a + c) o Tiene 4 argumentos de 16 bits: Fa, Fb,
o Ningún par de las tres operaciones Za, Zb.
satisface una ley asociativa; o Su criptoanálisis es más difícil que en
a + (b c) (a + b) c el DES que sólo utiliza cajas-S y .
o Es una transformación compleja de o Cada bit de salida depende de cada
multiplicaciones y sumas modulares. bit de los argumentos.
Etapa básica del IDEA
X1 X2 X3 X4
• El algoritmo tiene 8 etapas iguales,
seguidas de una transformación final,
que depende de cuatro claves de 16 bits. Z1 · + Z2
• Los argumentos de cada etapa son: Z3 + · Z4
– Un bloque de texto de 64 bits.
– Un bloque de claves de 96 bits.
• La clave original de 128 bits se expande
hasta 832 bits de claves intermedias · +
Z5
(x6,5).
• Hay dos etapas de mezcla con las claves + · Z6
intermedias:
Z1, Z2, Z3 y Z4
Z5 y Z6
• El intercambio final de los bloques
intermedios Aumenta el grado de mezcla
y Dificulta el criptoanálisis. W1 W2 W3 W4
Blowfish
Cifrador simétrico de bloques (64-bits) desarrollado por
Bruce Schneier en 1993.
Características:
• Rapidez: cifra datos en microprocesadores de 32
bits a 18 ciclos de reloj por byte. (CPU 800 MHz 44,4
Mbs-1)
• Compacto: se puede codificar en menos de 5 Kb de
memoria.
• Simple: Tiene una estructura sencilla y facilita la
evaluación de su seguridad. Algoritmo C/Et Etapas C/byte
Cajas - S
• Se inicializa el vector P y las cuatro cajas-S
con la representación binaria de la parte Se calcula el de P con K,
fraccionaria de . reutilizando las palabras de K que
sean necesarias.
P1 = 243F6A88, P2 = 85A308D3, ...., S4,254
= 578FDFE3,…, S4,255 = 3AC372E6. P1 = P1 K1, P2 = P2 K2, ...,
P15 = P15 K1, ..., P18 = P18
K4.
Generación del Estado Interno
(Pi, Si,j)
00…0 64-bits
Generación Dinámica:
• Cifrar el bloque de 64 ceros utilizando los P
E ...
vectores P y S, y reemplazar P1 y P2 con
lo que se obtenga. S
S0…St-1
• El procedimiento de expansión tiene cierto grado (2r+2 palabras)
de “sentido único”; es decir, es de difícil
inversión.
Expansión de la Clave
(b) bytes Clave
Procesos:
...... 00..0
1 Se inicializa S con valores (2w) públicos.
w bits de los decimales de las constantes
universales e (base logaritmo natural) y (razón ... L
(c) palabras
o proporción áurea).
2 Se construye L a partir de la clave K Mezcla 3
(padding con 0’s).
3 Se mezclan repetidas veces el contenido S
...
de S y L , obteniéndose el resultado en el 2(r+1) palabras
vector S.
Inicialización
e 2 , 7182818284 ... Pw S
2 (r+1) palabras
Golden Ratio 1, 6180339887 ... ... ...
Pw impar e 2 2 w + + + + +
Qw impar 12
w
Qw
Expansión de la Clave
Etapa de Mezcla:
• Una vez inicializados S y L, se mezclan realizando tres veces las
siguientes transformaciones completas:
Transformación de S Transformación de L
S0 Si St-1 L0 Lj Lc-1
...... ...... ...... ......
Función de Etapa
etapa dependiente de la
clave.
S2 F S3
• Cada palabra del bloque S2i +
se combina con una clave
intermedia a través de la S4 F S5
suma módulo 232.
+ S2i+1
• Transforma
simultáneamente las
mitades derecha e Cifrado:
S2r F S2r+1 A = A + S[0]
izquierda del bloque.
B = B + S[1]
Utiliza dos operaciones primitivas: for i = 1 to r do
A =(A B) << B) + S[2i]
– OR-exclusivo bit a bit; B =(B A) << A) + S[2i+1]
– Rotaciones circulares a la izquierda; [] (n)
– el grado de rotación lo determinan los n bits menos significativos del argumento de rotación,
donde n = log2(w) y w es la longitud de la palabra.
El Descifrado en RC5
Cifrado Cifrado Descifrado
A = A + S[0]
B = B + S[1]
For i = 1 to r do
A = ((A B) << B) + S[2·i];
S0 + + S1 S0 - - S1
B = ((B A) << A) + S[2·i+1];
Descifrado
For i = r downto 1 do
B = ((B - S[2·i+1]) >> A) A;
A = ((A - S[2·i]) >> B) A;
S2 + + S3 S2 - S3
B = B – S[1];
A = A – S[0];
CTS-CBC Cifrado:
1. Xn−1 = Pn−1 XOR Cn−2.
2. En−1 = E(K, Xn−1).
3. Cn = Cabeza(En−1, M). K E K E
4. P = Pn || 0B−M [Extender Pn con ceros para crear P]
5. Dn = En−1 P.
Cn Cola
6. Cn−1 = E(K, Dn).
RC5-32/12 y RC5-64/16
El Advanced Encryption Standard
Joan Daemen, Lars Knudsen, Vincent Rijmen (1997). "The Block Cipher Square”. Fast Software Encryption (FSE) 1997, Volume 1267 of Lecture Notes in
Computer Science. Haifa, Israel: Springer-Verlag. pp. 149–165.
Esquema general del AES
• Se basa en una red de Sustitución-Permutación (SP).
• Es rápido tanto en software como en hardware.
• No utiliza una cadena de Feistel. K1 AddRoundKey
• AES procesa bloques de 128 bits con claves de 128, 192, o
256 bits.
x10, 12 o 14 rounds
SubBytes
– AES tiene 10 rounds para claves de 128-bits, 12 para las de 192-
bits, y 14 cuando son claves 256-bits. ShiftRows
• La familia Rijndael puede tener bloques que sean múltiplos de
32 bits, entre 128-256 bits . MixColumns
• AES opera sobre un “estado interno” de 4×4 bytes (128 bits). Ki AddRoundKey
• La mayoría de las operaciones se hacen sobre un campo finito
especial (GF(28)).
SubBytes
• Las variantes de AES se diferencia por número de repeticiones
(rounds) que transforman en bloque de entrada en el de salida ShiftRows
(10, 12 o 14).
• Cada etapa contiene varias operaciones y una de ellas Kr AddRoundKey
depende de la clave.
• Para el descifrado se utilizan las transformaciones inversas con
la misma clave.
Operaciones de etapa en el AES
SubBytes
• Cada byte se actualiza usando denominada caja de
sustitución Rijndael. Esta es la operación no-lineal de la
cifra.
• La S-box utilizada esta relacionada con la inversa
multiplicativa de un número sobre GF(28) y con una
transformación afín reversible.
• La S-box se eligió de modo que se evitasen los puntos fijos,
haciendo que fuese una permutación con ningún elemento
en su sitio.
ShiftRows
• Opera con las filas del estado interno y desplaza
cíclicamente los bytes en cada fila. La primera fila
permanece inalterada.
– La segunda es desplazada una posición a la
izquierda.
– La tercera y cuarta fila se desplazan en dos y tres
posiciones.
• Cada columna del estado de salida esta compuesta
por bytes de cada columna del estado de entrada.
Operaciones de etapa en el AES
MixColumns
• Los cuatro bytes de cada columna del estado interno se
combinan utilizando una transformación lineal invertible.
• Toma 4 bytes de entrada y entrega 4 bytes a la salida y
cada byte de entrada afecta a los cuatro bytes de salida.
• Esta operación es la que proporciona difusión a la cifra.
• Es la multiplicación del estado interno por una Matriz
MSD (Maximun Distance Separable) para obtener una
“difusión perfecta”. (Efecto Avalancha asegurado).
AddRoundKey
• Se encarga de combinar la clave de etapa con el estado
interno.
• Cada subclave es del mismo tamaño que el estado
interno.
• La subclave se añade combinando con XOR cada byte
del la misma con su correspondiente byte del estado
interno.
Cifradores de Flujo
- Son cifradores que actúan sobre símbolos
individuales a través de una transformación
criptográfica que cambia.
- Son mas rápidos que los cifradores de bloques.
- Son la única solución en transmisiones en tiempo real
(no por paquetes)
- La tienen una limitada propagación de errores, o no
la tienen.
- Tienen un importante apoyo y justificación teórica.
- Los que se utilizan tienden a ser propietarios y
confidenciales.
- Son cifradores con memoria y el caso ideal es el
cifrado Vernam.
El nombre en código fue ROMULUS y fue diseñada el los 50. Fue utilizada por USA, NATO y
la NSA para proteger circuitos fijos de transmisión por teletipo. Tenia 800 Kb de memoria
central y 50 válvulas de vacío. Lo secreto en el KW-26 era el algoritmo de cifrado basado en
TSEC/KW-26, nombre en código ROMULUS
registros de desplazamiento. Cuando el barco espía USS Pueblo fue capturado por Korea del
sustituto de SIGABA
Norte en 1968, había varia s máquinas KW-26 abordo.
Cifradores Sincrónicos
Cifrado
clave K y de la realimentación de un Bloque
conjunto finito de símbolos previos del criptograma
criptograma. K g h
- Se recuperan de las inserciones y
Bloque mensaje en claro
pérdidas ya que tiene una memoria
finita.
- Cada símbolo del texto en claro afecta
Ci-t .... Ci-2 Ci-1
el cifrado de todos los que le siguen.
Descifrado
- Los cifradores de flujo
Bloque
Autosincronizantes son más criptograma
resistentes que los sincrónicos K g h-1
Un LFSR de longitud L
consiste en:
1. L estados numerados
S0, S1, S2, ..., SL-1 que
almacenan un bit. c1 c2 cL-2 cL-1 cL
2. Una señal de reloj que
SL-1 SL-2 S2 S1 S0
controla el
desplazamiento de los reloj
datos.
3. Un Polinomio de C ( x) 1 c1 x c2 x 2 cL 1 x L 1 cL x L 2 x
Conexión.
Registros Lineales de Desplazamiento
• Un LFSR es “no-singular” si el grado de su
polinomio de conexión es L (cL=1) Un LFSR de L celdas tiene 2L-1 posibles
estados iniciales
• El estado Inicial es el contenido {0,1} de las
celdas Si al empezar.
C ( x) 1 c1 x c2 x 2 cL 1 x L 1 x L
• Para cualquier estado inicial, la secuencia de
salida es periódica si, y sólo si, C(x) tiene
grado L. No se
• Un polinomio de conexión singular (cL = 0) da repite
secuencias no periódicas. 0
Se repite
• Si C(x) es un Polinomio Irreducible, cada uno
de los estados iniciales produce una secuencia 1
de salida con periodo igual al menor entero N
tal que:
C(x) divide a (1 + xN ) en Z2[x]
C ( x) x 4 x3 1 1 0 0 0
d n4 d n3 d n
8 1000111101011001000...
1 1000111101011001000...
- El registro pasa por todos los 3 1000111101011001000...
7 1000111101011001000...
posibles estados (24-1= 15) antes
15 1000111101011001000...
de repetirse. 14 1000111101011001000...
- La secuencia completa 13 1000111101011001000...
representa una permutación de 10 1000111101011001000...
todos los posibles estados. 5 1000111101011001000...
11 1000111101011001000...
- Cambiando el estado inicial 6 1000111101011001000...
obtenemos la misma permutación 12 1000111101011001000...
pero “rotada circularmente”. 9 1000111101011001000...
2 1000111101011001000...
4 1000111101011001000...
Propiedades Estadísticas
• Sea S una secuencia de m bits generada por un LFSR de longitud
máxima.
• Sea k un entero tal que 1 k L y s cualquier subsecuencia de S de
longitud 2L + k - 2:
- Cada secuencia no nula de longitud k aparece exactamente 2L-k veces en s.
- La secuencia nula de longitud k aparece 2L-k-1 veces exactamente.
• La distribución de símbolos de una determinada longitud es casi
uniforme.
- Un LSFR genera un secuencia s si un estado inicial para el que la salida es
s.
Elwyn R Berlekamp
- Un LFSR genera una sub-secuencia sn, si estados iniciales que dan sn en
sus primeros n términos.
Generador de Geffe:
LFSR1
- Es criptográficamente Débil
(sucumbe frente a ataques por
correlación).
LFSR2
F ( x1 , x 2 , x 3 ) x1 ·x 2 (1 x 2 )·x 3 LFSR3
Periodo ( 2 L1 1)( 2 L 2 1)( 2 L 3 1)
Comp .Lineal L1 L 2 L 2 L 3 L 3 clock
El libro de códigos para el A5/1 tiene Paralelizando: CUDA, cientos de threads, FPGA, millares de
128 Peta-byte (265 bits) y requiere mas cifradores a la vez.
de 100,000 años para ser calculado en Trucos algorítmicos: CUDA, calcula 4 bits a la vez, FPGA , minimiza
un sólo PC. los recorridos críticos.
Resultado: 3 meses en 80 nodos CUDA
En Diciembre de 2009, se completaron dos tablas de Tera-bytes que permiten romper A5/1 en tiempo real. El anuncio lo hizo Karsten Nohl
durante el Chaos Communication Congress en Berlín.
El Cifrador RC4
dos veces.
• El propósito de IV, que se transmite en 64 bits
IV RC4
Shared Key
claro, es prevenir ataques de repetición,
pero 24 bits no es suficientemente largo.
• El modo de utilizar IV en WEP facilita un 30 bytes
IV Datos Cifrados
802.11 headers
ataque por claves relacionadas sobre el
RC4.
• Con 24-bits para IV, hay un 50% de probabilidad de ver el mismo IV después de 5000
paquetes..
El Algoritmo RC4
• El RC4 tiene dos componentes:
1. El generador de Estado Interno bajo el control de la
clave. K0 KL-1
2. El algoritmo de transformación mensaje criptograma
.... K
• El Estado Interno es una Permutación de todos los
posibles bytes. (nº posibilidades = 256!) + Indx
1 Índices: 2 Intercambio:
x = (x + 1) mod 256 (Contador) P[x] P[y]
y = (y + P[x]) mod 256
3 Byte cifrante:
cif = (P[x] + P[y]) mod 256
+
P[256]