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

Fundacin Proydesa

Criptografa
Ing. Fabin Calvete

Aspectos Generales
Podemos definir a la Criptografa como una tcnica o conglomerado de tcnicas, tendientes a la proteccin u ocultamiento de algn tipo de informacin, frente a observadores no autorizados. La proteccin de la informacin se basa principalmente en la transformacin del texto original, tambin denominado Texto en Claro, en Texto Cifrado o Criptograma. Dicha transformacin o Cifrado, se logra mediante la aplicacin de distintos tipos de algoritmos, en combinacin con un parmetro al que se denomina Clave. El conjunto de Algoritmos, Texto en Claro, Texto Cifrado y Clave, suele conocerse con el nombre de Criptosistema. Uno de los aspectos determinantes en el mbito de la Criptografa, se encuentra dado por los cdigos criptogrficos que en l se utilizan. El grupo de personas capaces de analizar, interpretar y finalmente romper dichos cdigos, invalidando su utilizacin como mecanismo efectivo de proteccin de datos, se denominan Criptoanalistas.

Fundacin Proydesa

Seguridad incondicional versus seguridad computacional Se suele identificar, tericamente, el grado de seguridad que los diferentes tipos de criptosistemas proveen, haciendo uso de los trminos Seguridad Incondicional y Seguridad Computacional. La Seguridad Incondicional se produce cuando se conoce un mensaje cifrado y no es posible, por ningn medio, conocer el mensaje original a partir de ste. Por su parte la Seguridad Computacional significa que, si bien es tericamente posible deducir el mensaje a partir del cdigo, la capacidad en tiempo, proceso y recursos econmicos para obtener este resultado es, en la prctica, inalcanzable.

Fundacin Proydesa

Tipos de algoritmos
Los diferentes tipos de algoritmos de cifrado suelen dividirse en tres grandes grupos:

 Segn la naturaleza del algoritmo:


Sustitucin: Se cambian unos smbolos por otros Transposicin: Cambia el orden o ubicacin de los smbolos Producto: Se aplican los mtodos anteriores, dos o ms veces

 Segn la clave:
Simtricos: Se utiliza la misma clave para cifrar y descifrar Asimtricos: Se utilizan claves distintas para cifrar y descifrar Irreversibles: Cifra un texto claro no permitiendo su descifrado

 Segn el nmero de smbolos cifrados a la vez:


Bloque: Dividen el texto en bloques de igual longitud, para luego cifrar cada bloque en forma independiente, normalmente de 64 bits Flujo: El texto claro es cifrado smbolo por smbolo (Bit a bit)

Fundacin Proydesa

Tipos de ataques criptogrficos Si bien existe la posibilidad por parte de un atacante, de lanzar un ataque de denegacin de servicio sobre un sistema criptogrfico, lo cierto es que su objetivo final se encontrar relacionado con la posibilidad de obtener la informacin protegida por alguno de los mtodos de cifrado conocidos. Los ataques especficos a los distintos sistemas criptogrficos, suelen ser divididos en los siguientes tres grupos: Ataques a las claves Ataque al algoritmo Intercepcin

Fundacin Proydesa

Claves La gran mayora de los sistemas criptogrficos se basan en la generacin y utilizacin de algn tipo de clave. De acuerdo a su uso, los diferentes tipos de clave pertenecen a alguno de los siguientes grupos: Clave privada: Se denomina Clave Privada, a aquella que relacionada con un sistema criptogrfico asimtrico, slo es conocida por el propietario de la misma. Clave pblica: Se llama Clave Pblica, a aquella que relacionada con un sistema criptogrfico asimtrico, es dada a conocer pblicamente. Clave Compartida: Una Clave Compartida es aquella que siendo secreta, se encuentra en poder y es conocida, tanto por el emisor como por el receptor.

Fundacin Proydesa

