Professional Documents
Culture Documents
Vector de inicializacin
Rellenado
El cifrador en bloque opera con bloques de tamao fijo, pero las dimensiones de los
mensajes son variables. Por ello, en algunos modos de operacin como ECB y CBC el ltimo
bloque de texto debe ser rellenado antes del proceso de encriptacin. Hay muchos
esquemas que para realizar esto. El ms simple consiste en agregar null bytes al texto claro
hasta que la longitud sea mltiplo del tamao del bloque definido. Pero debe ser posible
recuperar la longitud original del texto. Algo ms complejo presenta el mtodo DES que
aade un bit en estado 1 seguido de null bytes para completar el tamao de bloque. Otras
tcnicas ms sofisticadas son los esquemas CBC-specific como ciphertext stealing o residual
block termination, que no genera texto cifrado adicional, a expensas de cierta complejidad
adicional en sus procesos. Scheineier y Ferguson sugieren dos posibilidades para realizar el
rellenado, ambas simples: anexar un byte con valor 128 (hex 80) seguido por tantos ceros
como sean necesarios para completar el ltimo bloque, o rellenar el ltimo bloque con n
bytes, todos con valor n.
Modos como CFB, OFB y CTR no requieren mtodos para manejar los mensajes que no
tienen longitudes que sea mltiplos del tamao de bloque, dado que los modos de
operacin trabajan realizando una operacin XOR entre el texto plano con la salida creada
por el cifrador por bloques. Con el ltimo segmento de texto llano se realiza una operacin
XOR con los primeros bytes obtenidos del cifrador, por lo que el texto cifrado resultante es
del mismo tamao del ltimo texto plano. Esta caracterstica de los cifrados en flujo los hace
ms adecuados para aplicaciones que transmiten datos en streaming donde no es
conveniente aplicar relleno de bytes.
La imagen de la derecha es cmo podra aparecer la misma imagen cifrada con CBC, CTR o
cualquiera de los otros mtodos seguros, esto es, indistinguible de ruido aleatorio. Hay que
notar que la apariencia aleatoria de la imagen de la derecha dice muy poco sobre si la
imagen ha sido cifrada de manera segura. Muchos mtodos no seguros de cifrado
producen, a priori, un resultado aparentemente aleatorio.
El modo ECB puede hacer que protocolos sin proteccin de integridad sean an ms
susceptibles a ataques de repeticin, dado que cada bloque es descifrado de la misma
manera. Por ejemplo, el videojuego online Phantasy Star Online: Blue Burst usa Blowfish en
modo ECB. Antes de que el mtodo de intercambio de claves fuese craqueado, algunos
jugadores enviaban repetidamente el bloque cifrado de Monstruo matado, cifrado cada
uno con Blowfish, para ganar ilegtimamente puntos de experiencia.
En el modo CBC (cipher-block chaining), antes de ser cifrado, a cada bloque de texto se le
aplica una operacin XOR con el previo bloque ya cifrado. De este modo, cada bloque
cifrado depende de todos los bloques de texto claros usados hasta ese punto. Adems, para
hacer cada mensaje nico se debe usar un vector de inicializacin en el primer bloque.
Si el primer bloque tiene ndice 1, la frmula matemtica para el cifrado CBC es
El modo propagating cipher-block chaining fue diseado para que pequeos cambios en el
texto cifrado se propagasen ms que en el modo CBC.
Las rutinas de cifrado y descifrado se definen como sigue:
PCBC es usado por Kerberos y Waste. Adems de en stos protocolos, su uso es bastante
infrecuente.
El modo OFB (output feedback) emplea una clave para crear un bloque pseudoaleatorio que
es operado a travs de XOR con el texto claro para generar el texto cifrado. Requiere de un
vector de inicializacin que debe ser nico para cada ejecucin realizada.
Las rutinas de cifrado y descifrado se definen como sigue:
Todos los bloques de salida obtenidos en cada operacin dependen directamente de todos
los anteriores, por lo tanto este modo de encriptacin no es paralelizable.
Sin embargo, ya que el texto claro o el texto cifrado slo son usados en el XOR final, las
operaciones del cifrador por bloques pueden realizarse por adelantado, para que la etapa
final se lleve a cabo en paralelo siempre que el texto claro o cifrado se encuentre disponible.
El modo de operacin OFB requiere un IV distinto para cada mensaje encriptado con una
misma clave. Si no se cumple este requerimiento se compromete la seguridad.
Criptografa
Objetivo
Las personas o entidades interesadas en romper la seguridad de este tipo de sistemas tienen
en cuenta todos estos frentes. Por ejemplo las informaciones de Edward Snowden revelan
que el programa Bullrun adopta estos tres tipos de estrategias.
Seguridad incondicional
Se dice que un sistema criptogrfico tiene una seguridad incondicional sobre cierta tarea si
un atacante no puede resolver la tarea aunque tenga infinito poder computacional. En
funcin de la tarea sobre la que se dice que el sistema criptogrfico es incondicionalmente
seguro, podemos hablar por ejemplo de:
Para certificar una seguridad incondicional los criptlogos se suelen basar en la teora de la
informacin y, por tanto, en la teora de la probabilidad.
Limitaciones
El que un sistema tenga seguridad incondicional no quiere decir que su seguridad sea
inviolable.
Seguridad condicional
Se dice que un sistema criptogrfico tiene una seguridad condicional sobre cierta tarea si un
atacante puede tericamente resolver la tarea, pero no es computacionalmente factible para
l (debido a sus recursos, capacidades y acceso a informacin).
En este enfoque se evala la seguridad del sistema utilizando las herramientas que
proporciona la teora de la informacin. Permite declarar sistemas incondicionalmente
seguros, es decir, sistemas seguros independientemente del poder de computacin del
atacante.
Este tipo de enfoque para evaluar la seguridad es muy usado en la criptografa asimtrica.
En concreto, la seguridad de muchos de los algoritmos de la criptografa asimtrica estn
basados en el anlisis de complejidad de los mtodos conocidos para el clculo de
factorizacin de enteros y del logaritmo discreto.
Por definicin, el tipo de seguridad que aporta este tipo de enfoque es una seguridad
condicional basada en los mtodos de resolucin de problemas evaluados. En este punto
hay que tener en cuenta dos consideraciones:
Actualmente no se pueden considerar como buenos los algoritmos que se usan para
estimar la complejidad de la resolucin de los problemas. Se considera que hay algoritmos
mucho mejores. Especialmente en el campo de la criptografa. Por tanto las estimaciones
sobre el poder de computacin necesario para romper el sistema no se consideran fiables.
Se ha demostrado que algunos de los problemas (por ejemplo, factorizacin de enteros y
el logaritmo discreto) en los que se sustenta la seguridad (computacional) de muchos
algoritmos, pueden resolverse con algoritmos con una complejidad computacional de peor
calidad usando computadores cunticos. Si alguien pudiera disponer de un computador
cuntico muchos de los sistemas criptogrficos que se consideran seguros (con seguridad
condicional) habra que catalogarlos como inseguros.
El objetivo de este enfoque es producir soluciones prcticas a partir del estudio de sistemas
concretos y de la experiencia acumulada. Es un enfoque de prueba-error donde se proponen
soluciones basndose en la experiencia y luego se somete esa solucin a un proceso
intensivo en el que se intenta romper su seguridad. A partir de este enfoque se han hecho
importantes avances en conseguir sistemas robustos ya que los criptgrafos disean ataques
y posteriormente adaptan los sistemas para anular dichos ataques. Por ejemplo, de esta
forma se han conseguido importantes avances en la seguridad frente a ataques basados en
estudios estadsticos y ataques meet in the middle.
Es frecuente, en este tipo de enfoque, disear bloques con ciertas propiedades demostradas
estableciendo una biblioteca de bloques disponibles. Ejemplos de propiedades buenas para
este tipo de bloques pueden ser: buenas propiedades estadsticas, buenas propiedades para
la confusin y difusin, o de no linealidad. Posteriormente estos bloques se ensamblan para
la construccin de sistemas criptogrficos que aprovechan sus propiedades para dotar de
mayor seguridad.
Este enfoque permite llegar a establecer sistemas que tienen seguridad condicional. Este
tipo de sistemas tienen una seguridad computacional.
Historia De la Criptografia
Durante la Primera Guerra Mundial, los alemanes usaron el cifrado ADFGVX. Este mtodo
de cifrado es similar a la del tablero de ajedrez Polibio. Consista en una matriz de 6 x 6
utilizado para sustituir cualquier letra del alfabeto y los nmeros 0 a 9 con un par de letras
que consiste de A, D, F, G, V, o X.
Desde el siglo XIX y hasta la Segunda Guerra Mundial, las figuras ms importantes fueron
la del holands Auguste Kerckhoffs y la del prusiano Friedrich Kasiski. Pero es en el siglo
XX cuando la historia de la criptografa vuelve a experimentar importantes avances. En
especial durante las dos contiendas blicas que marcaron al siglo: la Gran Guerra y la
Segunda Guerra Mundial. A partir del siglo XX, la criptografa usa una nueva herramienta
que permitir conseguir mejores y ms seguras cifras: las mquinas de clculo. La ms
conocida de las mquinas de cifrado posiblemente sea la mquina alemana Enigma: una
mquina de rotores que automatizaba considerablemente los clculos que era necesario
realizar para las operaciones de cifrado y descifrado de mensajes. Para vencer al ingenio
alemn, fue necesario el concurso de los mejores matemticos de la poca y un gran
esfuerzo computacional. No en vano, los mayores avances tanto en el campo de la
criptografa como en el del criptoanlisis no empezaron hasta entonces.
La mayor parte de los mensajes de correo electrnico que se transmiten por Internet no
incorporan seguridad alguna, por lo que la informacin que contienen es fcilmente
accesible a terceros. Para evitarlo, la criptografa tambin se aplica al correo electrnico.
Entre las diversas ventajas que tiene usar un certificado al enviar un correo electrnico,
podramos destacar la seguridad que nos aporta ya que as evita que terceras personas (o
hackers) puedan leer su contenido, o bien que tengamos la certeza de que el remitente de
este correo electrnico es realmente quien dice ser.
Bibliografa
http://www.kingston.com/latam/usb/encrypted_security/hardware_vs_software
http://www.cromo.com.uy/que-es-la-encriptacion-n705822