Академический Документы
Профессиональный Документы
Культура Документы
Resumen
Tema 4: Criptografía.
LOS INICIOS
César. Conocido así por ser utilizado por Julio César. Consistía en
sustituir cada letra del escrito (sin cambiar su lugar en el mismo) por
aquella situada tres posiciones por delante en el alfabeto. Es decir,
cambiar todas las aes por des, todas las bes por es, etc., hasta llegar
al final del alfabeto donde la “x”, “y” y “z” se cambian respectivamente
por la “a”, “b” y “c”.
o Estos métodos, la escítala y el César, ilustran los dos grandes grupos
de métodos de cifrado existentes: transposición y sustitución
▪ Mediante las técnicas de transposición las letras del texto en
claro intercambian sus posiciones según un cierto patrón, de
modo que en el texto cifrado aparecen las mismas letras, pero
con sus posiciones permutadas. Los métodos que siguen este
esquema se denominan de transposición o permutación y un
ejemplo es la escítala lacedemonia que hemos visto.
▪ las técnicas de sustitución hacen que las letras mantengan sus
posiciones en el texto, pero cambian su apariencia, siendo
sustituidas cada una de ellas por otra letra, por un número o por
un símbolo cualquiera. Si a cada letra en claro sólo le
corresponde un único símbolo cifrado, el método se llama
monoalfabeto. Este es el caso del método César.
• Criptoanálisis
o revelar los secretos protegidos sin conocimiento de la clave que los
protege. Esta disciplina se denomina criptoanálisis y criptoanalistas a
sus practicantes. El conjunto de la criptografía y el criptoanálisis es lo
que se conoce hoy día como la ciencia de la criptología.
o Realmente, tras la caída del Imperio Romano y hasta el Renacimiento,
la criptología sólo registró avances significativos en los califatos
islámicos, singularmente el abasí. En su capital, Bagdad, nace en el
siglo IX d. C.
o el moderno criptoanálisis, a partir del descubrimiento de que cada
lengua tiene una frecuencia característica de aparición de sus letras.
▪ Así, bastaba con contar el número de veces que aparecía cada
símbolo, letra o número en un texto cifrado para saber
realmente cuál era la letra subyacente, independientemente de
su apariencia.
▪ Por ello se dice que la cifra monoalfabética es insegura.
MÉTODOS DE CIFRA POLIALFABÉTICA
o a partir de este momento los cifrados monoalfabéticos estaban rotos,
habiendo ganado los criptoanalistas la batalla a los criptógrafos.
Naturalmente, los criptógrafos no podían prescindir de los métodos de
sustitución, relegando toda la criptografía a la transposición, de modo
que desarrollaron los métodos polialfabéticos
Sánchez Guzmán Diego Antonio Matemáticas Discretas II
papel esencial.
o precisamente después de la II Guerra Mundial cuando se producirán
los avances teóricos más significativos de la historia de la criptología,
por ejemplo, en 1948 Claude Shannon establecerá las bases teóricas
de la criptología.
Criptografía: etapas
• Precientífica (“artística”): Antigüedad - 1949
• Científica (Shannon): 1949 - 1976
• Asimétrica (Diffie-Hellman): 1976 – Actualidad
Sánchez Guzmán Diego Antonio Matemáticas Discretas II
Cifrado en bloque
• El texto en claro se cifra en secuencias de bits o bloques de tamaño fijo • El tamaño
de bloque suele oscilar entre 64 y 256 bits.
• Nunca deben cifrarse los bloques individual e independientemente, sino
encadenados, de manera que el cifrado de cada bloque dependa de todos los
bloques que lo preceden.
• Transformación inicial – Aleatoriza los datos de entrada y puede añadir
complejidad a los datos.
• Vueltas de cifrado
Sánchez Guzmán Diego Antonio Matemáticas Discretas II
• Transformación final
– Sirve para que las operaciones de cifrado y descifrado sean simétricas.
• Algoritmo de expansión de clave
– Convierte la clave de usuario en un conjunto de subclaves que pueden estar
constituidas por varios cientos de bits en total.
– Conviene que sea unidireccional. – Conocer una subclave no debe permitir
deducir las demás.
Propiedades necesarias para un buen algoritmo de cifrado en bloque
• Confusión
– Un pequeño cambio en la clave debería producir un cambio del 50% del texto
cifrado resultante. – Un atacante haciendo una búsqueda exhaustiva de claves no
recibirá ninguna señal de que está acercándose a la clave correcta.
• Difusión
– Un pequeño cambio en el texto en claro debería producir un cambio del 50% del
texto cifrado resultante.
– Oculta las relaciones estadísticas entre el texto claro y el texto cifrado.
• Completitud
– Cada bit del texto cifrado dependerá de cada bit de la clave.
– El atacante no podrá obtener partes válidas de la clave mediante ataques de
“divide y vencerás”.
Cifrado en flujo
• El texto en claro se cifra bit a bit.
• Se utiliza una secuencia cifrante (si) para determinar si cada bit del texto claro (mi)
se cambia o se deja sin cambiar.
Cifrado: ci = mi + si Descifrado: mi = ci + si
Sánchez Guzmán Diego Antonio Matemáticas Discretas II
secreta.
Comparación entre cifrado en bloque y cifrado en flujo
• Ambos tipos de algoritmos son muy rápidos, adecuados por tanto para cifrar
grandes volúmenes de datos, pero los de flujo son incluso más veloces.
• Los algoritmos de flujo pueden cifrar datos producidos a ráfagas sin esperar a que
estén los bloques completos.
• En los cifrados de flujo nunca se debe reutilizar la misma clave para cifrar dos
textos.
• Las longitudes de clave oscilan entre los 32 y 256 bits.
• Ambos presentan el problema de distribución de la clave: ¿cómo hacer que el
emisor y receptor acuerden una misma clave secreta de cifrado?
Sánchez Guzmán Diego Antonio Matemáticas Discretas II
(ANALOGIA)
▪ Imagínate que tienes la clave secreta escrita en un papel dentro de un
sobre. Tu amigo tiene una caja como ésta para meterla dentro y también
tiene un candado con su llave. ¿Cómo lo le haríais
harías para que tú pudieras
enviarle tu clave secreta?
▪ Le pediría a mi amigo que me mandase la caja junto con su candado
abierto. Como todo el mundo sabe cómo cerrar un candado, yo metería
dentro de la caja el sobre con mi clave secreta y cerraría el candado. De
esta forma, solamente él, que es quien posee la llave, podrá abrirlo. Si
alguien intercepta la caja, no podrá abrirla porque no posee la llave.
• Así es exactamente el fundamento de cómo funciona la
criptografía de clave pública.
• Es una analogía que nos ayuda a comprender cómo funcionan los algoritmos de cifrado de
clave pública
• Se dispone de dos claves: una es pública y por tanto conocida por todo el mundo y la otra
es privada y conocida solamente por su poseedor. Aunque cualquiera puede cifrar usando
la clave pública, sólo el que posee la correspondiente clave privada podrá descifrar.
• La clave pública debe ser conocida por todo el mundo, lo que facilita su distribución.
• Así es. Una vez que alguien conoce tu clave pública, puede enviarte mensajes cifrados con
la seguridad de que nadie más que tú podrá descifrarlos.
o porque sólo tú posees la clave privada correspondiente a esa clave pública.
o la clave privada es muy importante que la mantengas en privado y sólo tú la
conozcas. Nadie más. Por eso a la criptografía de clave pública se le llama también
asimétrica.
• Si cifras un mensaje con la clave pública no podrás descifrarlo usando esa misma clave
pública. Necesitarás usar la clave privada.
o Si cifras un mensaje con la clave pública no podrás descifrarlo usando esa misma
clave pública. Necesitarás usar la clave privada
• Es lo que en matemática discreta se conoce como inversos.
• ¿También puede cifrarse con la clave privada?
o Sí, no hay por qué usar la clave pública sólo para cifrar y la privada, sólo para
descifrar. También puede hacerse al revés
Sánchez Guzmán Diego Antonio Matemáticas Discretas II
• Si cifro algo con mi clave privada, entonces cualquiera que conozca mi clave pública podrá
descifrarlo. Y mi clave pública la puede conocer todo el mundo. Entonces, ¿qué sentido
puede tener hacer una cosa así?
o en que sólo tú puedes cifrar y todo el mundo puede descifrar.
o Como esa operación sólo puedes hacerla tú, lo interesante de esto es que
entonces también puedes firmar un mensaje.
• ¿Quieres decir que le estampo mi firma?
o No, no esa clase de firma precisamente, más bien se trata de una firma digital
▪ cifrar un mensaje con tu clave privada equivale a firmarlo porque nadie
más que el poseedor de la clave privada podría haber cifrado ese mensaje.
• Cuando cifras algo con tu clave privada estás demostrando tu
autoría: sólo tú puedes haberlo cifrado
o Eso es lo que se llama autenticación
o Aunque cifrar con tu clave privada no proporciona
confidencialidad al mensaje, es decir no le añade secreto,
sí asegura la autenticación: sólo tú pudiste haberlo
cifrado. Equivale por tanto a haberlo firmado.
o entonces cualquiera puede descifrarlo usando mi clave
pública, lo que equivaldría a verificar mi firma.
• Por eso es tan importante que tu clave privada sea privada o secreta y nunca la conozca
nadie más que tú. En la práctica, debido a que los algoritmos de cifrado asimétrico son
muy lentos, no suelen usarse para cifrar todo el mensaje, sino un resumen del mismo.
Pero ya veremos en una próxima lección las funciones hash, las firmas digitales y cómo
también proporcionan integridad a los mensajes.
• ¿Y si un atacante descifra el mensaje que yo he cifrado con mi clave privada usando mi
clave pública y luego lo cifra él o ella usando su clave privada, qué pasaría?
o Cuando los destinatarios intenten verificar la firma tuya, o lo que es lo mismo
descifrar usando tu clave pública, entonces se obtendrá un texto sin ningún
sentido, porque no se puede descifrar un texto cifrado con una clave privada
mediante una clave pública que no le corresponde
▪ Es lo de los inversos.
• O sea, que cuando cifro algo con mi clave privada luego no puedo decir que yo no lo firmé.
o Justo. No puedes negar haberlo firmado. Y esta propiedad del cifrado asimétrico
se conoce como no repudio, ya que no podrás repudiar tus mensajes.
EL PROBLEMA DE LA CONFIANZA
• Al reflexionar sobre el envío de mi clave secreta usando la clave pública del destinatario.
o ¿Cómo sé yo que la clave pública de un usuario es en realidad la suya y no la de un
atacante que la ha sustituido por la suya propia?
▪ Alguien podría haber interceptado la clave pública de mi amigo por el camino
y haberla sustituido por la propia. Si envío mi clave secreta cifrada con esa
clave pública, que en realidad es la del atacante, éste podrá descifrar sin
problemas el mensaje y obtener mi clave secreta. Después podría volver a
cifrarlo ahora sí con la clave pública legítima de mi amigo y mandársela.
Sánchez Guzmán Diego Antonio Matemáticas Discretas II
Ninguno de los dos nos daríamos cuenta de nada, mientras que el atacante se
habrá hecho con la clave secreta y podrá descifrar los mensajes que cifremos
con ella.
• El problema anterior se conoce como ataque del hombre en el medio
o por sus siglas en inglés man in the middle.
o Es un problema de confianza. Igual que vimos lo difícil que era
distribuir claves secretas de manera segura, veremos que es
difícil distribuir claves públicas de manera fiable.
o Hoy en día se ha resuelto al menos parcialmente usando los
certificados digitales y las infraestructuras de clave pública
PKI.
Ejemplo
• Clave pública:
o n = p×q, donde p y q son primos
o e, primo con (p-1)×(q-1)
• Clave privada:
o d, tal que d×e mod (p-1)×(q-1) = 1
• Cifrar: c = me mod n
• Descifrar: m = cd mod n
El emisor envía la clave secreta, generada aleatoriamente, cifrada con la clave pública del
receptor, el único capaz de descifrarla usando su correspondiente clave privada
Sánchez Guzmán Diego Antonio Matemáticas Discretas II
El emisor cifra el mensaje con su clave privada, operación que sólo él puede realizar
Tabla comparativa