Você está na página 1de 65

UNIVERSIDAD MAYOR DE SAN ANDRS

FACULTAD DE CIENCIAS PURAS Y NATURALES CARRERA DE INFORMTICA

TESIS DE GRADO MODELO CRIPTOGRFICO HIBRIDO BASADO EN CRIPTOGRAFA SIMTRICA Y ASIMTRICA


PARA OPTAR AL TTULO DE LICENCIATURA EN INFORMTICA MENCIN: INGENIERA DE SISTEMAS INFORMTICOS

POSTULANTE: WALDO EDGAR CALLISAYA MONZN TUTOR METODOLGICO: M. Sc. JORGE TERAN POMIER DOCENTE ASESOR: LIC. BRGIDA CARVAJAL BLANCO

LA PAZ BOLIVIA

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Junio, 2013

NDICE
N Pg. CAPTULO 1................................................................................................................................1 ASPECTOS GENERALES..........................................................................................................1 1.1. INTRODUCCIN..................................................................................................................1 1.2. ANTECEDENTES..................................................................................................................2 1.3. PLANTEAMIENTO DEL PROBLEMA.............................................................................3
1.3.1. PROBLEMA PRINCIPAL................................................................................ 3

1.4. HIPTESIS.............................................................................................................................3 1.5. OBJETIVOS............................................................................................................................4 1.5.1. OBJETIVO GENERAL.....................................................................................................4 1.5.2. OBJETIVOS ESPECIFICOS.............................................................................................4 1.6. JUSTIFICACION...................................................................................................................4 1.6.1. JUSTIFICACION CIENTIFICA.......................................................................................4 1.6.2. JUSTIFICACIN SOCIAL...............................................................................................5 1.6.3. JUSTIFICACIN ECONMICA.....................................................................................5 1.7. ALCANCES Y APORTES.....................................................................................................5 1.7.1. ALCANCES.......................................................................................................................5 1.7.2. APORTES..........................................................................................................................5 1.8. METODOLOGIA...................................................................................................................5 CAPTULO 2................................................................................................................................6 MARCO TEORICO.....................................................................................................................6 2.1. CRIPTOGRAFA...................................................................................................................6 2.2. CRIPTOSISTEMA ................................................................................................................7 2.3. SEGURIDAD Y CRIPTOGRAFA......................................................................................9 2.3.1. ATAQUES CONTRA LOS SISTEMAS CRIPTOGRFICOS......................................10 2.4. CRIPTOGRAFA MODERNA...........................................................................................13 2.4.1. CIFRADO SIMTRICO..................................................................................................14
2.4.1.1. Ventajas de la criptografa de Clave Privada.........................................16 2.4.1.2. Desventajas de la criptografa de Clave Privada...................................16 2.4.1.3. Longitud de la clave.............................................................................. 17

2.4.2. CIFRADO ASIMTRICO...............................................................................................17


2.4.2.1. Ventajas de la criptografa de Clave Pblica........................................18 2.4.2.2. Desventajas de la criptografa de Clave Pblica....................................18 2.4.2.3. Largo de las claves y nivel de seguridad...............................................18

2.4.3. CIFRADO HIBRIDO.......................................................................................................19


Carrera de Informtica

ii

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

2.4.4. PROTOCOLOS CRIPTOGRFICOS.............................................................................19 2.5. ORDENES DE COMPLEJIDAD........................................................................................20 2.5.1. IMPORTANCIA DE LA EFICIENCIA..........................................................................22 CAPTULO 3..............................................................................................................................23 ELABORACIN DEL MODELO CRIPTOGRFICO HIBRIDO......................................23 3.1. ESTRUCTURACIN DEL PROBLEMA.........................................................................24 3.2. PROPUESTA DE SOLUCION...........................................................................................25 3.3. CARACTERISTICAS DE LA SOLUCION......................................................................27 3.4. FORMULACIN DEL MODELO CRIPTOGRFICO HIBRIDO ..............................27 3.4.1. Etapas del modelo criptogrfico.......................................................................................27
3.4.1.1. Generador de clave publica ..................................................................28 3.4.1.2. Cifrar el mensaje................................................................................... 28 3.4.1.3. Descifrar el mensaje............................................................................. 29

3.5. FORMALIZACIN DEL MODELO CRIPTOGRFICO HIBRIDO .........................29 3.5.1. Comprobacin del criptosistema hibrido ........................................................................30 3.5.2. Demostracin de la funcionalidad del modelo y su aplicacin........................................32 3.6. ANLISIS DE RESULTADOS...........................................................................................37 3.7. VALIDACION DE HIPOTESIS.........................................................................................38 CAPTULO 4..............................................................................................................................40 CONCLUSINES Y RECOMENDACIONES........................................................................40 4.1. CONCLUSIONES................................................................................................................40 4.2. RECOMENDACIONES......................................................................................................40 BIBLIOGRAFIA........................................................................................................................41 ANEXO A: RBOL DE PROBLEMAS .................................................................................43 ANEXO B: RBOL DE OBJETIVOS.....................................................................................44 ANEXO C: COMPARACIN DE ALGORITMOS Y RDENES DE COMPLEJIDAD.....45 ANEXO D: ALGORITMOS DE CIFRA SIMTRICA...........................................................50 ANEXO E: TABLA ASCII BINARIO.....................................................................................61

Carrera de Informtica

iii

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Carrera de Informtica

iv

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

CAPTULO 1 ASPECTOS GENERALES


1.1. INTRODUCCIN La criptografa siempre ha sido usada en todas pocas y en todas las culturas, desde los egipcios, los persas, los romanos, los barbaros, los nazis en la I y II guerra mundial, Estados Unidos y Rusia en la guerra fra, nunca haba tenido tanta importancia como en la actualidad. Ahora nadie est libre del espionaje, cualquiera que tenga acceso a internet, ya sea individuo, empresa o gobierno, es una potencial presa de ataques ilegales a su informacin, en una poca en donde lo que es ms importante es la informacin misma, es necesario conocer, aprender y aplicar las diferentes tcnicas que nos ofrece la criptografa (Quijivix, 2001). En estos ltimos aos se ha ido buscando mecanismos para transmitir la informacin de forma segura, principalmente por el uso masivo de internet, el tema de la proteccin de la informacin se ha transformado en una necesidad y con ello se populariza la terminologa tcnica asociada a la criptografa, as surgi y prospero el estudio y utilizacin de mtodos criptogrficos que permitiesen hacer ininteligible la informacin a toda persona que no estuviese autorizada a cierta informacin. Pero el solo hecho de incluir criptografa no soluciona todos los problemas de seguridad (Balboa, 2006). La criptografa es una disciplina de rpida evolucin. El ingreso de las computadoras ocasiono una revolucin en los mtodos criptogrficos, paso a dividirse en criptografa clsica y moderna. Los criptosistemas simtricos o de clave privada son aquellos que emplean la misma clave tanto para cifrar como para descifrar. Los criptosistemas asimtricos, tambin llamados de clave pblica, son aquellos que poseen una clave para cifrar y otra clave para descifrar distinta de la anterior. Algunos algoritmos han perdido parte de su inters como es el caso de DES, nuevas tcnicas han surgido o se han popularizado, PGP es un claro ejemplo de que para el usuario se consigue una autentica privacidad, sistemas que antes tenan un inters limitado se han convertido en fundamentales con la rpida expansin de internet que obliga no solo al profesional sino al usuario medio, a tener ciertos conocimientos bsicos sobre seguridad.
Carrera de Informtica

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

El presente trabajo de investigacin propone disear un modelo criptogrfico hibrido basado en la criptografa simtrica y asimtrica, esto se lograra realizando un anlisis comparativo de los algoritmos de cifra simtrica y algoritmos de cifra asimtrica, para as desarrollar un modelo hibrido. 1.2. ANTECEDENTES El crecimiento en la bsqueda del conocimiento cientfico, significa incorporar procesos, tcnicas, herramientas, modelos, que permitan dar la solucin a los problemas de una forma ms adecuada al comportamiento de la realidad (Alvarado, 2000). En la carrera de informtica, con relacin al presente trabajo de investigacin se realizaron los siguientes aportes: Seguridad Criptogrfica Hibrida de Clave Pblica y Privada Aplicada a la Mensajera SMS, desarrollado por Ing. Rodolfo Velsquez, 2009. que utilizan la mensajera SMS (Velsquez, 2009). Encriptacin Asimtrica Hibrida con Distribucin Cuntica de Claves, desarrollado por Rizellda Balboa, 2006. Tiene como objetivo Disear un modelo de un mtodo criptogrfico hibrido (combinacin de dos tipos de criptosistemas uno cuntico y el otro moderno) con distribucin cuntica de claves, aplicable a la clave secreta para la transmisin segura de la misma (Balboa, 2006). No se hallaron otros trabajos acerca de la criptografa hibrida, solamente algunos trabajos de investigacin que hacen referencia a la criptografa tradicional. En internet se dispone de trabajos de investigacin acerca de la criptografa hibrida entre los que podemos destacar a: Criptografa y Seguridad de la Informacin, presentado por un investigador de la universidad Francisco Marroqu, Guatemala 2001. Cuyo objetivo es abarcar los aspectos ms esenciales de la criptografa clsica y moderna (Quijivix, 2001).
Carrera de Informtica

Tiene como objetivo, Disear un

algoritmo hibrido de clave pblica y privada con el cual se asegure la privacidad de los usuarios

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Diseo e implementacin de un esquema de cifrado hibrido basado en DHIES, presentado en el Centro de Investigacin y de Estudios Avanzados, 2008. Cuyo objetivo es disear e implementar un esquema de cifrado hibrido realizando comparaciones de algoritmos (Barrn, 2008). 1.3. PLANTEAMIENTO DEL PROBLEMA Los criptosistemas simtricos cuentan con las siguientes desventajas: El intercambio de claves se realiza por canales de informacin inseguros. Mala gestin de claves, para un nmero grande de usuarios.

Los criptosistemas asimtricos cuentan con las siguientes desventajas. Para una misma longitud de clave y mensaje se necesita mayor tiempo de proceso. Las claves deben ser de mayor tamao que las simtricas. Ninguno de los esquemas propuesto para criptosistemas asimtricos es eficiente. 1.3.1. PROBLEMA PRINCIPAL La inseguridad en la distribucin de claves que tienen los criptosistemas simtricos y la ineficiencia de los criptosistemas asimtricos. En el Anexo A se muestra el rbol de Problemas Causa-Efecto, que describe en forma grafica y breve los problemas que se identificaron. En base lo anterior el problema se define en la siguiente pregunta: Se podr disear un modelo criptogrfico hibrido basado en criptografa simtrica y asimtrica? 1.4. HIPTESIS La hiptesis que plantearemos es la siguiente:
Carrera de Informtica

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

El modelo criptogrfico hibrido, es una alternativa de solucin al problema de inseguridad del cifrado simtrico y la ineficiencia del cifrado asimtrico. 1.5. OBJETIVOS 1.5.1. OBJETIVO GENERAL Se propone disear un modelo criptogrfico hibrido basado en simetra y asimetra, realizando un anlisis comparativo de los algoritmos de cifra simtrica y algoritmos de cifra asimtrica en cuanto a seguridad y eficiencia. 1.5.2. OBJETIVOS ESPECIFICOS Analizar el estado de los sistemas criptogrficos utilizados en la actualidad. Mostrar un modelo criptogrfico de seguridad para aplicarse en entornos en los que se utiliza distribucin de claves. Verificar el modelo con distintos ejemplos los mismos que sern debidamente documentados. Mostrar la funcionalidad y aplicabilidad del modelo. Mostrar que el modelo criptogrfico hibrido mejora la eficiencia y seguridad.

Obsrvese el Anexo B, rbol de Objetivos Medio-Fin, que se describe de forma grafica y concisa la situacin futura que se alcanzara mediante la solucin a los problemas. 1.6. JUSTIFICACION 1.6.1. JUSTIFICACION CIENTIFICA La presente investigacin se justifica como aporte al conocimiento tratando de mostrar el uso de teoras como la criptografa hibrida que estimulara su investigacin y estudio.

Carrera de Informtica

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

1.6.2. JUSTIFICACIN SOCIAL Actualmente la tecnologa avanza a pasos agigantados, esto hace que las instituciones que manejan claves o distribuyan claves, conozcan e implementen los nuevos avances tecnolgicos cientficos para su propio beneficio. 1.6.3. JUSTIFICACIN ECONMICA El trabajo de investigacin mostrara los beneficios de la criptografa hibrida, con el cual se puede mejorar la eficiencia y la seguridad, reduciendo grandes gastos econmicos debido a la perdida de informacin, suplantaciones de identidad, etc. 1.7. ALCANCES Y APORTES 1.7.1. ALCANCES Mediante la investigacin se planteara el diseo conceptual y esquemtico del modelo criptogrfico hibrido con base en algoritmos de cifra simtrica y asimtrica que fundamentaran la investigacin. Se har uso de la lgica difusa que permitir construir conjuntos difusos de los cuales servir para el desarrollo de la investigacin. 1.7.2. APORTES Demostrar y fundamentar la combinacin de los algoritmos de cifra simtrica y asimtrica en un hibrido, generando mejores resultados de los esperados. El trabajo de investigacin proporciona un enfoque en la investigacin informtica.

1.8. METODOLOGIA La metodologa a aplicarse en el desarrollo del presente trabajo de tesis es el mtodo cientfico, que es el camino de la observacin, la interpretacin y la comparacin que sigue a la ciencia para encontrarse a s misma o mejorarse. Una tcnica a aplicarse es la Lgica difusa que
Carrera de Informtica

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

permitir construir conjuntos difusos para generar grupos definidos para la investigacin de los algoritmos de cifra simtrica y asimtrica.

CAPTULO 2 MARCO TEORICO