Algoritmos simtricos Se denomina Algoritmo Simtrico, a todo proceso criptogrfico que utilice en su accionar, una misma clave para encriptar y desencriptar. Para funcione correctamente, tanto el emisor como el receptor del mensaje, deben encontrarse en conocimiento de la clave a utilizar, transformando sta en su Secreto Compartido. Debido a ello, la existencia de un canal seguro a travs del cual se pueda realizar el intercambio de claves, se convierte en un requisito indispensable. Modos de operacin Las tcnicas utilizadas por los algoritmos simtricos se basa en el cifrado de datos por bloques. A las diferentes formas en las que se procesan estos bloques de datos, se las conoce como Modos de Operacin

Fundacin Proydesa

ECB (Libro de Cdigos Electrnico) En este modo, se cifra cada bloque de 64 bits del mensaje en claro uno tras otro, con la misma clave. Un par de bloques idnticos de mensaje en claro producen bloques idnticos de mensaje cifrado. Es resistente a errores, pues si uno de los bloques sufriera una alteracin, el resto quedara intacto. CBC (Cifrado en Bloque Encadenado) Sobre cada bloque de 64 bits del mensaje en claro se ejecuta un OR exclusivo (XOR) con el bloque previo del mensaje cifrado. De este modo, el cifrado de cada bloque depende del anterior y bloques idnticos de mensaje en claro producen diferentes mensajes cifrados. Se utiliza un vector de inicializacin que ser descartado en el destino.

Fundacin Proydesa

CFB (Cifrado Realimentado) El cifrado de un bloque de mensaje en claro procede de ejecutar un OR exclusivo del bloque de mensaje en claro con el bloque previo cifrado. Una de sus particularidades, es que puede modificarse para trabajar con bloques de longitud inferior a 64 bits.

OFB (Salida Realimentada) En este caso, se generan una serie de valores pseudo aleatorios de 64 bits (Generalmente, tantos como bloques de datos existan). A cada uno de los bloques de mensaje en claro se les aplica un OR exclusivo junto con uno de los valores aleatorios, el resultado obtenido son los bloques de mensaje cifrado.

Fundacin Proydesa

Ventajas y limitaciones Gran parte de la fama alcanzada por los algoritmos simtricos, se basa esencialmente en su velocidad. Comparados con los algoritmos de Clave Pblica o Asimtricos, suelen ser mucho ms rpidos. Suelen ser considerados fuertes y difciles de romper. Su limitacin ms importante se encuentra relacionada con la distribucin de la clave secreta.

Fundacin Proydesa

DES Desde el punto de vista de su funcionamiento, DES suele ser un algoritmo de cifrado por bloques. Una entrada M (Mensaje) sufre en primer lugar, una transposicin bajo una permutacin denominada IP (Permutacin Inicial), originando To=IP(M). Despus de pasar To diecisis veces por una funcin f, se transpone bajo la permutacin inversa IP', obtenindose as el resultado final. DES toma bloques de informacin de 64 bits y los cifra con una clave de 56 bits.Realmente la clave inicial es de 64 bits, pero debido a que los bits menos significativos de cada byte se utilizan como bits de paridad pueden ser eliminados, obtenindose una clave efectiva de 56 bits. Si bien es cierto que DES era considerado un algoritmo fuerte, el tamao final de su clave (56 bits) en conjuncin con el poder de cmputo actual, lo vuelven vulnerable a un ataque de fuerza bruta.

Fundacin Proydesa

3DES
Es considerado una mejora tecnolgica respecto del DES tradicional. Esta nueva versin utiliza un procedimiento por medio del cual el mensaje original es cifrado tres veces. Des esta manera se logra alcanzar claves de 128 bits (16 de paridad y 112 de clave efectiva) y 168 bits segn el procedimiento utilizado. Existen tres implementaciones posibles de 3DES: DES-EEE3: Se cifra tres veces con una clave diferente cada vez. DES-EDE3: Primero se cifra, luego se descifra y por ultimo se vuelve a cifrar, cada vez con una clave diferente.  DES-EEE2 / DES-EDE2: Similares a los anteriores, con la salvedad de que la clave usada en el primer y en el ltimo paso coinciden. 3DES es ms duro de romper que muchos otros sistemas basados en algoritmos simtricos, quizs por ello, contina siendo uno de los ms utilizados.

