5. Pwhdh ffplkcffrsh vffrkffs vhchs pffrff
ffwmhntffr lff shgwrkdffd.
Cccn Frhcwhnckff sh wtklkzff lff hnCrkpCkccn
h-D-h.
wn thxtcc plffncc p hs CccdkFkcffdcc Cccmcc:
c Ek Dk2 Ek2 p
hstcc rhswltff hn wn hspffCkcc Clffvh
prccbffblhmhnth grffndh.
6. Presentación para la clase:
MATH 6800 Criptografía
Dr. Álvaro Lecompte Montes
Rosa E. Padilla Torres
30 de enero de 2012
7. Un criptosistema es llamado cifrado en bloque
si el espacio de texto plano y su espacio de
textocifra son el conjunto de Σn palabras de un
largo fijo n sobre un alfabeto Σ.
El largo del bloque n es un entero positivo.
Ejemplo:
Cifra César
Esta es un bloque de largo 1
Es llamado cifras de sustitución
8. Teorema:
La función de codificación de un cifrado en bloque
son permutaciones.
Demostración:
El teorema se demuestra pareando cada función de
codificación con su función de descifrado
correspondientes.
Éstas son injectivas
El mapa Σn → Σn es bijectiva
9. El método de estudio de la seguridad de los
cifrados en bloques consiste del estudio de sus
propiedades algebraicas.
Cada función de encripción es un elemento de
un grupo de permutaciones.
Si la función es de menor orden el descifrado
puede ser realizado interactuando varias veces
con la función de encripción.
10. Puede aplicarse varias veces para aumentar la
seguridad.
Con frecuencia se utiliza la encripción E-D-E.
Un texto plano p es codificado como:
c Ek Dk2 Ek2 p
Esto resulta un espacio clave probablemente
grande.
11.
12. ECB Electronic Codebook Mode
Arbitrariamente los textos planos largos se
descomponen en bloques de largo n.
El suplemento consiste en seleccionar símbolos
aleatoriamente.
El texto plano debe ser de largo divisible por n.
Se utiliza la clave de encripción e.
Cada bloque de largo n se codifica con la
función de encripción Ee.
13. Los textos cifrados se descifran aplicando la
función de descifrado Dd.
La clave de descifrado d corresponde a la clave
de cifrado e.
Es utilizada para algoritmos de codificación de
bloques de mapas con largo n o mayores.
Esto facilita los ataques estadísticos.
También se atacan con sustitución de texto
cifrado.
14. La manipulación del texto cifrado es muy difícil
de detectar por el receptor.
La seguridad aumenta en cierta parte de cada
bloque aleatoriamente y más bloques son
generados.
15. Modo de encadenado de bloques cifrados.
Sólo depende de la clave y los bloques previos.
La codificación depende del contexto
dependiente.
Bloques iguales con diferentes contextos son
encriptados de forma diferente.
16. Utilizamos bloques cifrados con alfabeto
∑ = {0, 1}
Bloques con largo n
Espacio clave k
Funciones de encripción y descifrar Ek y Dk
respectivamente.
kєK
17. El mapa : {0, 1}² {0, 1}, (b, c) b c
Se define como la siguiente tabla:
b c b c • Es llamado OR exclusivo
0 0 0 • Forma acortada XOR
1 0 1 • Es muy adecuado para encriptar
0 1 1 mensajes largos
1 1 0
Para k є b=(b1, b2,…, bn) y c=(c1, c2, …, cn) є
,
{0, 1}k fijamos:
b c =(b1 c1, b2 c2, … , bk ck)
18. CFB Cipher feedback mode
Modo de retroalimentación de cifra
Las funciones de codificación y descifrado son
secuenciales.
No se utiliza directamente la codificación de
bloques de texto plano.
19. Generan una secuencia de bloques claves.
El texto plano se codifica añadiendo los bloques
claves mod 2.
El texto cifrado se descifra sumándole el mismo
bloque clave mod 2.
Los bloques claves pueden ser generados
simultáneamente por el que lo envía.
20. Para codificar utilizando el modo CFB:
1. Oj = Ek (Ij)
2. Establecemos tj a la secuencia del primer bit de Oj.
3. Cj = mj tj
4. Ij+1 = 2r Ij + cj mod 2
21. OFB Output feedback mode
Modo de retroalimentación de salida.
Es muy similar al modo CFB.
Utiliza:
Bloques cifrados de largo n.
Otro bloque de largo r.
Vector de inicialización Ii
Se codifica un texto plano usando la clave e.
Se descompone en bloques de largo r como en
CBF.
22. Para codificar utilizando el modo OFB:
1. Oj = Ek (Ij)
2. Fijanos tj a la cadena que consiste en los primero
bits de Oj.
3. Cj = mj tj
4. Ij+1 = Oj
• Para descifrar, trabajamos análogamente sustituyendo
el paso 3 por mj = cj tj
23. Si un bit es transmitido incorrectamente, puede
llevar a que el texto plano esté en la misma
posición.
El bloque clave sólo depende del vector de
inicialización.
Tiene la ventaja de que puede ser computada
tanto por el remitente como por el destinatario
al mismo tiempo.
24. Es mucho mejor que el modo CBF.
La encripción no depende de los bloques de
texto plano anteriores.
25. Es utilizado para codificar arbitrariamente texto
planos largos como si fueran bloques
individuales dependientes.
Utiliza la recursión lineal de grado n:
n
zi c j zi j mod2
j 1
La función de codificación Ek está dada por:
Ek w 1 z1 ,..., m zm
La función para descifrar está dada por:
Dk w 1 z1 ,..., m zm
26. Una cifra afín con alfabeto de texto plano es un
m
cifrado en bloques con bloques de largo n = 1.
El espacio de las claves consiste en pares (a, b) є 2
m
para los cuales m es primo para α.
La función de codificación Ek para la clave k = (a, b) es:
Ek : ∑ → ∑, x → ax + b mod m
La función de descifrar para k = (a’, b) es:
Dk : ∑ → ∑, x → a’(x – b) mod n
27. Para encontrar la clave de descifrado que corresponde
a la clave de encripción k(a, b) resolvemos la
congruencia aa’1 mod m utilizando el algoritmo
euclidiano extendido.
De ahí surge la clave (a’, b).
28. Sea R un anillo conmutativo con un elemento
unitario 1.
Ejemplo:
R = / mpara algunos enteros positivos m
29. Una matriz k × m sobre R es una combinación
rectangular:
a11 a12 ... a1n
a21 a22 ... a2 n
A
. . . .
ak 1 ak 2 ... akn
30. Si n = k la matriz es cuadrada.
La fila i es el vector (ai1, ai1, …, ain), 1 ≤ j ≤ k
La columna j corresponde al vector
(a1j, a2j, …, axj), 1 ≤ j ≤ n
La entrada de la fila i y la columna j es aij
El conjunto de todas las matrices k × n sobre R
se denotan por R(k, n)
31. Si A = (aij) є R(k, n) y v = (v1,…, vn) є Rn entonces
el producto Av se define como el vector:
n
wi ai vi
j 1
32. Sea n є y A,B є R(n, n), A = (aji), B = (bji)
La suma de A y B es:
A + B = (aji + bji)
El producto entre A y B es A ∙ B = AB = (cji) con:
n
cij aik bkj
k 1
33. La matriz identidad n × n sobre R es:
En= (eij) con eij = 1 para i = j
0 para i ≠ j
La matriz cero n × n sobre R es aquella matriz
donde todas sus entradas son cero.
34. El determinante de la matriz A (det A) A є R(n, n)
se define recursivamente.
n
det A ( 1)i j aij det Aij
j 1
35. Una matriz A є R(n, n) tiene un inverso
multiplicativo sí y sólo sí el det A es una unidad
en R.
Si n = 1, entonces (a1,1 -1) es el inverso de A.
El adjunto de A es una matriz n × n definida
como:
adj A = (-1)i+j det Aij
La inversa de A es:
A-1 = (det A)-1 adj A
36.
37. Función lineal afín:
Una función f: Rn Rn se le llama lineal afín si
posee una matriz A R(l,n) y un vector b є Rl tal
que:
f (v) Av b
Si b = 0 entonces la función es llamada lineal.
Las funciones lineales afines m m son
n n
definidas análogamente.
38. Una función f: m l se le llama lineal afín
n n
si allí existe una matriz A є n) y un vector
(l,
b є tal que:
l
f (v) Av b modm
para todo v є m.
n
Si b 0 mod m, la función es lineal.
39. Un mapa afín lineal de f (v) Av b es
bijectivo sí y sólo sí l = n y el det A es unidad
en R.
f (v) Av b modm es bijectiva sí y sólo sí
l = n y el det A es primo para m.
40. Una función f: Rn Rn es lineal sí y sólo sí
f (v) Av bw af (v) bf (w)
para todo v, w є Rn y todo a, b є R.
Es una lineal a fin, sí y sólo sí la función Rn Rn,
v f(v) - f(v) es lineal.
41. Un cifrado en bloque con largo n, texto plano y
espacio de texto cifrado es llamado afín
n
lineal si todas sus funciones de encripción son
lineales afines.
Son de la forma:
E: m m , v A v + b mod m
n n
Su correspondiente función de decodificación
es:
D: m m , v A-1 (v – b) mod m
n n
Donde A’= (a’adj A) mod m y a’ es la inversa de
(det A) mod m
42.
43. Son llamadas así por Blaise de Vigenére
El espacio clave es K = m
n
Si k m , entonces:
n
Ek = m m , v v + k mod m
n n
Dk = m m , v v - k mod m
n n
44. Obtiene su nombre por Lester Sanders Hill
(1929).
Es otro criptosistema clásico.
Espacio clave k es el conjunto de todas las
matrices A n) con mcd(det A, m) = 1
(n,
La clave A K es:
EA = m m , v Av mod m
n n
La permutación de cifras
es lineal.
45. Sea Sn y ei , 1 ≤ i ≤ n los vectores filas en la
matriz identidad.
Obtenemos la matriz identidad mediante la
permutación de sus filas de acuerdo con la
permutación .
(v(1), … , v(n)) = E v
La permutación de cifras y una cifra lineal.
46. Buchmann, Johannes A. (2000). Introduction to
Cryptography. Capítulo 3: Encripción, páginas
69 a 101.