ALGORITMOS DE SEGURIDAD


Algoritmo RSA
Hoy el algoritmo RSA es uno de los algoritmos de criptografía de clave pública utilizados para el cifrado y descifrado por muchos proveedores. Este un algoritmo de primera generación que se utiliza para proporcionar la seguridad de los datos. Se puede cifrar un mensaje sin la necesidad de intercambiar una clave secreta separada. El algoritmo RSA se puede utilizar para el cifrado de clave pública y firmas digitales. Su seguridad se basa en la dificultad de factorizar enteros grandes. La Parte A1 puede enviar un mensaje cifrado a las partes B1 sin ningún intercambio de claves secretas previo. A1 utiliza la clave pública B1 para cifrar el mensaje y B1 lo descifra utilizando la clave privada, que sólo él conoce. RSA también se puede utilizar para firmar un mensaje, por lo que A1 puede firmar un mensaje utilizando su clave privada y B1 puede verificar utilizando la clave pública del A1. El algoritmo RSA contiene tres pasos a saber de generación de claves, cifrado y descifrado. Aquí está la generación de proceso clave que primero es elegir dos números aleatorios p y q. A continuación, el número n se debe calcular: n = pq.

A partir de entonces una función φ (n) se calcula: φ (n) = (p - 1) (q - 1). También un número entero e se elige de manera que 1 <e <φ (n).

Por último, el valor de d se calcula: D = E-1 mod φ (n), de forma que: φ mod de (n) = 1, y E y φ (n) son “co-prime”. El resultado (n, d) es la clave privada y (n, e) es la clave pública.

El cifrado de un texto m se calcula por: c = me mod n, y descifrado de un texto se calcula mediante: m = cd mod n.

Seguridad del algoritmo RSA
Hay una gran cantidad de ataques iniciales sobre RSA, que no son tan poderosos, porque hay mejoras añadidas a RSA, pero una de la más famosa de estas mejoras es el uso de un módulo común para todos los usuarios, por ejemplo, no elegir diferentes n = pq para cada usuario. Este problema puede ocurrir en un sistema, donde una autoridad central de confianza genera claves públicas y privadas para los usuarios mediante el uso de un valor fijo para n. En este caso el usuario A1 puede factorizar el módulo n, utilizando sus propios exponentes, E y D. Entonces A1 puede utilizar la clave pública de B1 para recuperar su clave privada. La solución es simplemente no utilizar un n diferente para cada usuario. Este ataque no es aplicable en los sistemas, en los que cada usuario genera el par de claves en su / su máquina. Aquí el valor de n debe ser diferente para cada usuario. Otros de los ataques contra RSA se llama ataque de sincronización o temporización. Cuando un usuario A1 utiliza el algoritmo RSA para la firma digital o cifrado / descifrado, un atacante puede especificar la clave privada midiendo el tiempo que se tarda en ejecutar la firma o el descifrado. Este ataque se podría aplicar en los sistemas que están conectados a una red, por ejemplo, usando una tarjeta inteligente. El intruso no pueda leer el contenido de la tarjeta inteligente, ya que es resistente al acceso no autorizado, pero él puede determinar la clave privada mediante el uso de ataques de temporización. Una de las posibilidades para hacer frente a un ataque de temporización es añadir algo de retraso en el proceso, ya que el proceso siempre toma una cantidad fija de tiempo.

Algoritmos de Criptografía de curva elíptica (ECC)
La Criptografía de curva elíptica es un algoritmo de cifrado seguro y más eficiente que RSA ya que utiliza tamaños de clave más pequeñas para mismo nivel de seguridad en comparación con RSA. Por ejemplo, una clave pública ECC de 256 bits proporciona una seguridad equivalente a una clave pública RSA de 3072 bits. La Criptografía de curva elíptica (ECC) fue introducida en 1985 por Victor Miller (IBM) y Neal Koblitz (Universidad de Washington) como un mecanismo alternativo para la aplicación de la criptografía de clave pública. Los algoritmos de clave pública proporcionan un mecanismo para el intercambio de claves entre un gran número de participantes en un sistema de información compleja. En comparación con otros algoritmos famosos como RSA, ECC se basa en logaritmos discretos que son mucho más difíciles de desafiar a longitudes de claves similares. Cada participante en la criptografía de clave pública tendrá dos claves, una clave pública y una clave privada, que se utiliza para las operaciones de cifrado y descifrado. clave pública se distribuye a todos los participantes en tanto que la clave privada se sabe que solamente un participante en particular.