Fundacin Proydesa

Otros algoritmos simtricos Adems de DES y 3DES existen otros algoritmos muy buena prestacin: AES RC IDEA CAST Blowfish Serpent MARS Twofish, etc.

Fundacin Proydesa

Algoritmos asimtricos Los algoritmos asimtricos, o de clave pblica, utilizan dos claves en su proceso de cifrado y descifrado. Ambas claves suelen ser referidas como clave pblica y clave privada. En este tipo de esquema, el remitente utiliza la clave pblica del destinatario para cifrar el mensaje, el cual slo puede ser descifrado por la clave privada del mismo. Ambos extremos de la comunicacin deben estar en conocimiento de la clave pblica, lo cual no representa riesgo. La prdida de la clave privada, abrira una brecha de seguridad en el criptosistema.

Fundacin Proydesa

Ventajas y limitaciones Una de las ventajas ms apreciables de los esquemas asimtricos, radica en la posibilidad por parte de quien desea recibir informacin cifrada, de hacer llegar a sus emisores, su clave pblica. Esta caracterstica hace que la limitacin implcita en los algoritmos simtricos, respecto de la distribucin de claves privadas, encuentre en ella una aplicacin para resolver el dilema. Como desventaja, los algoritmos asimtricos deben utilizar claves de mayor tamao para ofrecer una seguridad comparable a la de los algoritmos simtricos. Suelen resultar ms lentos, en su ejecucin, que los algoritmos simtricos. Este tipo de algoritmos requiere una mayor utilizacin de recursos, por lo cual no suelen utilizarse para cifrar grandes volmenes de datos.

Fundacin Proydesa

Algunos algoritmos asimtricos Diffie Hellman RSA El Gamal Curvas Elpticas

Fundacin Proydesa

Esteganografa La esteganografa, suele ser definida como el arte o ciencia de comunicar de manera oculta un mensaje, camuflando la informacin entre otro conjunto de datos para que pase desapercibida. Una de las primeras y sencillas tcnicas esteganogrficas de las que se conocen registros, es la tinta invisible, que consista en ocultar los mensajes escritos con zumo de limn en un papel en el que, al calentarlo, apareca lo escrito. La encriptacin por medio de tcnicas esteganogrficas, pude ser muy difcil de detectar, motivo por el cual, se ha convertido en un dolor de cabeza para los administradores que deben impedir el filtrado de informacin confidencial por parte de empleados. Gracias a las aplicaciones disponibles hoy da, es posible esconder informacin en todo tipo de archivos, tales como fotografas, audio y video.

Fundacin Proydesa

Funciones de Hash Se define como una operacin que se realiza sobre un conjunto de datos de cualquier tamao de tal forma que se obtiene como resultado, otro conjunto de datos denominado resumen. El resumen tiene un tamao fijo e independiente del tamao original, que adems tiene la propiedad de estar asociado unvocamente a los datos iniciales. Es prcticamente imposible encontrar dos mensajes distintos que tengan un resumen hash idntico. Gracias a sus caractersticas, las aplicaciones principales de las Funciones de Hash, suelen ser fundamentalmente tres: Contraseas Firmas Digitales Integridad y Autenticacin

Fundacin Proydesa

Caractersticas Para que una Funcin de Hash pueda ser utilizada con fines criptogrficos, debe poseer una serie de caractersticas bsicas, entre las que se cuentan: La entrada debe poder ser de cualquier tamao. El valor hash (salida) debe tener un tamao fijo. Debe encontrarse libre de colisiones, esto es, que dadas dos cadenas como entrada x'' e y'', no se obtenga un mismo valor hash tal que H(x)=H(y). Debe ser Irreversible (de un solo sentido); es decir, dado un valor hash h'', no sea posible encontrar una entrada x'' tal que H(x)=h. Un valor hash debe ser computacionalmente fcil y rpido de calcular.