2.1. CRIPTOGRAFA El diccionario de la Real Academia Espaola define a la criptografa como El arte de escribir con claves secretas o de un modo enigmtico, la palabra criptografa proveniente de Kryptos, del griego-ocultar y Grafa, graphos-escribir. Esta definicin da a grandes rasgos una idea, de que la criptografa se utiliza para escribir de tal manera que el resultado de esa escritura pueda ser interpretado nicamente por quien conozca un elemento secreto llamado clave. Sin embargo, en la actualidad esta definicin se lee incompleta respecto de las tcnicas utilizadas en sistemas informticos, por lo que desde hace algunos aos, la criptografa no comprende slo a los medios para proveer la seguridad de la informacin, sino a un conjunto de tcnicas, por lo que se define como El estudio de tcnicas matemticas relacionadas con los aspectos de la seguridad de la informacin tales como: la confidencialidad, la integridad de los datos, la autenticacin de la entidad, la autenticacin de origen, entre otros (Beltrn A., 2012). En la Figura 2.1 se observan los campos en los que se divide la disciplina cientfica de la criptologa, donde podemos observar que la criptografa es una rama de esta (Rodrigo F., 2012).

Figura 2.1 reas de la criptografa (Fuente: Rodrigo F., 2012)

Carrera de Informtica

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

La criptografa es un tema que ha fascinado y ocupado a la humanidad desde tiempos remotos. La transmisin segura de la informacin ha encontrado una gran variedad de aplicaciones en diferentes reas. Hoy ms que nunca, en un mundo caracterizado por la ubicuidad de internet y basado fuertemente en datos digitales, se hace imperiosa la necesidad de garantizar la seguridad de estos; dado que la informacin confidencial puede quedar expuesta a ser vista o manipulada por terceros no deseados. (Rodrigo F., 2012) La criptografa es el arte o ciencia de cifrar y descifrar cierta informacin mediante tcnicas especiales y se emplea frecuentemente para permitir un intercambio de mensajes que solo puedan ser ledos por personas a las que van dirigidos y que poseen los medios para descifrarlos. La criptografa se divide en criptografa de Clave Privada y Criptografa de Clave Publica, la ms usada actualmente es la criptografa de Clave Publica por las ventajas que nos ofrece con respecto a la de Clave Privada como es la gestin de claves(Beltrn A., 2012). Pero a su vez ambos cuentan con desventajas como, la mala gestin de claves para nmeros grandes de usuarios, inseguridad en la distribucin de claves, mayor tiempo de proceso para generar claves, ineficiencia en los procesos, entre otros. En el rea de estudio de la criptografa, el cifrado hibrido ha tenido gran atencin en los ltimos aos. Desde la aparicin del esquema de cifrado diseado por T. ElGamal en 1985, donde se propone una implementacin eficiente para un esquema de cifrado de clave pblica, muchos trabajos han sido realizados para buscar formas de mejorar las caractersticas del cifrado tanto para la criptografa de clave pblica como privada. Un esquema de cifrado hibrido es un mecanismo de cifrado de clave basado en un esquema de clave pblica, y un esquema de cifrado de datos basado en un esquema de clave privada (Barrn, 2008). La criptografa Hibrida es la unin de las ventajas de la criptografa simtrica y la criptografa asimtrica, debemos de tomar en cuenta que el problema de ambos sistemas criptogrficos es que el simtrico es inseguro y el asimtrico es lento. 2.2. CRIPTOSISTEMA Un criptosistema, o sistema criptogrfico, se puede definir como los fundamentos y procedimientos de operacin que participan en el cifrado y descifrado de un mensaje. Todo
Carrera de Informtica

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

sistema criptogrfico es una tupla: {M, C, K, E y D} con las siguientes propiedades: (Rodrigo F., 2012) M es el conjunto de todos los mensajes a transmitir. Es el espacio de textos planos. C es el conjunto de todos los mensajes cifrados. Es el espacio de textos cifrados. K es el conjunto de claves a utilizar. Es el espacio de claves. E es la familia de todas las funciones de cifrado. E = {Ek: k K} y Ek: MC. D es la familia de todas las funciones de descifrado. D = {Dk: k K} y Dk: CM. Para cada e K, hay un d K tal que Dd (Ee (m)) = m para todo m M. (e puede ser igual a d).

Todos los criptosistemas, sin importar que tan complejos sean cuentan con las siguientes partes bsicas: (Beltrn A., 2012). Texto plano: es el texto sin formato, solo son caracteres legibles. Texto cifrado: es el texto modificado y transformado a un lenguaje que no puede ser ledo por entidades no autorizadas. Algoritmo de cifrado: es la operacin utilizada para convertir texto plano a texto cifrado. Algoritmo de descifrado: es la operacin utilizada para convertir texto cifrado a texto plano. Clave: es un elemento secreto usado por una entidad para cifrar o descifrar un mensaje.

Adems, un buen criptosistema tiene que tener las siguientes cualidades: seguridad, autenticidad y no repudio: (Rodrigo F., 2012) Seguridad: es la incapacidad para un criptoanalista de determinar el texto original, a partir del texto cifrado que haya podido interceptar. Autenticidad e integridad: es la incapacidad para un criptoanalista de improvisar, sustituir o modificar un texto cifrado C por un texto C, sin que el receptor lo detecte.
Carrera de Informtica

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

No repudio: es la propiedad de que el emisor, despus de haber enviado un mensaje, no pueda afirmar que este no es suyo. Esto se realiza por otros medios, como la firma digital, que se adaptan al criptosistema utilizado.

2.3. SEGURIDAD Y CRIPTOGRAFA Para lograr transmitir informacin de forma segura a travs de cualquier medio no solo se refiere a evitar que personas no autorizadas tengan conocimiento del contenido de dicha informacin, sino que la seguridad debe cumplir con una serie de requisitos o servicios que se deben cumplir durante el envi y la recepcin de la informacin. Una definicin de algunos de estos servicios de seguridad se da en la Tabla 2.1. (Barron, 2008)
Servicio Integridad Objetivo Mantener secreta la informacin para todos excepto para quienes tengan autorizacin de acceso. Autenticacin de mensaje Asegurar que los datos nos han sido alterados en ninguna forma. Identificacin Comprobar la identidad de alguna entidad participante. Firma digital Poder relacionar un mensaje con alguna entidad. Certificacin Aprobacin de cierta informacin por parte de una entidad confiable. Anonimato Ocultar la identidad de una entidad involucrada en algn proceso. Revocacin Retractarse de alguna certificacin o autorizacin. No repudio Prevenir la negacin de acuerdos o acciones previas.

Estos

servicios

Tabla 2.1 Algunos servicios de seguridad de informacin (Fuente: Barron, 2008)

definen el nivel de seguridad que tendr cierta informacin o comunicacin. Dependiendo de la aplicacin que se requiera para esa informacin y del medio en el que se entable dicha comunicacin sern los servicios con los que deberemos cumplir. As pues, podemos definir que la seguridad de la informacin es el conjunto de mecanismos o tcnicas aplicadas a la transmisin de informacin que pretenden cubrir algunos o todos los servicios de seguridad. Actualmente, la criptografa se puede entender como el conjunto de tcnicas que resuelven los siguientes problemas de seguridad de la informacin: La autenticidad, la integridad, la confidencialidad y el no rechazo (Angel, J. 2005).
Carrera de Informtica

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Hay varios tipos de seguridad, segn el problema computacional en que nos basemos: (Seminario, 2005) Seguridad incondicional: Cuando el sistema es seguro frente a un atacante con tiempo y recursos computacionales ilimitados (por ejemplo, el cifrado de Verman, basado en secuencias binarias aleatorias). Seguridad computacional: cuando el sistema es seguro frente a un atacante con tiempo y recursos computacionales limitados (por ejemplo, el sistema RSA, basado en nmeros primos). Seguridad probable: cuando el sistema no puede demostrarse seguro, pero en la prctica aun no ha sido violado (por ejemplo, el sistema DES, basado en cajas no lineales). Seguridad condicional: cuando el sistema es seguro en tanto el enemigo carece de medios para atacarlo (por ejemplo, mtodos clsicos de substitucin, vulnerables a un anlisis de frecuencias). 2.3.1. ATAQUES CONTRA LOS SISTEMAS CRIPTOGRFICOS As como existen algoritmos que protegen la confidencialidad y la integridad de la informacin, existen tcnicas o mtodos que tratan de romper la seguridad que proporcionan este tipo de algoritmos. Un ataque contra los sistemas criptogrficos puede tener alguno de los siguientes objetivos: (Sanjuan,L. 2009) Descubrir el mensaje original. Alterar el mensaje M por M' y lograr que el receptor acepte M' como mensaje original del emisor. Iniciar una comunicacin con un receptor y que el atacante sea catalogado como un emisor autorizado. Esto se llama "spoofing".

Se define como criptoanlisis a la ciencia que se ocupa de intentar capturar el significado de los mensajes construidos mediante la criptografa sin tener autorizacin para ello. Podramos decir que el criptoanlisis tiene un objetivo opuesto al de la criptografa. Su propsito es buscar el punto dbil de las tcnicas criptogrficas para explotarlo y as reducir o eliminar la seguridad que
Carrera de Informtica

10

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

tericamente aportaba esa tcnica criptogrfica. A cualquier intento de criptoanlisis se lo llama ataque. Un ataque tiene xito, y se dice que el sistema se ha quebrado, cuando el atacante consigue romper la seguridad que la tcnica criptogrfica aportaba al sistema (Rodrigo F., 2012). A continuacin se explican cada una de estas tcnicas: Ataques de bsqueda de llave (fuerza bruta): la forma ms fcil de romper un cdigo es probar todas las llaves posibles. Estos ataques consisten en probar una por una de las posibilidades hasta encontrar la llave correcta. No hay forma de protegerse contra estos ataques, ya que no hay forma de evitar que un atacante intente desencriptar un mensaje probando las n opciones. Los ataques de bsqueda de llaves no son efectivos, algunas veces ni siquiera son posibles ya que hay demasiadas llaves que probar y no hay tiempo para probarlas todas. A nivel de procesamiento computacional son muy pesados ya que hay que probar todas las opciones. Ataques slo a Texto Cifrado: el atacante no conoce nada acerca de los contenidos del mensaje y debe trabajar a partir slo del mensaje cifrado. En la prctica, a menudo es posible adivinar algo del mensaje sin cifrar ya que muchos tipos de mensaje tienen cabeceras de formato fijo. Incluso los documentos comunes o los correos, empiezan de una forma muy predecible. Tambin puede ser posible adivinar que algn bloque de texto cifrado contiene una palabra comn. Ataque a Texto Sin Cifrar Conocido: el atacante conoce o puede adivinar o inferir el mensaje sin cifrar para algunas partes del texto cifrado. La tarea consiste en descifrar el resto de los bloques de texto cifrado utilizando esta informacin. Esto se puede hacer determinando la clave utilizada para cifrar los datos o utilizando algn atajo. Ataque a Texto Sin Cifrar Elegido : el atacante puede tener algo de mensaje que quiere, cifrado con la clave desconocida. La tarea consiste en determinar la clave utilizada para el cifrado. Algunos mtodos de cifrado (por ejemplo, el algoritmo de clave pblica o asimtrico RSA) son extremadamente vulnerables a los ataques de texto sin cifrar elegido. Ataque man-in-the-middle: atacante mediante intromisin. El adversario se coloca en medio de las partes legtimas (emisor y receptor) que se comunican. Este ataque es relevante para protocolos de intercambio de claves y comunicacin criptogrfica. La idea es que cuando dos
Carrera de Informtica

11

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

partes se intercambian claves para comunicaciones seguras (por ejemplo utilizando DiffieHellman) un adversario se coloca entre las partes en la lnea de comunicaciones. El adversario entonces realiza un intercambio de clave separado con cada parte. Las partes finalizarn utilizando una clave diferente cada una de las cuales es conocida por el adversario. El adversario entonces descifrar las comunicaciones con la clave adecuada y las cifrar con la otra clave para enviarla a la otra parte. Las partes creern que se estn comunicando de forma segura, pero de hecho el adversario est escuchando y entendiendo todo. Criptoanlisis Diferencial, Lineal y Lineal-Diferencial: el criptoanlisis diferencial es un tipo de ataque que puede aplicarse a cifradores de bloque iterativos (como por ejemplo, los algoritmos simtricos o de clave secreta DES, IDEA, etc.). El criptoanlisis diferencial es bsicamente un ataque sobre texto sin cifrar escogido y se basa en un anlisis de la evolucin de las diferencias entre dos textos sin cifrar relacionados cuando se cifran bajo la misma clave. Mediante un cuidadoso anlisis de los datos disponibles, las probabilidades pueden asignarse a cada una de las posibles claves y eventualmente la clave ms probable se identifica como la correcta. Ataques de diccionario: En el ataque de diccionario no se pretende obtener la clave, sino directamente el texto original. Cuando un usuario quiere ingresar a un sistema, introduce su cdigo y su clave de acceso, sta se cifra y posteriormente se compara el resultado con la clave cifrada que se almacena en el archivo de claves. Si son iguales, el sistema considera que el usuario es quien dice ser y le permite el acceso. Este tipo de programas parten del hecho de que se ha obtenido una copia del archivo de claves (por ejemplo, el denominado /etc/passwd de Unix) y comprueban si existe alguna cuenta sin clave, en cuyo caso utilizan, y con el resto se realiza el siguiente ataque. Por una parte, se dispone de un diccionario con gran cantidad de palabras y combinaciones muy comunes y vlidas como claves. Posteriormente se realiza su cifrado con la utilidad del sistema a atacar o una copia de la misma, se comprueba el resultado del cifrado con el contenido del
Carrera de Informtica

12

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