Estándar de Encriptación de Datos (DES)
Data Encryption Standard (DES) es un cifrado de bloques con 64 bits de tamaño de bloque. Fue desarrollado por IBM en la década de 1970, y se aprobó en los Estados Unidos de América como una técnica de codificación estándar en 1976. En primer lugar, se utiliza sobre todo en los Estados Unidos de América, y luego se hizo más y más popular en todo el mundo. DES está utilizando sustituciones y transposiciones uno después de otro en 16 ciclos de una manera muy complicada. Para este algoritmo, la longitud de clave se fija en 56 bits, lo que parece demasiado débil, mientras que se ha demostrado que el poder de los recursos informáticos es cada vez más y más. Sin embargo, es útil mencionar que 3DES, también llamado triple DES, es un método de hacer un DES más difícil de descifrar. 3DES utiliza DES tres veces en cada bloque de datos, y de esta manera se aumenta la longitud de la clave. De hecho, se utiliza un "manojo de llaves" que contiene tres claves DES, K1, K2 y K3, con cada uno de ellos de 56 bits.

Estándar de Encriptación Avanzado (AES)
La debilidad del DES ha sido aceptada; En enero de 1997 el NIST (Instituto Nacional de Estándares y Tecnología) anunció que en lugar de DES, se utilizará un nuevo método como AES (Advanced Encryption Standard). Esto condujo a una competencia entre los miembros de la comunidad criptográfica abiertas, y en nueve meses, el NIST recibió quince algoritmos diferentes de varios países. En 1999, desde que el NIST recibió los algoritmos, eligió el algoritmo de "Rijndael", que fue desarrollado por dos criptógrafos holandeses, Vicente Rijmen y Joan Daemen. Este algoritmo se convirtió oficialmente en el algoritmo de cifrado AES en 2001. AES es un cifrado de bloques con 128 bits de tamaño de bloque. En AES la longitud de la clave es variable (no fija), entonces puede ser de 128, 192 y 256 bits (y probablemente más). La estructura de AES se crea principalmente de técnicas de encriptación tales como sustituciones y transposiciones. Igual que el DES, AES utiliza ciclos repetidos, que son 10, 12 o 14 ciclos (llamadas rondas en AES). Con el fin de lograr la confusión y difusión perfecta, cada ronda contiene cuatro pasos. Estos pasos son sustituciones, transposiciones, cambio de los bits y la aplicación de OR exclusivo a los bits.

Modos de Operación para AES
AES es un cifrado de bloques, por lo que los datos se dividen en varios bloques y cada bloque se encripta por separado. A modo de operación se puede definir como el proceso que se realiza durante el cifrado / descifrado para cada bloque de datos. La mayoría de los modos de operación están utilizando un vector conocido como vector de inicialización (IV), que es un bloque de bits. IV se utiliza para hacer el proceso de cifrado al azar, de manera que el texto cifrado correspondiente sería diferente cada vez, incluso si los mismos datos se cifra varias veces. Hay muchos modos de operaciones, pero NIST ha aprobado seis modos para la confidencialidad de los datos, a saber, BCE (Electronic Libro de códigos), CBC (Cipher Block Chaining), CFB (Cipher Votación), OFB (Output Votación), CTR (Contador), y XTS-AES.

Seguridad de AES
En cuanto a la seguridad de AES, no se ha encontrado ningún defecto en el algoritmo. Este algoritmo se ha usado durante dos años para ser analizado antes de ser aprobado en EE.UU. Es suficiente para demostrar la calidad y la integridad de AES. La Seguridad de la clave es fuerte en AES, debido a que la longitud de clave mínima es al menos dos veces la longitud de la clave utilizada para el DES. Las rondas y longitud de la clave no se limitan, por lo que, si llegamos lo suficientemente cerca como para romper clave mediante el uso de los recursos informáticos de gran alcance, es posible aumentar la longitud de la clave y el número de rondas. Hay un sitio web, donde se indican las investigaciones y actividades sobre AES. El último trabajo de investigación acerca de la seguridad de AES se presentó en 2009. Es un cifrado AES con longitudes de clave de 192 y 256 bits. Aquí el ataque utiliza el nombre de “clave relacionada Boomerang". El documento concluye que este ataque es la única amenaza teórica, y en la acción no es posible. La complejidad de los datos y el tiempo son tan altos, que es casi imposible de manejar con la tecnología existente.

Referencias


Hashem, Sajjad (West Azarbayjan University). (Agosto de 2013). AIRCC Publishing Corporation. Obtenido de Journal: http://airccse.org/journal/ijsptm/papers/2413ijsptm01.pdf

No hay comentarios:

Publicar un comentario