Algoritmos de Seguridad y Criptografía

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 6

Algoritmos de Seguridad y Criptografía

Daniel Hernández Carlos Muñoz Mauricio Nagua Daniel Villafuerte José Zambrano

RESUMEN. (ver Figura 1), este proceso ocasiona el aumento del


En el presente informe se representan diferentes tipos tamaño de la clave del algoritmo DES, con el fin de tomar
de algoritmos de un alto rendimiento de encriptación de medidas contra ataques de fuerza bruta [3].
datos, entre ellos tenemos el método IDEA, método AES,
método TRIPLE DES, método RSA y por último el método
TwoFish, los cuales nos permite proteger la información
mediante sus respectivos algoritmos de cifrado con un gran
nivel de seguridad. El cifrado de información es una
tecnología muy conocida para la protección y seguridad de
información sensible.

INTRODUCCIÓN
La criptografía es una técnica o método para proteger
nuestra información de personas con malas intenciones. Los
algoritmos de cifrado se clasifican en dos tipos: el primero es
el cifrado de clave simétrica y el segundo el cifrado de clave
asimétrica. En el cifrado de clave simétrica, se utiliza la misma
clave para cifrar y descifrar los datos. La clave debe ser
compartida antes de enviarla al remitente y
receptor. La longitud de la clave juega un papel importante en
el cifrado de clave simétrica. 3DES, RC5, Twofish, AES son
ejemplos de algoritmos de cifrado de clave simétricos. Figura 1 Algoritmo 3DES

Para ofrecer una transferencia y almacenamiento seguro de El algoritmo DES cifra los datos en bloques de 64
datos e información, se formularon varios algoritmos de bits. Un bloque de texto simple de 64 bits va en un extremo
cifrado simétricos como el Data Encipherment Standard del algoritmo y un bloque de texto cifrado de 64 bits sale
(DES), Rijndael Algorithm, Elliptic Curve Cryptography por el otro extremo. DES es un algoritmo simétrico, para el
(ECC) entre otros [1], en el cifrado de clave asimétrica, hay proceso de cifrado y descifrado se utiliza el mismo
un par de claves; Clave privada y clave pública. La clave algoritmo y clave, la longitud de dicha clave es de 56 bits.
pública se utiliza para el cifrado de datos y la clave privada se La única la seguridad esta alojada adentro de la clave. En
utiliza para el descifrado de los datos cifrados. En la su nivel más simple, el algoritmo no es más que una
comunicación segura, los Esquemas de cifrado simétricos combinación de las dos técnicas básicas de encriptación:
realizan la parte real del cifrado de los datos, ya que son muy confusión y difusión. El bloque de construcción
rápidos y los Esquemas de cifrado asimétricos asumen la fundamental de DES es una combinación única de estas
responsabilidad de distribuir claves [2]. técnicas en el texto, basada en la clave. Esto se conoce
como una ronda. DES tiene 16 rondas, aplica la misma
Palabras Claves: IDEA, AES, TRIPLE DES, MD5, combinación de técnicas en el bloque de texto simple 16
RSA, TwoFish, Caja-S. veces [4].

ALGORITMOS

A. Triple DES B. IDEA (International Data Encryption Algorithm).


El algoritmo Triple DES (3DES) es una variante El algoritmo IDEA está basado en el sistema de
simple del algoritmo DES, consiste en implementar el cifrado de clave la cual se puede caracterizar por sus tipos
algoritmo DES 3 veces, primero se realiza un cifrado, de simetría tanto para el cifrado y descifrado, la cual toma
luego se efectúa un descifrado y finalmente se realiza un la adquisición de textos los cuales estén sin ningún tipo de
nuevo cifrado para poder obtener texto cifrado definitivo formato y que posean 64 bis la cual permitirá al mismo
tiempo una salida de 64 bits utilizando una clave generada tl = t y 0xFFFF;
de 128 bit [5]. th = t >> 16;
retorno (tl - th) + (tl <= th);
}
Este algoritmo pide un total de seis sumas y restas, más
una multiplicación de 16 bits y al final una comparación.