archivo de claves y en el caso de que se produzca una coincidencia se infiere cul es el mensaje sin cifrar. 2.4. CRIPTOGRAFA MODERNA Antiguamente la criptografa se apegaba mas al concepto de arte ya que los mtodos de cifrado eran diseados a la medida dependiendo de lo que la persona crea seguro y del uso que necesitaba dar a ese mtodo, en cambio la criptografa moderna tiene bases ms cientficas, paradigmas que la diferencian de la criptografa clsica. Dentro de estos paradigmas podemos resaltar la importancia de 3 principios bsicos pero fundamentales para la criptografa de nuestra era: (Barrn, 2008) 1. Formulacin de definiciones exactas: es un requisito esencial el definir formalmente la seguridad para una tarea criptogrfica, ya sea una simple primitiva o un protocolo completo, ya que esto nos ayudara a disear y estudiar de la mejor forma posible dicha tarea. 2. Dependencia en suposiciones concisas: la seguridad reside en alguna o algunas suposiciones las cuales deben estar bien definidas para que sea ms sencillo realizar las pruebas de seguridad. 3. Pruebas detalladas de seguridad: son necesarias debido a que problemas en la seguridad podran provocar graves daos si se usara la funcin sin asegurarnos de que es confiable. Conforme el tiempo fue transcurriendo, la criptografa se dividi principalmente en dos filosofas distintas, diferenciadas esencialmente por las tcnicas de cifrado que utilizan Figura 2.2, aunque en general mantienen la misma estructura.

Criptografa Simtrica Asimtrica

Figura 2.2 Clasificacin de la criptografa en simtrica y asimtrica (Fuente: Elaboracin Propia)

Carrera de Informtica

13

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

2.4.1. CIFRADO SIMTRICO La criptografa simtrica, es aquella que utiliza criptosistemas en los cuales la llave de cifrado ek y la llave de descifrado dk son idnticas, por lo cual cuando hablemos de cifrado simtrico nicamente nos referiremos a la llave K. En esta filosofa, cuando dos entidades se desean comunicar deben establecer los parmetros del criptosistema a utilizar, es decir, establecer los algoritmos de cifrado EK y descifrado DK que utilizaron y establecer cul ser la llave K que van a compartir, este ltimo punto es el problema principal del paradigma, como establecer el valor de la llave compartida de forma segura (Barron, 2008). Dentro del cifrado simtrico existen dos categoras de cifradores, las cuales se dividen de acuerdo a la forma en la que leen el texto en claro para convertirlo en el texto cifrado y son las siguientes: (Barron, 2008) La primera de estas categoras es el cifrado por flujo donde el mensaje de entrada es ledo y cifrado un smbolo (bit o byte) a la vez de forma independiente lo que evita la propagacin de errores. Es necesario mencionar que la salida del cifrado no solo depende de la llave y del texto en claro sino tambin de un estado que define que transformacin se aplicara, por lo cual tambin se les conoce como cifradores de estado. Los cifradores por flujo son los ms eficientes ya que las operaciones que utilizan sus transformaciones son muy simples, adems no requieren de grandes cantidades de memoria o espacio de almacenamiento lo que las hace muy tiles en ambientes de recursos limitados como lo son la telefona mvil. Los cifradores por flujo ms utilizados han sido RC4 y A5. La segunda categora es el cifrado por bloques donde el cifrador lee consecutivamente bloques de smbolos (bits) de una longitud fija n para cifrarlos. Este tipo de cifradores, a diferencia de los anteriores, requieren ms recursos computacionales pues necesitan almacenar ciertos datos en memoria durante el procesamiento adems de que las operaciones de transformacin suelen ser menos sencillas. Un esquema de cifrado por bloques puede verse como una funcin que mapea elementos p P de longitud n a elementos c C tambin de longitud n. Los ejemplos de cifrado por bloques ms notables son Data Encryption Standard (DES, 1977) y su sucesor Advanced Encryption Standard (AES, 2001). A diferencia del cifrado por flujo, aqu la transformacin de mensaje a cifra depende nicamente del valor de la llave y del mensaje, as pues, si ciframos dos bloques idnticos del texto cifrado el
Carrera de Informtica

14

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

resultado sern dos bloques idnticos del texto cifrado, esto equivale a una perdida en el nivel de seguridad del esquema por lo que entre otros motivos, para evitar este problema, los cifradores por bloques requieren ser aplicados mediante un proceso denominado modo de operacin que no es ms que un conjunto de reglas que nos dicen la forma de cifrar cada uno de los bloques del mensaje. Por ejemplo, si el usuario A se quiere comunicar con el usuario B, A necesita enviar la clave con la que se desea cifrar la informacin por un canal seguro. Una vez que B recibe la clave que le fue enviada por A, entonces ya pueden iniciar una comunicacin segura por un canal inseguro, an en presencia de un adversario, tal y como se muestra en la Figura 2.3. (Beltrn A., 2012).

Figura 2.3 Comunicacin cifrada entre A y B, haciendo uso de Criptografa de Clave privada (Fuente: Beltrn A., 2012)

Las propiedades que se garantizan en la Criptografa Simtrica son la confidencialidad y la autenticacin de la informacin. En este tipo de criptografa se necesitan n pares de claves por cada n entidades que desean comunicarse entre s (Beltrn A., 2012).

Carrera de Informtica

15

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

2.4.1.1. Ventajas de la criptografa de Clave Privada Algunas de las ventajas ms significativas al utilizar criptografa de clave privada es que utiliza claves muy cortas por lo tanto es muy rpido al cifrar y descifrar informacin (Maiorano, 2009). Para grupos muy reducidos de usuarios es un sistema eficiente ya que solo es necesaria una clave (Divendres, 2010), adems de que la infraestructura computacional para su implementacin es sencilla. 2.4.1.2. Desventajas de la criptografa de Clave Privada Algunas de las desventajas de la criptografa simtrica es que la clave k debe de ser compartida de forma previa y segura entre las dos entidades que quieran comunicarse. Por otro lado si la clave k se enva por un canal inseguro, como por ejemplo Internet, la seguridad del sistema se vera comprometida, dado que cualquier entidad podra interceptarla. Tambin es importante tener en cuenta la frecuencia con la que esta clave debe ser renovada para evitar que sea descubierta (Maiorano, 2009). Otra gran desventaja en la criptografa de clave privada es el manejo de las claves, ya que en una red de n usuarios, cada pareja necesita tener su clave secreta particular, lo que hace un total de n(n-1)/2 claves para esa red (es decir, combinaciones de n usuarios tomadas de 2 en 2); Esto supone unas cinco mil claves en una red de slo cien usuarios, medio milln en una de mil, y varios billones en una red tan grande como el sistema de telefona convencional de cualquier pas desarrollado. Es econmicamente inaceptable el que se puedan distribuir todas estas claves por anticipado, e indeseable el tener que posponer las comunicaciones seguras mientras las claves estn siendo trasladadas de un lugar a otro. Como se puede ver, la mayora de las desventajas de la criptografa de clave privada estn relacionadas con el manejo de las claves. Debido a esto surge la criptografa de clave pblica o criptografa asimtrica, dando solucin a la gestin de claves; es decir, el problema de administrar y compartir tantas claves en la criptografa de clave privada.

Carrera de Informtica

16

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

2.4.1.3. Longitud de la clave La discusin de la longitud de la clave para los algoritmos simtricos tiene sentido si solo hablamos de ataques de fuerza bruta. Si existe un ataque de tipo analtico que funciona bien, no nos ser de mucha ayuda un espacio de claves grande. Adems estn tambin las posibilidades de ataques de ingeniera social y de implementacin, donde un clave larga tampoco brinda ayuda extra. Por otro lado, el largo de clave para algoritmos simtricos y asimtricos es dramticamente diferente. Por ejemplo, una clave simtrica de 80 bits proporciona la misma seguridad que una clave de 1024 bits en RSA (Rodrigo, F. 2012). Un espacio de claves grande es una condicin necesaria, pero no suficiente, para un cifrador simtrico seguro. Este debe ser adems resistente ante ataques de tipo analtico.
Largo de clave 56-64 bits 112-128 bits 256 bits Estimacin de seguridad Corto plazo: horas o das. Largo plazo: dcadas en ausencia de computadoras cunticas. Largo plazo: dcadas aun con computadoras cunticas.

Tabla 2.2 Longitud de las claves para sistemas criptogrficos simtricos (Fuente: Rodrigo, F. 2012)

2.4.2. CIFRADO ASIMTRICO La criptografa asimtrica es aquella que utiliza criptosistemas en los cuales tenemos un par de llaves distintas ek y dk tal que para cualquier valor p P se cumple que Dec(dk, ) = Enc 1 (ek, ). A nuestro par de llaves se les denomina como llave pblica y llave privada, respectivamente, y como su nombre lo indica, la llave pblica ek debe ser accesible para cualquier entidad que quiera establecer una comunicacin segura con el dueo de dicha llave mientras que el acceso a la llave privada se restringe nicamente a su propietario. La principal ventaja que tenemos aqu es la facilidad de comunicacin entre las entidades. Cada quien genera su par de llaves o las obtiene de una tercera entidad de confianza y distribuye su llave publica sin afectar la seguridad del sistema. El principal problema que existe con este paradigma es el hecho de que las operaciones de cifrado son muy costosas computacionalmente ya que se basan principalmente en la exponenciacin. As que el inters principal de estudiar este
Carrera de Informtica

17

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

tipo de cifradores ha sido para cifrar valores pequeos como son nmeros de identificacin o cdigos de tarjetas de crdito, para usarlo en autenticacin, en firmas digitales y en nuestro caso como medio de intercambio de llaves (Barron, 2008). En esta criptografa, la clave pblica, como su nombre lo dice, se da a conocer pblicamente y la clave privada se mantiene en resguardo del propietario del par de claves. El hecho de que la clave pblica sea conocida, no implica que se vaya a obtener la clave privada, debido a que los algoritmos de clave pblica basan su seguridad en la dificultad de encontrar la solucin a problemas matemticos de una solo va, entre los que destacan, el logaritmo discreto y la factorizacin en nmeros enteros primos, por mencionar algunos (Beltrn A., 2012). 2.4.2.1. Ventajas de la criptografa de Clave Pblica

En criptografa de Clave Pblica se usa un par de claves, lo que ayuda a tener una mejor administracin de las claves con respecto a la criptografa de Clave Privada y se elimina por completo el intercambio de claves cada vez que se requiera tener una comunicacin cifrada (Beltrn A., 2012). 2.4.2.2. Desventajas de la criptografa de Clave Pblica. Una de las grandes desventajas al utilizar criptografa de Clave Pblica es que para una misma longitud de clave y mensaje se necesita un tiempo de proceso mayor que al utilizar criptografa de Clave Privada. Adems de que las claves son de mayor tamao que en Clave Privada y ms importante an el mensaje cifrado ocupa ms espacio que el mensaje original, es decir el mensaje cifrado es de una longitud mayor que el mensaje original (Beltrn A., 2012). 2.4.2.3. Largo de las claves y nivel de seguridad
Algoritmo Criptosistema Nivel de Seguridad (bits) 128 192 256 3072 bit 7680 bit 15360 bit 2072 bit 7680 bit 15360 bit 256 bit 384 bit 512 bit

Factorizacin de RSA enteros DH, DSA, Elgamal Logaritmo discreto ECDH, ECDSA Curvas Elpticas Clave simtrica AES, 3DES 80 bit 80 bit 192 bit 256 bit Tabla 2.3 Largo de las claves para sistemas criptogrficos asimtricos (Fuente: Rodrigo, F. 2012)

80 1024 bit 1024 bit 160 bit

Carrera de Informtica

18

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Los algoritmos de clave pblica requieren operandos y claves de gran tamao. Cuanto ms grande son stos ms seguros se vuelven los algoritmos. Un parmetro de comparacin entre los distintos algoritmos es el nivel de seguridad. Se dice que un algoritmo tiene un nivel de seguridad de n bits si el ataque requiere 2 n pasos. Para los algoritmos de clave simtrica esta relacin es natural, dado que con n bits tenemos un espacio de claves de 2 n. Con los algoritmo de clave pblica la relacin no es directa y generalmente se precisan muchos ms bits para lograr el mismo nivel de seguridad que en un algoritmo de clave privada. En la tabla se muestran la cantidad de bits necesarios para cada algoritmo a fin de alcanzar el nivel de seguridad deseado. Los ataques de fuerza bruta se contrarrestan, como siempre, eligiendo el nivel de seguridad adecuado (cantidad de bits de la clave). Otra forma de ataque es averiguar alguna manera de calcular la clave privada de la clave pblica. Todos los algoritmos son susceptibles a este tipo de ataque. En la historia del criptoanlisis se ha visto numerosas veces que lo que pareca irresoluble desde una perspectiva, se transformaba en un cuestin sencilla cambiando la forma de abordar el problema (Rodrigo, F. 2012). 2.4.3. CIFRADO HIBRIDO En el rea de estudio de la criptografa, el cifrado hibrido ha tenido gran atencin en los ltimos aos. Desde la aparicin del esquema de cifrado diseado por T. ElGamal en 1985, donde se propone una implementacin eficiente para un esquema de cifrado de llave pblica, muchos trabajos han sido realizados para buscar formas de mejorar las caractersticas del cifrado tanto para criptografa de llave pblica como privada. Un esquema de cifrado hibrido es un mecanismo de cifrado que puede ser construido a partir de dos esquemas distintos: un esquema de cifrado de llave o KEM (Key Encapsulation Mechanism) basado en un esquema de llave pblica, y un esquema de cifrado de datos o DEM (Data Encapsulation Mechanism) basado en un esquema de llave privada (Barron, 2008). 2.4.4. PROTOCOLOS CRIPTOGRFICOS. A grandes rasgos, los protocolos criptogrficos tienen que ver con la implementacin de algoritmos criptogrficos. Los algoritmos simtricos y asimtricos pueden verse como los bloques constructivos con los cuales se implementan ciertas funcionalidades, como por ejemplo la comunicacin segura a travs de Internet. Son ejemplos de protocolos criptogrficos el
Carrera de Informtica

19

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