Fundacin Proydesa

Ventajas y limitaciones Las Funciones Hash, se han convertido en este ltimo tiempo, en una poderosa herramienta en manos de profesionales de seguridad informtica. Sus caractersticas nicas nos permiten obtener valores hash que pueden ser almacenados y luego comparados para verificar que los archivos o mensajes resumidos, no han sido modificados. En ciertos mbitos, como en la Informtica Forense, los investigadores se ven obligados a someter la informacin recolectada en la escena del crimen, a operaciones de hash. Entre las funciones de hash ms utilizadas, encontramos: MD5 SHA-1

Fundacin Proydesa

Necesidad de autenticar Uno de los problemas fundamentales a resolver en el contexto de una red, ha sido solventar la necesidad de corroborar en forma segura, que una persona es quien dice ser, al presentarse ante un servicio determinado. Se conoce con el trmino de autenticacin, al proceso por el cual es posible confirmar la identidad, de cada una de las partes involucradas en el proceso de una comunicacin o intercambio de mensajes.

Fundacin Proydesa

HMAC Como una de las primeras alternativas surgidas, a la hora de asegurar la integridad de la informacin transmitida o almacenada, surgi el concepto de MAC (Cdigo de Autenticacin de Mensajes) En la prctica, el funcionamiento de MAC, radica en la inclusin de informacin adicional, como parte integral del mensaje a transmitir. Generalmente, esta informacin adicional suele estar formada por una clave compartida que es conocida por ambos extremos de la comunicacin. Si bien el concepto detrs de HMAC es el mismo, el uso de Funciones de Hash como parte integral del proceso de generacin de este Cdigo de Autenticacin, lo transforma en una herramienta an ms efectiva. Cuando HMAC se pone en funcionamiento, el mensaje original es procesado junto a la clave de secreto compartido, por una funcin hash del estilo de MD5 o SHA-1.

Fundacin Proydesa

Esta operacin produce como resultado, un valor de hash, el cual es transmitido junto al mensaje original al otro extremo de la comunicacin. El receptor, recibe el mensaje y el valor de hash enviado por el emisor, y procede a recalcular un nuevo hash, ya que conoce la clave que se combin con la informacin transmitida. Posteriormente el valor de hash enviado, es comparado con el valor de hash generado por el receptor. En caso de que ambos valores sean coincidentes, la integridad y autenticidad del mensaje estarn garantizadas.

Fundacin Proydesa

Firma Digital La Firma Digital, es bsicamente una herramienta tecnolgica, que permite garantizar la autora e integridad de los documentos digitales. Desde el punto de vista informtico, una Firma Digital, puede ser vista como un grupo de datos asociados a un mensaje digital. Tcnicamente hablando, el esquema de Firma Digital se basa en la utilizacin combinada de Criptografa Asimtrica o de Clave Pblica y de Funciones de Hash o Resumen.

Fundacin Proydesa

La Firma Digital, debe poseer las siguientes caractersticas: Debe ser nica, pudindola generar solamente el usuario legtimo No falsificable, el intento de falsificacin debe llevar asociada la resolucin de un problema numrico intratable Debe ser fcil de autenticar, pudiendo cualquier receptor establecer su autenticidad an despus de mucho tiempo Debe ser irrevocable, el autor de una firma no puede negar su autora Debe ser computacionalmente barata y fcil de generar En Argentina, el esquema de Firma Digital se encuentra respaldado por la Ley 25506 y el Decreto 2628/2002.

Fundacin Proydesa

Fin
Ing. Fabin Calvete fcalvete@proydesa.org

Fundacin Proydesa