C. Twofish
Es un algoritmo de código abierto [7] , de clave
simétrica con el método de cifrado por bloques. Utiliza un
tamaño de bloque de 128 bits y un tamaño de clave de 128,
192 y 256 bits, Twofish no usa claves débiles [7]. La
característica única de Twofish es que utiliza cajas S-
dependientes de la clave pre computadas y un complejo
programa de claves, donde la clave se divide en dos
mitades. La mitad de la clave se utiliza como clave real y
la otra parte de la clave se utiliza para modificar el
algoritmo. Twofish construye cuatro cajas S dependientes
de la clave de 8x8 bits utilizando permutación [7]. El
objetivo principal del uso de cajas S dependientes de la
clave es que el atacante no sabe qué son realmente las
cajas-S. Twofish es un diseño rápido, flexible y
Figura 2 Algoritmo IDEA conservador. El diseño conservador significa que es fácil
de extender para llaves más largas y hasta 124 rondas [8].
El algoritmo de encriptación IDEA realiza diversas
operaciones en cada una de sus iteraciones (8 en total), las
mismas que permiten en dividir un bloque de 64 bits en 4
partes iguales de 16 bits y cada una de las iteraciones se
utilizan 6 subclaves y para la transformación final las 4
subclaves restantes. El algoritmo que se usa para descifrar
los mensajes es el mismo que el empleado al momento de
cifrarlos [6].

- Módulo de multiplicación 2n + 1.

En el algoritmo IDEA, el módulo de multiplicación


216+ 1 se denomina como el de mayor complejidad debido
a que ocupa una gran cantidad de recursos por parte de
hardware.

Para este módulo se enfatizó una arquitectura utilizo


dos módulos con la capacidad de que se puedan rede
codificar en un par de bits, para que pudieran tener el mejor
rendimiento posible.