esquema TLS (Transport Layer Security), que se utiliza en todos los navegadores web y l cual aplica al algoritmo RSA en su implementacin; por otro lado el protocolo SSH (Secure Shell) se utiliza para realizar sesiones de consola seguras e implementa en su estructura al algoritmo de Diffie-Hellman (Rodrigo F., 2012) 2.5. ORDENES DE COMPLEJIDAD La familia O(f(n)) define un Orden de Complejidad. Elegiremos como representante de este Orden de Complejidad a la funcin f(n) ms sencilla perteneciente a esta familia. Las funciones de complejidad algortmica ms habituales en las cuales el nico factor del que dependen es el tamao de la muestra de entrada n, ordenadas de mayor a menor eficiencia son: (Pinto, R. 2008)
Familia O(1) O(log n) O(n) O(n log n) O(n2) O(n3) O(na) O(2n) O(n!) Complejidad Orden constante Orden logartmico Orden lineal Orden cuasi-lineal Orden cuadrtico Orden cbico Orden polinmico Orden exponencial Orden factorial

Tabla 2.4 Funciones de complejidad algortmica (Fuente: Pinto, R. 2008)

Se identifica una Jerarqua de Ordenes de Complejidad que coincide con el orden de la Tabla 2.4 ; jerarqua en el sentido de que cada orden de complejidad inferior tiene a las superiores como subconjuntos. O(1): Complejidad constante. Cuando las instrucciones se ejecutan una vez. O(log n): Complejidad logartmica. Esta suele aparecer en determinados algoritmos con iteracin o recursin no estructural, ejemplo la bsqueda binaria. O(n): Complejidad lineal. Es una complejidad buena y tambin muy usual. Aparece en la evaluacin de bucles simples siempre que la complejidad de las instrucciones interiores sea constante.

Carrera de Informtica

20

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

O(n log n): Complejidad cuasi-lineal. Se encuentra en algoritmos de tipo divide y vencers como por ejemplo en el mtodo de ordenacin quicksort y se considera una buena complejidad. Si n se duplica, el tiempo de ejecucin es ligeramente mayor del doble. O(n2): Complejidad cuadrtica. Aparece en bucles o ciclos doblemente anidados. Si n se duplica, el tiempo de ejecucin aumenta cuatro veces. O(n3): Complejidad cbica. Suele darse en bucles con triple anidacin. Si n se duplica, el tiempo de ejecucin se multiplica por ocho. Para un valor grande de n empieza a crecer dramticamente. O(na): Complejidad polinmica (a > 3). Si a crece, la complejidad del programa es bastante mala. O(2n): Complejidad exponencial. No suelen ser muy tiles en la prctica por el elevadsimo tiempo de ejecucin. Se dan en subprogramas recursivos que contengan dos o ms llamadas internas n.

En la Figura 2.4 se muestra una comparacin entre los diferentes rdenes de complejidad expuestos y la relacin de nmero de instrucciones versus la entrada n.

Carrera de Informtica

21

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Figura 2.4 Comparacin de rdenes de complejidad (Fuente: Pinto R. 2008)

2.5.1. IMPORTANCIA DE LA EFICIENCIA Qu utilidad tiene disear algoritmos eficientes si las computadoras procesan la informacin cada vez ms rpido? Bien; para demostrar la importancia de la elaboracin de algoritmos eficientes, se plantea el siguiente problema: (Pinto, R. 2008) Contamos con una computadora capaz de procesar datos en 10 a 4 seg. En esta computadora se ejecuta un algoritmo que lee registros de una base de datos, dicho algoritmo tiene una complejidad exponencial 2n, Cunto tiempo se tardar en procesar una entrada n de datos?
n 10 20 30 40 50 TIEMPO 1 dcima de segundo 2 minutos > 1 da > 3 aos = 3 570 aos = 4,019,693,684,133,150 milenios

n Tabla 10 5: Ejemplo complejidad exponencial 2 (Fuente: Pinto, R. 2008) 0

Ahora se tiene la misma computadora capaz de procesar datos en 10 a 4 seg. Pero se ejecuta un algoritmo que hace el mismo trabajo antes citado, pero este algoritmo tiene una complejidad cbica n3, Cunto tiempo se tardar en procesar una entrada n de datos?
n 10 20 100 Carrera de Informtica TIEMPO = 1 dcima de segundo = 8 dcimas de segundo = 1.7 minutos

22

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica 200 = 13.3 minutos 1 da

Tabla 5: Ejemplo complejidad cubica n3 100 (Fuente: Pinto, R. 2008)

Se puede concluir, que solo un algoritmo eficiente, con un orden de complejidad bajo, puede tratar grandes volumen de datos, se razona que un algoritmo es: Muy eficiente si su complejidad es de orden log n Eficiente si su complejidad es de orden na Ineficiente si su complejidad es de orden 2n Se considera que un problema es tratable si existe un algoritmo que lo resuelve con complejidad menor que 2n, y que es intratable o desprovisto de solucin en caso contrario.

CAPTULO 3 ELABORACIN DEL MODELO CRIPTOGRFICO HIBRIDO


La elaboracin del modelo consiste en identificar las bases del problema mencionado inicialmente, luego proponer nuevas alternativas que satisfagan los requerimientos de solucin al problema.
Carrera de Informtica

23

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

3.1. ESTRUCTURACIN DEL PROBLEMA El gran problema que siempre ha tenido la criptografa simtrica es la comunicacin. El problema de intercambiar la clave secreta que se va a utilizar por los usuarios es muy complejo. Paso mucho tiempo hasta que apareci la criptografa asimtrica que resuelve el problema del intercambio de claves pero trae consigo el problema de la eficiencia. Ninguno de los esquemas de clave publica propuestos es eficiente, mas aun son bastante costosos comparados con los esquemas de clave privada, computacionalmente hablando. El proceso de cifrado y descifrado con un criptosistema simtrico se puede observar en la Figura 3.1.
Emisor Canal de Comunicacin Clave simtrica Clave simtrica Receptor
Cifrado simtrico Texto Cifrado
Canal de Comunicacin

Receptor

Emisor
Texto Plano

Texto Cifrado

Descifrad o

simtrico

Texto Plano

Clave simtrica

Clave simtrica

Figura 3.1 Proceso de cifrado y descifrado con un criptosistema simtrico (Fuente: Elaboracin propia)

El proceso de cifrado y descifrado con un criptosistema asimtrico se puede observar en la Figura 3.2.
Emisor Clave publica Emisor Carrera de Informtica asimtrico Texto
Plano Cifrado Texto Cifrado
Canal de Comunicacin

Receptor

Canal de Comunicacin

Clave publica Receptor


Texto Cifrado

Clave privada

Descifrad o asimtrico

Texto Plano

24

Clave publica privada Figura 3.2 Proceso de cifrado y descifrado con un criptosistemaClave asimtrico del receptor del receptor (Fuente: Elaboracin propia)

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Como se puede observar en ambas figuras el envi de las claves se la realiza por canales de comunicacin pblicos, estos canales no garantizan la seguridad del envi de las claves algo que es primordial para la criptografa simtrica. Entonces concluimos que el problema principal es la inseguridad en la distribucin de claves que tiene la criptografa simtrica y la ineficiencia de la criptografa asimtrica, estos problemas pueden ser solucionados diseando un modelo hibrido basado en las ventajas de ambos esquemas. 3.2. PROPUESTA DE SOLUCION Dado que el principal problema encontrado es la inseguridad para esquemas de clave privada y la ineficiencia para esquemas de clave pblica se propone un esquema hibrido con las ventajas de los anteriores. Ntese que un esquema hibrido es en s mismo un esquema de clave pblica, cuyas Receptor claves pblica y privada son las mismas que en el esquema de encapsulado de clave, y ntese Emisor la mayor parte del trabajo en el cifrado/descifrado es hecha por tambin que para cifrar mensajes, Canal de el esquema de clave privada, debido Comunicacin a su mayor eficiencia, mientras que el ineficiente esquema Clave publica Clave privada Clave publica de clave publica es usado solo para cifrar/descifrar el valor pequeo de la clave compartida. Receptor A Emisor continuacin se presenta el esquema de solucin Figura 3.3 que trata de mostrar cmo se
Canal transmite cifrado y la Texto clave entre el de emisor yTexto el receptor Descifrad utilizando un canal Texto de simtrico Texto el texto o Comunicacin Cifrado Plano Plano Cifrado simtrico comunicacin publico que podra no ser seguro.

Cifrado

Carrera de Informtica asimtrico


Clave simtrica Clave simtrica encriptada

Cifrado

Canal de Comunicacin

Clave simtrica encriptada

Descifrad o asimtrico

Clave 25 simtrica

Clave publica del receptor

Clave privada del receptor

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Figura 3.3 Esquema de un criptosistema hibrido (Fuente: Elaboracin propia)

Como se puede observar en el esquema de la solucin Figura 3.3, de nada servir a un espa intercepte el canal de comunicacin publico ya que la clave simtrica utilizada ha sido empaquetada utilizando la clave publica del receptor y esta solo podr ser utilizada si se cuenta con la clave privada, del mismo modo podemos observar en la figura que la criptografa asimtrica se utiliza para el envi de una pequea cantidad de informacin que es la de la clave simtrica, de este modo se da solucin al problema de la inseguridad en la distribucin de claves en la criptografa simtrica y se da solucin al problema de la ineficiencia en la criptografa asimtrica. La propuesta de solucin contempla el uso de algoritmos simtricos y asimtricos ya diseados que existen hasta el momento, lo que se quiere es unir dos esquemas de la criptografa moderna para lograr un modelo criptogrfico hibrido.

Carrera de Informtica

26

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

3.3. CARACTERISTICAS DE LA SOLUCION Al crear nuevos esquemas hbridos que nos proveen la facilidad de comunicacin de los esquemas asimtricos y con una eficiencia comparable con la de los esquemas simtricos, estamos avanzando en materia de seguridad y tendremos mayor probabilidad de proteger la informacin, sobre todo con la ayuda de los avances tecnolgicos y el incremento en la capacidad de procesamiento con que cuentan los medios digitales. En lo que se refiere a nuestro criptosistema lo ideal sera usar algoritmos simtricos y asimtricos con secreto perfecto, con lo cual obtendremos un criptosistema tericamente seguro. 3.4. FORMULACIN DEL MODELO CRIPTOGRFICO HIBRIDO Precisando los requerimientos y las necesidades de la propuesta de solucin, tomamos en cuenta los siguientes: Un algoritmo de cifra simtrica y un algoritmo de cifra asimtrica para crear el criptograma y la funcin inversa de cada algoritmo de cifra para descifrar el criptograma y obtener el mensaje, para ello se plantea un modelo criptogrfico hibrido basado en los dos algoritmos criptogrficos para tal efecto recurriremos a un mtodo de comparacin difuso y al anlisis de ordenes de complejidad algortmica observe Anexo C, en donde tenemos un MCDS en donde se decide que algoritmo simtrico de cifra E ser el algoritmo One Time Paz, y MCDA en donde se decide que algoritmo asimtrico de cifra F ser el algoritmo RSA, estos dos algoritmos tambin fueron seleccionados por poseer un orden de complejidad apropiado para el modelo. Los dos algoritmos mencionados se deben aplicar para cifrar el mensaje M, obteniendo el criptograma C, tal que este tenga la funcionalidad requerida para lo cual el modelo constara de tres etapas: Generador de clave pblica, cifrar el mensaje y descifrar el mensaje. 3.4.1. Etapas del modelo criptogrfico Cada etapa tiene un proceso diferente, estos procesos deben aplicarse secuencialmente, a continuacin se describir cada etapa de acuerdo a la funcin que debe cumplir contemplada de manera general, de esa manera facilitara la formalizacin del modelo.

Carrera de Informtica

27

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

3.4.1.1. Generador de clave publica El modelo criptogrfico hibrido propuesto requiere de un algoritmo generador de claves que tendr por misin generar 2 nmeros aleatorios coprimos de longitud de bits parecida, que representan a la clave pblica y otro para la clave privada siguiendo los pasos siguientes: n = p * q, donde p y q son dos nmeros coprimos distintos de longitud de bits parecida, donde a n se le denomina modulo (n) = (p-1) (q-1), donde es la Funcin de Euler Escogemos un e < n donde 1 < e < (n) y MCD(e, (n)) = 1 Se determina un d que satisfaga la congruencia: d = e-1 (mod (n)) este d lo podemos determinar del siguiente modo: d = [((g * (n))+1]/e para g=1,2,3,. t.q. d Por tanto se deber generar y publicar una cadena con el siguiente formato (n, e) que ser la clave pblica, y (n, d) ser la clave privada que no necesitara ser publicada solo servir en la desencriptacion despus de la recepcin de los mensajes. Se debe tomar en cuenta no generar nmeros pseudoaleatorios sino aleatorios. 3.4.1.2. Cifrar el mensaje El segundo paso del modelo criptogrfico es efectuar la cifra del mensaje, utilizando para ello la conjuncin de los dos algoritmos seleccionados mediante el mtodo de comparacin difuso Anexo C. 1. Calcular n donde n = p*q donde p, q son coprimos y no deben ser publicados. 2. Calcular = (p-1)(q-1) 3. Escoger e < n tal que se cumpla MDC (e, ) = 1, donde e es parte de la clave pblica. 4. Calcular d = e-1 mod , donde d es parte de la clave privada que no debe ser publicada. 5. Convertir M en binario mediante tabla ASCII mb = convertir en binario (M) Convertir la clave KOTP en binario mediante tabla ASCII
Carrera de Informtica

28

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

koptb= convertir en binario (KOTP) 6. CRSA = keopt mod n, donde (n, e) es la clave pblica. 7. COPT = mb xor koptb 3.4.1.3. Descifrar el mensaje 1. kopt = CdRSA mod n, donde (n, d) es la clave privada. Convertir kopt en binario KOTP = convertir en binario (kopt) 2. mb = COPT xor KOTP 3. Convertir mb a ASCII M = convertir a ASCII (mb) El modelo de Descifrado muestra que la aplicacin de los algoritmos One Time Pad y RSA deben ser aplicados de forma secuencial respectivamente. Considerando que las etapas del modelo descritas anteriormente, cumplen los requerimientos de la propuesta de solucin en consecuencia pasaremos a su formalizacin. 3.5. FORMALIZACIN DEL MODELO CRIPTOGRFICO HIBRIDO

La formalizacin terica de nuestro modelo estar presidida por conceptos de la criptografa tanto en definicin de un criptosistema y condiciones que debe cumplir para ser un criptosistema valido. Matemticamente el modelo se definir como sigue: El modelo se especifica como un criptosistema hibrido si se define como una quntupla H = {M, C, K, E y D} Donde:
Carrera de Informtica

29

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

M: Conjunto de todos los mensajes sin cifrar. Es el espacio de textos planos C: Conjunto de todos los posibles mensajes cifrados o criptogramas. K: Representa el conjunto de claves que se pueden emplear en el criptosistema. E: Es el conjunto de transformaciones de cifra o familia de funciones que se aplica a cada elemento de M para obtener un elemento de C.. D: Es el conjunto de transformaciones de descifrado. La representacin grafica del criptosistema hibrido basado en criptografa simtrica y criptografa asimtrica se muestra en la Figura 3.4. Receptor Emisor
Clave publica

Canal de Comunicacin

Clave publica

Clave privada

Emisor
Texto Plano Cifrado
simtrico

Receptor
Texto Cifrado
Canal de Comunicacin

Texto Cifrado

Descifrad o simtrico

Texto Plano

Cifrado
asimtrico

Clave simtrica

Clave simtrica encriptada

Canal de Comunicacin

Clave simtrica encriptada

Descifrad o asimtrico

Clave simtrica

Clave publica del receptor

Clave privada del receptor

Figura 3.4 Esquema del criptosistema hibrido basado en c. simtrica y c. asimtrica (Fuente: Elaboracin propia)

3.5.1. Comprobacin del criptosistema hibrido El criptosistema hibrido basado en criptografa simetrica y asimtrica debe cumplir lo siguiente: Las funciones de cifrado actan como:

Carrera de Informtica

30

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Ek : M C, k K Las funciones de descifrado actan como: Dk : C M, k K Todo criptosistema debe cumplir la siguiente condicin: P.D.: Demostracin

(1)

(2)

k K /Dk (Ek (m)) = m, m M

(3)

El modelo criptogrfico hibrido en sus etapas propone realizar las siguientes funciones: Ek: familia de funciones para el cifrado Kin: clave inicial perteneciente a K. Kt: clave tamizada perteneciente a K. K: clave concertada perteneciente a K. La derivacin de la clave ser realiza: Eq (Kin, Kt) = k, k K Para la cifra del mensaje se procede: Es: es subconjunto de las transformaciones de cifra Es (k, m) = c Luego para descifrar se realiza Ds: es subconjunto de las transformaciones inversas de cifra. Ds (k, c) = m (6) (5) (4)

Realizando las operaciones de descifrado y cifrado con la clave se tiene


Carrera de Informtica

31

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Dsk (Esk, c) = Ds (k, Es (k, m)) = m Por lo tanto, cumple con la condicin de la ecuacin (3)

(7)

Como se ha verificado, nuestro modelo propuesto es vlido, cumpliendo con las condiciones para establecerse como un criptosistema. Para conocer y comprender las etapas que realiza el criptosistema hibrido, plantearemos ejemplos que mostraran la funcionalidad del modelo, estos se presentaran ms adelante. 3.5.2. Demostracin de la funcionalidad del modelo y su aplicacin La demostracin de la funcionalidad del modelo del criptosistema hibrido se realizara planteado diversos ejemplos, que facilitaran la comprensin de la aplicabilidad del criptosistema. De modo particular el criptosistema hibrido cuenta con tres etapas para su aplicacin: Generar claves. Cifrar y Descifrar el mensaje: con los algoritmos One Time Pad y RSA

A continuacin se plantean ejemplos para la aplicacin del modelo: EJEMPLO 1: Se quiere enviar el mensaje Hola Mundo SOLUCIN: Se empleara el algoritmo presentado en 3.4 y por ser el primer ejemplo se realizara a detalle el proceso. 1 Etapa) Generar claves: Se debe generar una clave privada y otra clave pblica, se debera enviar la clave pblica y guardar en secreto la clave privada. p = 23 y q = 17 n = 23 * 17 n = 391 (n) = (22)*(16) (n) = 352 Escogemos un e < n e = 217 t.q. cumple las condicin MCD(e, (n)) = 1 Se determina un d = e-1 (mod (n)) d = [((g * (n))+1]/e para g=1,2,3,. t.q. d
Carrera de Informtica

32

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

d = [((1 * 352)+1]/ 217 d = 1,63 d = [((2 * 352)+1]/ 217 d = 3,24 d = [((45 * 352)+1]/ 217 d = 73 Clave pblica (n, e) (n, e) = (391, 217) Clave privada (n, d) (n, d) = (391, 73) 2 Etapa) Cifrar: Asignamos una clave para el cifrado One Time Pad, esta ser: Alicia a esta clave le asignamos su correspondiente ASCII binario1 entonces tenemos: A = 65 = 1000001 l = 108 = 1101100 i = 105 = 1101001 c = 99 = 1100011 i = 105 = 1101001 a = 97 = 1100001

Entonces Alicia = 1000001; 1101100; 1101001; 1100011; 1101001; 1100001 Procedemos del mismo modo con el mensaje: Hola Mundo asignando su correspondiente ASCII binario del siguiente modo: H = 72 = 1001000 o = 111 =1101111 l = 108 =1101100 a = 97 =1100001 = 32 =0100000 M = 77 =1001101 u = 117 =1110101 n = 110 =1101110 d = 100 =1100100 o = 111 =1101111

Entonces Hola Mundo = 1001000; 1101111; 1101100; 1100001; 0100000; 1001101; 1110101; 1101110; 1100100; 1101111 Se procede al cifrado mediante algoritmo One Time Pad que hace uso del operador lgico XOR esto sera C = M xor K: M: 1001000110111111011001100001010000010011011110101110111011001001101111 KOTP: 100000111011001101001110001111010011100001 Se puede observar que la longitud de la clave es menor al mensaje, en ese caso se repite la clave:
M: 1001 0001 1011 1111 0110 0110 0001 0100 0001 0011 0111 1010 1110 1110 1100 1001 1011 11 KOTP: 1000 0011 1011 0011 0100 1110 0011 1101 0011 1000 0110 0000 1110 1100 1101 0011 1000 11 COTP: 0001 0010 0000 1100 0010 1000 0010 1001 0010 1011 0001 1010 0000 0010 0001 1010 0011 00

Se procede al cifrado de la clave Alicia utilizada mediante el algoritmo RSA haciendo uso de la clave pblica, el cifrado se realiza utilizando el equivalente ASCII:

ASCII, codificacin que asigna valores numricos a las letras, nmeros, signos de puntuacin y caracteres, obsrvese el Anexo E

Carrera de Informtica

33

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

A = 65 l = 108

i = 105 c = 99

i = 105 a = 97

Utilizando: CRSA = me mod n y (n, e) = (391, 217) tenemos: A = 65217 mod 391=37 l = 108217 mod 391=334 i = 105217 mod 391=48 c = 99217 mod 391=241 i = 105217 mod 391=48 a = 97217 mod 391=260

Obtenemos CRSA= 37; 334; 48; 241; 48; 260 CRSA= 373344824148260 3 Etapa) Descifrar: Recibido el criptograma y la contrasea cifrada:
COTP: 0001 0010 0000 1100 0010 1000 0010 1001 0010 1011 0001 1010 0000 0010 0001 1010 0011 00

CRSA= 373344824148260 Utilizando la clave privada (n, d) = (391, 73) desciframos CRSA para poder descifrar COTP haciendo uso de mRSA= Cd mod n tenemos: 3773 mod 391=65 =A 33473 mod 391=108 =l 4873 mod 391=105=i 24173 mod 391=99=c 4873 mod 391=105=i 26073 mod 391=97=a

Se halla el equivalente ASCII binario de: Alicia Alicia = 100000111011001101001110001111010011100001 Utilizamos el algoritmo One Time Pad para realizar el descifrado esto ser M = C xor K se observa que la longitud de la clave no es la misma que el mensaje, la clave se repetir hasta lograr la misma longitud:
COTP: 0001 0010 0000 1100 0010 1000 0010 1001 0010 1011 0001 1010 0000 0010 0001 1010 0011 00 KOTP: 1000 0011 1011 0011 0100 1110 0011 1101 0011 1000 0110 0000 1110 1100 1101 0011 1000 11 M: 1001 0001 1011 1111 0110 0110 0001 0100 0001 0011 0111 1010 1110 1110 1100 1001 1011 11

Separando el mensaje en grupos de 7 bits:

Carrera de Informtica

34

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

1001000 = 72 = H 1101111 = 111 = o 1101100 = 108 = l 1100001 = 97 = a 0100000= 32 =

1001101 = 77 = M 1110101 = 117 = u 1101110 = 110 = n 1100100 = 100 = d 1101111 = 111 = o

Se puede obtener el mensaje enviado: Hola Mundo

EJEMPLO 2: Se quiere enviar el mensaje Esta es una prueba del Modelo Hibrido SOLUCIN: Se empleara el algoritmo presentado en 3.4 1 Etapa) Generar claves: p = 109 y q = 73 n = 109 * 73 n =7957 (n) = (108)*(72) (n) = 7776 Escogemos un e < n e = 3787 ya que cumple con MCD(e, (n)) = 1 Se determina un d = e-1 (mod (n)) d = [((1856* 7776)+1]/ 3787 d = 3811 Clave pblica (n, e) (n, e) = (7957, 3787) Clave privada (n, d) (n, d) = (7957, 3811) 2 Etapa) Cifrar: Asignamos una clave para el cifrado One Time Pad, esta ser: Selah a esta clave le asignamos su correspondiente ASCII binario entonces tenemos: S = 83 = 1010011 e = 101 = 1100101 l = 108 =1101100 a = 97 =1100001 h = 104 = 1101000

Entonces Selah = 1010011; 1100101; 1101100; 1100001; 1101000 Procedemos del mismo modo con el mensaje: Esta es una prueba del Modelo Hibrido asignando su correspondiente ASCII binario del siguiente modo: Entonces Esta es una prueba del Modelo Hibrido = 1000101, 1110011, 1110100, 1100001, 0100000, 1100101, 1110011, 0100000, 1110101, 1101110, 1100001, 0100000, 1110000,
Carrera de Informtica

35

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

1110010, 1110101, 1100101, 1100010, 1100001, 0100000, 1100100, 1100101, 1101100, 0100000, 1001101, 1101111, 1100100, 1100101, 1101100, 0100000, 1001000, 1101001, 1100010, 1110010, 1101001, 1100100, 1101111 Se procede al cifrado mediante algoritmo One Time Pad esto ser C = M xor K: M: 1000101 1110011 1110100 1100001 0100000 1100101 1110011 0100000 1110101 1101110 1100001 0100000 1110000 1110010 1110101 1100101 1100010 1100001 0100000 1100100 1100101 1101100 0100000 1001101 1101111 1100100 1100101 1101100 0100000 1001000 1101001 1100010 1110010 1101001 1100100 1101111 KOTP: 1010011 1100101 1101100 1100001 1101000 1010011 1100101 1101100 1100001 1101000 1010011 1100101 1101100 1100001 1101000 1010011 1100101 1101100 1100001 1101000 1010011 1100101 1101100 1100001 1101000 1010011 1100101 1101100 1100001 1101000 1010011 1100101 1101100 1100001 1101000 1010011
COTP:

0010111 0000110 1000001 0000000

0010110 0110010 0001100 1000001

0011000 1000101 0110110 0100000

0000000 0011100 0001001 0111010

1001000 0010011 1001100 0000111

0110110 0011101 0101100 0011110

0010110 0110110 0000111 0001000

1001100 0000111 0110111 0001100

0010100 0001101 0000000 0111100

Se procede al cifrado de la clave Selah utilizada mediante el algoritmo RSA: Utilizando: CRSA = me mod n y (n, e) = (7957, 3787) tenemos: S = 833787 mod 7957=7424 e = 1013787 mod 7957=4150 l = 1083787 mod 7957=5122 a = 973787 mod 7957=852 h = 1043787 mod 7957=3080

Obtenemos CRSA= 7424; 4150; 5122; 852; 3080 CRSA= 7424415051228523080 3 Etapa) Descifrar: Recibido el criptograma COTP y la contrasea cifrada CRSA utilizamos la clave privada (n, d) = (7957, 3811) desciframos CRSA para poder descifrar COTP haciendo uso de mRSA= Cd mod n tenemos: mRSA = 83; 101; 108; 97; 104 mRSA = Selah Utilizamos el algoritmo One Time Pad para realizar el descifrado esto ser M = C xor K se observa que la longitud de la clave no es la misma que el mensaje, la clave se repetir hasta lograr la misma longitud:
COTP:

Carrera de Informtica

36

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

0010111 0000110 1000001 0000000 KOTP: 1010011 1101000 1100001 1101100

0010110 0110010 0001100 1000001 1100101 1010011 1101000 1100001

0011000 1000101 0110110 0100000 1101100 1100101 1010011 1101000

0000000 0011100 0001001 0111010 1100001 1101100 1100101 1010011

1001000 0010011 1001100 0000111 1101000 1100001 1101100 1100101

0110110 0011101 0101100 0011110 1010011 1101000 1100001 1101100

0010110 0110110 0000111 0001000 1100101 1010011 1101000 1100001

1001100 0000111 0110111 0001100 1101100 1100101 1010011 1101000

0010100 0001101 0000000 0111100 1100001 1101100 1100101 1010011