Ejemplo:
Figura.3 Esquema de encriptación de TwoFish
uint16 mulmod(uint16 x, uint16 y)
{ Twofish proporciona seguridad eficiente, ya que se
uint16 xd, yd, th, tl; ha sido analizado criptográficamente, donde incluso los
uint32 t; intrusos de la red solo pueden interrumpir cinco rondas del
xd = (x - 1) y 0xFFFFFF; algoritmo [9]
yd = (y - 1) y 0xFFFFFF;
t = (uint32) xd * yd + xd + yd + 1;
- Twofish función D. RSA
La comunicación de datos y la protección del mismo
El algoritmo de encriptación Twofish sigue los es un aspecto muy importante y esencial. Un cryptosystem
siguientes pasos: X0 y X1 a la izquierda de las entradas a define un par de transformaciones de datos designadas
las funciones g después de la rotación en 8 bits de una de
código y descripción. El código es aplicado al texto puro o
ellas.
La función g consta de cajas S dependientes de la clave sea los datos para ser comunicado para producir texto de la
de 4 bytes, seguidas de un paso de mezcla lineal. El cifra o sea datos encriptas usando llaves. El mensaje está
resultado de las dos funciones g se combinan utilizando un encripto con llave pública y sólo puede ser descifrado
PHT (Pseudo Hadamard Transform). Después de que se usando la llave privada. El mensaje encripto no puede ser
agreguen dos palabras clave. Una de ellas a la derecha se descifrado por alguien que sabe la llave pública y así la
gira un bit y luego ambas palabras clave están en XOR en comunicación segura es posible. RSA (denominada de sus
el resultado de la izquierda. Para la siguiente ronda, se autores – Rivest, Shamir y Adleman) es el algoritmo más
intercambian las mitades derecha e izquierda [10]. crucial público popular. Confiado en el problema de
factorización de matemáticas que indica un número tan
- Ventajas de Twofish muy grande dado es realmente imposible en el aspecto del
 No tiene derechos de autor. hoy para encontrar dos números primos cuyo producto es
 Ampliamente criptoanalizado. el número dado.
 No esta patentado.
 Diseñado para ser eficiente y compatible con una La codificación del sistema RSA se compone de dos
amplia variedad de plataformas como, de 32 bits. números muy grandes primos (p) y (q), calculando su
 CPU, tarjetas inteligentes de 8 bits y hardware producto(n=p.q).
VLSI dedicado.
 Twofish toma menos tiempo para cifrar el
documento en comparación con Blowfish. - Elegir las claves
 Twofish es un cifrado de bloque de 128 bits
relativamente moderno que es una caída para Ejemplo se elige 2 números primos; p=53 y q=97
AES, por la sencilla razón de que fue diseñado
Se aplica producto n=q.p=5141
para ser AES.
Se aplica Euler; Ê(n)=(p-1) . (q-1).
- Desventajas de Twofish
 No fue seleccionado, declarado como el mejor Se elige otro número primo e=7
algoritmo en la final de su presentacion, aunque
es uno de los cifrados de bloque simétrico seguro La clave pública seria (n,e)(n=5141,e=7)
más avanzados en uso.
 Carece de velocidad de cifrado en comparación
con el pez globo [11]. - Cifrado

- Antecedentes de Twofish Al enviar un mensaje, la web busca una clave pública


y debe usar los números n y e, y debe transformar cada letra
Fue uno de los cinco finalistas del concurso Advanced del mensaje en su respectivo orden alfabético.
Encryption Standard. Este algoritmo, en estructura, se basa
en Blowfish y Bruce Schneier lo ha introducido como el Por ejemplo [je vous aime] (Te quiero) se convierte en
algoritmo evolutivo de Blowfish. La repetición de la red [10, 05, 22, 15, 21, 19, 01, 09, 13, 05]
Feistel por 16 veces (16 rondas) ha intentado proporcionar
su mejor fuerza y capacidad El mensaje cifrado se convierte en:

- Función de las Cajas-S [10052215211901091305]

Las Cajas-S reciben un numero de bits m y los Y al agrupar los dígitos.


convierten a un numero de bits n de salida, donde m no 10052215211901091 305
puede ser igual a m.
10052215211901 091 305

10052215211 901 091 305


Se agrupa de 3 en 3

10 052 215 211 901 091 305

Por último, se añade los ceros a la izquierda q se


necesite.

010 052 215 211 901 091 305 Figura 4. Número de rondas en función de la
longitud de clave.
Los bloques de 8 se cifran con la formula C=Be (mod
n), siendo C es cifrado y B es claro. Las etapas de transformaciones son: SubByte,
ShiftRow, MixColum, AddRounKey.
El mensaje queda de la siguiente manera
- Encriptación AES
{0755 1324 2823 3550 3763 2237 2052}

- Descifrado Para lograr encriptar los datos se debe aplicar el estado


de las cuatro operaciones: SubByte, ShiftWor,
Si se ha guardado en secreto p y q la clave (d) q es su MixColumn, AddRoundKey durante un número
clave privada. Debe satisfacer la ecuación [e x d mod Ê(n) enterminado de rondas. Nr dicho número de rondas viene
= 1.] establecido por la dimensión de la clave utilizada,
estableciendo Nr = 10 para 128 bits, Nr = 12 para 192 bits,
6. 4992 + 1 = 7. 4279, por lo tanto d = 4279 Nr = 14 para 256 bits.
Los cifrados C se encuentra mediante B = Cd (mod n)

Al realizar operaciones su resultado es; 010 052 215


211 901 091 305

Se vuelve a reemplazar los números por las letras en su


respectivo orden alfabético y se obtiene el mensaje la cave
secreta (d = 4279.

E. AES (Advanced Encryption Standard)


El algoritmo de cifrado AES muy conocido por sus
siglas que significan Advanced Encryption Standard
(Estándar de cifrado avanzado), sus inicios se remontan en
el año de 1997, actualmente es reconocido como unos de
los algoritmos más seguros en por la NIST (National
Institute of Standards and Technology) para protección de
datos clasificados.

AES es un algoritmo de encriptación simétrico por


bloques, es decir encripta y desencriptar la información en
bloques de 128 bits, la clave establecidas pueden ser de
128, 192 o 256 bits, el algoritmo AES es muy elegido por Figura 5. Proceso de Encriptado.
sus aspectos basados en métricas como: arquitecturas,
limitaciones, seguridad, flexibilidad y escalabilidad [1]. - Desencriptado AES

- Estructura AES Para hacer uso del proceso de descifrado, se debe saber
Su estructura consiste [10],en una serie de rondas la longitud de la clave escogida, es decir si la clave
donde se hace la realización de un conjunto de 4 escogida es de 128 bits implicaría 10 rondas. AES es un
transformaciones enfocadas a bytes, el número de rondas cifrador de clave simétrico, que quiere decir que la clave
es dependiente del tamaño de la clave. que se ha usado para cifrar los datos es la misma que se
deberá usar para descifrarlos. El proceso de descifrado configurados de diversas maneras, estos algoritmos son
consiste en el uso inverso al del cifrado. considerados de alto rendimiento los cuales permiten una
mayor seguridad al momento de guardar información que
se desea que no sea observada terceras personas.

Los diferentes algoritmos estudiados en este informe


son considerados de alto nivel para cifrar información
sensible, la realización de encriptación información es
requerida en la actualidad para establecer la protección de
nuestros datos, ya que la importancia de los datos es muy
esencial, existe una variedad de algoritmo de cifrados y no
se duda que con el pasar de los tiempo aparezcan más
algoritmos de encriptación que busquen optimizar el
proceso de cifrado.

BIBLIOGRAFÍA

[1] Shivlal Mewada, Pradeep Sharma, S. S.


Gautam, «Exploration of efficient symmetric
AES algorithm,» 2016 Symposium on Colossal
Data Analysis and Networking, CDAN 2016, nº
ISB: 9781509006694, pp. 2-8, 2016.
Figura 6. Proceso de descifrado.

CONTRASTE
[2] R. S. a. T. Guneysu, «Exploiting the Power of
GPUs for Asymmetric Cryptography,» 2008. [En
El algoritmo Triple DES ofrece una seguridad de 192
línea]. Available:
bits a un texto, brindándole al mismo una mayor resistencia
https://link.springer.com/content/pdf/10.1007%2
ante ataques de fuerza bruta, pero, para generar dicha
F978-3-540-85053-3_6.pdf.
cantidad de bits, el algoritmo 3DES repite 3 veces el
algoritmo DES, por lo que dicho proceso lo convierte en [3] J. S. G. t. V. a. E. C. F. Guerra, «Baerends,
un algoritmo de cifrado lento. “The PPP Triple-DES Encryption Protocol
El algoritmo IDEA determina una seguridad de 128 bits (3Taller internacional sobre hardware
la cual se divide en dos bloques de 64 bits a la misma ves criptográfico y sistemas
por su complejidad se divide en 4 partes iguales el cual embebidosDESE)Status,” Theor,» vol. 99, p.
permite generar una clave para brindar mayor protección, 391, 1998.
pero así mismo llega a ocupar una gran cantidad de
[4] I. John Wiley & Sons, «B. Schneier, Applied
hardware debido al proceso que realiza de repetir varias
Cryptography, Second Edition: Protocols,
veces su módulo de encriptación lo que lo conlleva a
Algorthms, and Source Code in C (cloth).,»
realizar procesos de multiplicación 2n+1 donde constan de
1996. [En línea].
sumas y restas.

El algoritmo AES es uno de los algoritmos más seguro, [5] S. L.-B. F. J. G. a. J. M. Ivan Gonzalez,
es muy conocido por su fuerte seguridad de 256 bits, que «Using Partial Reconfiguration in Cryptographic
es usado por grandes empresas y también para cifrar Applications: An Implementation of the IDEA
información ultrasecreta, por razones de convivencia y Algorithm,» Springer Link., vol. 2778, p. 1994,
seguridad, se exige una VPN con cifrado ASE de 256 bits. 2003.

CONCLUCIONES [6] K. T. P. L. a. M. L. O.Y.H. Cheung,


En el presente informe se representaron diferentes «Tradeoffs in Parallel and Serial
modelos de algoritmos de encriptación que son Implementations of the International Data
Encryption Algorithm IDEA,» 2001. [En línea].
Available:
https://link.springer.com/content/pdf/10.1007%2
F3-540-44709-1_28.pdf.

[7] D. D. Rane, «Superiority of Twofish over


Blowfish,» 2016. [En línea].

[8] H. D. H. M. MD Asif Mushtaque,


«Evaluation of DES, TDES, AES, Blowfish and
Two fish Encryption Algorithm: Based on Space
Complexity,» International Journal of
Engineering Research & Technology (IJERT),
vol. 3, nº ISSN: 2278-0181, p. 4, 2014.

[9] O. O. K. H. P. T. Marwan Ali Albahar,


«Novel Hybrid Encryption Algorithm Based on
Aes, RSA, and Twofish for Bluetooth
Encryption,» vol. 2, p. 9, 2018.

[10 I. Ofelia, V. Méndez, E. Arte, AES como


] Estándar Internacional de Cifrado, Madrid,
España, 2018, pp. 65-70.

También podría gustarte