M: 1000101 1110011 1110100 1100001 0100000 1100101 1110011 0100000 1110101 1101110 1100001 0100000 1110000 1110010 1110101 1100101 1100010 1100001 0100000 1100100 1100101 1101100 0100000 1001101 1101111 1100100 1100101 1101100 0100000 1001000 1101001 1100010 1110010 1101001 1100100 1101111 Separando M en grupos de 7 bits: M: 69, 115, 116, 97, 32, 101, 115, 32, 117, 110, 97, 32, 112, 114, 117, 101, 98, 97, 32, 100, 101, 108, 32, 77, 111, 100, 101, 108, 32, 72, 105, 98, 114, 105, 100, 111 Entonces el mensaje M ser: Esta es una prueba del Modelo Hibrido 3.6. ANLISIS DE RESULTADOS

Analizando los anteriores ejemplos, en cada uno se muestra una manera de aplicar el modelo criptogrfico hibrido para la obtencin de las claves, cifrado y descifrado del mensaje. En donde se utiliza el algoritmo One Time Pad principalmente para cifrar el mensaje y usamos el algoritmo RSA principalmente para generar las claves pblica, privada y cifrar la clave que utiliza One Time Pad, esto nos ofrece seguridad en el envi de claves y eficiencia en el cifrado y descifrado del mensaje. Como se pudo observar el algoritmo hibrido es funcional y representa seguridad y eficiencia en su funcionamiento, para analizar la eficiencia y seguridad es necesario que cada algoritmo independientemente del desempeo del equipo que los ejecute sea estudiado segn las cualidades que tiene. Para ello podemos ampliar lo mencionado en el marco terico 2.3. One Time Pad es seguro desde el punto de vista de la teora de la informacin, en el sentido de que el mensaje cifrado no le proporciona a un criptoanalista ninguna informacin sobre el mensaje original, esto
Carrera de Informtica

37

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

ha sido demostrado matemticamente por Claude Shannon2, One Time Pad ofrece una seguridad incondicional, que quiere decir que el sistema es seguro frente a un atacante con tiempo y recursos computacionales ilimitados. La seguridad de RSA est basada en la factorizacin de nmeros primos grandes y posee una seguridad computacional que quiere decir que el sistema es seguro frente a un atacante con tiempo y recursos computacionales limitados, esto es utilizando computadoras convencionales. En lo concerniente a eficiencia observando el anlisis realizado en el Anexo C en donde se realiza la comparacin de algoritmos y Anexo D en donde se da la descripcin de cada algoritmo analizado, podemos decir que el algoritmo One Time Pad tiene un orden de complejidad constante esto es O (1) y el algoritmo RSA tiene un orden de complejidad cuadrtico en el cifrado esto es O (n2) y un orden de complejidad cubico en el descifrado esto es O(n3). Al combinar dos algoritmos en un modelo hibrido, se debe tomar en cuenta que le orden de complejidad del algoritmo del modelo presentado es diferente, por tanto realizando el anlisis del algoritmo propuesto tenemos: El cifrado que utiliza la clave pblica, tiene una complejidad de O(n2) y combinado con el algoritmo One Time Pad O(n) se tiene una complejidad de O(n 3), el proceso de descifrado RSA tiene O(n3) y combinado con One Time Pad O(n) sera O(n 4) el proceso de generar claves pblicas y privadas es O(n4) que se mantiene debido a que solo afecta al algoritmo RSA. Por tanto podemos realizar la validacin de la hiptesis tomando en cuenta los argumentos presentados en este anlisis. 3.7. VALIDACION DE HIPOTESIS La hiptesis que deseamos demostrar es la siguiente: El modelo criptogrfico hibrido, es una alternativa de solucin al problema de inseguridad del cifrado simtrico y la ineficiencia del cifrado asimtrico. Como ya habamos mencionado el modelo implcitamente cuenta con un nivel de seguridad incondicional (One Time Pad) y un nivel de seguridad computacional (RSA). Tambin debe
2

Claude Elwood Shannon: fue un ingeniero electrnico y matemtico estadounidense, recordado como el padre de la teora de la informacin.

Carrera de Informtica

38

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

tomarse en cuenta que la clave utilizada por el cifrado simtrico se enva asimtricamente por canales de comunicacin, el envi se lo realiza de manera segura ya que est protegida por el cifrado asimtrico, por lo cual el modelo presentado proporciona una solucin al problema de la inseguridad del cifrado simtrico. El problema de la ineficiencia del cifrado asimtrico radica en el envi de cantidades grandes de informacin y por el orden de complejidad que presenta este algoritmo, esto se soluciono con el envi de una pequea cantidad de informacin como es la clave que utiliza el cifrado simtrico. Es por tanto que el problema de la inseguridad y la ineficiencia queda solucionado, y la hiptesis demostrada.

Carrera de Informtica

39

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

CAPTULO 4 CONCLUSINES Y RECOMENDACIONES


4.1. CONCLUSIONES De acuerdo a la investigacin realizada se concluye que: De acuerdo a los objetivos planteados en el Capitulo 1: se elaboro el modelo criptogrfico hibrido, realizando investigaciones para encontrar una solucin a la inseguridad y la ineficiencia del cifrado simtrico y asimtrico respectivamente. Se realizo la seleccin de un algoritmo de cifra simtrica y un algoritmo de cifra asimtrica basado en las mejores caractersticas encontradas entre los candidatos, esto mediante un mtodo de comparacin usando conjuntos difusos. Respecto a la hiptesis: Se cumpli con el objetivo buscado en la investigacin, el disear un modelo criptogrfico basado en criptografa simtrica y criptografa asimtrica. El presente modelo es una alternativa de solucin a los principales problemas que tienen los esquemas simtricos y asimtricos, y observando el anlisis de resultados realizado se determina que el modelo criptogrfico propuesto es seguro. 4.2. RECOMENDACIONES Se debe tomar en consideracin las recomendaciones de uso del algoritmo criptogrfico simtrico One Time Pad el de no utilizar ms de una vez la clave para cifrar informacin, tambin se debe considerar las recomendaciones del algoritmo asimtrico RSA el de utilizar nmeros primos grandes que luego de ser usados deben ser desechados, la clave privada debe mantenerse en secreto hasta que llegue el momento de ser utilizado para el descifrado de la informacin. Para un mejor entendimiento del modelo propuesto se recomienda estudiar detenidamente los ejemplos propuestos utilizando paralelamente el esquema del modelo hibrido propuesto.

Carrera de Informtica

40

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Se recomienda hacer un estudio comparativo como el que se realizo en el Anexo C tomando en consideracin mas algoritmos simtricos y asimtricos que cuenten con un mayor grado de seguridad y eficiencia, que los presentados en esta tesis. BIBLIOGRAFIA Alvarado, Erick Mtodo de Simulacin Difusa, Tesis de Grado. Universidad Mayor de San Andrs, 2000. Angel, J. 2005 Criptografa para todos, Articulo de investigacin, consultado 09 abril 2013 disponible desde: http://computacion.cs.cinvestav.mx/~jjangel/Pagina_Todos_es.html Balboa, Rizellda Encriptacin Asimtrica Hibrida con Distribucin Cuntica de Claves, Tesis de Grado. Universidad Mayor de San Andrs, 2006. Barron V., Jesus 2008 Diseo e Implementacin de un Esquema de Cifrado Hibrido basado en DHIES Centro de Investigacion y de Estudios Avanzados, consultado en 02 abril 2013 disponible desde: http://www.cs.cinvestav.mx/TesisGraduados/2008/tesisJesusBarron.pdf Beltran A., Edelia 2012 Analisis Comparativo de Algoritmos Criptograficos de Clave Publica, Instituto Politecnico Nacional, Seccion de Estudios en Posgrado e Investigacion, consultado 08 abril 2013 disponible desde: http://www.repositoriodigital.ipn.mx/bitstream/handle/123456789/12645/Teis%20MestriaEdelia%20Beltr%C3%A1n%20Arreola.pdf?sequence=1 Divendres, 2010 Criptografa y Sistemas Criptogrficos, pgina personal del autor, consultado en 09 abril 2013 disponible desde: http://zonatic.usatudni.es/ca/aprenentatge/desenvolupasobre-el-dnie/57-aspectos-tecnicos/196-criptografia-y-esquemas-de-clave-publica.html Maiorano, Ariel 2009, Criptografa, Tcnicas de desarrollo para profesionales, Editorial Alfaomega, 2009 Pinto, Rolf, 2008, Teora de la complejidad algortmica, Monografias.com, consultado en 27 mayo 2013 disponible desde: http://www.monografias.com/trabajos27/complejidadalgoritmica/complejidad-algoritmica.shtml#complej
Carrera de Informtica

41

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Quijivix M., Juan L. 2001 Criptografa y Seguridad de la Informacin Universidad Francisco Marroquin, consultado en 20 Marzo 2013 disponible desde: www.uv.es/mat.es2005/cripto/mates2005/pdf/tesis.pdf Rodrigo F., Mario 2012 Algoritmos de Encriptacin de Clave Asimtrica Universidad Nacional de la Plata, Facultad de Informtica, consultado en 10 abril 2013 disponible desde: http://sedici.unlp.edu.ar/bitstream/handle/10915/26137/Documento_completo.pdf?sequence=1 Sanjuan, Leudis 2009 Seguridad en el desarrollo del Software Universidad del Norte, Ingeniera del Software, consultado 10 abril 2013 disponible desde: http://manglar.uninorte.edu.co/bitstream/10584/2204/1/Criptograf%C3%ADa%20I.pdf Seminario, 2005 Informtica, Ciencia y Tecnologa (1, 2005, Segovia, Espaa). Criptologa, consultado 02 Marzo 2013 disponible desde: http://wmatem.eis.uva.es/~ignfar/crypto.html Velsquez, Rodolfo Seguridad Criptogrfica Hibrida de Clave Pblica y Privada Aplicada a la Mensajera SMS, Tesis de Maestra. Universidad Mayor de San Andrs, 2009.

Carrera de Informtica

42

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

ANEXO A: RBOL DE PROBLEMAS

Carrera de Informtica

43

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

ANEXO B: RBOL DE OBJETIVOS

Carrera de Informtica

44

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

ANEXO C: COMPARACIN DE ALGORITMOS Y RDENES DE

COMPLEJIDAD
El mtodo de comparacin lo construiremos basndonos en definiciones que se usa en la lgica difusa como los conjuntos difusos y el grado de pertenencia, estas definiciones las usaremos para representar la clasificacin y restricciones al clasificar un algoritmo de cifra. La lgica difusa nos permitir tener un valor aproximado del resultado que queremos obtener, ayudndonos a la evaluacin de los algoritmos de cifra. Desarrollaremos las siguientes fases: Definir criterios de comparacin y definir conjuntos difusos. Criterios de comparacin Los criterios de comparacin son propiedades que deben cumplir los algoritmos de cifra para ser un algoritmo con secreto perfecto. 1. La generacin de clave debe ser equiprobable. 2. La fortaleza del algoritmo de cifra depende de la clave, no depende de la complejidad del cifrado. 3. El tamao de la clave debe ser igual al del mensaje. 4. La clave solo debe usarse una sola vez. 5. La clave debe tener al menos igual longitud que el mensaje original. Cada criterio ser ponderado de acuerdo a la importancia que tiene para nuestro fin, como se presenta en la Tabla C.1. Criterio de comparacin Ponderacin La generacin de clave debe ser equiprobable 15 La fortaleza del algoritmo de cifra depende de la clave 20 El tamao de la clave debe ser igual al del mensaje 20 La clave solo debe usarse una sola vez 15 La clave debe tener al menos igual longitud que el mensaje original 30 Total ponderacin 100
Tabla C.1 Ponderacin de criterios de evaluacin Fuente: (Modificado de Balboa, 2006)

Carrera de Informtica

45

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Conjuntos difusos Los conjuntos difusos son clasificaciones de un tema en particular, que no tienen una definicin adecuada o exacta. A continuacin pasamos a definir tres conjuntos difusos que representan la compatibilidad que tienen los algoritmos de cifra. 1. 2. 3. Optimo, ser el ms adecuado. Apto, ser adecuado. No apto, no es compatible.

La compatibilidad ser medida con una ponderacin de 0 a 100. Definiremos los intervalos de ponderacin de los conjuntos definidos anteriormente, como se ve en la Tabla C.2. Compatibilida d Optimo Apto No apto Ponderacin 81 a 100 61 a 80 0 a 60

Tabla C.2 Definicin Conjuntos Difusos Fuente: (Modificado de Modificado de Balboa, 2006)

En la representacin grafica en el eje X estarn los conjuntos difusos de compatibilidad y en el eje Y el grado de pertenencia a un conjunto difuso de compatibilidad, como se muestra en la Figura C.1.
1 0, 9 0, 8 0, 7 0, 6 0, 5 0, 4 0, 3 0, 2 0, 1

Optimo

Apto No apto

Carrera de Informtica

1 0

2 0

3 0

4 0

5 0

6 0

7 0

8 0

9 0

10 0

46

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Figura C.1 Representacin grafica de los conjuntos difusos (Fuente: Elaboracin propia)

Grado de pertenencia Este valor establece el punto de transicin entre 0 y 1 entre las condiciones del conjunto difuso en tanto el grado de pertenencia este ms cercano a 1 el elemento estar ms cercano al conjunto y cuanto est ms cercano a 0 el elemento estar ms alejado del conjunto. El mtodo de comparacin difuso nos permitir clasificar a los algoritmos de cifra en los conjuntos que definimos de acuerdo a la ponderacin resultante de la evaluacin de criterios. El conjunto que nos interesa es el conjunto difuso optimo, todos los clasificados en este conjunto son los ms probables de ser elegidos, pero para facilitar nuestra eleccin nos apoyaremos en el grado de pertinencia y el algoritmo de cifra que tenga mayor grado de perteneca ser el seleccionado. EVALUACIN A LOS ALGORITMOS DE CIFRA Los algoritmos simtricos y asimtricos que evaluaremos son catalogados como criptosistemas modernos, de los cuales seleccionaremos 5 algoritmos respectivamente. Cada algoritmo fue estudiado de acuerdo a sus capacidades y caractersticas de cifra, para conocer informacin detallada sobre los algoritmos revisar Anexo D. Evaluando cada algoritmo de cifra con cada criterio definido en la tabla de ponderacin de criterios de la Tabla C.1, se obtiene en una tabla los resultados de cada algoritmo de cifra junto a
Carrera de Informtica

47

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

su ponderacin total que se muestra en la Tabla C.3 algoritmos simtricos y Tabla C.4 algoritmos asimtricos.
Algoritmo de Criterio 1 Criterio 2 Criterio 3 Criterio 4 Criterio 5 Total cifra TDES 15 20 0 15 30 80 IDEA 15 20 0 15 30 80 ONE TIME PAD 15 20 20 15 30 100 AES 15 20 0 15 30 80 RC6 15 20 0 15 30 80
Tabla C.3 Tabla de resultados, evaluacin de algoritmos simtricos Fuente: (Elaboracin propia)

Algoritmo cifra MH RSA DSA ELGAMAL CCE

de Criterio 1 Criterio 2 Criterio 3 Criterio 4 Criterio 5 Total 15 15 15 15 15 20 20 0 20 20 0 0 0 0 0 15 15 15 15 15 0 30 30 0 30 50 80 60 50 80

Tabla C.4 Tabla de resultados, evaluacin de algoritmos asimtricos Fuente: (Elaboracin propia)

Resultado de la evaluacin a los algoritmos de cifra simtrica y asimtrica La ponderacin total que se aprecia en la tabla de resultados de la evaluacin en la Tabla C.3 y Tabla C.4 de cada algoritmo sometido a la comparacin mediante el mtodo de comparacin que se realiza ubicando en el eje X la ponderacin obtenida de la evaluacin de criterios, este se intersecta con la recta que delimita a un conjunto, se tiene un par ordenado entre la ponderacin y el gado de pertenencia a un conjunto definido de compatibilidad, obteniendo dos resultados el grado de pertenencia a un conjunto definido de compatibilidad, obteniendo dos resultados, el grado de pertenencia y el conjunto de compatibilidad al que pertenece cada algoritmo de cifra, los efectos se muestran en la siguiente tabla de resultados, ver Tabla C.5 y Tabla C.6.
Algoritmo de cifra Puntaje Grado de Compatibilidad simtrica pertinencia TDES 80 0,8 Apto IDEA 80 0,8 Apto ONE TIME PAD 100 1 Optimo AES 80 0,8 Apto RC6 80 0,8 Apto Tabla C.5 Resultados del mtodo de comparacin
(Fuente: Elaboracin propia)

Algoritmo

de

cifra

Puntaje

Grado de

Compatibilidad

Carrera de Informtica

48

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica


asimtrica pertinencia MH 50 0,5 No apto RSA 80 0,8 Apto DSA 60 0,6 No apto ELGAMAL 50 0,5 No apto CCE 80 0,8 Apto Tabla C.6 Resultados del mtodo de comparacin (Fuente: Elaboracin propia)

ORDENES DE COMPLEJIDAD Ahora pasaremos a realizar la comparacin de los algoritmos simtricos y asimtricos elegidos segn su orden de complejidad, cada algoritmo fue estudiado de acuerdo a las caractersticas de sus algoritmos, para conocer ms informacin puede observar el Anexo D. Evaluando cada algoritmo de cifra tenemos los siguientes rdenes de complejidad:

Algoritmo de cifra simtrica TDES IDEA ONE TIME PAD AES RC6

O(f(n)) cifrado O(2n) O(n) O(1) O(n2) O(n)

O(f(n)) descifrado O(2n) O(n) O(1) O(n2) O(n)

Complejidad Orden exponencial Orden lineal Orden constante Orden cuadrtico Orden lineal

Compatib. No apto Apto Optimo Apto Apto

Tabla C.7 rdenes de complejidad algoritmos simtricos (Fuente: Elaboracin propia)

Algoritmo de cifra asimtrica MH RSA DSA ELGAMAL CCE

O(f(n)) cifrado O(n2) O(n2) O(na) O(log n) O(na)

O(f(n)) descifrado O(n3) O(n3) O(na) O(log n) O(na)

Complejidad Orden cbico Orden cbico Orden polinmic Orden logartm Orden polinmic

Compatib. Apto Apto No apto Apto No apto

Tabla C.8 rdenes de complejidad algoritmos asimtricos (Fuente: Elaboracin propia)

Eleccin de los algoritmos de cifra ms aptos Interpretando los resultados que se muestran en las tablas de resultados del mtodo de comparacin Tabla C.5 y Tabla C.6, se puede apreciar que para la comparacin de los algoritmos
Carrera de Informtica

49

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

simtricos la mayora son aptos observando el grado de pertenencia, pero solo un algoritmo pertenece por completo al conjunto optimo, el algoritmo One Time Pad que tiene un alto grado de pertenencia al conjunto de compatibilidad optimo. En la comparacin de los algoritmos asimtricos se puede observar que la mayora no es apta ya que tiene un grado de pertenencia bajo, y seleccionaremos al algoritmo RSA que pertenece al conjunto apto y por ser ms conocido. Interpretando los resultados que se muestran en las tablas de rdenes de complejidad Tabla C.7 y Tabla C.8 se puede observar que los algoritmos seleccionados mediante el mtodo de comparacin difuso tambin presentan un grado de compatibilidad con el modelo analizando sus rdenes de complejidad algortmica. Mediante las dos interpretaciones concluimos que los algoritmos RSA y One Time Pad son los algoritmos que utilizaremos para poder elaborar el modelo criptogrfico hibrido basado en estos dos algoritmos.

ANEXO D: ALGORITMOS DE CIFRA SIMTRICA


De varios algoritmos simtricos conocidos y utilizados a continuacin se presenta 5 de ellos que son los ms representativos y con ellos se realizara la comparacin que se observa en el Anexo C. TDES: o DES Mltiple, consiste en aplicar varias veces el algoritmo DES (con diferentes claves) al mensaje original. El ms conocido de todos ellos el Triple-DES (T-DES) el cual consiste en aplicar 3 veces DES. El funcionamiento de TDES consiste en aplicar 3 veces DES de la siguiente manera: la primera vez se usa una clave K1 (azul) junto con el bloque B0, de forma ordinaria E (de Encription) obteniendo el bloque B1. La segunda vez se toma a B1 con la clave K2 (roja) diferente a K1 y K2, de forma ordinaria E (de Encription), es decir, aplica de la interaccin 1 a la 16 a B0 con la clave K1, despus aplica de la 16 a la 1, a B1 con la clave K2, finalmente aplica una vez mas de la 1 a la 16 a B2 usando la clave K3 (naranja), obteniendo finalmente a B3. En
Carrera de Informtica

50

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

cada una de estas tres veces aplica el modo de operacin ms adecuado. El proceso del cifrado con TDES se puede apreciar en la siguiente figura.
Clave

B0
Clave

DES
=

DES (clave, B0)

B1 B1

B2
Clave

DES (clave, B1)

DES
DES (clave, B2)
=

B2

DES

B3

Orden de complejidad: Utiliza una complejidad de O(2n) constante en el cifrado y descifrado. IDEA: International Data Encryption Algorithm, el Algoritmo Internacional de Encriptamiento de Datos, es un cifrado de bloque diseado por Xuejia Lai y James L. Massey de ETH-Zurich y descrito por primera vez en 1991. Trabaja con bloques de 64 bits de longitud y emplea una clave de 128 bits. Utiliza el mismo algoritmo tanto para cifrar como para descifrar. Funcionamiento: El algoritmo IDEA consta de 8 rondas. Dividiremos el bloque X a codificar, de 64 bits en cuatro partes X1, X2, X3, X4 de 16 bits. Denominaremos Zi a cada una de las 52 subclaves de 16 bits que vamos a necesitar. Las operaciones que llevamos a cabo en cada ronda son las siguientes: 1. Multiplicar X1 por Z1. 2. Sumar X2 con Z2. 3. Sumar X3 con Z3. 4. Multiplicar X4 por Z4. 5. Hacer un XOR entre los resultados del paso 1 y el paso 3. 6. Hacer un XOR entre los resultados del paso 2 y el paso 3. 7. Multiplicar el resultado del paso 5 por Z5. 8. Sumar los resultados de los pasos 6 y 7. 9. Multiplicar el resultado del paso 8 por Z6. 10. Sumar los resultados de los pasos 7 y 9. 11. Hacer un XOR entre los resultados de los pasos 1 y 9. 12. Hacer un XOR entre los resultados de los pasos 3 y 9. 13. Hacer un XOR entre los resultados de los pasos 2 y 10. 14. Hacer un XOR entre los resultados de los pasos 4 y 10. La salida de cada iteracin sern los cuatro sub-bloques obtenidos en los pasos 11, 12, 13 y 14 que sern la entrada del siguiente ciclo, en el que emplearemos las siguientes seis subclaves,
Carrera de Informtica

51

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

hasta un total de 48. Al final de todo intercambiaremos los dos bloques centrales (en realidad con eso deshacemos el intercambio que llevamos a cabo en los pasos 12 y 13). Despus de la octava iteracin, se realiza la siguiente transformacin: 1. 2. 3. 4. Multiplicar X1 por Z49. Sumar X2 con Z50. Sumar X3 con Z51. Multiplicar X4 por Z52.

Las primeras ocho subclaves se calculan dividiendo la clave de entrada en bloques de 16 bits. Las siguientes ocho se calculan rotando la clave de entrada 25 bits a la izquierda y volviendo a dividirla y as sucesivamente. Las subclaves necesarias para descifrar se obtienen cambiando de orden las Zi y calculando sus inversas para la suma o la multiplicacin. Puesto que 2 16+1 es un nmero primo, nunca podremos obtener cero como producto de dos nmeros, por lo que no necesitamos representar dicho valor. Cuando estemos calculando productos, utilizaremos el cero para expresar el numero 216 un uno seguido de 16 ceros. Esta representacin es coherente puesto que los registros que se emplean internamente en el algoritmo poseen nicamente 16 bits. Orden de complejidad: Su complejidad es lineal O(n). ONE TIME PAD: (OTP) En 1917 Gilbert S. Vernam, natico de Brooklyn e ingeniero de MIT que trabajaba en los laboratorios de la empresa AT&T, disea un dispositivo criptogrfico para comunicaciones telegrficas basado en los 32 cdigos Baudot de los teletipos desarrollados por su compaa. Los cdigos Baudot representan los caracteres del lenguaje con cinco elementos que pueden ser el espacio o la arca (el creo y el uno) diseado para transmisiones telegrficas. Este cifrador, que tuvo una gran aplicacin durante la Primera Guerra mundial, basa su seguridad en el secreto de una clave aleatoria que se supone tan larga como el mensaje y que luego de usarse debera destruirse. Un dato anecdtico: en dicha confrontacin algunos encargados del sistema de cifra (llamados criptocustodios en el lenguaje militar) hicieron caso omiso de esta recomendacin y los cdigos fueron rotos por los aliados. OTP (One Time Pad) tambin conocido como el cifrado de Vernam, seria tcnicamente hablando el algoritmo ms seguro siendo que es un cifrador en flujo, la operacin de cifra se realiza bit a bit mediante una secuencia binaria cifrante. La secuencia de clave se usa una sola vez, se cambia
Carrera de Informtica

52

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

en cada nueva operacin de cifra, por esto se le conoce como cifradores de un solo uso o bien one time pad, la clave pude ser de cualquier tamao y el algoritmo nunca estara expuesto a tener vulnerabilidades debido a que la clave puede llegar a ser tan larga como los datos y tambin se debe considerar que la clave debe ser usada solo una vez. Se genera una llave aleatoria K al menos del largo del mensaje M a cifrar. La clave K es producida por un algoritmo de nmeros pseudoaleatorios o con un generador de ruido. La clave es conocida por los dos usuarios que se comunican, esa clave debe ser igual o ms larga que cualquier mensaje que deseen intercambiar. Para cada mensaje se genera una nueva clave aleatoria K. Cifrado: C = EK(M) = M xor K Descifrado: M = DK(C) = C xor K Si la clave K es realmente aleatoria y no se reutiliza para un segundo mensaje, es un algoritmo de cifrado irrompible. Orden de complejidad: Utiliza una complejidad de O(1) constante en el cifrado y descifrado. AES: Advanced Encription standart, NITS publico las especificaciones para el AES finales de 1997. Los requerimientos principales son: Un algoritmo simtrico con bloques de 128 bits (no de 64 como el de DES) y con llaves de 128, 192 o 256 bits (no 56 bits como el DES o 112 como el Triple DES). Los participantes de esta competencia tenan que escribir cdigo en los lenguajes de programacin ANSI-C y Java. Como plataforma se especifico el procesador Pentium de Intel (un procesador de 32 bits) y tambin procesadores de 8 bits (sin especificar alguno en particular) como los que utilizan en tarjetas inteligentes (smart cards). NITS explico que los criterios para escoger el algoritmo ganador serian en orden de prioridad los siguientes: Seguridad, Velocidad y sencillez del diseo. Finalmente todo participante oficial en el concurso deba garantizar que si ganase renunciara a todo derecho de propiedad intelectual sobre su algoritmo. El elegido es Rijndael. Este nuevo algoritmo belga mezcla de Vincent Rijmen y Joan Daemon (sus autores) sorprende tanto por su innovador diseo como por su simplicidad practica; aunque tras l se esconda un complejo trasfondo matemtico y tiene expectativas de ser usado en worldwide y analizado extensivamente como su predecesor Data Encryption Standad (DES).
Carrera de Informtica

53

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Orden de complejidad: Utiliza una complejidad de O(n2) en el cifrado y descifrado. RC6: RC6 de RSA, RSA es la empresa privada ms famosa en el campo de encriptacin su nombre refleja su famoso algoritmo de clave pblica. RC6 evoluciono de RC5 un algoritmo muy respetado, utiliza multiplicaciones de 32 bits, el algoritmo genera una tabla de encriptacin y luego procede a encriptar o desencriptar los datos. A grandes rasgos, RC5 se puede describir de la siguiente manera: 1. A partir de una llave de longitud entre 1 y 256 bytes se inicializa una caja-S de 8*8. 2. La caja-S se usa para generar una lista de bytes pseudo-aleatorios cuyo tamao coincide con el del texto a cifrar. 3. Estos bytes se combinan mediante una operacin XOR con el texto en claro. El resultado es el texto cifrado. De esta manera ms detallada, se puede decir que RC6 tiene una cada-S de 8*8: S0, S1,, S255 cuyas entradas son una permutacin de los nmeros 0 a 255. Adems, tiene dos contadores i y j, inicializados a cero. Para cada byte de entrada se genera un byte pseudo-aleatorio con el cual se combina mediante la operacin XOR dando lugar al byte cifrado. Para generar un byte aleatorio se procede de la siguiente forma: i= (i+1) mod 256 Se intercambian Si y Sj t= (Si + Sj) mod 256 j= (j+Si) mod 256 K= St

Se hace una operacin XOR con el byte K y el texto en claro para producir el texto cifrado. Para recuperar el texto en claro se realizara una operacin XOR con el texto cifrado y el byte K. El cifrado es rpido cerca de 10 veces ms rpido que DES. El algoritmo es inmune a los criptoanlisis diferencial y lineal, no parece tener ningn ciclo pequeo y es altamente no lineal. El ndice i asegura que cada elemento cambia y el ndice j asegura que los elementos cambian aleatoriamente. Orden de complejidad: Utiliza una complejidad de O(n) para cifrar y descifrar.

Carrera de Informtica

54

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

ALGORITMOS DE CIFRA ASIMTRICA


De varios algoritmos asimtricos conocidos y utilizados a continuacin se presenta 5 de ellos que son los ms representativos y con ellos se realizara la comparacin que se observa en el Anexo C. MH: (Merkle-Hellman) fue uno de los primeros criptosistemas de llave pblica y fue inventado por Ralph Merkle y Martin Hellman en 1978. Aunque sus ideas eran elegantes, y mucho ms simples que RSA, no tuvo el mismo xito que ste ltimo, debido a que MH ya fue roto, y adems no ofrece funcionalidades para firmar. Descripcin: Merkle-Hellman es un criptosistema asimtrico, esto significa que para la comunicacin, se necesitan dos llaves: una llave pblica y una privada. Otra diferencia con RSA, es que sirve slo para cifrado, es decir, la llave pblica es usada slo para cifrar (no para verificar firma) y la llave privada es usada slo para descifrar (no para firmar). De este modo, no se puede usar para tareas de autentificacin por firma electrnica. El algoritmo de Merkle-Hellman est basado en el problema de la mochila de decisin (un caso especial del problema de la mochila de optimizacin): dados una secuencia de nmeros y un nmero, determinar si existe un subconjunto de la secuencia cuya suma d dicho nmero. En general, es sabido que este problema es de clase NP-completo. Sin embargo, si la secuencia de nmeros es supercreciente (esto es, si cada elemento de la secuencia es mayor que la suma de todos los anteriores) el problema es "fcil", y es posible resolverlo en tiempo polinomial con un simple algoritmo voraz. Generacin de las claves: En Merkle-Hellman, las claves estn compuestas por secuencias. La clave pblica es una secuencia "difcil", y la clave privada es una "fcil", o secuencia de valores supercrecientes, junto con dos nmeros adicionales, un multiplicador y un mdulo, los cuales son usados para convertir la secuencia supercreciente en una secuencia difcil. Estos mismos nmeros son usados para transformar la suma de la subsecuencia de la secuencia "difcil" en la suma de la subsecuencia de la secuencia "fcil", la cual se puede solucionar en tiempo polinomial. Cifrado: Para cifrar un mensaje, el cual debe ser una secuencia de bits de la misma longitud de la secuencia difcil, se eligen los elementos de la secuencia difcil que correspondan a bits en 1 del
Carrera de Informtica

55

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

mensaje (mientras que los elementos correspondientes a bits en 0 son descartados). Luego se suman los elementos as elegidos, y el resultado de esto es el texto cifrado. En caso que el mensaje no sea de la misma longitud de la llave, se subdivide en secuencias que tengan esta longitud y se aplica el mismo procedimiento. Descifrado: El descifrado es posible, porque el multiplicador y el mdulo usados para transformar la secuencia supercreciente (la llave privada) y por tanto "fcil" en la secuencia general (la llave pblica) y por tanto difcil, tambin pueden ser usados para transformar el texto cifrado (representado por un nmero) en la suma de los elementos que conforman la subsecuencia supercreciente (una subsecuencia de una secuencia supercreciente, tambin es supercreciente). Luego, usando un algoritmo voraz, el problema "fcil" de la mochila puede ser resuelto usando O(n) operaciones, con lo cual se logra descifrar el mensaje. Orden de complejidad: El cifrado que utiliza la tiene una complejidad de O(n2) para cifrar y O(n3) para descifrar. DSA: (Digital Signature Algorithm, en espaol Algoritmo de Firma digital) es un estndar del Gobierno Federal de los Estados Unidos de Amrica o FIPS para firmas digitales. Fue un Algoritmo propuesto por el Instituto Nacional de Normas y Tecnologa de los Estados Unidos para su uso en su Estndar de Firma Digital (DSS), especificado en el FIPS 186. DSA se hizo pblico el 30 de agosto de 1991, este algoritmo como su nombre lo indica, sirve para firmar y no para cifrar informacin. Una desventaja de este algoritmo es que requiere mucho ms tiempo de cmputo que RSA. Generacin de claves Elegir un nmero primo p de L bits, donde 512 L 1024 y L es divisible por 64. Elegir un nmero primo q de 160 bits, tal que p1 = qz, donde z es algn nmero natural. Elegir h, donde 1 < h < p 1 tal que g = hz(mod p) > 1. Elegir x de forma aleatoria, donde 1 < x < q-1. Calcular y = gx(mod p). Los datos pblicos son p, q, g e y. x es la llave privada.

Carrera de Informtica

56

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Orden de complejidad: El cifrado que utiliza la tiene una complejidad de O(na) para cifrar y para descifrar. RSA: El RSA, llamado as por las siglas de sus creadores (Rivest, Shamir y Adelman), es el algoritmo de clave pblica ms popular. El algoritmo se puede usar para encriptar comunicaciones, firmas digitales e intercambio de claves. La clave es de tamao variable, generalmente se usan claves entre 512 y 2048 bits en computadores personales. Las claves ms grandes aumentan la seguridad del algoritmo pero disminuyen su eficiencia y generan ms texto cifrado. Los bloques de texto en claro pueden ser de cualquier tamao, siempre que sea menor que la longitud de la clave. Los bloques de texto cifrado generados son del tamao de la clave. La clave publica del algoritmo tiene la forma (e, n) donde e es el exponente y n el modulo. La longitud de la clave es igual al nmero de bits de n. El modulo se obtiene multiplicando dos nmeros primos grandes, p y q. Los nmeros se seleccionan aleatoriamente y se guardan en secreto. La clave privada tiene la forma (d, n) donde d es el producto inverso de e modulo (p-1) (q-1) (es decir (ed-1) es divisible por (p-1) (q-1)). El clculo de d a partir de p y q es sencillo, pero es computacionalmente imposible calcular d sin conocer p y q para valores grandes de n, ya que obtener sus valores es equivalente a factorizar n, que es un problema intratable para un computador. A continuacin se explica el funcionamiento del algoritmo. Paso 1: Para encriptar un mensaje un usuario calcula c=m e modulo n, donde m es el texto en claro, c es el texto cifrado y (e, n) es la clave publica del destinatario. Paso 2: Para decriptar el mensaje el destinatario calcula cd modulo n = (me)d modulo n = med modulo n = m donde (d, n) es la clave privada del destinatario. Hay que indicar que la ultima sustitucin es posible por el modo en que hemos escogido los nmeros, ya que d es el producto inverso de e modulo n, por lo que med = m. El algoritmo es lento, ya que emplea operaciones matemticas que tienen un coste elevado y trabaja con claves de gran tamao. Parte del problema est en la eleccin del exponente e, ya que un exponente de 512 bits escogido aleatoriamente precisa 768 multiplicaciones en promedio. Para solucionarlo se suelen escoger los valores 3 o 65537, que precisan 3 y 17 multiplicaciones
Carrera de Informtica

57

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

respectivamente. La eleccin de un exponente fijo no disminuye la seguridad del algoritmo si se emplean esquemas de criptografa de clave pblica adecuados, el relleno de mensajes con bits aleatorios. Adicionalmente, el uso de exponentes fijos hace que el encriptacin sea ms rpida que la decriptacion y la verificacin ms rpida que la firma. Esta ltima caracterstica es incluso deseable, ya que un usuario firma una vez un mensaje pero es posible que la firma se valide muchas veces. Comparando con los sistemas de cifrado simtrico como el DES, el algoritmo de RSA es 100 veces ms lento en software y de 1000 a 10000 veces ms lento en hardware. Orden de complejidad: El cifrado que utiliza la clave pblica tiene una complejidad de O(n2) el descifrado O(n3) y la generacin de claves O(n4), en donde n es la longitud de bits del modulo. CCE: La Criptografa de Curva Elptica (CCE) es una variante de la criptografa asimtrica o de clave pblica basada en las matemticas de las curvas elpticas. Sus autores argumentan que la CCE puede ser ms rpida y usar claves ms cortas que los mtodos antiguos como RSA al tiempo que proporcionan un nivel de seguridad equivalente. La utilizacin de curvas elpticas en criptografa fue propuesta de forma independiente por Neal Koblitz y Victor Miller en 1985. Uso en criptografa: En criptografa, se elige un punto base G especfico y publicado para utilizar con la curva E(q). Se escoge un nmero entero aleatorio k como clave privada, y entonces el valor P =k*G se da a conocer como clave pblica (ntese que la supuesta dificultad del PLDCE implica que k es difcil de deducir a partir de P). Si Mara y Pedro tienen las claves privadas kA y kB, y las claves pblicas PA y PB, entonces Mara podra calcular kAPB = (kAkB)G; y Pedro puede obtener el mismo valor dado que kBPA = (kBkA)G. Esto permite establecer un valor secreto que tanto Mara como Pedro pueden calcular fcilmente, pero que es muy complicado de derivar para una tercera persona. Adems, Pedro no consigue averiguar nada nuevo sobre kA durante sta transaccin, de forma que la clave de Mara sigue siendo privada.

Carrera de Informtica

58

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Los mtodos utilizados en la prctica para cifrar mensajes basndose en este valor secreto consisten en adaptaciones de antiguos criptosistemas de logaritmos discretos originalmente diseados para ser usados en otros grupos. Entre ellos se podran incluir DiffieHellman, ElGamal y DSA. La realizacin de las operaciones necesarias para ejecutar este sistema es ms lenta que para un sistema de factorizacin o de logaritmo discreto mdulo entero del mismo tamao. De todas maneras, los autores de sistemas de CCE creen que el PLDCE es significativamente ms complicado que los problemas de factorizacin o del PLD, y as se puede obtener la misma seguridad mediante longitudes de clave mucho ms cortas utilizando CCE, hasta el punto de que puede resultar ms rpido que, por ejemplo, RSA. Los resultados publicados hasta la fecha tienden a confirmar esto, aunque algunos expertos se mantienen escpticos. La CCE ha sido ampliamente reconocida como el algoritmo ms fuerte para una determinada longitud de clave, por lo que podra resultar til sobre enlaces que tengan requisitos muy limitados de ancho de banda. Orden de complejidad: Utiliza una complejidad de O(na) constante en el cifrado y descifrado. ELGAMAL: El procedimiento de cifrado/descifrado ElGamal se refiere a un esquema de cifrado basado en problemas matemticos de logaritmos discretos. Es un algoritmo de criptografa asimtrica basado en la idea de Diffie-Hellman y que funciona de una forma parecida a este algoritmo discreto. El algoritmo de ElGamal puede ser utilizado tanto para generar firmas digitales como para cifrar o descifrar. La seguridad del algoritmo se basa en la suposicin que la funcin utilizada es de un slo sentido y la dificultad de calcular un logaritmo discreto. El procedimiento de cifrado (y descifrado) est basado en clculos sobre un grupo cclico cualquiera G lo que lleva a que la seguridad del mismo dependa de la dificultad de calcular logaritmos discretos en G.

Carrera de Informtica

59

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

Efectividad: Hasta el momento el algoritmo ElGamal de cifrado/descifrado puede ser considerado un algoritmo efectivo. Un adversario con la habilidad de calcular logaritmos discretos podra ser capaz de romper un cifrado ElGamal. Sin embargo, en la actualidad, el algoritmo de computacin de logaritmos discretos es subexponencial con una complejidad de = 1/3, la misma que la de factorizar dos nmeros primos, y por tanto, incapaz de realizar tal tarea en nmeros grandes en un tiempo razonable. Desempeo: El anlisis de desempeo del algoritmo ElGamal es similar al de RSA. Concretamente tenemos el siguiente anlisis Orden de complejidad: Sea n el mdulo usado en ElGamal. Los procesos de cifrado y descifrado de ElGamal por lo tanto toman tiempos de O(log n).

Carrera de Informtica

60

Tesis de Grado

Modelo Criptogrfico Hibrido Basado en Criptografa Simtrica y Asimtrica

ANEXO E: TABLA ASCII BINARIO

Carrera de Informtica

61

Você também pode gostar